ci(oci): switch build cache from registry to runner gha cache (VS-53) #73

Merged
David merged 1 commit from feat/VS-53-oci-cache-gha into main 2026-06-25 10:12:27 +02:00
Member

The build-oci-image workflow exported a mode=max buildx cache to dev.a8n.run via type=registry. The ~1.7 GiB cache round-tripped over the WAN on every build; on a 20 Mbps-upload runner the push takes ~12 min and the registry proxy closes the connection with 499 (VS-52), so cache reuse never worked there even after PR #72 made the export non-fatal.

Point the cache at act_runner's built-in Actions cache server instead. cache-from and cache-to now use type=gha (keeping mode=max for the Rust dependency layers and ignore-error=true as defense-in-depth), and the unused cache_ref registry computation is removed so no vervain-server:buildcache tag is written. A crazy-max/ghaction-github-runtime step exports ACTIONS_CACHE_URL and ACTIONS_RUNTIME_TOKEN into the job env, which a manual docker buildx build (unlike docker/build-push-action) needs to reach the cache server and which ACTIONS_RUNTIME_TOKEN is otherwise hidden from run: steps for.

#VS-53

The build-oci-image workflow exported a mode=max buildx cache to dev.a8n.run via type=registry. The ~1.7 GiB cache round-tripped over the WAN on every build; on a 20 Mbps-upload runner the push takes ~12 min and the registry proxy closes the connection with 499 (VS-52), so cache reuse never worked there even after PR #72 made the export non-fatal. Point the cache at act_runner's built-in Actions cache server instead. cache-from and cache-to now use type=gha (keeping mode=max for the Rust dependency layers and ignore-error=true as defense-in-depth), and the unused cache_ref registry computation is removed so no vervain-server:buildcache tag is written. A crazy-max/ghaction-github-runtime step exports ACTIONS_CACHE_URL and ACTIONS_RUNTIME_TOKEN into the job env, which a manual docker buildx build (unlike docker/build-push-action) needs to reach the cache server and which ACTIONS_RUNTIME_TOKEN is otherwise hidden from run: steps for. #VS-53
ci(oci): switch build cache from registry to runner gha cache
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 3m25s
Create release / Create release from merged PR (pull_request) Has been skipped
8dbd5d082a
The build-oci-image workflow exported a mode=max buildx cache to dev.a8n.run via type=registry. The ~1.7 GiB cache round-tripped over the WAN on every build; on a 20 Mbps-upload runner the push takes ~12 min and the registry proxy closes the connection with 499 (VS-52), so cache reuse never worked there even after PR #72 made the export non-fatal.

Point the cache at act_runner's built-in Actions cache server instead. cache-from and cache-to now use type=gha (keeping mode=max for the Rust dependency layers and ignore-error=true as defense-in-depth), and the unused cache_ref registry computation is removed so no vervain-server:buildcache tag is written. A crazy-max/ghaction-github-runtime step exports ACTIONS_CACHE_URL and ACTIONS_RUNTIME_TOKEN into the job env, which a manual docker buildx build (unlike docker/build-push-action) needs to reach the cache server and which ACTIONS_RUNTIME_TOKEN is otherwise hidden from run: steps for.

#VS-53
David merged commit 42c910a7a9 into main 2026-06-25 10:12:27 +02:00
David deleted branch feat/VS-53-oci-cache-gha 2026-06-25 10:12:27 +02:00
David changed title from ci(oci): switch build cache from registry to runner gha cache to ci(oci): switch build cache from registry to runner gha cache (VS-53) 2026-06-25 11:13:20 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/vervain-server!73
No description provided.