Dependency downloads
Restore crates and Git dependencies before the build needs them.
Give a fresh build access to downloaded dependencies, reusable Cargo target state, and sccache results. Cargo still decides what must be rebuilt.
.boringcache.toml
workspace = "my-org/app" [adapters.cargo] tag = "cargo-cache" command = ["cargo", "build", "--release"] [adapters.sccache] tag = "rust-compiler"
boringcache cargo
permissions: contents: read id-token: write steps: - uses: boringcache/one@f0fb9b2d926a32b10c543e92093ba00c5a291b79 # v1.33.0 with: mode: cargo trust-policy: auto - run: cargo build --release
steps: - label: Build command: > boringcache ci run --oidc-provider buildkite -- boringcache cargo
build: timeout: 1h id_tokens: BORINGCACHE_OIDC_TOKEN: aud: urn:boringcache:workload script: - boringcache ci run --oidc-provider gitlab -- boringcache cargo
Restore crates and Git dependencies before the build needs them.
Bring back compatible outputs so Cargo can avoid repeating work.
Reuse eligible compiler results when compilation is still needed.
A target-state hit can avoid invoking the compiler. sccache can help when the compiler still runs. Use both, or choose target reuse alone with compiler-cache = "none".
Inspect restored build data, compiler-cache reads, and uploads in the same run.
Explore the workspace →GitHub Actionsmain48b6eee
96.9%
1,837 of 1,896 remote read lookups were hits.
95.8%
Deno · Cargo + sccache
Give consumers restore access and publishers a separate permission. Connect supported CI through OIDC or use scoped credentials.
Connect your CI →Separate readers and publishers
Install the CLI. Run onboarding to connect your repository and configure your cache.
30 GB of cache free. No credit card required.
curl -sSL https://install.boringcache.com/install.sh | sh
boringcache onboard
boringcache cargo
We use cookies to understand how people use BoringCache. Learn more