#!/bin/sh

### BEGIN INIT INFO
# Provides: repo-backend
# Required-Start:    $network $remote_fs $local_fs
# Required-Stop:     $network $remote_fs $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: repo-backend API services
# Description: repo-backend API services
### END INIT INFO

USER="repo"
API_PORT="8080"
LOG=false

# Read configuration variable file if it is present
[ -r /etc/default/repo-backend ] && . /etc/default/repo-backend

PIDFILE=/var/run/repo-backend/app.pid
LOGFILE=/var/log/repo-backend/app.log
DAEMON=$(which node)
DAEMON_OPTS=/usr/share/repo-backend/index.js
NAME=repo-backend

# Exportar variables de configuración para node
export USER API_PORT LOG PIDFILE LOGFILE REPREPRO_BASE_DIR LOAD_INTERVAL

. /lib/lsb/init-functions


do_start() {
	echo -n "Starting daemon: "$NAME
	mkdir -p `dirname $PIDFILE`
	chown $USER:$USER `dirname $PIDFILE`
	start-stop-daemon --start --background --quiet --chuid $USER:$USER --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS
    echo "."
}

do_stop() {
    echo -n "Stopping daemon: "$NAME
	start-stop-daemon --stop --quiet --chuid $USER:$USER --oknodo --pidfile $PIDFILE
    echo "."
}

case "$1" in
  start)
	do_start
	;;
  stop)
	do_stop
	;;
  restart|force-reload)
    echo -n "Restarting daemon: "$NAME
	do_stop
	do_start
	echo "."
	;;

  *)
	echo "Usage: "$1" {start|stop|restart}"
	exit 1
esac

exit 0
