blob: d4af1cce3611088e372b84853542cfc9aaa4a9bd [file] [log] [blame]
#!/bin/sh
# Start/stop the thermos-observer daemon.
#
### BEGIN INIT INFO
# Provides: thermos
# Required-Start: $remote_fs $syslog $time
# Required-Stop: $remote_fs $syslog $time
# Should-Start: $network $named slapd autofs ypbind nscd nslcd
# Should-Stop: $network $named slapd autofs ypbind nscd nslcd
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Thermos observer daemon
# Description: Thermos observer is a component of Apache Aurora. It
# provides administrative visibility into the status of
# running tasks on mesos-slave nodes.
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DESC="Aurora Thermos observer"
NAME=thermos
DAEMON=/usr/sbin/thermos_observer
PIDFILE=/var/run/aurora-observer.pid
SCRIPTNAME=/etc/init.d/"$NAME"
test -f $DAEMON || exit 0
. /lib/lsb/init-functions
if which initctl >/dev/null && initctl version | grep -q upstart; then
if test -e /lib/init/upstart-job -a -e /etc/init/${NAME}.conf; then
. /lib/init/upstart-job
exit $?
fi
fi
[ -r /etc/default/thermos ] && . /etc/default/thermos
ARGS="--port=${OBSERVER_PORT:-1338}
--mesos-root=${MESOS_ROOT:-/var/lib/mesos}
--app_daemonize
--app_pidfile=$PIDFILE
--log_to_disk=NONE
--log_to_stderr=google:INFO
${EXTRA_THERMOS_OBSERVER_ARGS}"
case "$1" in
start)
log_daemon_msg "Starting $DESC $NAME with $ARGS"
mkdir -p /var/log/aurora
start_daemon -p $PIDFILE $DAEMON $ARGS
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping $DESC $NAME"
killproc -p $PIDFILE $DAEMON
RETVAL=$?
[ $RETVAL -eq 0 ] && [ -e "$PIDFILE" ] && rm -f $PIDFILE
log_end_msg $RETVAL
;;
restart|force-reload) log_daemon_msg "Restarting $DESC" "$NAME"
$0 stop
$0 start
;;
status)
status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
;;
*)
log_action_msg "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}"
exit 2
;;
esac
exit 0