Просмотр исходного кода

feat(mysql): accept wrapped secrets as passwords

Andrew Mayorov 2 лет назад
Родитель
Сommit
36e57a479d
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      apps/emqx_mysql/src/emqx_mysql.erl

+ 4 - 1
apps/emqx_mysql/src/emqx_mysql.erl

@@ -280,7 +280,10 @@ do_check_prepares(#{prepares := {error, _}} = State) ->
 %% ===================================================================
 
 connect(Options) ->
-    mysql:start_link(Options).
+    %% TODO: teach `tdengine` to accept 0-arity closures as passwords.
+    {value, {password, Secret}, Rest} = lists:keytake(password, 1, Options),
+    NOptions = [{password, emqx_secret:unwrap(Secret)} | Rest],
+    mysql:start_link(NOptions).
 
 init_prepare(State = #{query_templates := Templates}) ->
     case maps:size(Templates) of