summaryrefslogtreecommitdiff
path: root/scripts/rabbitmq-server
diff options
context:
space:
mode:
authorGabriele Santomaggio <G.santomaggio@gmail.com>2016-03-10 21:14:50 +0100
committerGabriele Santomaggio <G.santomaggio@gmail.com>2016-03-10 21:14:50 +0100
commit2ed6627c178b22851ad359f2243a4d474a2e46e5 (patch)
tree3c7197488a03b98b4d59885e638b20fe58394e3f /scripts/rabbitmq-server
parent61cc6e5a764a765f9d36e30ee0e6de58b06ffd6c (diff)
parent96a791b5137c3e463bf0ab13484f325b1a3bb3fd (diff)
downloadrabbitmq-server-git-2ed6627c178b22851ad359f2243a4d474a2e46e5.tar.gz
Merge pull request #674 from rabbitmq/rabbitmq-server-553
Verify that mandatory environment variables are (pre)set
Diffstat (limited to 'scripts/rabbitmq-server')
-rwxr-xr-xscripts/rabbitmq-server21
1 files changed, 21 insertions, 0 deletions
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server
index 548a085434..a517cc8182 100755
--- a/scripts/rabbitmq-server
+++ b/scripts/rabbitmq-server
@@ -113,6 +113,7 @@ fi
set -f
start_rabbitmq_server() {
+ check_start_params &&
RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \
exec ${ERL_DIR}erl \
-pa ${RABBITMQ_EBIN_ROOT} \
@@ -144,6 +145,7 @@ start_rabbitmq_server() {
}
stop_rabbitmq_server() {
+
RABBITMQCTL="$(dirname "$0")/rabbitmqctl"
if ${RABBITMQCTL} -n ${RABBITMQ_NODENAME} status >/dev/null 2>&1; then
@@ -151,6 +153,25 @@ stop_rabbitmq_server() {
fi
}
+check_start_params() {
+ check_not_empty RABBITMQ_BOOT_MODULE
+ check_not_empty RABBITMQ_NAME_TYPE
+ check_not_empty RABBITMQ_NODENAME
+ check_not_empty SASL_BOOT_FILE
+ check_not_empty RABBITMQ_IO_THREAD_POOL_SIZE
+}
+
+check_not_empty() {
+ local name="${1:?}"
+ local value
+ eval value=\$$name
+ if [ -z "$value" ]; then
+ echo "Error: ENV variable should be defined: $1.
+ Please check rabbitmq-env, rabbitmq-defaults, and $CONF_ENV_FILE script files"
+ exit 78
+ fi
+}
+
if [ 'x' = "x$RABBITMQ_ALLOW_INPUT" -a -z "$detached" ]; then
# When RabbitMQ runs in the foreground but the Erlang shell is
# disabled, we setup signal handlers to stop RabbitMQ properly. This