diff --git a/src/tsuru_application.erl b/src/tsuru_application.erl index 06514d3fc78d501cedde553efb6b3b58206dac3b..7ebcca259318817a21bd556405fc0fc194c69a0a 100644 --- a/src/tsuru_application.erl +++ b/src/tsuru_application.erl @@ -8,7 +8,10 @@ set_env(Application) -> [{application:set_env(Application, Name, Value, [{timeout, infinity}, {persistent, true}]), {Name, Value}} || {Name, Value} <- get_os_env(Application)]. get_os_env(Application) -> - Pattern = string:to_upper(atom_to_list(Application)) ++ "_(.+)=(.+)", + S1 = string:to_upper(atom_to_list(Application)), + S2 = re:replace(S1, "-", "_", [global, {return, list}]), + S3 = re:replace(S2, "[^A-Z1-9_]", "", [global, {return, list}]), + Pattern = S3 ++ "_(.+)=(.+)", get_os_env(Pattern, os:getenv(), erl_eval:new_bindings()). %%%===================================================================