Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 15 additions & 7 deletions .github/actions/docker-build-service/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,20 @@ inputs:
default: 'false'
use-cache:
description: >-
Import the gha layer cache for this service. Set to 'false' on
retries: BuildKit's "failed to calculate checksum of ref ...:
not found" failure comes from a stale/corrupted gha cache entry,
and cache-from is scoped identically across retries within the
same job, so a retry that reimports it fails identically instead
of getting a fresh build.
Import AND export the gha layer cache for this service. Set to
'false' on retries: BuildKit's "failed to calculate checksum of
ref ...: not found" failure comes from a stale/corrupted gha
cache entry, and cache-from is scoped identically across retries
within the same job, so a retry that reimports it fails
identically instead of getting a fresh build. Evidence from
2026-08-14 (PR #1956, #1952) shows the same error on retries with
cache-from already disabled — cache-to's mode=max export also
has to "solve" a cache key for every intermediate stage,
including the branching installed-deps checkpoint (see Dockerfile
comment above that stage), so it can hit the identical
checksum-resolution failure on export alone. Disabling cache-to
too on retries gives a fully cache-free build for the class of
failure caching alone doesn't explain.
required: false
default: 'true'
runs:
Expand Down Expand Up @@ -63,7 +71,7 @@ runs:
provenance: false
sbom: false
cache-from: ${{ inputs.use-cache == 'true' && format('type=gha,scope={0}-{1}', github.ref_name, inputs.service) || '' }}
cache-to: type=gha,mode=max,scope=${{ github.ref_name }}-${{ inputs.service }}
cache-to: ${{ inputs.use-cache == 'true' && format('type=gha,mode=max,scope={0}-{1}', github.ref_name, inputs.service) || '' }}
build-args: |
COMMIT_SHA=${{ github.sha }}
NPM_CACHE_KEY=${{ hashFiles('package-lock.json') }}
Loading