summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Powell <steve@rabbitmq.com>2012-02-10 09:57:50 +0000
committerSteve Powell <steve@rabbitmq.com>2012-02-10 09:57:50 +0000
commit40c5ead0c93cb2b6e53cc27600a02f08e8fc3921 (patch)
treee23c8dccde2281422a0c96db6c73da02b4a47411
parentf91d1b93da97d304643ebd8dc1110180bdf9d46e (diff)
parente6de846242aa518ee0eacdbad1af7fb60328b2d5 (diff)
downloadrabbitmq-server-40c5ead0c93cb2b6e53cc27600a02f08e8fc3921.tar.gz
Merge default in
-rw-r--r--Makefile2
-rw-r--r--packaging/RPMS/Fedora/Makefile21
-rw-r--r--packaging/debs/Debian/Makefile15
-rw-r--r--packaging/generic-unix/Makefile3
-rw-r--r--packaging/generic-unix/rabbitmq-sys34
-rw-r--r--packaging/macports/Makefile5
-rw-r--r--packaging/macports/Portfile.in10
-rwxr-xr-xpackaging/macports/make-port-diff.sh3
-rw-r--r--packaging/windows/Makefile2
-rwxr-xr-xscripts/rabbitmq-env28
-rw-r--r--scripts/rabbitmq-sys30
11 files changed, 110 insertions, 43 deletions
diff --git a/Makefile b/Makefile
index 31c71dd4..4ae0763f 100644
--- a/Makefile
+++ b/Makefile
@@ -316,7 +316,7 @@ install_bin: all install_dirs
cp -r ebin include LICENSE* INSTALL $(TARGET_DIR)
chmod 0755 scripts/*
- for script in rabbitmq-env rabbitmq-server rabbitmqctl rabbitmq-plugins; do \
+ for script in rabbitmq-env rabbitmq-server rabbitmqctl rabbitmq-plugins rabbitmq-sys; do \
cp scripts/$$script $(TARGET_DIR)/sbin; \
[ -e $(SBIN_DIR)/$$script ] || ln -s $(SCRIPTS_REL_PATH)/$$script $(SBIN_DIR)/$$script; \
done
diff --git a/packaging/RPMS/Fedora/Makefile b/packaging/RPMS/Fedora/Makefile
index c67d8fd6..2031de4d 100644
--- a/packaging/RPMS/Fedora/Makefile
+++ b/packaging/RPMS/Fedora/Makefile
@@ -26,20 +26,23 @@ prepare:
mkdir -p BUILD SOURCES SPECS SRPMS RPMS tmp
cp $(TARBALL_DIR)/$(TARBALL) SOURCES
cp rabbitmq-server.spec SPECS
- sed -i 's|%%VERSION%%|$(VERSION)|;s|%%REQUIRES%%|$(REQUIRES)|' \
- SPECS/rabbitmq-server.spec
+ sed -e 's|%%VERSION%%|$(VERSION)|;s|%%REQUIRES%%|$(REQUIRES)|' \
+ SPECS/rabbitmq-server.spec >SPECS/rabbitmq-server.spec.tmp \
+ && mv SPECS/rabbitmq-server.spec.tmp SPECS/rabbitmq-server.spec
cp ${COMMON_DIR}/* SOURCES/
- sed -i \
- -e 's|^LOCK_FILE=.*$$|LOCK_FILE=/var/lock/subsys/$$NAME|' \
- SOURCES/rabbitmq-server.init
+ sed -e 's|^LOCK_FILE=.*$$|LOCK_FILE=/var/lock/subsys/$$NAME|' \
+ SOURCES/rabbitmq-server.init >SOURCES/rabbitmq-server.init.tmp \
+ && mv SOURCES/rabbitmq-server.init.tmp SOURCES/rabbitmq-server.init
ifeq "$(RPM_OS)" "fedora"
# Fedora says that only vital services should have Default-Start
- sed -i -e '/^# Default-Start:/d;/^# Default-Stop:/d' \
- SOURCES/rabbitmq-server.init
+ sed -e '/^# Default-Start:/d;/^# Default-Stop:/d' \
+ SOURCES/rabbitmq-server.init >SOURCES/rabbitmq-server.init.tmp \
+ && mv SOURCES/rabbitmq-server.init.tmp SOURCES/rabbitmq-server.init
endif
- sed -i -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
- SOURCES/rabbitmq-script-wrapper
+ sed -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
+ SOURCES/rabbitmq-script-wrapper >SOURCES/rabbitmq-script-wrapper.tmp \
+ && mv SOURCES/rabbitmq-script-wrapper.tmp SOURCES/rabbitmq-script-wrapper
cp rabbitmq-server.logrotate SOURCES/rabbitmq-server.logrotate
server: prepare
diff --git a/packaging/debs/Debian/Makefile b/packaging/debs/Debian/Makefile
index 79e9c1dd..de9cf400 100644
--- a/packaging/debs/Debian/Makefile
+++ b/packaging/debs/Debian/Makefile
@@ -24,13 +24,14 @@ package: clean
cp $(COMMON_DIR)/* $(UNPACKED_DIR)/debian/
# Debian and descendants differ from most other distros in that
# runlevel 2 should start network services.
- sed -i \
- -e 's|^LOCK_FILE=.*$$|LOCK_FILE=|' \
- -e 's|^\(# Default-Start:\).*$$|\1 2 3 4 5|' \
- -e 's|^\(# Default-Stop:\).*$$|\1 0 1 6|' \
- $(UNPACKED_DIR)/debian/rabbitmq-server.init
- sed -i -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
- $(UNPACKED_DIR)/debian/rabbitmq-script-wrapper
+ sed -e 's|^LOCK_FILE=.*$$|LOCK_FILE=|' \
+ -e 's|^\(# Default-Start:\).*$$|\1 2 3 4 5|' \
+ -e 's|^\(# Default-Stop:\).*$$|\1 0 1 6|' \
+ $(UNPACKED_DIR)/debian/rabbitmq-server.init >$(UNPACKED_DIR)/debian/rabbitmq-server.init.tmp \
+ && mv $(UNPACKED_DIR)/debian/rabbitmq-server.init.tmp $(UNPACKED_DIR)/debian/rabbitmq-server.init
+ sed -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
+ $(UNPACKED_DIR)/debian/rabbitmq-script-wrapper >$(UNPACKED_DIR)/debian/rabbitmq-script-wrapper.tmp \
+ && mv $(UNPACKED_DIR)/debian/rabbitmq-script-wrapper.tmp $(UNPACKED_DIR)/debian/rabbitmq-script-wrapper
chmod a+x $(UNPACKED_DIR)/debian/rules
echo "This package was debianized by Tony Garnock-Jones <tonyg@rabbitmq.com> on\nWed, 3 Jan 2007 15:43:44 +0000.\n\nIt was downloaded from http://www.rabbitmq.com/\n\n" > $(UNPACKED_DIR)/debian/copyright
cat $(UNPACKED_DIR)/LICENSE >> $(UNPACKED_DIR)/debian/copyright
diff --git a/packaging/generic-unix/Makefile b/packaging/generic-unix/Makefile
index b5c342aa..dac28b84 100644
--- a/packaging/generic-unix/Makefile
+++ b/packaging/generic-unix/Makefile
@@ -12,6 +12,9 @@ dist:
MAN_DIR=`pwd`/$(TARGET_DIR)/share/man \
install
+ cp -f rabbitmq-sys $(TARGET_DIR)/sbin
+ chmod 0755 $(TARGET_DIR)/sbin/rabbitmq-sys
+
tar -zcf $(TARGET_TARBALL).tar.gz $(TARGET_DIR)
rm -rf $(SOURCE_DIR) $(TARGET_DIR)
diff --git a/packaging/generic-unix/rabbitmq-sys b/packaging/generic-unix/rabbitmq-sys
new file mode 100644
index 00000000..3151c979
--- /dev/null
+++ b/packaging/generic-unix/rabbitmq-sys
@@ -0,0 +1,34 @@
+#!/bin/sh
+## The contents of this file are subject to the Mozilla Public License
+## Version 1.1 (the "License"); you may not use this file except in
+## compliance with the License. You may obtain a copy of the License
+## at http://www.mozilla.org/MPL/
+##
+## Software distributed under the License is distributed on an "AS IS"
+## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+## the License for the specific language governing rights and
+## limitations under the License.
+##
+## The Original Code is RabbitMQ.
+##
+## The Initial Developer of the Original Code is VMware, Inc.
+## Copyright (c) 2012 VMware, Inc. All rights reserved.
+##
+
+### generic-unix ###
+### next line potentially updated in package install steps, do not alter
+SYS_PREFIX=${RABBITMQ_HOME}
+
+## Set system default values
+SERVER_ERL_ARGS="+K true +A30 +P 1048576 \
+-kernel inet_default_connect_options [{nodelay,true}]"
+
+CONFIG_FILE=${SYS_PREFIX}/etc/rabbitmq/rabbitmq
+LOG_BASE=${SYS_PREFIX}/var/log/rabbitmq
+MNESIA_BASE=${SYS_PREFIX}/var/lib/rabbitmq/mnesia
+ENABLED_PLUGINS_FILE=${SYS_PREFIX}/etc/rabbitmq/enabled_plugins
+
+OLD_CONF_ENV_FILE=${CONFIG_FILE}.conf
+CONF_ENV_FILE=${CONFIG_FILE}-env.conf
+
+PLUGINS_DIR="${RABBITMQ_HOME}/plugins"
diff --git a/packaging/macports/Makefile b/packaging/macports/Makefile
index 47da02dc..23864a03 100644
--- a/packaging/macports/Makefile
+++ b/packaging/macports/Makefile
@@ -39,8 +39,9 @@ $(DEST)/Portfile: Portfile.in
# explicitly.
macports: dirs $(DEST)/Portfile
cp $(COMMON_DIR)/rabbitmq-script-wrapper $(DEST)/files
- sed -i -e 's|@SU_RABBITMQ_SH_C@|SHELL=/bin/sh HOME=/var/lib/rabbitmq USER=rabbitmq LOGNAME=rabbitmq PATH="$$(eval `PATH=MACPORTS_PREFIX/bin /usr/libexec/path_helper -s`; echo $$PATH)" su -m rabbitmq -c|' \
- $(DEST)/files/rabbitmq-script-wrapper
+ sed -e 's|@SU_RABBITMQ_SH_C@|SHELL=/bin/sh HOME=/var/lib/rabbitmq USER=rabbitmq LOGNAME=rabbitmq PATH="$$(eval `PATH=MACPORTS_PREFIX/bin /usr/libexec/path_helper -s`; echo $$PATH)" su -m rabbitmq -c|' \
+ $(DEST)/files/rabbitmq-script-wrapper >$(DEST)/files/rabbitmq-script-wrapper.tmp \
+ && mv $(DEST)/files/rabbitmq-script-wrapper.tmp $(DEST)/files/rabbitmq-script-wrapper
cp patch-org.macports.rabbitmq-server.plist.diff $(DEST)/files
if [ -n "$(MACPORTS_USERHOST)" ] ; then \
tar cf - -C $(MACPORTS_DIR) . | ssh $(SSH_OPTS) $(MACPORTS_USERHOST) ' \
diff --git a/packaging/macports/Portfile.in b/packaging/macports/Portfile.in
index 360fb394..9ab64eaf 100644
--- a/packaging/macports/Portfile.in
+++ b/packaging/macports/Portfile.in
@@ -87,14 +87,8 @@ post-destroot {
xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${serverhome}
xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${mnesiadbdir}
- reinplace -E "s:(/etc/rabbitmq/rabbitmq):${prefix}\\1:g" \
- ${realsbin}/rabbitmq-env
- foreach var {CONFIG_FILE LOG_BASE MNESIA_BASE ENABLED_PLUGINS_FILE} {
- reinplace -E "s:^($var)=/:\\1=${prefix}/:" \
- ${realsbin}/rabbitmq-server \
- ${realsbin}/rabbitmqctl \
- ${realsbin}/rabbitmq-plugins
- }
+ reinplace -E 's:^SYS_PREFIX=${RABBITMQ_HOME}$:SYS_PREFIX='"${prefix}"':' \
+ ${realsbin}/rabbitmq-sys \
xinstall -m 555 ${filespath}/rabbitmq-script-wrapper \
${wrappersbin}/rabbitmq-server
diff --git a/packaging/macports/make-port-diff.sh b/packaging/macports/make-port-diff.sh
index 3eb1b9f5..0583b41b 100755
--- a/packaging/macports/make-port-diff.sh
+++ b/packaging/macports/make-port-diff.sh
@@ -15,7 +15,8 @@ cd $dir/macports
svn checkout http://svn.macports.org/repository/macports/trunk/dports/net/rabbitmq-server/ 2>&1 >/dev/null
# Clear out the svn $id tag
-sed -i -e 's|^# \$.*$|# $Id$|' rabbitmq-server/Portfile
+sed -e 's|^# \$.*$|# $Id$|' rabbitmq-server/Portfile >rabbitmq-server/Portfile.tmp \
+ && mv rabbitmq-server/Portfile.tmp rabbitmq-server/Portfile
# Get the files from the rabbitmq.com macports repo
cd ../rabbitmq
diff --git a/packaging/windows/Makefile b/packaging/windows/Makefile
index 828cf000..8e0ab074 100644
--- a/packaging/windows/Makefile
+++ b/packaging/windows/Makefile
@@ -25,7 +25,7 @@ dist:
xmlto -o . xhtml-nochunks ../../docs/rabbitmq-service.xml
elinks -dump -no-references -no-numbering rabbitmq-service.html \
> $(TARGET_DIR)/readme-service.txt
- todos $(TARGET_DIR)/readme-service.txt
+ todos $(TARGET_DIR)/readme-service.txt || unix2dos $(TARGET_DIR)/readme-service.txt
rm -rf $(TARGET_DIR)/plugins-src
zip -q -r $(TARGET_ZIP).zip $(TARGET_DIR)
rm -rf $(TARGET_DIR) rabbitmq-service.html
diff --git a/scripts/rabbitmq-env b/scripts/rabbitmq-env
index 1fd1339d..97d795b8 100755
--- a/scripts/rabbitmq-env
+++ b/scripts/rabbitmq-env
@@ -36,19 +36,19 @@ RABBITMQ_HOME="${SCRIPT_DIR}/.."
[ "x" = "x$HOSTNAME" ] && HOSTNAME=`env hostname`
NODENAME=rabbit@${HOSTNAME%%.*}
-## Set (non-empty) default values for rabbitmq-env.conf variables to override
-SERVER_ERL_ARGS="+K true +A30 +P 1048576 \
--kernel inet_default_connect_options [{nodelay,true}]"
-CONFIG_FILE=/etc/rabbitmq/rabbitmq
-LOG_BASE=/var/log/rabbitmq
-MNESIA_BASE=/var/lib/rabbitmq/mnesia
-PLUGINS_DIR="${RABBITMQ_HOME}/plugins"
-ENABLED_PLUGINS_FILE=/etc/rabbitmq/enabled_plugins
+## Set system defaults
+if [ ! -f ${SCRIPT_DIR}/rabbitmq-sys ]; then
+ echo -n "WARNING: system defaults are not available -- "
+ echo "check the installation completed correctly."
+ exit 1
+fi
+
+. ${SCRIPT_DIR}/rabbitmq-sys
-## Load configuration from the rabbitmq.conf file
-if [ -f /etc/rabbitmq/rabbitmq.conf ] && \
- [ ! -f /etc/rabbitmq/rabbitmq-env.conf ] ; then
- echo -n "WARNING: ignoring /etc/rabbitmq/rabbitmq.conf -- "
- echo "location has moved to /etc/rabbitmq/rabbitmq-env.conf"
+## Get configuration variables from the configure environment file
+if [ -f ${OLD_CONF_ENV_FILE} ] && \
+ [ ! -f ${CONF_ENV_FILE} ] ; then
+ echo -n "WARNING: ignoring ${OLD_CONF_ENV_FILE} -- "
+ echo "location has moved to ${CONF_ENV_FILE}"
fi
-[ -f /etc/rabbitmq/rabbitmq-env.conf ] && . /etc/rabbitmq/rabbitmq-env.conf
+[ -f ${CONF_ENV_FILE} ] && . ${CONF_ENV_FILE}
diff --git a/scripts/rabbitmq-sys b/scripts/rabbitmq-sys
new file mode 100644
index 00000000..45d7cbd7
--- /dev/null
+++ b/scripts/rabbitmq-sys
@@ -0,0 +1,30 @@
+#!/bin/sh
+## The contents of this file are subject to the Mozilla Public License
+## Version 1.1 (the "License"); you may not use this file except in
+## compliance with the License. You may obtain a copy of the License
+## at http://www.mozilla.org/MPL/
+##
+## Software distributed under the License is distributed on an "AS IS"
+## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+## the License for the specific language governing rights and
+## limitations under the License.
+##
+## The Original Code is RabbitMQ.
+##
+## The Initial Developer of the Original Code is VMware, Inc.
+## Copyright (c) 2012 VMware, Inc. All rights reserved.
+##
+
+## Set system default values
+SERVER_ERL_ARGS="+K true +A30 +P 1048576 \
+-kernel inet_default_connect_options [{nodelay,true}]"
+
+CONFIG_FILE=/etc/rabbitmq/rabbitmq
+LOG_BASE=/var/log/rabbitmq
+MNESIA_BASE=/var/lib/rabbitmq/mnesia
+ENABLED_PLUGINS_FILE=/etc/rabbitmq/enabled_plugins
+
+OLD_CONF_ENV_FILE=${CONFIG_FILE}.conf
+CONF_ENV_FILE=${CONFIG_FILE}-env.conf
+
+PLUGINS_DIR="${RABBITMQ_HOME}/plugins"