#!/bin/bash # Setup no interactivo para CI/CD (Gitea Actions) # Usa Cloudflare API Token en vez de login interactivo set -e TUNNEL_NAME="nucleorio-tunnel" DOMAIN="nucleoriofrio.com" ACCOUNT_ID="${CLOUDFLARE_ACCOUNT_ID}" API_TOKEN="${CLOUDFLARE_API_TOKEN}" echo "🤖 Cloudflare Tunnel CI Setup" echo "==============================" echo "" # Verificar variables de entorno if [ -z "$ACCOUNT_ID" ]; then echo "❌ CLOUDFLARE_ACCOUNT_ID no está configurado" echo " Configúralo en Gitea: Settings > Secrets" exit 1 fi if [ -z "$API_TOKEN" ]; then echo "❌ CLOUDFLARE_API_TOKEN no está configurado" echo " Configúralo en Gitea: Settings > Secrets" exit 1 fi # Verificar si ya existen los archivos if [ -f "credentials.json" ] && [ -f ".env" ]; then echo "✓ credentials.json y .env ya existen" TUNNEL_ID=$(jq -r '.TunnelID' credentials.json 2>/dev/null || echo "") if [ -n "$TUNNEL_ID" ]; then echo "✓ TUNNEL_ID: $TUNNEL_ID" echo "✓ Setup ya está completo, no se requiere acción" exit 0 fi fi echo "⚠️ Archivos de configuración no encontrados" echo "" echo "Para CI/CD automatizado necesitas:" echo "1. Ejecutar ./setup.sh manualmente UNA VEZ en el servidor" echo "2. Esto genera credentials.json y .env" echo "3. Estos archivos persisten entre deploys del runner" echo "" echo "El workflow automáticamente los usará en futuros deploys." echo "" exit 1