mach: Install Rust toolchain during bootstrap if needed #35795
Merged
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.
In servo/ci-runners#27, we found that mach bootstrap was busted due to a “toolchain not installed” error. This was because rustup 1.28.0 (as well as the upcoming rustup 1.28.1 with RUSTUP_AUTO_INSTALL=0) no longer installs the Rust toolchain when you try to use it for the first time (see rust-lang/rustup#3985, rust-lang/rustup#4211).
This patch explicitly installs the Rust toolchain during mach bootstrap. Users that prefer RUSTUP_AUTO_INSTALL=0 will need to rerun mach bootstrap whenever we bump our Rust version (rust-toolchain.toml).
./mach build -d
does not report any errors./mach test-tidy
does not report any errorsThese changes fix #___ (GitHub issue number if applicable)