diff --git a/scripts/generate-caddyfile.sh b/scripts/generate-caddyfile.sh index 90095a0..99f302e 100755 --- a/scripts/generate-caddyfile.sh +++ b/scripts/generate-caddyfile.sh @@ -7,7 +7,9 @@ source "$CONFIG_FILE" CATALOG_FILE="$APPFACTORY_DIR/apps/catalog.yml" CADDY_FILE="$APPFACTORY_DIR/gateway/Caddyfile" -cat > "$CADDY_FILE" <<'EOF_CADDY' +mkdir -p "$(dirname "$CADDY_FILE")" + +cat > "$CADDY_FILE" < "$CADDY_FILE" <<'EOF_CADDY' EOF_CADDY -awk ' - /^[[:space:]]*-[[:space:]]id:/ { - print " handle_path /apps/" $3 "/* {" - print " reverse_proxy " $3 ":8000" - print " }" - print "" - } -' "$CATALOG_FILE" >> "$CADDY_FILE" +if [ -f "$CATALOG_FILE" ]; then + awk ' + /^[[:space:]]*-[[:space:]]id:/ { + app=$3 -cat >> "$CADDY_FILE" <<'EOF_CADDY' + print " handle_path /apps/" app "/* {" + print " reverse_proxy " app ":8000" + print " }" + print "" + } + ' "$CATALOG_FILE" >> "$CADDY_FILE" +fi + +cat >> "$CADDY_FILE" <> "$CADDY_FILE" <<'EOF_CADDY' } EOF_CADDY +echo "Generated: $CADDY_FILE" + docker exec appfactory-caddy caddy validate --config /etc/caddy/Caddyfile -if docker ps --format '{{.Names}}' | grep -q '^appfactory-caddy$'; then - docker exec appfactory-caddy caddy reload --config /etc/caddy/Caddyfile || docker restart appfactory-caddy -else - cd "$APPFACTORY_DIR/deploy" - docker compose -f docker-compose.yml up -d caddy -fi +docker exec appfactory-caddy caddy reload --config /etc/caddy/Caddyfile