summaryrefslogtreecommitdiff
path: root/scripts/rabbitmq-server
diff options
context:
space:
mode:
authorPaul Jones <paulj@lshift.net>2009-07-29 09:42:51 +0100
committerPaul Jones <paulj@lshift.net>2009-07-29 09:42:51 +0100
commit9398b1a9413be8430c061c5f0513aca55eb3264a (patch)
tree2d2f3250a839054220cc97f178f6d687ff1ea2c8 /scripts/rabbitmq-server
parent39d8c604b32471fbf0afac857f02f0793c7d44e6 (diff)
downloadrabbitmq-server-git-9398b1a9413be8430c061c5f0513aca55eb3264a.tar.gz
Patched all scripts to be able to auto-detect their directory, even when symlinked
Diffstat (limited to 'scripts/rabbitmq-server')
-rwxr-xr-xscripts/rabbitmq-server14
1 files changed, 13 insertions, 1 deletions
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=""