diff options
| author | David Wragg <dpw@lshift.net> | 2009-08-13 17:34:46 +0100 |
|---|---|---|
| committer | David Wragg <dpw@lshift.net> | 2009-08-13 17:34:46 +0100 |
| commit | c7397e4419bce2a3c2bc58e709d703336609a42e (patch) | |
| tree | a4199ec0f22f694227b112dde5243bd460f61141 /packaging/common | |
| parent | 9a046e9f16434b217d23fe97842377e88cb0d567 (diff) | |
| download | rabbitmq-server-git-c7397e4419bce2a3c2bc58e709d703336609a42e.tar.gz | |
Use a common init script for RPMs and debs
Put the common init file into packaging/common, and modify the RPM and
deb builds to make the one substitution required to this file at build
time.
Diffstat (limited to 'packaging/common')
| -rw-r--r-- | packaging/common/rabbitmq-server.init | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/packaging/common/rabbitmq-server.init b/packaging/common/rabbitmq-server.init new file mode 100644 index 0000000000..7d89544f2a --- /dev/null +++ b/packaging/common/rabbitmq-server.init @@ -0,0 +1,131 @@ +#!/bin/sh +# +# rabbitmq-server RabbitMQ broker +# +# chkconfig: - 80 05 +# description: Enable AMQP service provided by RabbitMQ +# + +### BEGIN INIT INFO +# Provides: rabbitmq-server +# Required-Start: $remote_fs $network +# Required-Stop: $remote_fs $network +# Default-Start: +# Default-Stop: +# Description: RabbitMQ broker +# Short-Description: Enable AMQP service provided by RabbitMQ broker +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DAEMON=/usr/sbin/rabbitmq-multi +NAME=rabbitmq-server +DESC=rabbitmq-server +USER=rabbitmq +NODE_COUNT=1 +ROTATE_SUFFIX= + +DEFAULTS_FILE= # This is filled in when building packages + +test -x $DAEMON || exit 0 + +# Include rabbitmq defaults if available +if [ -f "$DEFAULTS_FILE" ] ; then + . $DEFAULTS_FILE +fi + +RETVAL=0 +set -e + +start_rabbitmq () { + set +e + $DAEMON start_all ${NODE_COUNT} > /var/log/rabbitmq/startup_log 2> /var/log/rabbitmq/startup_err + case "$?" in + 0) + echo SUCCESS + RETVAL=0 + ;; + 1) + echo TIMEOUT - check /var/log/rabbitmq/startup_\{log,err\} + RETVAL=1 + ;; + *) + echo FAILED - check /var/log/rabbitmq/startup_log, _err + RETVAL=1 + ;; + esac + set -e +} + +stop_rabbitmq () { + set +e + status_rabbitmq quiet + if [ $RETVAL = 0 ] ; then + $DAEMON stop_all > /var/log/rabbitmq/shutdown_log 2> /var/log/rabbitmq/shutdown_err + RETVAL=$? + if [ $RETVAL != 0 ] ; then + echo FAILED - check /var/log/rabbitmq/shutdown_log, _err + fi + else + echo No nodes running + RETVAL=0 + fi + set -e +} + +status_rabbitmq() { + set +e + if [ "$1" != "quiet" ] ; then + $DAEMON status 2>&1 + else + $DAEMON status > /dev/null 2>&1 + fi + if [ $? != 0 ] ; then + RETVAL=1 + fi + set -e +} + +rotate_logs_rabbitmq() { + set +e + $DAEMON rotate_logs ${ROTATE_SUFFIX} + if [ $? != 0 ] ; then + RETVAL=1 + fi + set -e +} + +restart_rabbitmq() { + stop_rabbitmq + start_rabbitmq +} + +case "$1" in + start) + echo -n "Starting $DESC: " + start_rabbitmq + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + stop_rabbitmq + echo "$NAME." + ;; + status) + status_rabbitmq + ;; + rotate-logs) + echo -n "Rotating log files for $DESC: " + rotate_logs_rabbitmq + ;; + force-reload|reload|restart|condrestart|try-restart) + echo -n "Restarting $DESC: " + restart_rabbitmq + echo "$NAME." + ;; + *) + echo "Usage: $0 {start|stop|status|rotate-logs|restart|condrestart|try-restart|reload|force-reload}" >&2 + RETVAL=1 + ;; +esac + +exit $RETVAL |
