fix: wait for Zoraxy before cert upload, verbose retry messages
This commit is contained in:
parent
b684242eb9
commit
b0325267db
1 changed files with 18 additions and 4 deletions
22
deploy.sh
22
deploy.sh
|
|
@ -299,25 +299,39 @@ EOF
|
||||||
|
|
||||||
# Upload certs to Zoraxy via API (needed to register them in sys.db)
|
# Upload certs to Zoraxy via API (needed to register them in sys.db)
|
||||||
echo "[*] Registering certificates in Zoraxy..."
|
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"
|
CERTS_DIR="$TARGET_DIR/config/zoraxy/conf/certs"
|
||||||
for SUB in $APP_SUB $DNS_SUB $WWW_SUB; do
|
for SUB in $APP_SUB $DNS_SUB $WWW_SUB; do
|
||||||
FQDN="${SUB}.${DOMAIN}"
|
FQDN="${SUB}.${DOMAIN}"
|
||||||
CRT_FILE="$CERTS_DIR/${FQDN}.crt"
|
CRT_FILE="$CERTS_DIR/${FQDN}.crt"
|
||||||
[ -f "$CRT_FILE" ] || continue
|
[ -f "$CRT_FILE" ] || continue
|
||||||
for TRY in 1 2 3; do
|
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/".*//')
|
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" \
|
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
|
-H "X-CSRF-Token: $T" --data-binary "@$CRT_FILE" 2>&1) || true
|
||||||
if echo "$R" | grep -qi '"success"\|"ok"\|^{}$'; then
|
if echo "$R" | grep -qi '"success"\|"ok"\|^{}$'; then
|
||||||
echo " [OK] Cert registered: $FQDN"
|
echo " [OK] Cert registered: $FQDN"
|
||||||
break
|
break
|
||||||
|
else
|
||||||
|
echo " Retry $TRY for $FQDN: $(echo $R | head -c 80)"
|
||||||
|
sleep 2
|
||||||
fi
|
fi
|
||||||
sleep 2
|
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
echo " [OK] Certificate registration complete"
|
echo " [*] Certificate registration complete"
|
||||||
|
|
||||||
# Write systemd service
|
# Write systemd service
|
||||||
echo "[*] Writing systemd service..."
|
echo "[*] Writing systemd service..."
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue