Compare commits

..

1 commit

Author SHA1 Message Date
3187d408c5
OIDC: use Application config :oidc from runtime.exs for client secret in prod
Some checks reported errors
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is passing
2026-03-02 15:09:33 +01:00

View file

@ -367,24 +367,22 @@ defmodule Mv.Config do
@spec oidc_client_secret() :: String.t() | nil @spec oidc_client_secret() :: String.t() | nil
def oidc_client_secret do def oidc_client_secret do
case Application.get_env(:mv, :oidc) do case Application.get_env(:mv, :oidc) do
oidc when is_list(oidc) -> oidc when is_list(oidc) -> oidc_client_secret_from_config(Keyword.get(oidc, :client_secret))
case Keyword.get(oidc, :client_secret) do _ -> env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
nil ->
env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
secret when is_binary(secret) ->
s = String.trim(secret)
if s != "", do: s, else: env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
_ ->
env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
end
_ ->
env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
end end
end end
defp oidc_client_secret_from_config(nil),
do: env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
defp oidc_client_secret_from_config(secret) when is_binary(secret) do
s = String.trim(secret)
if s != "", do: s, else: env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
end
defp oidc_client_secret_from_config(_),
do: env_or_setting("OIDC_CLIENT_SECRET", :oidc_client_secret)
@doc """ @doc """
Returns the OIDC admin group name (for role sync). ENV first, then Settings. Returns the OIDC admin group name (for role sync). ENV first, then Settings.
""" """