diff options
| author | David Wragg <david@rabbitmq.com> | 2010-08-09 16:02:09 +0100 |
|---|---|---|
| committer | David Wragg <david@rabbitmq.com> | 2010-08-09 16:02:09 +0100 |
| commit | e6e6c6a683aa253995cb4b0984d767bbe8bbc3dd (patch) | |
| tree | 006ede9b3fadaae2cfd8c59d66c33e40330bb9af /scripts/rabbitmq-server | |
| parent | 4ba0d184198d82c07fdcd73c321df397707ce2b2 (diff) | |
| parent | 49b3ba704e55902202f0f62f0e586fa9bc0109d3 (diff) | |
| download | rabbitmq-server-git-e6e6c6a683aa253995cb4b0984d767bbe8bbc3dd.tar.gz | |
Merge bug21875 into default
allow erlang and rabbit to be upgraded even when plugins are present
Diffstat (limited to 'scripts/rabbitmq-server')
| -rwxr-xr-x | scripts/rabbitmq-server | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index 7283f0e8f8..d52dc774b6 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -39,6 +39,7 @@ CLUSTER_CONFIG_FILE=/etc/rabbitmq/rabbitmq_cluster.config CONFIG_FILE=/etc/rabbitmq/rabbitmq LOG_BASE=/var/log/rabbitmq MNESIA_BASE=/var/lib/rabbitmq/mnesia +PLUGINS_EXPAND_DIR=/var/lib/rabbitmq/plugins-scratch SERVER_START_ARGS= . `dirname $0`/rabbitmq-env @@ -68,6 +69,9 @@ fi [ "x" = "x$RABBITMQ_MNESIA_DIR" ] && RABBITMQ_MNESIA_DIR=${MNESIA_DIR} [ "x" = "x$RABBITMQ_MNESIA_DIR" ] && RABBITMQ_MNESIA_DIR=${RABBITMQ_MNESIA_BASE}/${RABBITMQ_NODENAME} +[ "x" = "x$RABBITMQ_PLUGINS_DIR" ] && RABBITMQ_PLUGINS_DIR="${RABBITMQ_HOME}/plugins" +[ "x" = "x$RABBITMQ_PLUGINS_EXPAND_DIR" ] && RABBITMQ_PLUGINS_EXPAND_DIR="${PLUGINS_EXPAND_DIR}" + ## Log rotation [ "x" = "x$RABBITMQ_LOGS" ] && RABBITMQ_LOGS=${LOGS} [ "x" = "x$RABBITMQ_LOGS" ] && RABBITMQ_LOGS="${RABBITMQ_LOG_BASE}/${RABBITMQ_NODENAME}.log" @@ -83,13 +87,25 @@ RABBITMQ_START_RABBIT= [ "x" = "x$RABBITMQ_ALLOW_INPUT" ] && RABBITMQ_START_RABBIT='-noinput' RABBITMQ_EBIN_ROOT="${RABBITMQ_HOME}/ebin" -if [ -f "${RABBITMQ_EBIN_ROOT}/rabbit.boot" ] && [ "x" = "x$RABBITMQ_NODE_ONLY" ]; then - RABBITMQ_BOOT_FILE="${RABBITMQ_EBIN_ROOT}/rabbit" - RABBITMQ_EBIN_PATH="" +if [ "x" = "x$RABBITMQ_NODE_ONLY" ]; then + if erl \ + -pa "$RABBITMQ_EBIN_ROOT" \ + -rabbit plugins_dir "\"$RABBITMQ_PLUGINS_DIR\"" \ + -rabbit plugins_expand_dir "\"$RABBITMQ_PLUGINS_EXPAND_DIR\"" \ + -rabbit rabbit_ebin "\"$RABBITMQ_EBIN_ROOT\"" \ + -noinput \ + -hidden \ + -s rabbit_plugin_activator \ + -extra "$@" + then + RABBITMQ_BOOT_FILE="${RABBITMQ_PLUGINS_EXPAND_DIR}/rabbit" + RABBITMQ_EBIN_PATH="" + else + exit 1 + fi else RABBITMQ_BOOT_FILE=start_sasl RABBITMQ_EBIN_PATH="-pa ${RABBITMQ_EBIN_ROOT}" - [ "x" = "x$RABBITMQ_NODE_ONLY" ] && RABBITMQ_START_RABBIT="${RABBITMQ_START_RABBIT} -s rabbit" fi RABBITMQ_CONFIG_ARG= [ -f "${RABBITMQ_CONFIG_FILE}.config" ] && RABBITMQ_CONFIG_ARG="-config ${RABBITMQ_CONFIG_FILE}" |
