diff options
| author | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2015-10-09 17:12:27 +0200 |
|---|---|---|
| committer | Jean-Sébastien Pédron <jean-sebastien.pedron@dumbbell.fr> | 2015-10-20 11:10:48 +0200 |
| commit | 231e90cacf3daec5f43b3307867129e61496b123 (patch) | |
| tree | 5f9d3667b953b47391c93f2e65eda6c3fc7d711b /scripts/rabbitmq-script-wrapper | |
| parent | bb018b6adc4295fe13690ca8c3e23a3b828856fd (diff) | |
| download | rabbitmq-server-git-231e90cacf3daec5f43b3307867129e61496b123.tar.gz | |
Packages are now "self-hosted": no need for the packaging dir
... in the source distribution anymore
Diffstat (limited to 'scripts/rabbitmq-script-wrapper')
| -rw-r--r-- | scripts/rabbitmq-script-wrapper | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/scripts/rabbitmq-script-wrapper b/scripts/rabbitmq-script-wrapper new file mode 100644 index 0000000000..ed4c276e53 --- /dev/null +++ b/scripts/rabbitmq-script-wrapper @@ -0,0 +1,52 @@ +#!/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 GoPivotal, Inc. +## Copyright (c) 2007-2015 Pivotal Software, Inc. All rights reserved. +## + +SED_OPT="-E" +if [ $(uname -s) = "Linux" ]; then + SED_OPT="-r" +fi + +for arg in "$@" ; do + # Wrap each arg in single quotes and wrap single quotes in double quotes, so that they're passed through cleanly. + arg=`printf %s "$arg" | sed $SED_OPT -e "s/'/'\"'\"'/g"` + CMDLINE="${CMDLINE} '${arg}'" +done + +cd /var/lib/rabbitmq + +SCRIPT=`basename $0` + +if [ `id -u` = `id -u rabbitmq` -a "$SCRIPT" = "rabbitmq-server" ] ; then + RABBITMQ_ENV=/usr/lib/rabbitmq/bin/rabbitmq-env + RABBITMQ_SCRIPTS_DIR=$(dirname "$RABBITMQ_ENV") + . "$RABBITMQ_ENV" + + exec /usr/lib/rabbitmq/bin/rabbitmq-server "$@" @STDOUT_STDERR_REDIRECTION@ +elif [ `id -u` = `id -u rabbitmq` -o "$SCRIPT" = "rabbitmq-plugins" ] ; then + if [ -f $PWD/.erlang.cookie ] ; then + export HOME=. + fi + exec /usr/lib/rabbitmq/bin/${SCRIPT} "$@" +elif [ `id -u` = 0 ] ; then + @SU_RABBITMQ_SH_C@ "/usr/lib/rabbitmq/bin/${SCRIPT} ${CMDLINE}" +else + /usr/lib/rabbitmq/bin/${SCRIPT} + echo + echo "Only root or rabbitmq should run ${SCRIPT}" + echo + exit 1 +fi |
