Compare commits

...

3 commits

Author SHA1 Message Date
4d654026f4 Merge pull request 'Speed up CI by caching rustup toolchain and using cargo-binstall' (#2) from fix/ci-cache-speedup into master
All checks were successful
CI / ci (push) Successful in 1m44s
Reviewed-on: #2
2026-07-29 14:29:00 +00:00
Austin Schaefer
ff91960b7b Force musl targets for cargo-binstall to avoid GLIBC mismatch
All checks were successful
CI / ci (pull_request) Successful in 1m47s
The glibc-linked prebuilt cargo-make binary requires GLIBC 2.39,
newer than what's on the node:20-bookworm image. Musl binaries
are statically linked and avoid the mismatch.
2026-07-29 16:24:50 +02:00
Austin Schaefer
3788eafa88 Speed up CI by caching rustup toolchain and using cargo-binstall
Some checks failed
CI / ci (pull_request) Failing after 26s
Cache ~/.rustup so the toolchain isn't reinstalled every run, and
install cargo-make/cargo-audit via cargo-binstall instead of
compiling them from source each time.
2026-07-29 16:12:18 +02:00

View file

@ -17,6 +17,7 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/bin ~/.cargo/bin
~/.rustup
target target
key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }} key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }}
restore-keys: | restore-keys: |
@ -24,13 +25,20 @@ jobs:
- name: Install Rust toolchain - name: Install Rust toolchain
run: | run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable --profile minimal --component clippy --component rustfmt if [ ! -x "$HOME/.cargo/bin/rustc" ]; then
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable --profile minimal --component clippy --component rustfmt
fi
echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" echo "$HOME/.cargo/bin" >> "$GITHUB_PATH"
- name: Install cargo-binstall
run: |
command -v cargo-binstall >/dev/null 2>&1 || \
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
- name: Install cargo-make and cargo-audit - name: Install cargo-make and cargo-audit
run: | run: |
for crate in cargo-make cargo-audit; do for crate in cargo-make cargo-audit; do
command -v "$crate" >/dev/null 2>&1 || cargo install "$crate" command -v "$crate" >/dev/null 2>&1 || cargo binstall -y --targets x86_64-unknown-linux-musl "$crate"
done done
- name: Run CI checks - name: Run CI checks