diff options
| author | Paul Jones <paulj@lshift.net> | 2009-07-29 09:42:51 +0100 |
|---|---|---|
| committer | Paul Jones <paulj@lshift.net> | 2009-07-29 09:42:51 +0100 |
| commit | 9398b1a9413be8430c061c5f0513aca55eb3264a (patch) | |
| tree | 2d2f3250a839054220cc97f178f6d687ff1ea2c8 | |
| parent | 39d8c604b32471fbf0afac857f02f0793c7d44e6 (diff) | |
| download | rabbitmq-server-git-9398b1a9413be8430c061c5f0513aca55eb3264a.tar.gz | |
Patched all scripts to be able to auto-detect their directory, even when symlinked
| -rwxr-xr-x | scripts/activate-plugins | 25 | ||||
| -rwxr-xr-x | scripts/rabbitmq-multi | 14 | ||||
| -rwxr-xr-x | scripts/rabbitmq-server | 14 | ||||
| -rwxr-xr-x | scripts/rabbitmqctl | 14 |
4 files changed, 58 insertions, 9 deletions
diff --git a/scripts/activate-plugins b/scripts/activate-plugins index 52f7ddbe61..536b5d353e 100755 --- a/scripts/activate-plugins +++ b/scripts/activate-plugins @@ -30,18 +30,31 @@ ## Contributor(s): ______________________________________. ## +SCRIPT_PATH="$0" +while [ -h "$SCRIPT_PATH" ] ; do + ls=`ls -ld "$SCRIPT_PATH"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + SCRIPT_PATH="$link" + else + SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$link" + fi +done +SCRIPT_DIR=`dirname $SCRIPT_PATH` + [ -f /etc/rabbitmq/rabbitmq.conf ] && . /etc/rabbitmq/rabbitmq.conf -RABBITMQ_EBIN=`dirname $0`/../ebin -[ "x" = "x$RABBITMQ_PLUGINS_DIR" ] && RABBITMQ_PLUGINS_DIR="`dirname $0`/../plugins" -[ "x" = "x$RABBITMQ_PLUGINS_EXPAND_DIR" ] && RABBITMQ_PLUGINS_EXPAND_DIR="`dirname $0`/../priv/plugins" +RABBITMQ_EBIN=${SCRIPT_DIR}/../ebin +echo $RABBITMQ_EBIN +[ "x" = "x$RABBITMQ_PLUGINS_DIR" ] && RABBITMQ_PLUGINS_DIR="${SCRIPT_DIR}/../plugins" +[ "x" = "x$RABBITMQ_PLUGINS_EXPAND_DIR" ] && RABBITMQ_PLUGINS_EXPAND_DIR="${SCRIPT_DIR}/../priv/plugins" exec erl \ -pa "$RABBITMQ_EBIN" \ -rabbit plugins_dir "\"$RABBITMQ_PLUGINS_DIR\"" \ - -rabbit plugins_expand_dir "\"$RABBITMQ_PLUGINS_EXPAND_DIR\"" \ - -rabbit rabbit_ebin "\"$RABBITMQ_EBIN\"" \ - -noinput \ + -rabbit plugins_expand_dir "\"$RABBITMQ_PLUGINS_EXPAND_DIR\"" \ + -rabbit rabbit_ebin "\"$RABBITMQ_EBIN\"" \ + -noinput \ -hidden \ -s rabbit_plugin_activator \ -extra "$@" diff --git a/scripts/rabbitmq-multi b/scripts/rabbitmq-multi index 1d0c785f6b..129a202d7f 100755 --- a/scripts/rabbitmq-multi +++ b/scripts/rabbitmq-multi @@ -37,6 +37,18 @@ PIDS_FILE=/var/lib/rabbitmq/pids MULTI_ERL_ARGS= MULTI_START_ARGS= +SCRIPT_PATH="$0" +while [ -h "$SCRIPT_PATH" ] ; do + ls=`ls -ld "$SCRIPT_PATH"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + SCRIPT_PATH="$link" + else + SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$link" + fi +done +SCRIPT_DIR=`dirname $SCRIPT_PATH` + [ -f /etc/rabbitmq/rabbitmq.conf ] && . /etc/rabbitmq/rabbitmq.conf [ "x" = "x$RABBITMQ_NODENAME" ] && RABBITMQ_NODENAME=${NODENAME} @@ -60,7 +72,7 @@ export \ set -f exec erl \ - -pa "`dirname $0`/../ebin" \ + -pa "${SCRIPT_DIR}/../ebin" \ -noinput \ -hidden \ ${RABBITMQ_MULTI_ERL_ARGS} \ diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index 40e32d3da9..41e27352cb 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -41,6 +41,18 @@ LOG_BASE=/var/log/rabbitmq MNESIA_BASE=/var/lib/rabbitmq/mnesia SERVER_START_ARGS= +SCRIPT_PATH="$0" +while [ -h "$SCRIPT_PATH" ] ; do + ls=`ls -ld "$SCRIPT_PATH"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + SCRIPT_PATH="$link" + else + SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$link" + fi +done +SCRIPT_DIR=`dirname $SCRIPT_PATH` + [ -f /etc/rabbitmq/rabbitmq.conf ] && . /etc/rabbitmq/rabbitmq.conf [ "x" = "x$RABBITMQ_NODENAME" ] && RABBITMQ_NODENAME=${NODENAME} @@ -75,7 +87,7 @@ fi RABBITMQ_START_RABBIT= [ "x" = "x$RABBITMQ_NODE_ONLY" ] && RABBITMQ_START_RABBIT='-noinput -s rabbit' -RABBITMQ_EBIN_ROOT="`dirname $0`/../ebin" +RABBITMQ_EBIN_ROOT="${SCRIPT_DIR}/../ebin" if [ -f "${RABBITMQ_EBIN_ROOT}/rabbit.boot" ]; then RABBITMQ_BOOT_FILE="${RABBITMQ_EBIN_ROOT}/rabbit" RABBITMQ_EBIN_PATH="" diff --git a/scripts/rabbitmqctl b/scripts/rabbitmqctl index c57978c050..88206abceb 100755 --- a/scripts/rabbitmqctl +++ b/scripts/rabbitmqctl @@ -30,12 +30,24 @@ ## Contributor(s): ______________________________________. ## +SCRIPT_PATH="$0" +while [ -h "$SCRIPT_PATH" ] ; do + ls=`ls -ld "$SCRIPT_PATH"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + SCRIPT_PATH="$link" + else + SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$link" + fi +done +SCRIPT_DIR=`dirname $SCRIPT_PATH` + [ -f /etc/rabbitmq/rabbitmq.conf ] && . /etc/rabbitmq/rabbitmq.conf [ "x" = "x$RABBITMQ_CTL_ERL_ARGS" ] && RABBITMQ_CTL_ERL_ARGS=${CTL_ERL_ARGS} exec erl \ - -pa "`dirname $0`/../ebin" \ + -pa "${SCRIPT_DIR}/../ebin" \ -noinput \ -hidden \ ${RABBITMQ_CTL_ERL_ARGS} \ |
