Skip to content

build(docker): unpin sccache from 0.10.0 once the GHA-probe bug is fixed #79

@P4suta

Description

@P4suta

Background

Dockerfile pins sccache to 0.10.0 as a workaround for an upstream
regression (Dockerfile:88-92):

sccache is pinned to 0.10.0: 0.15+ introduces a GHA-backend probe that
errors inside cargo's rustc-wrapper invocation path with
"SCCACHE_GHA_ENABLED must be 'true', 'on', '1', 'false', 'off' or '0'"
even when the env is unset and we're nowhere near GHA. Hold the pin
until upstream fixes.

The same failure mode is also why rustfmt/clippy/rust-src are installed
at image-build time (Dockerfile:175-181) — to stop a later rustup
channel sync from spawning a scrubbed-env subprocess that trips the same
sccache 0.15+ abort.

Trigger to act

sccache upstream ships a release that no longer aborts when
SCCACHE_GHA_ENABLED is unset/empty outside GHA.

What to do

  1. Bump sccache@0.10.0 to the fixed release in the Dockerfile Tier C
    cargo binstall block.
  2. Re-evaluate whether the build-time rustup component add workaround
    (Dockerfile:175-181) is still needed once the env-probe is fixed.
  3. Verify just sccache-stats still reports hits and a cold/warm build
    works inside the dev container.

References

  • Dockerfile:88-92 (the pin + rationale)
  • Dockerfile:175-181 (the related rustup-component workaround)
  • ADR-0002 (Docker-only execution)

Metadata

Metadata

Assignees

No one assigned

    Labels

    deferredIntentionally postponed / not-yet-done; backlogdockerPull requests that update docker code

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions