Something went wrong. Try again.
Monorepo for Tangled tangled.org
Something went wrong. Try again.
1.0 kB · 26 lines
Shell
at next-dev
123456789101112131415161718192021222324252627#!/usr/bin/env bashset -euo pipefail
CLI="${1:-podman}"REPO_ROOT="$(cd "$(dirname "$0")/../.." && pwd)"PROJECT="$(printf '%s' "${COMPOSE_PROJECT_NAME:-$(basename "$REPO_ROOT")}" | tr '[:upper:]' '[:lower:]' | tr -cd 'a-z0-9_-')"KEEP='go-cache|go-mod-cache|bobbin-cargo|bobbin-target|(web|camo|avatar)-node-modules|web-svelte-kit|(camo|avatar)-wrangler|ncps-data|spindle-cache'
cd "$REPO_ROOT"
printf '==> stopping %s containers with %s compose down --remove-orphans\n' "$PROJECT" "$CLI" >&2"$CLI" compose down --remove-orphans
printf '==> removing %s volumes, keeping caches\n' "$PROJECT" >&2all="$("$CLI" volume ls -q | grep -E "^${PROJECT}_" || true)"drop="$(printf '%s\n' "$all" | grep -vE "^${PROJECT}_(${KEEP})$" || true)"keep="$(printf '%s\n' "$all" | grep -E "^${PROJECT}_(${KEEP})$" || true)"
[ -z "$keep" ] || printf ' keep %s\n' $keep >&2if [ -z "$drop" ]; then printf ' nothing to remove.\n' >&2else printf ' remove %s\n' $drop >&2 "$CLI" volume rm $drop >/dev/nullfiprintf '==> done\n' >&2