Commit e333b83
refactor(ci): drop tar shuffling, each runner does its own checkout + cache
Replaces the workspace-tar approach (which had --exclude pitfalls and
included fork-only files that shouldn't affect cache) with the upstream
pattern: each matrix runner does its own actions/checkout, restores
deps from actions/cache by content hash, and computes its Hugo output
cache key from Hugo-relevant files only.
Cache key inputs are now strictly Hugo-relevant:
- content/<version>/** (per-version) or content/** without version dirs (latest)
- layouts/**, assets/**, data/**, static/**, i18n/**
- config.toml, postcss.config.js, tailwind.config.js, package-lock.json
- version lists (kubernetes-versions, rs-versions, ...)
- .github/workflows/airgap-build.yml (so workflow logic changes invalidate)
Fork-only files (helm/, Dockerfile, airgap-multibuild.sh, BUILD.md, ...)
no longer enter any cache key. Editing them is a cache HIT across the
board.
Caches per runner (workspace-relative paths, no sudo needed):
- node_modules keyed on package.json + package-lock.json
- ./venv keyed on requirements.txt
- examples keyed on Makefile + build/** + data/components_local/index.json
- output (Hugo result) keyed on the per-build hash described above
setup is now lean: just checkout, discover versions, emit matrix JSON.
No tar, no patches, no excludes. Setup ~30 sec instead of ~5 min.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent bd0b51c commit e333b83
1 file changed
Lines changed: 217 additions & 200 deletions
0 commit comments