diff --git a/deploy.sh b/deploy.sh index 1ebfdaf..925f003 100755 --- a/deploy.sh +++ b/deploy.sh @@ -279,17 +279,23 @@ EOF # First call — fresh cookie jar, retry until we get a valid CSRF rm -f "$COOKIE_JAR" CSRF="" - for i in $(seq 1 10); do + for i in $(seq 1 15); do CSRF=$(fetch_csrf) - if [ -n "$CSRF" ]; then + if [ -n "$CSRF" ] && [ ${#CSRF} -gt 10 ]; then break fi - echo " Waiting for Zoraxy to be ready... ($i/10)" - sleep 3 + echo " Waiting for Zoraxy to be ready... ($i/15)" + sleep 2 done - # Try API registration first, fall back to BoltDB direct write - if [ -n "$CSRF" ]; then + if [ -z "$CSRF" ] || [ ${#CSRF} -lt 10 ]; then + echo " [WARN] Could not get valid CSRF — page response:" + curl -s -c "$COOKIE_JAR" http://127.0.0.1:8000/login.html | head -c 300 + echo "" + fi + + # Try API registration + if [ -n "$CSRF" ] && [ ${#CSRF} -gt 10 ]; then ADMIN_CREATE=$(curl -s -c "$COOKIE_JAR" -b "$COOKIE_JAR" -X POST "http://127.0.0.1:8000/api/auth/register" \ -H "X-CSRF-Token: ${CSRF}" \ -d "username=${ADMIN_USERNAME:-master}" \ @@ -297,19 +303,7 @@ EOF if echo "$ADMIN_CREATE" | grep -qi '"success"\|"ok"\|"registered'; then echo " [OK] Admin account created: $ADMIN_USERNAME" else - echo " [INFO] API registration: $ADMIN_CREATE — trying BoltDB fallback" - CSRF="" # Force fallback - fi - fi - - # BoltDB fallback: write admin directly if API failed - if [ -z "$CSRF" ] && [ -f "$TOOL_BIN" ]; then - echo " Creating admin via BoltDB..." - SYS_DB="$TARGET_DIR/data/zoraxy/sys.db" - if [ -f "$SYS_DB" ]; then - "$TOOL_BIN" db --db "$SYS_DB" \ - --set "system:admin:{\"username\":\"${ADMIN_USERNAME:-master}\"}" 2>&1 || true - echo " [OK] Admin written to BoltDB" + echo " [INFO] API registration: $ADMIN_CREATE" fi fi