summaryrefslogtreecommitdiff
path: root/debian/nova-consoleproxy.nova-spicehtml5proxy.init
diff options
context:
space:
mode:
Diffstat (limited to 'debian/nova-consoleproxy.nova-spicehtml5proxy.init')
-rw-r--r--debian/nova-consoleproxy.nova-spicehtml5proxy.init107
1 files changed, 107 insertions, 0 deletions
diff --git a/debian/nova-consoleproxy.nova-spicehtml5proxy.init b/debian/nova-consoleproxy.nova-spicehtml5proxy.init
new file mode 100644
index 0000000..d69dfed
--- /dev/null
+++ b/debian/nova-consoleproxy.nova-spicehtml5proxy.init
@@ -0,0 +1,107 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: nova-spicehtml5proxy
+# Required-Start: $network $local_fs $remote_fs $syslog
+# Required-Stop: $remote_fs
+# Should-Start: nova-consoleauth
+# Should-Stop: nova-consoleauth
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Nova Spice HTML5 Proxy
+# Description: Nova Spice HTML5 Proxy
+### END INIT INFO
+
+# Author: Thomas Goirand <zigo@debian.org>
+
+# PATH should only include /usr/* if it runs after the mountnfs.sh script
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="OpenStack Compute Spice HTML5 Proxy"
+NAME=nova-spicehtml5proxy
+DAEMON=/usr/bin/nova-spicehtml5proxy
+PIDFILE=/var/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/$NAME
+NOVA_USER=nova
+LOCK_DIR=/var/lock/nova/
+
+# Exit if the package is not installed, or the default file not present,
+# or not set to this daemon
+[ -x $DAEMON ] || exit 0
+if ! [ -r /etc/default/nova-consoleproxy ] ; then
+ exit 0
+fi
+. /etc/default/nova-consoleproxy
+
+[ -r /etc/default/openstack ] && . /etc/default/openstack
+[ -r /etc/default/$NAME ] && . /etc/default/$NAME
+
+[ "x$USE_SYSLOG" = "xyes" ] && DAEMON_ARGS="$DAEMON_ARGS --use-syslog"
+[ "x$USE_LOGFILE" != "xno" ] && DAEMON_ARGS="$DAEMON_ARGS --log-file /var/log/nova/nova-consoleproxy.log"
+
+if ! [ "${NOVA_CONSOLE_PROXY_TYPE}" = "spicehtml5" ] ; then
+ exit 0
+fi
+
+mkdir -p ${LOCK_DIR}
+chown ${NOVA_USER} ${LOCK_DIR}
+
+. /lib/lsb/init-functions
+
+do_start() {
+ start-stop-daemon --start --background --quiet --chuid ${NOVA_USER}:nova --make-pidfile --pidfile $PIDFILE --startas $DAEMON --test > /dev/null \
+ || return 1
+ start-stop-daemon --start --background --quiet --chuid ${NOVA_USER}:nova --make-pidfile --pidfile $PIDFILE --startas $DAEMON -- \
+ $DAEMON_ARGS \
+ || return 2
+}
+
+do_stop() {
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE
+ RETVAL="$?"
+ rm -f $PIDFILE
+ return "$RETVAL"
+}
+
+case "$1" in
+start)
+ log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case "$?" in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
+;;
+stop)
+ log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
+;;
+status)
+ status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+;;
+restart|force-reload)
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1)
+ do_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *)
+ # Failed to stop
+ log_end_msg 1
+ ;;
+ esac
+;;
+*)
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ exit 3
+;;
+esac
+