Files
Foscarealm/scripts/deploy_caddy.sh
Stanislav Hubacek bd799c79d9 main page
2026-04-05 23:38:17 +02:00

29 lines
755 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
BASE="/opt/homelab"
GENERATOR="$BASE/scripts/generate_caddy.py"
WRAPPER="$BASE/Caddyfile.wrapper"
TARGET_CADDYFILE="/etc/caddy/Caddyfile"
BACKUP_CADDYFILE="/etc/caddy/Caddyfile.bak"
GENERATED_DIR="$BASE/generated/caddy"
echo "[1/5] Ensuring generated directory exists..."
mkdir -p "$GENERATED_DIR"
echo "[2/5] Generating Caddy fragments..."
python3 "$GENERATOR"
echo "[3/5] Installing wrapper Caddyfile..."
if [[ -f "$TARGET_CADDYFILE" ]]; then
cp "$TARGET_CADDYFILE" "$BACKUP_CADDYFILE"
fi
cp "$WRAPPER" "$TARGET_CADDYFILE"
echo "[4/5] Validating Caddy config..."
caddy validate --config "$TARGET_CADDYFILE"
echo "[5/5] Reloading Caddy..."
systemctl reload caddy
echo "[Done] Caddy deployed successfully."