ci: move rust tests out of vms onto dedicated server #1384
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.
Move Rust tests out of VMs as they don't need to run with a specific kernel, and should run on any dev's machine. Nix'ify the build process and move them to the large machine.
Specific changes:
rust-tests
to the big self-hosted machine when in thesched-ext
org.cargo
,rustc
andclippy
rather than the moving target ofrust-toolchain.toml
, but it is stillstable
.build-kernel
so the tests start sooner.package.metadata.scx
section to describe whether to run clippy, moving this out of the GitHub actions spec and into each package's spec.rust-tests
in the CI instead of requiring each individual package's matrix entry, reducing errors. It also significantly reduces duplicated work.This runs much faster in repo and avoids repeated work. It takes longer out of repo on the smaller GitHub runners, but still takes far less machine time which seems like a fair compromise.
If we do require a specific kernel for cargo tests in the future, we should either implement this in the test or add a Cargo
package.metadata
field to opt into that behaviour where necessary, given how much slower tests in a VM run.Test plan: