Giter Site home page Giter Site logo

publish-packages's Introduction

Publish to GitHub Packages

Use GitHub Actions to publish your project to a Docker image.

Welcome

GitHub Actions makes it easier than ever to incorporate continuous delivery (CD) into your repositories. This course will teach you what is needed to test and deliver artifacts that are ready for deployment.

  • Who is this for: Developers, DevOps engineers, full stack developers, cloud engineers.
  • What you'll learn: Continuous delivery, how to save and access build artifacts, package management, how to publish to GitHub Packages.
  • What you'll build: We will build a Docker image that runs a small game.
  • Prerequisites: We recommend you first complete the following courses: Hello, GitHub Actions and Continuous Integration.
  • How long: This course takes less than 30 minutes to complete.

In this course, you will:

  1. Create a workflow
  2. Add a Dockerfile
  3. Merge your pull request

How to start this course

start-course

  1. Right-click Start course and open the link in a new tab.
  2. In the new tab, most of the prompts will automatically fill in for you.
    • For owner, choose your personal account or an organization to host the repository.
    • We recommend creating a public repository, as private repositories will use Actions minutes.
    • Scroll down and click the Create repository button at the bottom of the form.
  3. After your new repository is created, wait about 20 seconds, then refresh the page. Follow the step-by-step instructions in the new repository's README.

Get help: Post in our discussion boardReview the GitHub status page

© 2023 GitHub • Code of ConductMIT License

publish-packages's People

Contributors

andrekolodochka avatar chadfawcett avatar danielgospodinow avatar dependabot[bot] avatar emilyistoofunky avatar heiskr avatar mark-wiemer avatar prchandr avatar rod-at-doh avatar sinsukehlab avatar travis-doh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

publish-packages's Issues

[Bug] Using deprecated input for docker/build-push-action@v1

Describe the bug
During testing of the course I noticed there was a warning annotation saying the workflow is using a deprecated input for docker/build-push-action@v1

To Reproduce
Steps to reproduce the behavior:

  1. Get to step 4 in the course
  2. Click on Actions in the top nav
  3. Select the latest run of Publish to docker
  4. Scroll down to Annotations
  5. See warning

Expected behavior
A workflow run without warning/error annotations

Screenshots
If applicable, add screenshots to help explain your problem.
Screen Shot 2023-02-15 at 3 14 49 PM

Device information

  • Type: MacBook Pro
  • OS: macOS Big Sur
  • Browser: Chrome
  • Version: Version 109.0.5414.87 (Official Build) (x86_64)

Additional context
Workflow should probably be updated to use docker/build-push-action@v2

Update discussion links

We now have a designated discussion area for each course! 🎉

This means all of our course links need to be updated to point to the correct discussion page.

There are two places in each course where discussions are referenced

  • README.md
  • .github > steps > X-finish.md

These two files will have a link to https://github.com/orgs/skills/discussions that will need to be replaced with the link for the course specific discussion. You can find those links here, in the left menu section. Copy the link to the discussion category for this course and replace it in those two files.

Be sure to link your PR to this issue for review.

[Bug] Misleading instruction

Describe the bug
Misleading instruction at https://github.com/skills/publish-packages#keyboard-activity-pull-your-image
The current highlighted docker image location should be removed, because student might just copy and paste.

To Reproduce
Steps to reproduce the behavior:

  1. Perform all the previous activities

Expected behavior
Additional instruction to lead student to locate the uploaded package, and copy the correct pull script.

Screenshots
For example,
image

Originally opened in: https://github.com/github/skills/issues/72 (internal link only)

[Feature]

#Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

[Bug]

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Device information

  • Type: [e.g. iPhone6]
  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

[Feature]Instructions in "Step 4: Pull your image" are too unfriendly for some learners

Is your feature request related to a problem? Please describe.

Step 4: Pull your image asks learners to do the following even before Activity part

  1. Open your terminal (Bash or Git Bash recommended)
  2. Use the following command to log in:
    docker login docker.pkg.github.com -u USERNAME -p TOKEN
    

but this seems to be too unfriendly for some learners because

  • all tutorials so far in GitHub Skills starting from Introduction to GitHub to Continuous integration can be completed only in github.com from browsers so learners are not necessarily expected to be familiar working with command-line
    • this is enough for Windows environment learners to get lost in this step
  • Step 1 explains what Docker is, but does not explain how to install / prepare Docker Engine ready to be used in later steps

Describe the solution you'd like

  • Add Step 0 to this tutorial course which points out external guide for
  • quick explanation regarding the difference between Docker Desktop and Docker Engine will also help learners

Describe alternatives you've considered

  • If aforementioned external guide addition cannot be made soon, instead prerequisite section must be at least added to the top of this course to clarify learners already be ready with basic command line operation and Docker Engine installation
    • but this does not solve the root problem of course difficulty level is too suddenly elevated compared to previous Continuous integration

Additional context
None

[Bug]

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Device information

  • Type: [e.g. iPhone6]
  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

[Feature]Change registry to GHCR

Is your feature request related to a problem? Please describe.
docker.pkg.github.com is deprecated. Use GHCR instead.

Describe the solution you'd like
Use GHCR in this course.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Related to #6

[Bug] Cannot pull the image "docker.pkg.github.com/YOURNAME/js-build/tic-tac-toe:f29"

Describe the bug
Cannot pull the docker image when following instructions.

To Reproduce
Steps to reproduce the behavior:

  1. Follow instructions and perform activities (Steps 1 to 3), so that you merge the pull request.
  2. In step 4, log in to Docker using a personal access token.
  3. Type the following command: docker pull docker.pkg.github.com/YOURNAME/js-build/tic-tac-toe:f29.
  4. Replace YOURNAME with your GitHub username.
  5. Press Enter and you will see an error in the output.

Expected behavior
According to README.md, you should see output indicating that the pull was successful, like Status: Downloaded newer image for docker.
However the output says, "Error response from daemon: manifest unknown".

Screenshots
If applicable, add screenshots to help explain your problem.

Device information

  • Type: Desktop PC
  • OS: Windows 11
  • Browser: Chrome
  • Version: 103.0.5060.114

Additional context
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.