We switched to GH cache recently, but the performance is beyond terrible. We have already switched the main cache actions over to warp, and this completes the transfer with the docker buildkit cache to the Warp endpoint.
ci: use warpbuild cache for docker buildkit cache #35447
pull willcl-ark wants to merge 1 commits into bitcoin:master from willcl-ark:warpbuild-docker-cache changing 2 files +26 −2-
willcl-ark commented at 10:29 AM on June 3, 2026: member
-
DrahtBot commented at 10:29 AM on June 3, 2026: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/35447.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline for information on the review process.
Type Reviewers ACK m3dwards If your review is incorrectly listed, please copy-paste <code><!--meta-tag:bot-skip--></code> into the comment that the bot should ignore.
<!--5faf32d7da4f0f540f40219e4f7537a3-->
- DrahtBot added the label CI failed on Jun 3, 2026
- willcl-ark force-pushed on Jun 3, 2026
- willcl-ark force-pushed on Jun 3, 2026
-
82901981bf
ci: use Warp cache for Docker layers
Speeds of 1MB/s and 15 minute cached docker image pulls during builds are not uncommon. Warp runners provide a local GitHub Actions cache protocol proxy for Docker layer cache traffic. Point BuildKit's gha cache backend at that proxy on Warp runners so cached image layers do not have to be fetched from GitHub's slower cache service. Add a default for provider so other users (e.g. qa-assets) don't have to update this unless they use custome runners.
- willcl-ark force-pushed on Jun 3, 2026
- willcl-ark renamed this:
[nomerge] test alt docker cache backend
ci: use warpbuild cache for docker buildkit cache
on Jun 3, 2026 -
willcl-ark commented at 10:44 AM on June 3, 2026: member
I tested the PR by cache-saving the lint job, you can see the first (cache save) demo run here:
https://github.com/bitcoin/bitcoin/actions/runs/26879120976/job/79274292423#step:5:1081
and the second (cache restore) run here:
https://github.com/bitcoin/bitcoin/actions/runs/26879480195/job/79275626716?pr=35447
-
willcl-ark commented at 10:45 AM on June 3, 2026: member
All jobs will have their first re-usable cache save on merge to master.
- willcl-ark marked this as ready for review on Jun 3, 2026
- DrahtBot removed the label CI failed on Jun 3, 2026
- DrahtBot added the label Tests on Jun 3, 2026
- willcl-ark assigned m3dwards on Jun 3, 2026
- willcl-ark unassigned m3dwards on Jun 3, 2026
- willcl-ark requested review from m3dwards on Jun 3, 2026
-
m3dwards commented at 2:56 AM on June 4, 2026: contributor
ACK 82901981bfbaeb3f41956597e6d90daa59a0c078
Tested on my fork and also witnessed the speed improvements that we get in the main repo. Hopefully the speedup will offset the cost of the additional cache usage.
- fanquake merged this on Jun 4, 2026
- fanquake closed this on Jun 4, 2026
- fanquake referenced this in commit d87cd03049 on Jun 4, 2026
-
willcl-ark commented at 12:48 PM on June 4, 2026: member
pre-merge median max BuildKit block time was 461.5s (with much higher outliers) post-merge median so far is 23.9s.