#!/bin/bash

# Define the absolute paths
PROJECT_DIR="/home/m1-ai/DEPLOYMENTS/AI-PHONE/ZACK-UPDATE/fixing_leaked"
PID_FILE="$PROJECT_DIR/flask_pid.txt"
LOG_FILE="$PROJECT_DIR/start_flask.log"
CONDA_ENV_NAME="blood-bot-v1"    # change if you use another env

# DevOps API paths
DEVOPS_DIR="$PROJECT_DIR/DEVOPSAPI"
DEVOPS_PID_FILE="$PROJECT_DIR/devops_pid.txt"
DEVOPS_LOG_FILE="$PROJECT_DIR/devops_api.log"

# Load conda
source ~/miniconda3/etc/profile.d/conda.sh

# Activate the Conda environment
conda activate $CONDA_ENV_NAME

# ── Start the Flask/pipeline server ──
cd $PROJECT_DIR
nohup python qwen_pipeline_server.py >> "$LOG_FILE" 2>&1 &
FLASK_PID=$!
sleep 2

CURRENT_TIME=$(date "+%Y-%m-%d %H:%M:%S")

if ps -p $FLASK_PID > /dev/null
then
   echo $FLASK_PID > $PID_FILE
   echo "[$CURRENT_TIME] Flask server started with PID $FLASK_PID" >> $LOG_FILE
   echo "Flask server started with PID $FLASK_PID"
else
   echo "[$CURRENT_TIME] Failed to start Flask server" >> $LOG_FILE
   echo "Failed to start Flask server"
fi

# ── Start the DevOps API server (port 8000) ──
cd $DEVOPS_DIR
nohup python main.py >> "$DEVOPS_LOG_FILE" 2>&1 &
DEVOPS_PID=$!
sleep 2

CURRENT_TIME=$(date "+%Y-%m-%d %H:%M:%S")

if ps -p $DEVOPS_PID > /dev/null
then
   echo $DEVOPS_PID > $DEVOPS_PID_FILE
   echo "[$CURRENT_TIME] DevOps API started with PID $DEVOPS_PID" >> $DEVOPS_LOG_FILE
   echo "DevOps API started with PID $DEVOPS_PID"
else
   echo "[$CURRENT_TIME] Failed to start DevOps API" >> $DEVOPS_LOG_FILE
   echo "Failed to start DevOps API"
fi
