ladybird/.github/actions
sideshowbarker c440b8667b CI: Avoid in-place nightly toolchain update in lint setup
Problem: A new upstream nightly Rust release made all CI lint code
checks fail in the Set Up Environment step

Cause: CI runs “rustup toolchain install nightly --component rustfmt”.
The runner container ships nightly with rustfmt and clippy preinstalled.
But “rustup toolchain install” treats an existing channel as an upgrade
target, and tries to refresh it whenever a newer nightly is available.
The refresh removes the old clippy component first, renaming
/opt/rustup/toolchains/.../share/doc/clippy into /opt/rustup/tmp/, and
those two directories live on different overlayfs mounts in the
container — so the rename fails with EXDEV.

Fix: Replace “rustup toolchain install nightly --component rustfmt” with
“rustup component add rustfmt --toolchain nightly”. That adds the
component to the existing toolchain without checking for or applying a
channel update — so the cross-mount-rename path is never reached.
Because the container already provisions rustfmt + clippy at build time,
the new command is effectively a no-op on healthy containers, and fails
loudly only if a future container loses the nightly toolchain.
2026-05-29 07:39:30 -04:00
..
cache-restore CI: Use CI build image for Linux jobs 2026-05-04 14:16:41 +02:00
cache-save CI: Remove always-true conditions from cache actions 2026-04-10 07:26:05 -04:00
setup CI: Avoid in-place nightly toolchain update in lint setup 2026-05-29 07:39:30 -04:00