1
0
mirror of git://f0xx.org/ac/ac-deploy synced 2026-08-12 18:12:19 +03:00
Files
ac-deploy/sim/cluster0/scripts/prune-builder-artifacts.sh
Anton Afanasyeu 6a58eb716d Lab: remember-me, Grafana proxy fix, builder cache dirs, branded QR alerts.
Grafana auth restore + nginx proxy_cookie_path; alert-notifier branded QR; prepare-be-builder-dirs shared ccache/gradle; bump ac-scripts for Docker DLC maintenance.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 14:08:17 +02:00

28 lines
935 B
Bash
Executable File

#!/bin/sh
# Prune obsolete Docker layers and old build artifact trees on builder nodes.
set -eu
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
# shellcheck source=/dev/null
. "$ROOT/scripts/lib/common.sh"
load_cluster_env
KEEP_BUILDS="${KEEP_BUILDS:-5}"
BUILDS="${BUILDER_BUILDS_DIR:-/var/www/ac/broadcast/builds}"
log "prune docker build cache + dangling images"
docker builder prune -af 2>/dev/null || true
docker image prune -af 2>/dev/null || true
if [ -d "${BUILDS}" ]; then
log "prune build dirs under ${BUILDS} (keep newest ${KEEP_BUILDS})"
# Numeric build IDs only; sort descending, drop oldest beyond KEEP_BUILDS.
ls -1 "${BUILDS}" 2>/dev/null | awk '/^[0-9]+$/' | sort -rn | tail -n +"$((KEEP_BUILDS + 1))" | while read -r id; do
log " remove builds/${id}"
rm -rf "${BUILDS}/${id}"
done
fi
docker system df 2>/dev/null || true
df -h / /shared 2>/dev/null || true
log "prune-builder-artifacts_ok $(host_short)"