diff options
| author | Daniil Fedotov <dfedotov@pivotal.io> | 2016-02-08 16:25:36 +0000 |
|---|---|---|
| committer | Daniil Fedotov <dfedotov@pivotal.io> | 2016-02-08 16:25:36 +0000 |
| commit | 85b811e30b792c42d1c1f087eaec41725f64d06f (patch) | |
| tree | 53c884026594befc2a99d90caecf5f61b649fe54 /src | |
| parent | b27e7d1dfb889df1b2c98c6101bf8cb3cf281e15 (diff) | |
| download | rabbitmq-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.erl | 4 | ||||
| -rw-r--r-- | src/rabbit_config.erl | 39 |
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. |
