# cd /var/www/html/alumniagra.shardatech.org/alumni-web/server
# /usr/bin/node index


#!/bin/bash

# App Details
APP_DIR="/var/www/html/alumniagra.shardatech.org/alumni-web/server"
APP_MAIN="index.js"
LOG_DIR="$APP_DIR/logs"
APP_LOG="$LOG_DIR/app.log"
CRON_LOG="$LOG_DIR/start-alumniweb-node.log"

# Ensure log directory exists
mkdir -p "$LOG_DIR"

echo "$(date): Restart script triggered" >> "$CRON_LOG"

# Find the process running from APP_DIR and kill it (specific to your project)
NODE_PID=$(ps aux | grep "$APP_DIR/$APP_MAIN" | grep -v grep | awk '{print $2}')
if [ ! -z "$NODE_PID" ]; then
  kill "$NODE_PID"
  echo "$(date): Killed process with PID $NODE_PID" >> "$CRON_LOG"
else
  echo "$(date): No existing process found to kill" >> "$CRON_LOG"
fi

# Navigate to app directory
cd "$APP_DIR" || {
  echo "$(date): Failed to cd to $APP_DIR" >> "$CRON_LOG"
  exit 1
}

# Start Node app with nohup in background
nohup /usr/bin/node "$APP_MAIN" > "$APP_LOG" 2>&1 &
NEW_PID=$!
sleep 2

# Check if the process started successfully
if ps -p $NEW_PID > /dev/null; then
  echo "$(date): Node process started successfully with PID $NEW_PID" >> "$CRON_LOG"
else
  echo "$(date): Failed to start Node process" >> "$CRON_LOG"
fi