-
Notifications
You must be signed in to change notification settings - Fork 121
Use arm64 runner #966
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
base: master
Are you sure you want to change the base?
Use arm64 runner #966
Conversation
|
Warning Rate limit exceeded@lucacome has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 9 minutes and 55 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (2)
WalkthroughThe workflow refactors Docker image building by splitting ARM64 builds into a dedicated job with OS-based matrix strategy (debian, alpine), while narrowing the main build to arm, ppc64le, and s390x platforms. The Makefile adds a Changes
Sequence DiagramsequenceDiagram
participant GHA as GitHub Actions
participant Main as Main Job
participant ARM as ARM Job (Matrix)
participant Registry as Docker Registries
Note over GHA: Workflow triggered
GHA->>Main: Run (arm, ppc64le, s390x)
GHA->>ARM: Run (debian matrix)<br/>(linux/arm64)
par Main Build
Main->>Main: Build & Push multi-platform<br/>(excludes arm64)
Main->>Registry: Push to registries
and ARM Build
ARM->>ARM: Build (debian)
ARM->>ARM: Authenticate & Generate metadata
ARM->>ARM: Build & Push (linux/arm64, SBOM)
ARM->>ARM: Append architecture to manifest
ARM->>ARM: Inspect final manifest
ARM->>Registry: Push to registries
end
Note over Registry: Multi-registry images available
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.github/workflows/docker.yml (1)
133-219: Consider consolidating duplicated workflow steps via YAML anchors or composite actions.The
build-docker-armjob duplicates ~80% of thebuild-dockerjob (checkout, variable extraction, Docker setup, auth, metadata, build, scan). While some duplication is acceptable for distinct runners/platforms, using YAML anchors or GitHub composite actions could reduce maintenance burden and ensure consistency across future updates.For example, extract common steps into a composite action or use YAML anchors to define reusable step blocks. This is optional but would improve maintainability if the workflow scales to additional platforms/runners.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.github/workflows/docker.yml(3 hunks)Makefile(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: Build Binaries (1.23.4)
- GitHub Check: Build Binaries (1.27.1)
- GitHub Check: Build Docker Image
- GitHub Check: Build Docker Image (debian)
- GitHub Check: Build Docker Image (alpine)
- GitHub Check: Analyze (go)
🔇 Additional comments (4)
Makefile (1)
5-5: Add--loadflag for local image loading.The
--loadflag aligns with the separate ARM runner strategy, ensuring single-platform builds load into the local Docker daemon. Consistent with existing patterns in the test target (lines 16–18)..github/workflows/docker.yml (3)
86-86: Step ID added correctly for manifest reference.The
id: buildaddition enables the downstream manifest manipulation step (line 215) to referencesteps.build.outputs.digest.
135-135: Verifyubuntu-24.04-armrunner is available.The job references a custom ARM runner (
ubuntu-24.04-arm). Confirm this runner is provisioned and accessible in the GitHub Actions environment.
212-219: Remove commented-out condition and clarify manifest operation intent.Line 213 contains a commented-out
if: github.event_name != 'pull_request'condition, suggesting incomplete work or debugging. Clarify whether this step should be gated by event type (e.g., skip on PRs) or if the comment should be removed.If the step should only run on releases/pushes, apply this diff:
- name: Apend architecture to image manifest - # if: github.event_name != 'pull_request' + if: github.event_name != 'pull_request' run: |Otherwise, remove the commented condition entirely.
0265d03 to
fba146d
Compare
Summary by CodeRabbit
Release Notes