Skip to content

accelerate CI via cargo binstall#2209

Merged
Shourya742 merged 1 commit into
stratum-mining:mainfrom
plebhash:2026-06-16-cargo-bininstall
Jun 24, 2026
Merged

accelerate CI via cargo binstall#2209
Shourya742 merged 1 commit into
stratum-mining:mainfrom
plebhash:2026-06-16-cargo-bininstall

Conversation

@plebhash

@plebhash plebhash commented Jun 19, 2026

Copy link
Copy Markdown
Member

accelerate CI via cargo-binstall

instead of compiling cargo-nextest, cargo-semver-checks, and cargo-fuzz on every run, we install pre-built binaries via cargo-binstall.

additional hardening:

  • disable quick-install option to only use upstream release artifacts (instead of third-party quick-install artifacts)
  • pass GITHUB_TOKEN to cargo-binstall to avoid unauthenticated GitHub API rate-limit fallback
  • use --locked for deterministic fallback behavior if source install is ever needed
  • run fuzz with an explicit rustc host target to avoid sanitizer/libc mismatches

estimated impact (latest successful PR run vs median of 5 recent comparable successful PR runs on the same workflows/jobs):

  • ci (ubuntu-latest):
    • tool install: ~2m33s -> ~2s (~99% reduction)
    • total job: ~31m27s -> ~29m05s (~2m22s faster, ~8%)
  • ci (macos-latest):
    • tool install: ~2m18s -> ~4s (~97% reduction)
    • total job: ~30m16s -> ~29m01s (~1m15s faster, ~4%)
  • semver-check:
    • tool install: ~3m53s -> ~2s (~99% reduction)
    • total job: ~7m12s -> ~3m17s (~3m55s faster, ~54%)
  • fuzz:
    • tool install: ~20s -> ~2s (~90% reduction)
    • total job: ~1m14s -> ~1m01s (~13s faster, ~18%)

critical-path wall clock improves (~31m27s -> ~29m05s, ~2m22s), while matrix jobs still run in parallel.

@plebhash plebhash marked this pull request as draft June 19, 2026 15:31
@plebhash plebhash force-pushed the 2026-06-16-cargo-bininstall branch 3 times, most recently from 9b277f9 to bdfad1f Compare June 19, 2026 20:33
@plebhash plebhash marked this pull request as ready for review June 19, 2026 20:34

@GitGab19 GitGab19 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One nit found by my clanker, which pins the version for real.

Without it, the action still downloads the latest it seems: https://github.com/stratum-mining/stratum/actions/runs/27847218527/job/82418833360?pr=2209#step:5:35

Comment thread .github/workflows/fuzz_tests.yaml
@plebhash plebhash force-pushed the 2026-06-16-cargo-bininstall branch from bdfad1f to 6a3cc9d Compare June 22, 2026 22:44
Comment thread .github/workflows/fuzz_tests.yaml
@Shourya742

Copy link
Copy Markdown
Member

@plebhash Can you squash the commits, as kinda related?

@plebhash plebhash force-pushed the 2026-06-16-cargo-bininstall branch from 6a3cc9d to 7e4212d Compare June 24, 2026 14:29
@plebhash plebhash requested a review from Shourya742 June 24, 2026 14:29
@Shourya742 Shourya742 merged commit 8149394 into stratum-mining:main Jun 24, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants