Repository navigation
Commit 514ab51
committed
ci: use remote ccache only, drop the duplicate local cache
Builds already point ccache at the shared Redis (CCACHE_REMOTE_STORAGE, set
per-runner by armbian/actions runner-clean). The local ccache directory is then
a second copy of the same objects, written to the disk that is the builders'
actual constraint: measured ~44 MB per 30 s per runner, against a device
showing 2.2 s average write latency and queue depth 178 under the nightly load.
CCACHE_REMOTE_ONLY is already supported by the ccache-remote extension and by
ccache 4.9.1 on the runners; it just was never passed. It has to go here rather
than in runner-clean's $GITHUB_ENV export, because docker.sh forwards a fixed
env allowlist into the build container and CCACHE_* is not on it -- which is
why CCACHE_REMOTE_STORAGE is passed as a compile.sh argument too.
Set inside the existing 'remote storage is configured' guard, so a build
without a remote keeps its local cache untouched.
Trade-off, stated because it is real: there is no local fallback. If Redis is
unreachable the cache is simply absent for that build and objects recompile.
CCACHE_REDIS_CONNECT_TIMEOUT is 500 ms, so that costs lookups, not a stall.
build-images-chunk.yml needs no change: it exports CCACHE_REMOTE_STORAGE to
$GITHUB_ENV but never passes ccache params to compile.sh, so image builds use
no ccache at all today. Kernel compiles happen in the artifacts path.
Signed-off-by: Igor Pecovnik <igor@armbian.com>1 parent 2e0b2af commit 514ab51
1 file changed
Lines changed: 6 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
140 | 140 | | |
141 | 141 | | |
142 | 142 | | |
143 | | - | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
144 | 149 | | |
145 | 150 | | |
146 | 151 | | |
| |||
0 commit comments