#!/bin/bash

RUN_DIR=/var/vcap/sys/run/elastalert-server
LOG_DIR=/var/vcap/sys/log/elastalert-server
STORE_DIR=/var/vcap/store/elastalert-server
JOB_DIR=/var/vcap/jobs/elastalert-server
TMP_DIR=/var/vcap/sys/tmp/elastalert-server

PIDFILE=$RUN_DIR/elastalert-server.pid
RUNAS=vcap

export NODE_PATH=/var/vcap/packages/node
export PYTHONPATH=/var/vcap/packages/elastalert/lib/python3.12/site-packages/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/var/vcap/packages/python3.12/lib
export PATH=$NODE_PATH/bin:/var/vcap/packages/python3.12/bin:$PATH

source $JOB_DIR/bin/ctl_utils.sh

case $1 in

  start)
    mkdir -p $RUN_DIR $LOG_DIR $STORE_DIR $TMP_DIR

    pid_guard $PIDFILE elastalert-server

    cd /var/vcap/packages/elastalert-server/

    echo "Starting elastalert-server..." >>$LOG_DIR/elastalert-server.stdout.log
    echo $$ > $PIDFILE

    NODE_PATH=.
    BABEL_DISABLE_CACHE=1
    # exec chpst -u $RUNAS:$RUNAS \
    exec node index.js \
        >>$LOG_DIR/elastalert-server.stdout.log \
        2>>$LOG_DIR/elastalert-server.stderr.log
    ;;

  stop)
    pkill -SIGINT --pidfile $PIDFILE
    # kill_and_wait $PIDFILE
    ;;

  *)
  echo "Usage: ctl {start|stop}" ;;
esac
exit 0