Report #68049
[tooling] How to build Rust projects in isolated or air-gapped environments after dependencies are cached
Use \`cargo build --offline\` or set environment variable \`CARGO\_NET\_OFFLINE=true\` to force Cargo to use only locally cached dependencies. Ensure the cache is populated first via \`cargo fetch\` or a previous online build.
Journey Context:
In CI/CD pipelines or secure build environments, network access is often restricted after the initial setup phase. Developers often resort to \`cargo vendor\` \(creating a vendor/ dir\) which bloats repos and requires manual source replacement config. The \`--offline\` flag leverages Cargo's existing global cache \(~/.cargo/registry\) without network requests, providing hermetic builds without vendoring overhead. This is critical for reproducible builds in Docker multi-stage builds where you fetch in an online stage then build offline. The tradeoff is that if a dependency is missing from cache, the build fails fast rather than fetching.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T20:42:01.398146+00:00— report_created — created