summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorDaniil Fedotov <dfedotov@pivotal.io>2016-02-02 10:59:56 +0000
committerDaniil Fedotov <dfedotov@pivotal.io>2016-02-02 10:59:56 +0000
commit309ca6dc469fa1d782e2fbf5f50b8bd35bbe5721 (patch)
tree9fff64799efdea97e57d3a2b541bc71877b36e72 /scripts
parent644073a85997e1334ac7d2b4f8fcd38531c9252a (diff)
downloadrabbitmq-server-git-309ca6dc469fa1d782e2fbf5f50b8bd35bbe5721.tar.gz
Starting node with generated config
Diffstat (limited to 'scripts')
-rw-r--r--scripts/rabbitmq-defaults1
-rw-r--r--scripts/rabbitmq-env1
-rwxr-xr-xscripts/rabbitmq-server22
3 files changed, 21 insertions, 3 deletions
diff --git a/scripts/rabbitmq-defaults b/scripts/rabbitmq-defaults
index c5d87822a2..e74c0da115 100644
--- a/scripts/rabbitmq-defaults
+++ b/scripts/rabbitmq-defaults
@@ -38,6 +38,7 @@ CONFIG_FILE=${SYS_PREFIX}/etc/rabbitmq/rabbitmq
LOG_BASE=${SYS_PREFIX}/var/log/rabbitmq
MNESIA_BASE=${SYS_PREFIX}/var/lib/rabbitmq/mnesia
ENABLED_PLUGINS_FILE=${SYS_PREFIX}/etc/rabbitmq/enabled_plugins
+GENERATED_CONFIG_DIR=${SYS_PREFIX}/var/lib/rabbitmq/config
PLUGINS_DIR="${RABBITMQ_HOME}/plugins"
IO_THREAD_POOL_SIZE=64
diff --git a/scripts/rabbitmq-env b/scripts/rabbitmq-env
index e4f89e2658..a197ec31ba 100644
--- a/scripts/rabbitmq-env
+++ b/scripts/rabbitmq-env
@@ -183,6 +183,7 @@ DEFAULT_NODE_PORT=5672
[ "x" = "x$RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS" ] && RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS=${SERVER_ADDITIONAL_ERL_ARGS}
[ "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_GENERATED_CONFIG_DIR" ] && RABBITMQ_GENERATED_CONFIG_DIR=${GENERATED_CONFIG_DIR}
rmq_normalize_path_var \
RABBITMQ_CONFIG_FILE \
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server
index 6397d1cdbd..9f28086ab4 100755
--- a/scripts/rabbitmq-server
+++ b/scripts/rabbitmq-server
@@ -58,9 +58,25 @@ esac
RABBITMQ_EBIN_ROOT="${RABBITMQ_HOME}/ebin"
+generate_config() {
+ rm -rf ${RABBITMQ_GENERATED_CONFIG_DIR}/generated/rabbitmq.config
+ ./cuttlefish -e ${RABBITMQ_GENERATED_CONFIG_DIR} -s ./schema -c ${RABBITMQ_CONFIG_FILE}.conf -f rabbitmq
+ mv ${RABBITMQ_GENERATED_CONFIG_DIR}/generated/rabbitmq.*.config ${RABBITMQ_GENERATED_CONFIG_DIR}/generated/rabbitmq.config
+}
+
+if [ -f "${RABBITMQ_CONFIG_FILE}.config" ]; then
+ RABBITMQ_CONFIG_FILE_ACTUAL=$RABBITMQ_CONFIG_FILE
+else
+
+ [ -f "${RABBITMQ_CONFIG_FILE}.conf" ] &&
+ [ "x" != "x$RABBITMQ_GENERATED_CONFIG_DIR" ] &&
+ generate_config &&
+ RABBITMQ_CONFIG_FILE_ACTUAL="${RABBITMQ_GENERATED_CONFIG_DIR}/generated/rabbitmq"
+fi
+
set +e
-RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \
+RABBITMQ_CONFIG_FILE_ACTUAL=$RABBITMQ_CONFIG_FILE_ACTUAL \
RABBITMQ_DIST_PORT=$RABBITMQ_DIST_PORT \
${ERL_DIR}erl -pa "$RABBITMQ_EBIN_ROOT" \
-boot "${CLEAN_BOOT_FILE}" \
@@ -84,7 +100,7 @@ fi
set -e
RABBITMQ_CONFIG_ARG=
-[ -f "${RABBITMQ_CONFIG_FILE}.config" ] && RABBITMQ_CONFIG_ARG="-config ${RABBITMQ_CONFIG_FILE}"
+[ -f "${RABBITMQ_CONFIG_FILE_ACTUAL}.config" ] && RABBITMQ_CONFIG_ARG="-config ${RABBITMQ_CONFIG_FILE_ACTUAL}"
RABBITMQ_LISTEN_ARG=
[ "x" != "x$RABBITMQ_NODE_PORT" ] && [ "x" != "x$RABBITMQ_NODE_IP_ADDRESS" ] && RABBITMQ_LISTEN_ARG="-rabbit tcp_listeners [{\""${RABBITMQ_NODE_IP_ADDRESS}"\","${RABBITMQ_NODE_PORT}"}]"
@@ -106,7 +122,7 @@ fi
set -f
start_rabbitmq_server() {
- RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \
+ RABBITMQ_CONFIG_FILE_ACTUAL=$RABBITMQ_CONFIG_FILE_ACTUAL \
exec ${ERL_DIR}erl \
-pa ${RABBITMQ_EBIN_ROOT} \
${RABBITMQ_START_RABBIT} \