Repository navigation
Save sysroot and Coverage caches only on main - #1913
Merged
Merged
Conversation
PR runs saved these caches under their own ref, where no other run can restore them, using shared cache space. Saving the sysroot in a job step also runs before rust-cache's post-job cleanup, which emptied the sysroot before actions/cache saved it on main. Signed-off-by: Ludvig Liljenberg <4257730+ludfjig@users.noreply.github.com>
ludfjig
requested review from
andreiltd,
danbugs,
dblnz,
devigned,
jprendes,
jsturtevant,
simongdavies,
squillace and
syntactically
as code owners
October 9, 2026 00:18
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The cache conditions and explicit save ordering correctly implement the stated policy.
0 open findings
What changed in this PR
Restricts CI cache writes to main and preserves generated sysroots before cleanup.
Changes:
- Splits sysroot cache restore and save operations.
- Disables Rust cache saves outside
main.
| File | Description |
|---|---|
.github/workflows/dep_code_checks.yml |
Saves Linux and Windows sysroots explicitly on main. |
.github/workflows/dep_build_guests.yml |
Saves guest sysroots explicitly on main. |
.github/workflows/Coverage.yml |
Restricts coverage Rust cache writes to main. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Benchmark ResultsMeasured commit: kvm / amd (Linux) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
kvm / intel (Linux) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
mshv3 / amd (Linux) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
mshv3 / intel (Linux) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
hyperv-ws2025 / amd (Windows) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
hyperv-ws2025 / intel (Windows) (➖ stable)No benchmark improved or regressed. Benchmark Resultsfunction_call_codec
payload_allocation
sandboxes
slot_pool
snapshot_files
virtq_readonly
virtq_readwrite
Reported by |
jprendes
approved these changes
Oct 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
PR runs save the sysroot and Coverage caches under their PR ref. Only that PR can restore them, but they use the shared 10 GB cache. Right now they take 1.65 GiB.
On
main, the code-checks sysroot cache is saved empty.actions/cachesaves in a post-job step, which runs after rust-cache's post-job cleanup has deleted the sysroot.This PR saves both caches only on
main. The sysroot is saved by an explicit step at the end of the job, before rust-cache's cleanup.