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

Create GH action workflow to merge per-arch images into multi-arch tags #19689

Closed
nickboldt opened this issue Apr 27, 2021 · 1 comment
Closed
Labels
area/ci/multi-arch Issues and PRs related to the release of images targeting architectures other than amd64 area/ci CI build and releases, PR testing, & whitelabel/productization issues kind/task Internal things, technical debt, and to-do tasks to be performed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. severity/P3 Lower priority than a P2. Optional work that might get done, or not. See also help wanted issues.

Comments

@nickboldt
Copy link
Contributor

nickboldt commented Apr 27, 2021

Is your task related to a problem? Please describe.

Today, some che images are built multi-arch style w/ qemu + buildx, but this doesn't scale for larger builds like che-theia.

So, in #19688 it's been suggested we build on s390x and ppc64le using travis community hardware.

But then we need to merge these single-arch images into the multi-arch tags that Che operator and registries expect to see when deploying Che and launching workspaces.

Describe the solution you'd like

Therefore we need a GH action that can be triggered when a new Travis build is done, and will append that new image into the shared multi-arch tag.

eg., when :7.32.0-s390x is published, the :7.32.0 tag can be updated with docker manifest --amend to add the new images

          docker manifest create ${{ env.IMAGE }}:multiarch-next $AMEND
          docker manifest push ${{ env.IMAGE }}:multiarch-next

-- https://github.com/eclipse-che/che-dashboard/blob/main/.github/workflows/ci-multiarch.yaml#L62-L71

One caveat to verify: must confirm that something like CACHE_IMAGE_FULL: docker.io/cheincubator/che-dashboard:cache will work for collecting images into a single manifest, eg., https://github.com/eclipse-che/che-dashboard/blob/main/.github/workflows/ci-multiarch.yaml#L62-L71 ... even if they're built w/ different pipelines.

Or do we need a travis cache image and a separate GH action cache? Or none of these, since we're moving to single-arch publishes and a downstream manifest-amender process?

@nickboldt nickboldt added the kind/task Internal things, technical debt, and to-do tasks to be performed. label Apr 27, 2021
@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Apr 27, 2021
@skabashnyuk skabashnyuk added area/ci CI build and releases, PR testing, & whitelabel/productization issues and removed status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. labels Apr 28, 2021
@nickboldt nickboldt added the area/ci/multi-arch Issues and PRs related to the release of images targeting architectures other than amd64 label Apr 28, 2021
@nickboldt nickboldt added the severity/P3 Lower priority than a P2. Optional work that might get done, or not. See also help wanted issues. label Sep 28, 2021
@che-bot
Copy link
Contributor

che-bot commented Mar 27, 2022

Issues go stale after 180 days of inactivity. lifecycle/stale issues rot after an additional 7 days of inactivity and eventually close.

Mark the issue as fresh with /remove-lifecycle stale in a new comment.

If this issue is safe to close now please do so.

Moderators: Add lifecycle/frozen label to avoid stale mode.

@che-bot che-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 27, 2022
@che-bot che-bot closed this as completed Apr 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ci/multi-arch Issues and PRs related to the release of images targeting architectures other than amd64 area/ci CI build and releases, PR testing, & whitelabel/productization issues kind/task Internal things, technical debt, and to-do tasks to be performed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. severity/P3 Lower priority than a P2. Optional work that might get done, or not. See also help wanted issues.
Projects
None yet
Development

No branches or pull requests

3 participants