feat(ci): Add arm64 build support for clp-package Docker image.#1830
Open
junhaoliao wants to merge 9 commits intoy-scope:mainfrom
Open
feat(ci): Add arm64 build support for clp-package Docker image.#1830junhaoliao wants to merge 9 commits intoy-scope:mainfrom
junhaoliao wants to merge 9 commits intoy-scope:mainfrom
Conversation
Contributor
WalkthroughAdds multi-architecture (amd64, arm64) build support across GitHub Action and workflow: action input Changes
Sequence Diagram(s)sequenceDiagram
participant Trigger as Workflow Trigger
participant AMD64 as AMD64 Build Jobs
participant ARM64 as ARM64 Build Jobs
participant Registry as Container Registry
participant Manifest as Manifest Job
Trigger->>AMD64: Start `ubuntu-jammy-amd64-deps-image` and other amd64 jobs
Trigger->>ARM64: Start `ubuntu-jammy-arm64-deps-image` and other arm64 jobs
par Parallel push
AMD64->>Registry: Build & push image tags with `-amd64`
ARM64->>Registry: Build & push image tags with `-arm64`
end
Trigger->>Manifest: Start `package-image-multiarch-manifest`
Manifest->>Registry: Create manifest list referencing `-amd64` & `-arm64`
Manifest->>Registry: Push multi-arch manifest
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
jackluo923
previously approved these changes
Jan 6, 2026
|
|
||
| package-image-multiarch-manifest: | ||
| name: "package-image-multiarch-manifest" | ||
| if: "github.event_name != 'pull_request' && github.ref == 'refs/heads/main'" |
Member
There was a problem hiding this comment.
I think we should also check for package-image should be successful
&& needs.package-image.result == 'success'
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add multi-architecture (amd64 and arm64) support for the
clp-packageDocker image build and push workflow.Changes:
.github/actions/clp-build-runtime-image/action.yaml:archinput parameter to specify target architecture (default:amd64)docker/build-push-actionto useplatforms: "linux/${{inputs.arch}}"provenance: falseto create simple images instead of manifest lists, enablingdocker manifest createto combine per-arch imagesclp-package:main-amd64).github/workflows/clp-artifact-build.yaml:DEPS_IMAGE_NAME_PREFIXtoDEPS_IMAGE_NAME_PREFIX_AMD64DEPS_IMAGE_NAME_PREFIX_ARM64: "clp-core-dependencies-arm64-"ubuntu-jammy-deps-imagetoubuntu-jammy-amd64-deps-imagefor consistencyubuntu-jammy-arm64-deps-imagejob that builds deps on arm64 runnerspackage-imagejob to use matrix strategy for["amd64", "arm64"]package-image-multiarch-manifestjob that creates and pushes a combined multi-arch manifestChecklist
breaking change.
Validation performed
provenance: falseresolves the "is a manifest list" error when creating multi-arch manifestsSummary by CodeRabbit
Release Notes
New Features
Chores
✏️ Tip: You can customize this high-level summary in your review settings.