#!/bin/bash

# 1. Ubicación y Entorno (Vital para que el Cron no se pierda)
cd /var/www/html/atlanticmath.com/amsi-website
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

# 2. Actualizar código de GitHub
git fetch origin main
LOCAL=$(git rev-parse HEAD)
REMOTE=$(git rev-parse @{u})

if [ "$LOCAL" = "$REMOTE" ]; then
    echo "$(date): El código ya está actualizado."
else
    echo "$(date): Cambios detectados. Iniciando despliegue..."
    
    # Reset para limpiar cualquier conflicto y bajar lo nuevo
    git reset --hard origin/main
    
    # 3. Instalación y Build
    npm install
    npm run build
    
    # 4. El Reinicio Blindado
    # Primero intentamos un restart normal; si falla, lo borramos y creamos de nuevo
    pm2 restart amsi-website || pm2 start node_modules/next/dist/bin/next --name "amsi-website" -- start
    
    # Guardar para que PM2 recuerde este cambio tras reinicios del servidor
    pm2 save
    
    echo "$(date): Despliegue completado con éxito."
fi
