#!/bin/bash # Hot-override sparkapi /openapi.yaml with latest spec (no container rebuild / no JWT touch). set -euo pipefail SPEC_SRC="${1:-/tmp/openapi.yaml}" SPEC_DST=/var/www/sparkapi-docs/openapi.yaml NGINX_CONF=/etc/nginx/conf.d/sparkapi-wyrs.conf # fallback name used on this host if [[ ! -f "$NGINX_CONF" ]]; then NGINX_CONF=$(ls /etc/nginx/conf.d/sparkapi*.conf 2>/dev/null | grep -v '\.bak' | head -1) fi echo "nginx_conf=$NGINX_CONF" install -d -m 755 /var/www/sparkapi-docs install -m 644 "$SPEC_SRC" "$SPEC_DST" wc -c "$SPEC_DST" grep -c squarenovel "$SPEC_DST" || true MARKER='# BEGIN sparkapi-openapi-override' if grep -q "$MARKER" "$NGINX_CONF"; then echo "nginx override block already present" else TS=$(date +%Y%m%d%H%M%S) cp -a "$NGINX_CONF" "${NGINX_CONF}.bak.openapi.$TS" python3 <