diff options
Diffstat (limited to 'scripts/rabbitmq-env')
| -rw-r--r-- | scripts/rabbitmq-env | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/scripts/rabbitmq-env b/scripts/rabbitmq-env index cc05015cef..0014643260 100644 --- a/scripts/rabbitmq-env +++ b/scripts/rabbitmq-env @@ -45,7 +45,19 @@ if [ -z "$RABBITMQ_SCRIPTS_DIR" ]; then RABBITMQ_SCRIPTS_DIR=`dirname $SCRIPT_PATH` fi -RABBITMQ_HOME="${RABBITMQ_SCRIPTS_DIR}/.." +rmq_realpath() { + local path=$1 + + if [ -d "$path" ]; then + cd "$path" && pwd + elif [ -f "$path" ]; then + cd "$(dirname "$path")" && echo $(pwd)/$(basename "$path") + else + echo "$path" + fi +} + +RABBITMQ_HOME="$(rmq_realpath "${RABBITMQ_SCRIPTS_DIR}/..")" ## Set defaults . ${RABBITMQ_SCRIPTS_DIR}/rabbitmq-defaults @@ -119,18 +131,6 @@ rmq_normalize_path_var() { done } -rmq_realpath() { - local path=$1 - - if [ -d "$path" ]; then - cd "$path" && pwd - elif [ -f "$path" ]; then - cd "$(dirname "$path")" && echo $(pwd)/$(basename "$path") - else - echo "$path" - fi -} - rmq_check_if_shared_with_mnesia() { local var warning @@ -200,9 +200,11 @@ rmq_normalize_path_var RABBITMQ_PID_FILE [ "x" = "x$RABBITMQ_PLUGINS_EXPAND_DIR" ] && RABBITMQ_PLUGINS_EXPAND_DIR=${RABBITMQ_MNESIA_BASE}/${RABBITMQ_NODENAME}-plugins-expand rmq_normalize_path_var RABBITMQ_PLUGINS_EXPAND_DIR +[ "x" != "x$RABBITMQ_ENABLED_PLUGINS_FILE" ] && RABBITMQ_ENABLED_PLUGINS_FILE_source=environment [ "x" = "x$RABBITMQ_ENABLED_PLUGINS_FILE" ] && RABBITMQ_ENABLED_PLUGINS_FILE=${ENABLED_PLUGINS_FILE} rmq_normalize_path_var RABBITMQ_ENABLED_PLUGINS_FILE +[ "x" != "x$RABBITMQ_PLUGINS_DIR" ] && RABBITMQ_PLUGINS_DIR_source=environment [ "x" = "x$RABBITMQ_PLUGINS_DIR" ] && RABBITMQ_PLUGINS_DIR=${PLUGINS_DIR} rmq_normalize_path_var RABBITMQ_PLUGINS_DIR @@ -237,7 +239,9 @@ rmq_check_if_shared_with_mnesia \ ## Development-specific environment. if [ "${RABBITMQ_DEV_ENV}" ]; then - if [ "$(basename "$0")" = 'rabbitmq-plugins' ]; then + if [ "$(basename "$0")" = 'rabbitmq-plugins' -a \( \ + "$RABBITMQ_PLUGINS_DIR_source" != 'environment' -o \ + "$RABBITMQ_ENABLED_PLUGINS_FILE_source" != 'environment' \) ]; then # We need to query the running node for the plugins directory # and the "enabled plugins" file. eval $( (${RABBITMQ_SCRIPTS_DIR}/rabbitmqctl eval \ @@ -247,10 +251,12 @@ if [ "${RABBITMQ_DEV_ENV}" ]; then "plugins_dir=\"~s\"~n" "enabled_plugins_file=\"~s\"~n", [P, E]).' \ 2>/dev/null | head -n 2) || :) - if [ "${plugins_dir}" ]; then + if [ "${plugins_dir}" -a \ + "$RABBITMQ_PLUGINS_DIR_source" != 'environment' ]; then RABBITMQ_PLUGINS_DIR="${plugins_dir}" fi - if [ "${enabled_plugins_file}" ]; then + if [ "${enabled_plugins_file}" -a \ + "$RABBITMQ_ENABLED_PLUGINS_FILE_source" != 'environment' ]; then RABBITMQ_ENABLED_PLUGINS_FILE="${enabled_plugins_file}" fi fi |
