Files
guardian-caddy/deploy/validate-and-reload.sh
2025-12-07 14:28:00 +00:00

24 lines
802 B
Bash
Executable File

#!/bin/sh
# Validate system Caddy configuration and reload Caddy on success.
# Usage: run from the checked-out deployment directory, or pass env vars
# Environment variables:
# SYSTEM_CADDYFILE - path to system Caddyfile that includes this repo (default /etc/caddy/Caddyfile)
# DEPLOY_DIR - path of the checked-out config repo used by system Caddy (not modified by this script)
set -eu
SYSTEM_CADDYFILE=${SYSTEM_CADDYFILE:-/etc/caddy/Caddyfile}
DEPLOY_DIR=${DEPLOY_DIR:-/srv/caddy-config}
echo "Validating Caddy configuration: ${SYSTEM_CADDYFILE}"
if ! /usr/bin/caddy validate --config "${SYSTEM_CADDYFILE}"; then
echo "Caddy validation failed; aborting reload" >&2
exit 1
fi
echo "Validation succeeded; reloading Caddy"
sudo systemctl reload caddy
echo "Caddy reloaded successfully"