| #!/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 |