#!/bin/bash
# ──────────────────────────────────────────────────
# CloudPrime Connect — Next.js Deployment Script
# Target: host.cloudprime.co.za (cPanel/WHM)
# Port: 3004
# ──────────────────────────────────────────────────

set -e

APP_DIR="/home/cloudpri/public_html/cloudprime-next"
LOG_DIR="$APP_DIR/logs"

echo "========================================="
echo " CloudPrime Connect — Deployment"
echo "========================================="

# 1. Create directories
echo "[1/6] Creating directories..."
mkdir -p "$LOG_DIR"

# 2. Install dependencies
echo "[2/6] Installing Node.js dependencies..."
npm install --production=false

# 3. Build the application
echo "[3/6] Building Next.js application..."
npm run build

# 4. Stop existing PM2 process if running
echo "[4/6] Stopping existing process (if any)..."
npx pm2 delete cloudprime-website 2>/dev/null || true

# 5. Start with PM2
echo "[5/6] Starting application with PM2 on port 3004..."
npx pm2 start ecosystem.config.cjs

# 6. Save PM2 config
echo "[6/6] Saving PM2 process list..."
npx pm2 save

echo ""
echo "========================================="
echo " Deployment Complete!"
echo "========================================="
echo ""
echo "  App URL:  http://host.cloudprime.co.za:3004/"
echo "  PM2:      npx pm2 status"
echo "  Logs:     npx pm2 logs cloudprime-website"
echo "  Restart:  npx pm2 restart cloudprime-website"
echo "  Stop:     npx pm2 stop cloudprime-website"
echo ""
echo "  To set up Apache reverse proxy, see DEPLOY.md"
echo ""
