Problem: Every build always produced a new ccache cache tarball with a new cache key, regardless of whether a commit caused the compiled output to change.
Solution: Remove the timestamp from the ccache cache keys, and replace it with a hash of (some reasonably useful subset of) the files that dictate the build dependencies. This will prevent builds from pessimistically caching and frequently evicting main caches.
Problem: Every build always produced a new
ccache
cache tarball with a new cache key, regardless of whether a commit caused the compiled output to change.Solution: Remove the timestamp from the
ccache
cache keys, and replace it with a hash of (some reasonably useful subset of) the files that dictate the build dependencies. This will prevent builds from pessimistically caching and frequently evictingmain
caches.