fix(ci): use native ARM runner for Linux aarch64 Python builds #583
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.
Summary
The Python publish workflow fails for Linux aarch64 builds because the
ringcrate (used by rustls for TLS) fails to cross-compile from x86_64 to aarch64. The error:Solution
Instead of cross-compiling on x86_64, use GitHub's native ARM runner (
ubuntu-24.04-arm) for aarch64 builds. This produces native builds and avoids the cross-compilation issues with theringcrate's assembly code.Changes
ubuntu-latest(unchanged)ubuntu-24.04-arm(native ARM runner)Testing
After merging, trigger the publish workflow with
workflow_dispatchto TestPyPI to verify the fix works.