summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniil Fedotov <dfedotov@pivotal.io>2016-02-08 16:25:36 +0000
committerDaniil Fedotov <dfedotov@pivotal.io>2016-02-08 16:25:36 +0000
commit85b811e30b792c42d1c1f087eaec41725f64d06f (patch)
tree53c884026594befc2a99d90caecf5f61b649fe54 /src
parentb27e7d1dfb889df1b2c98c6101bf8cb3cf281e15 (diff)
downloadrabbitmq-server-git-85b811e30b792c42d1c1f087eaec41725f64d06f.tar.gz
Config detection in rabbit_config. Always pass generate args to windows script
Diffstat (limited to 'src')
-rw-r--r--src/rabbit.erl4
-rw-r--r--src/rabbit_config.erl39
2 files changed, 35 insertions, 8 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl
index f2f08ff495..2715b80eb5 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -272,9 +272,7 @@ start() ->
boot() ->
start_it(fun() ->
- case rabbit_config:prepare_config() of
- {ok, ConfigFile} ->
- rabbit_config:update_app_config(ConfigFile);
+ case rabbit_config:prepare_and_use_config() of
{error, Reason} ->
log_boot_error_and_exit(
generate_config_file,
diff --git a/src/rabbit_config.erl b/src/rabbit_config.erl
index fae8d65842..7025805f99 100644
--- a/src/rabbit_config.erl
+++ b/src/rabbit_config.erl
@@ -1,11 +1,40 @@
-module(rabbit_config).
--export([generate_config_file/3, prepare_config/0, prepare_config/1, update_app_config/1]).
+-export([
+ generate_config_file/3,
+ prepare_and_use_config/0,
+ prepare_config/1,
+ update_app_config/1]).
-prepare_config() ->
+prepare_and_use_config() ->
+ case config_exist() of
+ true ->
+ % Use .config file
+ ok;
+ false ->
+ case prepare_config(get_confs()) of
+ ok ->
+ % Nothing to generate from
+ ok;
+ {ok, GeneratedConfigFile} ->
+ % Generated config file
+ update_app_config(GeneratedConfigFile);
+ {error, Err} ->
+ % Error generating config
+ {error, Err}
+ end
+ end.
+
+config_exist() ->
+ case init:get_argument(config) of
+ {ok, Config} -> rabbit_file:is_file(Config ++ ".config");
+ _ -> false
+ end.
+
+get_confs() ->
case init:get_argument(conf) of
- {ok, Configs} -> prepare_config(Configs);
- _ -> ok
+ {ok, Configs} -> Configs;
+ _ -> []
end.
prepare_config(Configs) ->
@@ -44,7 +73,7 @@ generate_config_file(ConfFiles, ConfDir, ConfScript) ->
_ ->
[OutFile] = rabbit_file:wildcard("rabbitmq.*.config", GeneratedDir),
ResultFile = filename:join([GeneratedDir, "rabbitmq.config"]),
- Ren = rabbit_file:rename(filename:join([GeneratedDir, OutFile]),
+ rabbit_file:rename(filename:join([GeneratedDir, OutFile]),
ResultFile),
{ok, ResultFile}
end.