Handle merging of append_host_config as is done for host_config
This commit is contained in:
parent
5a1ac4faf1
commit
c71d57a05d
|
@ -378,8 +378,8 @@ get_config_option_key(Name, Val) ->
|
||||||
end.
|
end.
|
||||||
|
|
||||||
maps_to_lists(IMap) ->
|
maps_to_lists(IMap) ->
|
||||||
maps:fold(fun(host_config, Map, Res) ->
|
maps:fold(fun(Name, Map, Res) when Name == host_config orelse Name == append_host_config ->
|
||||||
[{host_config, [{Host, maps_to_lists(SMap)} || {Host,SMap} <- maps:values(Map)]} | Res];
|
[{Name, [{Host, maps_to_lists(SMap)} || {Host,SMap} <- maps:values(Map)]} | Res];
|
||||||
(Name, Map, Res) when is_map(Map) ->
|
(Name, Map, Res) when is_map(Map) ->
|
||||||
[{Name, maps:values(Map)} | Res];
|
[{Name, maps:values(Map)} | Res];
|
||||||
(Name, Val, Res) ->
|
(Name, Val, Res) ->
|
||||||
|
@ -391,7 +391,7 @@ merge_configs(Terms, ResMap) ->
|
||||||
lists:foldl(fun({Name, Val}, Map) when is_list(Val) ->
|
lists:foldl(fun({Name, Val}, Map) when is_list(Val) ->
|
||||||
Old = maps:get(Name, Map, #{}),
|
Old = maps:get(Name, Map, #{}),
|
||||||
New = lists:foldl(fun(SVal, OMap) ->
|
New = lists:foldl(fun(SVal, OMap) ->
|
||||||
NVal = if Name == host_config ->
|
NVal = if Name == host_config orelse Name == append_host_config ->
|
||||||
{Host, Opts} = SVal,
|
{Host, Opts} = SVal,
|
||||||
{_, SubMap} = maps:get(Host, OMap, {Host, #{}}),
|
{_, SubMap} = maps:get(Host, OMap, {Host, #{}}),
|
||||||
{Host, merge_configs(Opts, SubMap)};
|
{Host, merge_configs(Opts, SubMap)};
|
||||||
|
|
Loading…
Reference in New Issue