#!/bin/sh ### BEGIN INIT INFO # Provides: OpenStack Dashboard # Required-Start: networking # Required-Stop: networking # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: OpenStack Dashboard # Description: Web based user interface to OpenStack services including # Nova, Swift, Keystone, etc. ### END INIT INFO DESC="openstack-dashboard" PIDFILE="/var/run/$DESC.pid" PYTHON=`which python` EXEC="@PYTHON_SITEPACKAGES@/openstack_dashboard/manage.py" start() { if [ -e $PIDFILE ]; then PIDDIR=/proc/$(cat $PIDFILE) if [ -d ${PIDDIR} ]; then echo "$DESC already running." exit 1 else echo "Removing stale PID file $PIDFILE" rm -f $PIDFILE fi fi echo -n "Starting $DESC..." start-stop-daemon --start --quiet --background --pidfile ${PIDFILE} \ --make-pidfile --exec ${PYTHON} -- ${EXEC} runserver 0.0.0.0:8080 if [ $? -eq 0 ]; then echo "done." else echo "failed." fi } stop() { if [ ! -e $PIDFILE ]; then return; fi echo -n "Stopping $DESC..." pkill -TERM -P `cat $PIDFILE` if [ $? -eq 0 ]; then echo "done." else echo "failed." fi rm -f $PIDFILE } status() { pid=`cat $PIDFILE 2>/dev/null` if [ -n "$pid" ]; then if ps -p $pid > /dev/null 2>&1 ; then echo "$DESC is running" return fi fi echo "$DESC is not running" } case "$1" in start) start ;; stop) stop ;; restart|force-reload|reload) stop start ;; status) status ;; *) echo "Usage: $0 {start|stop|force-reload|restart|reload|status}" exit 1 ;; esac exit 0