diff options
| author | Daniil Fedotov <dfedotov@pivotal.io> | 2016-02-09 14:35:47 +0000 |
|---|---|---|
| committer | Daniil Fedotov <dfedotov@pivotal.io> | 2016-02-09 14:35:47 +0000 |
| commit | fbb49b43fd6a3472fffb6ad7f0ecea94a4727926 (patch) | |
| tree | f638ac304e5f0006311ebe17c9a7648baad771e7 | |
| parent | bbaf22bd1fe2397dd0f97cf2fcde84db42e62837 (diff) | |
| download | rabbitmq-server-git-fbb49b43fd6a3472fffb6ad7f0ecea94a4727926.tar.gz | |
Additional config gile
| -rw-r--r-- | scripts/rabbitmq-defaults | 1 | ||||
| -rw-r--r-- | scripts/rabbitmq-defaults.bat | 1 | ||||
| -rwxr-xr-x | scripts/rabbitmq-server | 5 | ||||
| -rw-r--r-- | scripts/rabbitmq-server.bat | 5 | ||||
| -rw-r--r-- | scripts/rabbitmq-service.bat | 8 | ||||
| -rw-r--r-- | scripts/rabbitmq.schema | 6 | ||||
| -rw-r--r-- | src/rabbit_config.erl | 38 |
7 files changed, 49 insertions, 15 deletions
diff --git a/scripts/rabbitmq-defaults b/scripts/rabbitmq-defaults index e74c0da115..b5427eee46 100644 --- a/scripts/rabbitmq-defaults +++ b/scripts/rabbitmq-defaults @@ -39,6 +39,7 @@ 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 +RABBITMQ_CONFIG_ADDITIONAL=${SYS_PREFIX}/etc/rabbitmq/additional PLUGINS_DIR="${RABBITMQ_HOME}/plugins" IO_THREAD_POOL_SIZE=64 diff --git a/scripts/rabbitmq-defaults.bat b/scripts/rabbitmq-defaults.bat index 9c1a04a005..3c57b2ab34 100644 --- a/scripts/rabbitmq-defaults.bat +++ b/scripts/rabbitmq-defaults.bat @@ -42,6 +42,7 @@ set LOG_BASE=!RABBITMQ_BASE!\log set MNESIA_BASE=!RABBITMQ_BASE!\db
set ENABLED_PLUGINS_FILE=!RABBITMQ_BASE!\enabled_plugins
set GENERATED_CONFIG_DIR=!RABBITMQ_BASE!\config
+set RABBITMQ_CONFIG_ADDITIONAL=!RABBITMQ_BASE!\additional
REM PLUGINS_DIR="${RABBITMQ_HOME}/plugins"
for /f "delims=" %%F in ("!TDP0!..\plugins") do set PLUGINS_DIR=%%~dpsF%%~nF%%~xF
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index d5a5948f48..1b95d9efb1 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -69,7 +69,8 @@ RABBITMQ_DIST_PORT=$RABBITMQ_DIST_PORT \ -s rabbit_prelaunch \ ${RABBITMQ_NAME_TYPE} rabbitmqprelaunch$$ \ -conf_dir "${RABBITMQ_GENERATED_CONFIG_DIR}" \ - -conf_gen_script "`dirname $0`/cuttlefish" \ + -conf_script_dir "`dirname $0`" \ + -conf_additional "${RABBITMQ_CONFIG_ADDITIONAL}" \ -extra "${RABBITMQ_NODENAME}" PRELAUNCH_RESULT=$? @@ -88,7 +89,7 @@ set -e if [ -f "${RABBITMQ_CONFIG_FILE}.config" ]; then RABBITMQ_CONFIG_ARG="-config ${RABBITMQ_CONFIG_FILE}" elif [ -f "${RABBITMQ_CONFIG_FILE}.conf" ]; then - RABBITMQ_CONFIG_ARG="-conf ${RABBITMQ_CONFIG_FILE} -conf_dir ${RABBITMQ_GENERATED_CONFIG_DIR} -conf_gen_script `dirname $0`/cuttlefish" + RABBITMQ_CONFIG_ARG="-conf ${RABBITMQ_CONFIG_FILE} -conf_dir ${RABBITMQ_GENERATED_CONFIG_DIR} -conf_script_dir `dirname $0` -conf_additional ${RABBITMQ_CONFIG_ADDITIONAL}" fi RABBITMQ_LISTEN_ARG= diff --git a/scripts/rabbitmq-server.bat b/scripts/rabbitmq-server.bat index 7963a407cb..d2c63d2036 100644 --- a/scripts/rabbitmq-server.bat +++ b/scripts/rabbitmq-server.bat @@ -49,7 +49,8 @@ set RABBITMQ_CONFIG_FILE="!RABBITMQ_CONFIG_FILE!" -s rabbit_prelaunch ^
!RABBITMQ_NAME_TYPE! rabbitmqprelaunch!RANDOM!!TIME:~9! ^
-conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" ^
- -conf_gen_script "%~dp0/cuttlefish" ^
+ -conf_script_dir "%~dp0" ^
+ -conf_additional "!RABBITMQ_CONFIG_ADDITIONAL!" ^
-extra "!RABBITMQ_NODENAME!"
if ERRORLEVEL 2 (
@@ -65,7 +66,7 @@ set RABBITMQ_EBIN_PATH="-pa !RABBITMQ_EBIN_ROOT!" if exist "!RABBITMQ_CONFIG_FILE!.config" (
set RABBITMQ_CONFIG_ARG=-config "!RABBITMQ_CONFIG_FILE!"
) else if exist "!RABBITMQ_CONFIG_FILE!.conf" (
- set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_gen_script "%~dp0/cuttlefish"
+ set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_script_dir "%~dp0" -conf_additional "!RABBITMQ_CONFIG_ADDITIONAL!"
) else (
set RABBITMQ_CONFIG_ARG=
)
diff --git a/scripts/rabbitmq-service.bat b/scripts/rabbitmq-service.bat index 144091feec..494716d121 100644 --- a/scripts/rabbitmq-service.bat +++ b/scripts/rabbitmq-service.bat @@ -22,7 +22,6 @@ rem enabling delayed expansion set TN0=%~n0
set TDP0=%~dp0
set P1=%1
-set CUTTLEFISH=%~dp0\cuttlefish
setlocal enabledelayedexpansion
REM Get default settings with user overrides for (RABBITMQ_)<var_name>
@@ -122,7 +121,8 @@ set RABBITMQ_CONFIG_FILE="!RABBITMQ_CONFIG_FILE!" -noinput -hidden ^
-s rabbit_prelaunch ^
-conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" ^
- -conf_gen_script "!CUTTLEFISH!" ^
+ -conf_script_dir "!TDP0!" ^
+ -conf_additional "!RABBITMQ_CONFIG_ADDITIONAL!" ^
!RABBITMQ_NAME_TYPE! rabbitmqprelaunch!RANDOM!!TIME:~9!
if ERRORLEVEL 3 (
@@ -140,10 +140,10 @@ if ERRORLEVEL 3 ( if exist "!RABBITMQ_CONFIG_FILE!.config" (
set RABBITMQ_CONFIG_ARG=-config "!RABBITMQ_CONFIG_FILE!"
) else if exist "!RABBITMQ_CONFIG_FILE!.conf" (
- set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_gen_script "!CUTTLEFISH!"
+ set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_script_dir "!TDP0!" -conf_additional "!RABBITMQ_CONFIG_ADDITIONAL!"
) else (
rem Always use generated config arguments, because file existance can change beetween restarts
- set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_gen_script "!CUTTLEFISH!"
+ set RABBITMQ_CONFIG_ARG=-conf "!RABBITMQ_CONFIG_FILE!" -conf_dir "!RABBITMQ_GENERATED_CONFIG_DIR!" -conf_script_dir "!TDP0!" -conf_additional "!RABBITMQ_CONFIG_ADDITIONAL!"
)
set RABBITMQ_LISTEN_ARG=
diff --git a/scripts/rabbitmq.schema b/scripts/rabbitmq.schema index 0970697b45..2700ad2e5e 100644 --- a/scripts/rabbitmq.schema +++ b/scripts/rabbitmq.schema @@ -790,6 +790,12 @@ end}. {mapping, "kernel.net_ticktime", "kernel.net_ticktime", [{datatype, integer}]}. +{mapping, "kernel.inet_dist_listen_min", "kernel.inet_dist_listen_min", + [{datatype, integer}]}. + +{mapping, "kernel.inet_dist_listen_max", "kernel.inet_dist_listen_max", + [{datatype, integer}]}. + %% ---------------------------------------------------------------------------- %% RabbitMQ AMQP 1.0 Support %% diff --git a/src/rabbit_config.erl b/src/rabbit_config.erl index 7025805f99..c2c53e56b2 100644 --- a/src/rabbit_config.erl +++ b/src/rabbit_config.erl @@ -38,15 +38,15 @@ get_confs() -> end. prepare_config(Configs) -> - case {init:get_argument(conf_dir), init:get_argument(conf_gen_script)} of - {{ok, ConfDir}, {ok, ConfScript}} -> + case {init:get_argument(conf_dir), init:get_argument(conf_script_dir)} of + {{ok, ConfDir}, {ok, ScriptDir}} -> ConfFiles = [Config++".conf" || [Config] <- Configs, rabbit_file:is_file(Config ++ ".conf")], case ConfFiles of [] -> ok; _ -> - case generate_config_file(ConfFiles, ConfDir, ConfScript) of + case generate_config_file(ConfFiles, ConfDir, ScriptDir) of {ok, GeneratedConfigFile} -> {ok, GeneratedConfigFile}; {error, Reason} -> @@ -59,14 +59,21 @@ prepare_config(Configs) -> update_app_config(ConfigFile) -> ok = application_controller:change_application_data([], [ConfigFile]). -generate_config_file(ConfFiles, ConfDir, ConfScript) -> - SchemaFile = filename:join([filename:dirname(ConfScript), "rabbitmq.schema"]), +generate_config_file(ConfFiles, ConfDir, ScriptDir) -> + SchemaFile = filename:join([ScriptDir, "rabbitmq.schema"]), + Cuttlefish = filename:join([ScriptDir, "cuttlefish"]), GeneratedDir = filename:join([ConfDir, "generated"]), + + AdditionalConfigArg = case get_additional_config() of + {ok, FileName} -> [" -a ", FileName]; + none -> [] + end, rabbit_file:recursive_delete([GeneratedDir]), - Command = lists:concat(["escript ", "\"", ConfScript, "\"", + Command = lists:concat(["escript ", "\"", Cuttlefish, "\"", " -f rabbitmq -i ", "\"", SchemaFile, "\"", " -e ", "\"", ConfDir, "\"", - [[" -c ", ConfFile] || ConfFile <- ConfFiles]]), + [[" -c ", ConfFile] || ConfFile <- ConfFiles], + AdditionalConfigArg]), Result = rabbit_misc:os_cmd(Command), case string:str(Result, " -config ") of 0 -> {error, {generaion_error, Result}}; @@ -77,4 +84,21 @@ generate_config_file(ConfFiles, ConfDir, ConfScript) -> ResultFile), {ok, ResultFile} end. + +get_additional_config() -> + case init:get_argument(conf_additional) of + {ok, FileName} -> + ConfigName = FileName ++ ".config", + case rabbit_file:is_file(ConfigName) of + true -> {ok, ConfigName}; + false -> none + end; + _ -> none + end. + + + + + +
\ No newline at end of file |
