From b0325267db22432321f59d5892bbf1eadc546449 Mon Sep 17 00:00:00 2001 From: cclohmar Date: Tue, 7 Jul 2026 18:33:39 +0100 Subject: [PATCH] fix: wait for Zoraxy before cert upload, verbose retry messages --- deploy.sh | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/deploy.sh b/deploy.sh index f9deef7..baeec98 100755 --- a/deploy.sh +++ b/deploy.sh @@ -299,25 +299,39 @@ EOF # Upload certs to Zoraxy via API (needed to register them in sys.db) echo "[*] Registering certificates in Zoraxy..." + # Wait for Zoraxy to be ready + for i in $(seq 1 15); do + if curl -sf --max-time 3 "http://127.0.0.1:8000/api/auth/userCount" > /dev/null 2>&1; then + break + fi + sleep 2 + done + CERTS_DIR="$TARGET_DIR/config/zoraxy/conf/certs" for SUB in $APP_SUB $DNS_SUB $WWW_SUB; do FQDN="${SUB}.${DOMAIN}" CRT_FILE="$CERTS_DIR/${FQDN}.crt" [ -f "$CRT_FILE" ] || continue for TRY in 1 2 3; do - C=$(curl -s --max-time 5 -c /tmp/zc.txt http://127.0.0.1:8000/login.html 2>&1) + C=$(curl -s --max-time 5 -c /tmp/zc.txt "http://127.0.0.1:8000/login.html" 2>&1) T=$(echo "$C" | grep 'zoraxy.csrf.Token' | sed 's/.*content="//;s/".*//') - [ -z "$T" ] && sleep 2 && continue + if [ -z "$T" ]; then + echo " Retry $TRY for $FQDN (no CSRF)" + sleep 2 + continue + fi R=$(curl -s --max-time 5 -b /tmp/zc.txt -X POST "http://127.0.0.1:8000/api/cert/upload?ktype=pub&domain=$FQDN" \ -H "X-CSRF-Token: $T" --data-binary "@$CRT_FILE" 2>&1) || true if echo "$R" | grep -qi '"success"\|"ok"\|^{}$'; then echo " [OK] Cert registered: $FQDN" break + else + echo " Retry $TRY for $FQDN: $(echo $R | head -c 80)" + sleep 2 fi - sleep 2 done done - echo " [OK] Certificate registration complete" + echo " [*] Certificate registration complete" # Write systemd service echo "[*] Writing systemd service..."