diff options
author | Tony Garnock-Jones <tonyg@lshift.net> | 2009-02-16 15:58:38 +0000 |
---|---|---|
committer | Tony Garnock-Jones <tonyg@lshift.net> | 2009-02-16 15:58:38 +0000 |
commit | 3d47fe6062b4022e79ac9cb25184afa3255ea6e8 (patch) | |
tree | c7bd2021976fb21d27cb23cd2fd50c6e5c03294a | |
parent | e7abe601e1807c11bcec0261672eb23abbd7a9c9 (diff) | |
parent | 15c4e5c394806949a7b0089cfc94aaf58f91dd5a (diff) | |
download | rabbitmq-server-3d47fe6062b4022e79ac9cb25184afa3255ea6e8.tar.gz |
merge bug20348 into v1_5
-rw-r--r-- | packaging/RPMS/Fedora/Makefile | 3 | ||||
-rw-r--r-- | packaging/RPMS/Fedora/init.d | 14 | ||||
-rw-r--r-- | packaging/RPMS/Fedora/rabbitmq-server.spec | 10 | ||||
-rw-r--r-- | packaging/RPMS/Fedora/rabbitmqctl_wrapper | 19 | ||||
-rw-r--r-- | packaging/common/rabbitmq-script-wrapper (renamed from packaging/debs/Debian/debian/rabbitmqctl_wrapper) | 8 | ||||
-rw-r--r-- | packaging/debs/Debian/Makefile | 2 | ||||
-rw-r--r-- | packaging/debs/Debian/debian/init.d | 13 | ||||
-rw-r--r-- | packaging/debs/Debian/debian/rules | 5 | ||||
-rwxr-xr-x | scripts/rabbitmq-multi | 5 | ||||
-rwxr-xr-x | scripts/rabbitmq-server | 5 |
10 files changed, 42 insertions, 42 deletions
diff --git a/packaging/RPMS/Fedora/Makefile b/packaging/RPMS/Fedora/Makefile index cf3a93df..973608cc 100644 --- a/packaging/RPMS/Fedora/Makefile +++ b/packaging/RPMS/Fedora/Makefile @@ -1,5 +1,6 @@ VERSION=0.0.0 SOURCE_TARBALL_DIR=../../../dist +COMMON_DIR=../../common TARBALL=$(SOURCE_TARBALL_DIR)/rabbitmq-server-$(VERSION).tar.gz TOP_DIR=$(shell pwd) #Under debian we do not want to check build dependencies, since that @@ -30,7 +31,7 @@ prepare: SPECS/rabbitmq-server.spec cp init.d SOURCES/rabbitmq-server.init - cp rabbitmqctl_wrapper SOURCES/rabbitmq-server.wrapper + cp ${COMMON_DIR}/* SOURCES/ cp rabbitmq-server.logrotate SOURCES/rabbitmq-server.logrotate server: prepare diff --git a/packaging/RPMS/Fedora/init.d b/packaging/RPMS/Fedora/init.d index a006a5a7..9f4dbb43 100644 --- a/packaging/RPMS/Fedora/init.d +++ b/packaging/RPMS/Fedora/init.d @@ -16,8 +16,8 @@ # Short-Description: Enable AMQP service provided by RabbitMQ broker ### END INIT INFO -DAEMON_NAME=rabbitmq-multi -DAEMON=/usr/lib/rabbitmq/bin/$DAEMON_NAME +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DAEMON=/usr/sbin/rabbitmq-multi NAME=rabbitmq-server DESC=rabbitmq-server USER=rabbitmq @@ -39,7 +39,7 @@ cd / start_rabbitmq () { set +e - su $USER -s /bin/sh -c "$DAEMON start_all ${NODE_COUNT}" > /var/log/rabbitmq/startup_log 2> /var/log/rabbitmq/startup_err + $DAEMON start_all ${NODE_COUNT} > /var/log/rabbitmq/startup_log 2> /var/log/rabbitmq/startup_err case "$?" in 0) echo SUCCESS && touch $LOCK_FILE @@ -61,7 +61,7 @@ stop_rabbitmq () { set +e status_rabbitmq quiet if [ $RETVAL = 0 ] ; then - su $USER -s /bin/sh -c "$DAEMON stop_all" > /var/log/rabbitmq/shutdown_log 2> /var/log/rabbitmq/shutdown_err + $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 @@ -78,9 +78,9 @@ stop_rabbitmq () { status_rabbitmq() { set +e if [ "$1" != "quiet" ] ; then - su $USER -s /bin/sh -c "$DAEMON status" 2>&1 + $DAEMON status 2>&1 else - su $USER -s /bin/sh -c "$DAEMON status" > /dev/null 2>&1 + $DAEMON status > /dev/null 2>&1 fi if [ $? != 0 ] ; then RETVAL=1 @@ -90,7 +90,7 @@ status_rabbitmq() { rotate_logs_rabbitmq() { set +e - su $USER -s /bin/sh -c "$DAEMON rotate_logs ${ROTATE_SUFFIX}" 2>&1 + $DAEMON rotate_logs ${ROTATE_SUFFIX} 2>&1 set -e } diff --git a/packaging/RPMS/Fedora/rabbitmq-server.spec b/packaging/RPMS/Fedora/rabbitmq-server.spec index fc109bdb..bedf8d81 100644 --- a/packaging/RPMS/Fedora/rabbitmq-server.spec +++ b/packaging/RPMS/Fedora/rabbitmq-server.spec @@ -5,7 +5,7 @@ License: MPLv1.1 Group: Development/Libraries Source: http://www.rabbitmq.com/releases/rabbitmq-server/v%{version}/%{name}-%{version}.tar.gz Source1: rabbitmq-server.init -Source2: rabbitmq-server.wrapper +Source2: rabbitmq-script-wrapper Source3: rabbitmq-server.logrotate URL: http://www.rabbitmq.com/ Vendor: LShift Ltd., Cohesive Financial Technologies LLC., Rabbit Technlogies Ltd. @@ -39,6 +39,7 @@ fi %prep %setup -n %{name}-%{version} +sed -i 's|/usr/lib/|%{_libdir}/|' %SOURCE2 %build make @@ -59,9 +60,10 @@ install -m 0755 %SOURCE1 %{buildroot}%{_initrddir}/rabbitmq-server chmod 0755 %{buildroot}%{_initrddir}/rabbitmq-server sed -i 's|/usr/lib/|%{_libdir}/|' %{buildroot}%{_initrddir}/rabbitmq-server -mkdir -p %{buildroot}%{_sbindir} -install -m 0755 %SOURCE2 %{buildroot}%{_sbindir}/rabbitmqctl -sed -i 's|/usr/lib/|%{_libdir}/|' %{buildroot}%{_sbindir}/rabbitmqctl + +install -p -D -m 0755 %SOURCE2 %{buildroot}%{_sbindir}/rabbitmqctl +install -p -D -m 0755 %SOURCE2 %{buildroot}%{_sbindir}/rabbitmq-server +install -p -D -m 0755 %SOURCE2 %{buildroot}%{_sbindir}/rabbitmq-multi mkdir -p %{buildroot}/etc/logrotate.d install -m 0644 %SOURCE3 %{buildroot}/etc/logrotate.d/rabbitmq-server diff --git a/packaging/RPMS/Fedora/rabbitmqctl_wrapper b/packaging/RPMS/Fedora/rabbitmqctl_wrapper deleted file mode 100644 index 6b387d29..00000000 --- a/packaging/RPMS/Fedora/rabbitmqctl_wrapper +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -# Escape spaces and quotes, because shell is revolting. -for arg in "$@" ; do - # Escape quotes in parameters, so that they're passed through cleanly. - arg=$(sed -e 's/"/\\"/' <<-END - $arg - END - ) - CMDLINE="${CMDLINE} \"${arg}\"" -done - -cd / -if [ `id -u` = 0 ] ; then - su rabbitmq -s /bin/sh -c "/usr/lib/rabbitmq/bin/rabbitmqctl ${CMDLINE}" -else - /usr/lib/rabbitmq/bin/rabbitmqctl - echo -e "\nOnly root should run rabbitmqctl\n" - exit 1 -fi diff --git a/packaging/debs/Debian/debian/rabbitmqctl_wrapper b/packaging/common/rabbitmq-script-wrapper index d53a6ca9..217d1658 100644 --- a/packaging/debs/Debian/debian/rabbitmqctl_wrapper +++ b/packaging/common/rabbitmq-script-wrapper @@ -11,11 +11,13 @@ done cd / +SCRIPT=`basename $0` + if [ `id -u` = 0 ] ; then - su rabbitmq -s /bin/sh -c "/usr/lib/rabbitmq/bin/rabbitmqctl ${CMDLINE}" + su rabbitmq -s /bin/sh -c "/usr/lib/rabbitmq/bin/${SCRIPT} ${CMDLINE}" else - /usr/lib/rabbitmq/bin/rabbitmqctl - echo -e "\nOnly root should run rabbitmqctl\n" + /usr/lib/rabbitmq/bin/${SCRIPT} + echo -e "\nOnly root should run ${SCRIPT}\n" exit 1 fi diff --git a/packaging/debs/Debian/Makefile b/packaging/debs/Debian/Makefile index 9479feb0..67fabae0 100644 --- a/packaging/debs/Debian/Makefile +++ b/packaging/debs/Debian/Makefile @@ -1,5 +1,6 @@ TARBALL_DIR=../../../dist TARBALL=$(shell (cd $(TARBALL_DIR); echo rabbitmq-server-[0-9]*.tar.gz)) +COMMON_DIR=../../common DEBIAN_ORIG_TARBALL=$(shell echo $(TARBALL) | sed -e 's:\(.*\)-\(.*\)\(\.tar\.gz\):\1_\2\.orig\3:g') VERSION=$(shell echo $(TARBALL) | sed -e 's:rabbitmq-server-\(.*\)\.tar\.gz:\1:g') UNPACKED_DIR=rabbitmq-server-$(VERSION) @@ -19,6 +20,7 @@ package: clean cp $(TARBALL_DIR)/$(TARBALL) $(DEBIAN_ORIG_TARBALL) tar -zxvf $(DEBIAN_ORIG_TARBALL) cp -r debian $(UNPACKED_DIR) + cp $(COMMON_DIR)/* $(UNPACKED_DIR)/debian/ 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 index 70dd0adf..aff0ce4d 100644 --- a/packaging/debs/Debian/debian/init.d +++ b/packaging/debs/Debian/debian/init.d @@ -9,7 +9,8 @@ # Short-Description: Enable AMQP service provided by RabbitMQ broker ### END INIT INFO -DAEMON=/usr/lib/rabbitmq/bin/rabbitmq-multi +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DAEMON=/usr/sbin/rabbitmq-multi NAME=rabbitmq-server DESC=rabbitmq-server USER=rabbitmq @@ -29,7 +30,7 @@ cd / start_rabbitmq () { set +e - su $USER -s /bin/sh -c "$DAEMON start_all ${NODE_COUNT}" > /var/log/rabbitmq/startup_log 2> /var/log/rabbitmq/startup_err + $DAEMON start_all ${NODE_COUNT} > /var/log/rabbitmq/startup_log 2> /var/log/rabbitmq/startup_err case "$?" in 0) echo SUCCESS @@ -51,7 +52,7 @@ stop_rabbitmq () { set +e status_rabbitmq quiet if [ $RETVAL = 0 ] ; then - su $USER -s /bin/sh -c "$DAEMON stop_all" > /var/log/rabbitmq/shutdown_log 2> /var/log/rabbitmq/shutdown_err + $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 @@ -66,9 +67,9 @@ stop_rabbitmq () { status_rabbitmq() { set +e if [ "$1" != "quiet" ] ; then - su $USER -s /bin/sh -c "$DAEMON status" 2>&1 + $DAEMON status 2>&1 else - su $USER -s /bin/sh -c "$DAEMON status" > /dev/null 2>&1 + $DAEMON status > /dev/null 2>&1 fi if [ $? != 0 ] ; then RETVAL=1 @@ -78,7 +79,7 @@ status_rabbitmq() { rotate_logs_rabbitmq() { set +e - su $USER -s /bin/sh -c "$DAEMON rotate_logs ${ROTATE_SUFFIX}" 2>&1 + $DAEMON rotate_logs ${ROTATE_SUFFIX} 2>&1 set -e } diff --git a/packaging/debs/Debian/debian/rules b/packaging/debs/Debian/debian/rules index 908ec481..31904851 100644 --- a/packaging/debs/Debian/debian/rules +++ b/packaging/debs/Debian/debian/rules @@ -14,5 +14,6 @@ DOCDIR=$(DEB_DESTDIR)usr/share/doc/rabbitmq-server/ install/rabbitmq-server:: mkdir -p $(DOCDIR) rm $(RABBIT_LIB)LICENSE* - cp debian/rabbitmqctl_wrapper $(DEB_DESTDIR)usr/sbin/rabbitmqctl - chmod a+x $(DEB_DESTDIR)usr/sbin/rabbitmqctl + for script in rabbitmqctl rabbitmq-server rabbitmq-multi; do \ + install -p -D -m 0755 debian/rabbitmq-script-wrapper $(DEB_DESTDIR)usr/sbin/$$script; \ + done diff --git a/scripts/rabbitmq-multi b/scripts/rabbitmq-multi index 84985e90..164c5e18 100755 --- a/scripts/rabbitmq-multi +++ b/scripts/rabbitmq-multi @@ -54,6 +54,11 @@ export \ RABBITMQ_SCRIPT_HOME \ RABBITMQ_PIDS_FILE +# we need to turn off path expansion because some of the vars, notably +# RABBITMQ_MULTI_ERL_ARGS, may contain terms that look like globs and +# there is no other way of preventing their expansion. +set -f + exec erl \ -pa "`dirname $0`/../ebin" \ -noinput \ diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index 572262c9..9a35c477 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -73,6 +73,11 @@ fi RABBITMQ_START_RABBIT= [ "x" = "x$RABBITMQ_NODE_ONLY" ] && RABBITMQ_START_RABBIT='-noinput -s rabbit' +# we need to turn off path expansion because some of the vars, notably +# RABBITMQ_SERVER_ERL_ARGS, contain terms that look like globs and +# there is no other way of preventing their expansion. +set -f + exec erl \ -pa "`dirname $0`/../ebin" \ ${RABBITMQ_START_RABBIT} \ |