Skip to content

CI: install ARMv7 Rust toolchains into a fresh rustup home - #458

Merged
reaperhulk merged 1 commit into
mainfrom
ci-armv7-fresh-rustup
Oct 1, 2026
Merged

reaperhulk merged 1 commit into
mainfrom
ci-armv7-fresh-rustup

Conversation

@reaperhulk

@reaperhulk reaperhulk commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

The ARMv7 and Thumb stable jobs fail during Rust installation when stable advances. The image's preinstalled Cargo component manifest refers to share/man/man1/cargo.1, which is absent, so rustup aborts while removing the old component. ARMv7 failure and Thumb failure both occur before compiling repository code.

Give both ARMv7 containers a fresh RUSTUP_HOME under /tmp. Rustup installs the selected toolchain from scratch and continues to use the existing RUSTUP_TOOLCHAIN selection for stable and 1.88. Rustup documents RUSTUP_HOME as the root for installed toolchains and configuration.

Validation: workflow YAML parses and both ARM container definitions select the fresh directory; full Lean build and emitter check, repository checks, Rust formatting/clippy and normal/baseline Wycheproof suites pass. This PR's ARMv7 and Thumb CI jobs pass with both stable and 1.88, including installation, lint and tests.

alex pushed a commit that referenced this pull request Oct 1, 2026
…up home

Since Rust 1.99.0 (2026-10-01), `rustup toolchain install stable` fails in
pyca's runner images: updating the image's preinstalled toolchain removes
its previous components, and the image's installation lacks files their
manifests list ("failure removing component 'cargo-...', directory does not
exist: 'share/man/man1/cargo.1'"). The ARMv7 job on main fails the same
way; #458 fixes it by pointing RUSTUP_HOME at a fresh directory, so that
the toolchain is installed rather than upgraded. Do the same for the ppc64le
platform (and its 1.88 exclusion, which must match it), and carry #458's
ARMv7 change so that this PR's CI is green whichever lands first.

Refs #55

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fw6RULWHCeVgMDGc3wRrwE
alex pushed a commit that referenced this pull request Oct 1, 2026
The Thumb job (new on main) runs in the same ARMv7 image, and fails to
upgrade its preinstalled stable toolchain to 1.99.0 in the same way; #458
gives it a fresh RUSTUP_HOME too. Carry that change here as well, so this
PR's CI is green whichever lands first.

Refs #55

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fw6RULWHCeVgMDGc3wRrwE
@reaperhulk

Copy link
Copy Markdown
Member Author

This isn't the right fix but it will unblock us while we wait for the ppc64le runners to actually work on pyca/infra#798

@reaperhulk
reaperhulk added this pull request to the merge queue Oct 1, 2026
Merged via the queue into main with commit 97c9cfd Oct 1, 2026
43 checks passed
@reaperhulk
reaperhulk deleted the ci-armv7-fresh-rustup branch October 1, 2026 13:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant