summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Wragg <dpw@lshift.net>2009-08-13 17:34:46 +0100
committerDavid Wragg <dpw@lshift.net>2009-08-13 17:34:46 +0100
commit280790b6016e14612ae83125882978e6a1b48c37 (patch)
treea4199ec0f22f694227b112dde5243bd460f61141
parent8c9711a7607c9b0c4d003c1d5a220594f9f7ef6b (diff)
downloadrabbitmq-server-280790b6016e14612ae83125882978e6a1b48c37.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.
-rw-r--r--packaging/RPMS/Fedora/Makefile2
-rw-r--r--packaging/common/rabbitmq-server.init (renamed from packaging/RPMS/Fedora/init.d)6
-rw-r--r--packaging/debs/Debian/Makefile1
-rw-r--r--packaging/debs/Debian/debian/init.d129
4 files changed, 6 insertions, 132 deletions
diff --git a/packaging/RPMS/Fedora/Makefile b/packaging/RPMS/Fedora/Makefile
index c74d4533..059acd9f 100644
--- a/packaging/RPMS/Fedora/Makefile
+++ b/packaging/RPMS/Fedora/Makefile
@@ -28,8 +28,8 @@ prepare:
sed -i 's|%%VERSION%%|$(VERSION)|;s|%%REQUIRES%%|$(REQUIRES)|' \
SPECS/rabbitmq-server.spec
- cp init.d SOURCES/rabbitmq-server.init
cp ${COMMON_DIR}/* SOURCES/
+ sed -i 's|^DEFAULTS_FILE=.*$$|DEFAULTS_FILE=/etc/sysconfig/rabbitmq|' SOURCES/rabbitmq-server.init
cp rabbitmq-server.logrotate SOURCES/rabbitmq-server.logrotate
server: prepare
diff --git a/packaging/RPMS/Fedora/init.d b/packaging/common/rabbitmq-server.init
index eafae29d..7d89544f 100644
--- a/packaging/RPMS/Fedora/init.d
+++ b/packaging/common/rabbitmq-server.init
@@ -24,11 +24,13 @@ 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 /etc/sysconfig/rabbitmq ] ; then
- . /etc/sysconfig/rabbitmq
+if [ -f "$DEFAULTS_FILE" ] ; then
+ . $DEFAULTS_FILE
fi
RETVAL=0
diff --git a/packaging/debs/Debian/Makefile b/packaging/debs/Debian/Makefile
index 67fabae0..4eb38c39 100644
--- a/packaging/debs/Debian/Makefile
+++ b/packaging/debs/Debian/Makefile
@@ -21,6 +21,7 @@ package: clean
tar -zxvf $(DEBIAN_ORIG_TARBALL)
cp -r debian $(UNPACKED_DIR)
cp $(COMMON_DIR)/* $(UNPACKED_DIR)/debian/
+ sed -i 's|^DEFAULTS_FILE=.*$$|DEFAULTS_FILE=/etc/default/rabbitmq|' $(UNPACKED_DIR)/debian/rabbitmq-server.init
chmod a+x $(UNPACKED_DIR)/debian/rules
UNOFFICIAL_RELEASE=$(UNOFFICIAL_RELEASE) VERSION=$(VERSION) ./check-changelog.sh rabbitmq-server $(UNPACKED_DIR)
cd $(UNPACKED_DIR); GNUPGHOME=$(GNUPG_PATH)/.gnupg dpkg-buildpackage -rfakeroot $(SIGNING)
diff --git a/packaging/debs/Debian/debian/init.d b/packaging/debs/Debian/debian/init.d
deleted file mode 100644
index 10a6c498..00000000
--- a/packaging/debs/Debian/debian/init.d
+++ /dev/null
@@ -1,129 +0,0 @@
-#!/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=
-
-test -x $DAEMON || exit 0
-
-# Include rabbitmq defaults if available
-if [ -f /etc/default/rabbitmq ] ; then
- . /etc/default/rabbitmq
-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