#!/bin/sh set -eu name=$1 started=$(date -u +%Y-%m-%dT%H:%M:%SZ) trap 'status=$?; /srv/graphite/bin/graphite-report "$name" "$started" "$status" || echo "graphite-up: rollout report failed" >&2; exit $status' EXIT cd "/srv/graphite/$name" env=/etc/graphite/$name.env if [ ! -f "$env" ]; then env=secrets.env touch secrets.env chmod 600 secrets.env fi set -- if [ -f values ]; then set -- --env-file values fi docker compose -p "$name" "$@" --env-file "$env" up -d --wait --wait-timeout 300 --remove-orphans touch .applied docker image prune -af --filter until=24h >/dev/null || echo "graphite-up: image prune failed" >&2