22 lines
776 B
Bash
22 lines
776 B
Bash
#!/bin/bash
|
|
# Bound regenerable cache on ana-docker's named CI builders. BuildKit protects
|
|
# in-use references. Stopped builders cannot grow and are left stopped.
|
|
set -euo pipefail
|
|
failed=0
|
|
for builder in buildx_buildkit_worldtree-builder0 buildx_buildkit_skaldsong-builder0 buildx_buildkit_soong-builder0; do
|
|
if ! state=$(docker inspect --format '{{.State.Running}}' "$builder" 2>/dev/null); then
|
|
echo "$builder: absent, skipped"
|
|
continue
|
|
fi
|
|
if [ "$state" != true ]; then
|
|
echo "$builder: stopped, skipped"
|
|
continue
|
|
fi
|
|
echo "$builder: reclaim unused cache toward 10 GiB budget"
|
|
if ! docker exec "$builder" buildctl prune --all --keep-storage 10240 | tail -1; then
|
|
echo "$builder: cache pruning failed" >&2
|
|
failed=1
|
|
fi
|
|
done
|
|
exit "$failed"
|