hermes-agent/.github/workflows
ethernet f6bf871eb0 fix(ci): restore buildx cache reads on PR builds via pod WI login
The PR-read-only hardening (1d5eb3bf4) gated the WIF auth step on
non-PR events, which also silently gated the Artifact Registry docker
login that step fed. The comment said "PRs read the cache via the pod's
GKE Workload Identity", but pod WI is not ambient for buildx: with no
login, cache-from does an anonymous pull against us-central1-docker.pkg.dev
and gets 403 Forbidden (visible as "failed to configure registry cache
importer" in every PR build since), so every PR built cache-cold
(~12-16 min instead of ~2-3).

Fix: on PR events, mint an access token from the pod's GKE metadata
server (the runner pod's KSA impersonates gha-buildx-cache-ro@, which
has only artifactregistry.reader) and feed it to the same docker login
step. The security boundary is unchanged — PR builds still cannot write
cache layers; cache-to remains gated on the WIF token that only exists
on trusted main-push/release contexts.
2026-07-31 14:15:26 -04:00
..
ci.yml feat(ci): sparse checkout in 'detect-changes' to speed up ci 2026-07-31 14:15:26 -04:00
contributor-check.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
deploy-site.yml fix(ci): review fixes — PR-read-only buildx cache, per-arch profile labels 2026-07-31 14:15:26 -04:00
docker-lint.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
docker.yml fix(ci): restore buildx cache reads on PR builds via pod WI login 2026-07-31 14:15:26 -04:00
docs-site-checks.yml fix(ci): review fixes — PR-read-only buildx cache, per-arch profile labels 2026-07-31 14:15:26 -04:00
e2e-desktop.yml fix(ci): review fixes — PR-read-only buildx cache, per-arch profile labels 2026-07-31 14:15:26 -04:00
history-check.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
infographic-check.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
js-autofix.yml fix(ci): review fixes — PR-read-only buildx cache, per-arch profile labels 2026-07-31 14:15:26 -04:00
js-tests.yml feat(ci): speed up npm worktree list 2026-07-31 14:15:26 -04:00
label-rerun.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
lint.yml feat(ci): resource profiler 2026-07-31 14:15:25 -04:00
lockfile-diff.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
osv-scanner.yml fix(ci): update actions/download-artifact to v8.0.1 2026-07-31 14:15:26 -04:00
publish-e2e-evidence.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
review-labels.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
skills-index-freshness.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
skills-index.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
supply-chain-audit.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00
tests.yml feat(ci): resource profiler 2026-07-31 14:15:25 -04:00
uv-lockfile-check.yml feat(ci): migrate all workflows to GKE self-hosted runners 2026-07-31 14:15:25 -04:00