Extend progressive cache to bazel-managed Go and pip#47007
Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 2 commits intomainfrom Feb 27, 2026
Merged
Extend progressive cache to bazel-managed Go and pip#47007gh-worker-dd-mergequeue-cf854d[bot] merged 2 commits intomainfrom
bazel-managed Go and pip#47007gh-worker-dd-mergequeue-cf854d[bot] merged 2 commits intomainfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Wire up
bazel-managed Go andpipcaches toXDG_CACHE_HOMEin thetools/bazel*scripts, and add the corresponding paths to the progressive GitLab runner cache keyed on.go-versionand.python-version.Motivation
Extend #43274's XDG-as-single-cache-root design to Go and
pip, whose XDG support has been steadlessly growing from "Partial" to "Supported": https://wiki.archlinux.org/title/XDG_Base_Directory.By landing in
$XDG_CACHE_HOME, they inherit the progressive-cache policy from #46151: onlymainpushes to them, keeping growth bounded.Keying on language version files further contains growth by resetting the cache at version upgrade boundaries rather than accumulating superseded artifacts.
Additional Notes
No worry: the new cache paths are already excluded from omnibus source trees via
**/.cache/**/*source filters.Coming soon: we might want to leverage upcoming
--strict_repo_env(withbazel8.6.0, #47011), for which we'll anyway have to list propagated environment variables.Near future: as the omnibus-bazel transition progresses, other caches (
cache_omnibus_ruby_deps,go_deps,go_tools_deps,go_tools_deps_arm64, etc.) are expected to shrink until no longer applicable.