codigo0/scripts/push-produccion.sh
planetazuzu 5d7a6500fe refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades
-  Ticket 1.1: Estructura Clean Architecture en backend
-  Ticket 1.2: Schemas Zod compartidos
-  Ticket 1.3: Refactorización drugs.ts (1362 → 8 archivos modulares)
-  Ticket 1.4: Refactorización procedures.ts (3583 → 6 archivos modulares)
-  Ticket 1.5: Eliminación de duplicidades (~50 líneas)

Cambios principales:
- Creada estructura Clean Architecture en backend/src/
- Schemas Zod compartidos en backend/src/shared/schemas/
- Refactorización modular de drugs y procedures
- Utilidades genéricas en src/utils/ (filter, validation)
- Eliminados scripts obsoletos y documentación antigua
- Corregidos errores: QueryClient, import test-error-handling
- Build verificado y funcionando correctamente
2026-01-25 21:09:47 +01:00

49 lines
1.8 KiB
Bash
Executable file

#!/bin/bash
# Script para configurar SSH y hacer push a producción
# Ejecuta este script en tu terminal: ./scripts/push-produccion.sh
set -e
# ⚠️ SEGURIDAD: Usar variables de entorno en lugar de hardcodear passwords
# Ejemplo: export DEPLOY_PASSWORD="tu_password" antes de ejecutar
PASSWORD="${DEPLOY_PASSWORD:-}"
SERVER="${DEPLOY_SERVER:-root@207.180.226.141}"
if [ -z "$PASSWORD" ]; then
echo "❌ ERROR: DEPLOY_PASSWORD no configurado"
echo " Ejecuta: export DEPLOY_PASSWORD='tu_password' antes de ejecutar este script"
exit 1
fi
echo "╔══════════════════════════════════════════════════════════════╗"
echo "║ CONFIGURACIÓN SSH Y PUSH A PRODUCCIÓN ║"
echo "╚══════════════════════════════════════════════════════════════╝"
echo ""
# Verificar si sshpass está instalado
if ! command -v sshpass &> /dev/null; then
echo "📦 Instalando sshpass..."
sudo apt-get update -qq
sudo apt-get install -y sshpass
fi
echo "🔐 Copiando clave SSH al servidor..."
cat ~/.ssh/id_ed25519.pub | \
sshpass -p "$PASSWORD" ssh -o StrictHostKeyChecking=no \
"$SERVER" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
echo "✅ Clave SSH copiada"
echo ""
echo "🧪 Probando conexión SSH..."
sshpass -p "$PASSWORD" ssh -o StrictHostKeyChecking=no "$SERVER" "echo '✅ Conexión exitosa'"
echo ""
echo "🚀 Haciendo push a producción..."
cd "$(dirname "$0")/.."
git push production main
echo ""
echo "✅ ¡Push completado exitosamente!"