-
Notifications
You must be signed in to change notification settings - Fork 2.6k
chore: add aarch64 linux runner #15077
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
Conversation
.github/workflows/main.yml
Outdated
@@ -155,6 +163,9 @@ jobs: | |||
- uses: actions/checkout@v4 | |||
- name: Dump Environment | |||
run: ci/dump-environment.sh | |||
# workaround for https://github.com/actions/partner-runner-images/issues/26 |
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.
Based on the linked issue, it's available/fixed now.
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.
I re-ran the tests and everything passed except cross compile.
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.
The current arm machine sometimes throws a random free()
allocation error. I lost the exact build failure, but feel like it is not really stable yet.
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.
Investigation into compilation problems are currently being investigated in rust-lang/rust#135867.
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.
Found it https://github.com/weihanglo/cargo/actions/runs/12939625507/job/36092284988#step:13:48.
free(): invalid next size (fast)
It doesn't seem to be a compilation error though.
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.
CI passed. Should we make it into our CI pipeline?
2e3cbde
to
2d4b474
Compare
Linux arm64 hosted runners is in public preview. Enable and see if is is something we can have now. setting `target.linker` is required for cross-compilation on ARM64, so disable cross compilation tests for it. https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
other: TODO # cross-compile tests are disabled, this shouldn't matter. | ||
- name: Linux aarch64 nightly | ||
os: ubuntu-24.04-arm | ||
rust: nightly | ||
other: TODO # cross-compile tests are disabled, this shouldn't matter. |
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.
Should we say UNREACHABLE? ;)
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.
I assume you are ready for this to be merged? If so, feel free to add it to the queue
On Windows x86_64 gnu nightly:
Retry |
Update cargo 17 commits in a6c604d1b8a2f2a8ff1f3ba6092f9fda42f4b7e9..0e93c5bf6a1d5ee7bc2af63d1afb16cd28793601 2025-03-26 18:11:00 +0000 to 2025-04-05 00:00:24 +0000 - chore(deps): bump openssl from 0.10.71 to 0.10.72 (rust-lang/cargo#15394) - chore(ci): restore cargo-util semver check (rust-lang/cargo#15389) - docs(changelog): polish changelog items (rust-lang/cargo#15379) - chore(deps): update msrv (1 version) to v1.86 (rust-lang/cargo#15381) - chore: add aarch64 linux runner (rust-lang/cargo#15077) - Added `build_directory` field to cargo metadata output (rust-lang/cargo#15377) - chore(deps): update rust crate rusqlite to 0.34.0 (rust-lang/cargo#15373) - Prevent undeclared public network access (rust-lang/cargo#15368) - rename the `author` field to be `authors` in book.toml (rust-lang/cargo#15362) - move modules from kebab-case to snake_case (rust-lang/cargo#14439) - chore: bump to 0.89.0; update changelog (rust-lang/cargo#15372) - docs(unstable): update `-Zrustdoc-depinfo` tracking issue link (rust-lang/cargo#15371) - fix(tree): Make output more deterministic (rust-lang/cargo#15369) - feat: rustdoc depinfo rebuild detection via -Zrustdoc-depinfo (rust-lang/cargo#15359) - Rename the gc config table (rust-lang/cargo#15367) - Revert "Temporarily ignore cargo_test_doctest_xcompile_ignores" (rust-lang/cargo#15357) - Don't canonicalize executable path in `cargo_exe` (rust-lang/cargo#15355) r? ghost
What does this PR try to resolve?
Linux arm64 hosted runners is in public preview.
Enable and see if is is something we can have now.
https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
How should we test and review this PR?
aarch64-unknown-linux-gnu is a tier-1 target platform.
It is better to have this in Cargo's CI.
Cross-compilation tests are disabled temporarily on this platform.
Additional information
https://rust-lang.zulipchat.com/#narrow/stream/242791-t-infra/topic/Free.20Linux.20ARM64.20runners.20on.20GHA.20now.20in.20beta