24 lines
802 B
Bash
Executable File
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"
|