Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Jenkins/Build Badge for upstream official image status #2093

Open
nschonni opened this issue May 29, 2024 · 2 comments
Open

Add Jenkins/Build Badge for upstream official image status #2093

nschonni opened this issue May 29, 2024 · 2 comments

Comments

@nschonni
Copy link
Member

Problem

We often have people ask when why images or architectures are missing

Solution

Add a build badge or badges to the Official Images jenkins status of the Node.js jobs

Alternatives to Consider

Maybe having the build badges on the README would be confusing, because that date might end up on the Docker Hub, and maybe pointing to the links from the Issue Template picker might work instead.

/cc @yosifkit @LaurentGoderre

@yosifkit
Copy link
Contributor

The current builds of node could work like we have in our repos: https://github.com/docker-library/golang/#:~:text=images%20repository.-,Build,-Status. But we are actively in the process of migrating to a new way of building that is no longer repo job based and so those links would be misleading (or broken) once we move node to the new build system.

The new build system is a bit more complex as there isn't one view of a repo anymore; it is all just architecture based (and complicated by some arches being a Github Actions yml that is triggered by Jenkins). Feel free to explore here: https://doi-janky.infosiftr.net/job/wip/job/new/; it is still a bit in flux.

Rough flow of jobs:

  • meta calculates what can and needs to build
  • trigger-[arch] jobs use that data to make a queue of things to build for that arch and then triggers and waits for build-[arch] to build a single image (thus processing its queue)
    • images are not pushed to [arch]/[repo] at this stage but to an intermediate staging repo (not really for public consumption, images are tagged by a "build id" and not discoverable by original repo name)
  • deploy-[arch] coordinates pushing the built images from that staging repo to the arch+repo specific namespace on Docker Hub (amd64/[repo], e.g. https://hub.docker.com/r/amd64/node/)
  • (unchanged from "old" build system) our put-shared jobs (per repo, e.g. node) brings together items pushed to the arch specific namespaces to create the "image index" in library/[repo] (e.g. https://hub.docker.com/_/node)

@nschonni
Copy link
Member Author

Thanks! I think we can keep this one open and wait for your new system to be implemented. I guess the other place that it could be posted to is the comment that is left after an upstream PR is created https://github.com/nodejs/docker-node/blob/main/.github/workflows/official-pr.yml

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants