verilator/.github/workflows
Geza Lore 5750c888a6
CI: Improve ccache handling in build and test jobs (#7874)
Cache key isolation: Include the build flavour (ccwarn/asan/gcov) in the
build ccache key, so the coverage (gcov), asan, and RTLMeter
(ccwarn-off) configurations no longer share and thrash the single
'<runs-on>-<cc>' bucket, nor warm-start from each other's (near-useless)
caches.

Prune stale entries instead of a fixed size cap: After building/testing,
evict ccache entries this run did not touch (--evict-older-than, based
on the run's own duration).  This bounds the saved cache to the current
working set, so CCACHE_MAXSIZE and CCACHE_LIMIT_MULTIPLE are no longer
needed and are removed (ccache falls back to its 5G default ceiling, but
is realistically much smaller).

ccache configuration:
- Drop CCACHE_COMPRESS (already the default in ccache 4.x).
- Add CCACHE_COMPILERCHECK=content, so a changed compiler mtime on a rebuilt
  ephemeral runner image does not invalidate the whole restored cache.
- Hoist all ccache-related variables (CACHE_BASE_KEY, CCACHE_*, CXX) to the
  workflow-level env.

Remove dead ccache scaffolding:
- reusable-lint-py: the job never compiles or caches; drop its ccache env.
- reusable-rtlmeter-run: remove the disabled persistent-cache step and its
  storage variables; keep CCACHE_DISABLE=1, since caching must stay off to
  keep RTLMeter timings representative.

Store test job ccache as artifacts for reuse
2026-07-06 01:44:32 +01:00
..
build-test.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
contributor.yml CI: Pin actions to hashes 2026-06-23 21:24:21 -04:00
coverage.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
docker.yml CI: Pin actions to hashes 2026-06-23 21:24:21 -04:00
format.yml CI: Decouple build and test into separate scripts, simplify workflows (#7871) 2026-07-05 15:46:30 +01:00
no-pulls.yml CI: Disallow pulls to stable 2026-03-02 17:48:32 -05:00
pages.yml CI: Improve Pages job 2026-07-05 21:11:45 +01:00
reusable-build.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
reusable-lint-py.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
reusable-rtlmeter-run.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
reusable-test.yml CI: Improve ccache handling in build and test jobs (#7874) 2026-07-06 01:44:32 +01:00
rtlmeter.yml CI: Unify regression and RTLMeter build jobs to one (#7872) 2026-07-05 18:52:55 +01:00