fix: prevent amd64-pinned digest breaking arm64 builds - #2
Closed
saubhikdattagithub wants to merge 1 commit into
Closed
fix: prevent amd64-pinned digest breaking arm64 builds#2saubhikdattagithub wants to merge 1 commit into
saubhikdattagithub wants to merge 1 commit into
Conversation
The reusable build workflow resolves the container image digest in the source job (which runs on amd64). This pins an amd64-specific digest into .container, which is then reused by the arm64 binary job — causing "image platform (linux/amd64) does not match expected platform (linux/arm64)" and an Exec format error. By providing .container with just the image name (no digest), the source job's resolve step is skipped (`if [ ! -e .container ]`), and each binary job's `podman run --arch $arch` resolves the correct platform manifest directly from the registry. Signed-off-by: Saubhik Datta <50126327+saubhikdattagithub@users.noreply.github.com>
saubhikdattagithub
marked this pull request as ready for review
August 18, 2026 06:08
Author
|
Closing - root cause is an intermittent GitHub Actions arm64 runner issue (missing QEMU binfmt), not a code problem. Builds recover automatically the next day. |
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.
Problem
The reusable
package-buildworkflow resolves the container image digest in thesourcejob, which runs onamd64. This pins an amd64-specific digest into.container:This file is uploaded as an artifact and reused by the
arm64binary job, which then pulls the amd64-specific digest on an arm64 runner, causing:Fix
Add a
.containerfile with just the image name (no digest). The reusable workflow only resolves the digestif [ ! -e .container ], so this skips the amd64-pinning step. Each binary job then runspodman run --arch $arch ...which resolves the correct platform manifest directly from the registry.