Skip to content

ci: restore binfmt cache reads in the release docker job - #171

Merged
nozaq merged 1 commit into
mainfrom
claude/gha-workflow-minimal-permissions-1mgnnz
Sep 17, 2026
Merged

nozaq merged 1 commit into
mainfrom
claude/gha-workflow-minimal-permissions-1mgnnz

Conversation

@nozaq

@nozaq nozaq commented Sep 17, 2026

Copy link
Copy Markdown
Member

Summary

Follow-up to #169. A log review of the runs under the new cache-mode settings found one cache user the workflow files do not show: docker/setup-qemu-action keeps the tonistiigi/binfmt image in the Actions cache by default (cache-image: true). The docker job of release.yml runs it under cache-mode: none, so the PR dry run of #169 logged

Cache restore skipped: the effective cache-mode 'none' does not permit reads.
/usr/bin/docker pull docker.io/tonistiigi/binfmt:latest
...
Cache save skipped: the effective cache-mode 'none' does not permit writes.

and pulled the image from Docker Hub instead of restoring the copy the docker job of ci.yml saves on main.

This sets cache-mode: read on that job. read is enough: the job only needs to restore the main copy, and a save from a tag ref would land in a scope no other run restores.

Verification

Job logs of the runs before and after #169 were compared for every job whose mode changed (the runner prints Cache mode: <mode> at job start):

  • write jobs still restore and save as before: setup-go in ci.yml, codeql.yml and pages.yml, type=gha import/export and the binfmt cache in the ci.yml docker job.
  • read jobs restore and skip the save as intended: the release build matrix and sarif-upload-check.yml.
  • none jobs show no cache operation, except the one fixed here.

🤖 Generated with Claude Code

https://claude.ai/code/session_01AKZPpJJVhgvmm2GZbX3nxV


Generated by Claude Code

docker/setup-qemu-action keeps the binfmt image in the Actions cache by
default (cache-image: true), which cache-mode: none blocked: the job now
pulls docker.io/tonistiigi/binfmt on every run. read restores the copy
the ci.yml docker job saves on main; the save this job would attempt is
scoped to a tag ref no other run restores, so it stays refused.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKZPpJJVhgvmm2GZbX3nxV
@nozaq
nozaq marked this pull request as ready for review September 17, 2026 01:42
@nozaq
nozaq merged commit 75e27f8 into main Sep 17, 2026
21 checks passed
@nozaq
nozaq deleted the claude/gha-workflow-minimal-permissions-1mgnnz branch September 17, 2026 01:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants