#!/bin/bash set -euo pipefail SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" # Format first - will fail on syntax errors, avoids "not formatted" warning during validate docker run --rm -v "${SCRIPT_DIR}/Caddyfile:/etc/caddy/Caddyfile" caddy caddy fmt --overwrite /etc/caddy/Caddyfile # Validate - deeper check including provisioning (e.g., missing cert files) docker run --rm -v "${SCRIPT_DIR}/Caddyfile:/etc/caddy/Caddyfile" caddy caddy validate --config /etc/caddy/Caddyfile echo "Caddyfile is valid and formatted"