#!/bin/bash
# Stop the Orbit slot's Podman app and clear its Caddy route.
set -euo pipefail

: "${SLOT_NAME:?}"
: "${SLOT_RUN:?}"
: "${ORBIT_CADDY:?}"

while read -r name; do
    [[ -n $name ]] || continue
    echo "[stop] $name"
    podman stop -t 30 "$name" || podman rm -f "$name" || true
done < <(podman ps -a --filter "label=orbit.slot=${SLOT_NAME}" --format '{{.Names}}')

rm -f -- "${SLOT_RUN}/app.sock" "${SLOT_RUN}/Caddyfile"
rm -rf -- "${SLOT_RUN}/sockets"

if command -v caddy >/dev/null 2>&1; then
    caddy fmt --overwrite "$ORBIT_CADDY" || true
    caddy validate --config "$ORBIT_CADDY" || true
    caddy reload --config "$ORBIT_CADDY" || {
        echo "[down] warning: caddy reload failed; routes may linger" >&2
    }
fi
