#!/bin/sh ### BEGIN INIT INFO # Provides: barbican barbican-api # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Short-Description: OpenStack Secrets (barbican) - @suffix@ # Description: OpenStack Secrets (barbican) - @suffix@ ### END INIT INFO SUFFIX="@suffix@" DESC="barbican-@suffix@" PIDFILE="/var/run/barbican/barbican-$SUFFIX.pid" CONFIG_DIR="/etc/barbican" LOG_DIR="/var/log/barbican" UWSGI="/usr/bin/uwsgi" EXEC="--master --emperor $CONFIG_DIR/vassals --logto $LOG_DIR/barbican.log -b %BARBICAN_MAX_PACKET_SIZE%" if [ ! -d /var/run/barbican ]; then mkdir -p /var/run/barbican chown barbican:barbican /var/run/barbican fi 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 PIDDIR=`dirname $PIDFILE` if [ ! -d $PIDDIR ]; then mkdir -p $PIDDIR chown barbican $PIDDIR fi if [ ! -d $LOG_DIR ]; then mkdir -p $LOG_DIR fi echo -n "Starting $DESC..." start-stop-daemon --start --quiet --background \ --exec ${UWSGI} -- --pidfile ${PIDFILE} ${EXEC} if [ $? -eq 0 ]; then echo "done." else echo "failed." fi } stop () { echo -n "Stopping $DESC..." start-stop-daemon --stop --signal 9 --quiet --pidfile $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|reset) stop sleep 1 start ;; status) status ;; *) echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" exit 1 ;; esac exit 0