[AAASM-2327] 🐛 (ci): Add apt-get fallback to before-script-linux for Debian-based cross container#71
Merged
Conversation
…cross container
Follow-up to AAASM-2189. That fix's before-script-linux only handles
yum + dnf, assuming all manylinux containers are RHEL-family. The
aarch64 cross-compile container ghcr.io/rust-cross/manylinux2014-cross:aarch64
is actually Debian-based (Ubuntu jammy) and has neither yum nor dnf.
v0.0.1-alpha.3 dry-run, Build manylinux_aarch64 wheel job:
/home/runner/.../run-maturin-action.sh: line 24: yum: command not found
/home/runner/.../run-maturin-action.sh: line 24: dnf: command not found
Error: The process '/usr/bin/docker' failed with exit code 127
The x86_64 manylinux2014 image (CentOS 7-based) still uses yum. The
aarch64 cross image uses apt-get. Extend the fallback chain to try
all three:
(command -v unzip >/dev/null) || (
yum install -y unzip 2>/dev/null
|| dnf install -y unzip 2>/dev/null
|| (apt-get update && apt-get install -y unzip)
)
Verified locally inside ghcr.io/rust-cross/manylinux2014-cross:aarch64:
* Container confirmed Debian-based (Ubuntu jammy), no yum/dnf
* apt-get install -y unzip succeeds
* protoc 32.1 downloads + SHA-256 verifies + extracts
* libprotoc 32.1 confirmed working
My reviewer-miss documented: I shipped AAASM-2189 with only x86_64
local verification. Should have tested both targets locally before
pushing. Pattern to remember: matrix entries with different base
images need each base image verified, not just one.
Tracked: AAASM-2327
Contributor
Author
Claude Code review — AAASM-2327CI state7 SUCCESS + 6 SKIPPED, 0 failures — Scope vs. acceptance criteria
Reviewer-miss disclosure (also called out in PR body)The original AAASM-2189 (PR #68) was shipped with only x86_64 local verification. The matrix's other Linux variant ( What this gets the alpha-4 dry-run
VerdictReady for human approval and merge. End-to-end CD-side regression avoided by reproducing the exact container locally before pushing. — Claude Code (Opus 4.7, 1M context) |
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
Follow-up to AAASM-2189. That fix's
before-script-linuxonly handlesyum+dnf, assuming all manylinux containers are RHEL-family. Butghcr.io/rust-cross/manylinux2014-cross:aarch64is Debian-based (Ubuntu jammy) and has neither.v0.0.1-alpha.3
Build manylinux_aarch64 wheelfailure:Fix
Extend the unzip-install fallback chain:
Applied to both Linux blocks (x86_64 + aarch64).
Local verification in the EXACT container that failed
Inside
ghcr.io/rust-cross/manylinux2014-cross:aarch64(linux/amd64 via Rosetta):apt-get install -y unzipsucceedslibprotoc 32.1✓My reviewer-miss disclosure
I shipped AAASM-2189 with only x86_64 local verification. Should have tested the aarch64 cross-container path too. Pattern to remember: matrix entries with different base images need each base image verified.
Related
— Claude Code (Opus 4.7, 1M context)