Files
Adrian Lyjak e9bf27bc11 perf(ci): tune buildx GHA cache for docker publish jobs (#547)
The publish workflow's docker-build step for the operator image was
spending ~2 minutes of every run exporting cache to GHA (per build
log: `sending cache export 88.3s done`, total step 3m37s). The
`golang:1.24` base + builder-stage layers were being uploaded to GHA
cache on every push because `cache-to` was hardcoded to `mode=max`.

Changes:
- Add `cacheMode` to `DockerConfig` (defaults to `max` — the Python
  images still benefit from caching every intermediate stage).
- Plumb it through `DockerBuildAction` and into the `--cache-to`
  flag in `_execute_docker_build`.
- Always emit `compression=zstd` and `ignore-error=true` on the
  cache-to directive: smaller blobs to upload, and a flaky cache
  push no longer fails a build whose image is already on the registry.
- Set `"cacheMode": "min"` on `operator/package.json`. The operator
  is a tiny static Go binary in distroless; caching the golang base
  + module download layers costs more upload time than the rebuild
  saves.

Co-authored-by: Claude <noreply@anthropic.com>
2026-04-15 15:09:50 -04:00
..