ExSecrets (ex_secrets v0.2.1)

This module functions to access secrets in an Elixir application.

Link to this section Summary

Functions

Get secret value

Get secret value with provider name.

Get secret value with provider name and default value

Internal function for fetching secret with provide for catching and rate limiting. Do not rely on this function.

Resets cache and reloads all providers.

Link to this section Functions

Get secret value

examples

Examples

iex(1)> ExSecrets.get("FOO")
nil
iex(2)> Application.put_env(:ex_secrets, :default_provider, :dot_env)
:ok
iex(3)> ExSecrets.get("FOO")
nil
iex(4)> System.put_env "FOO", "BAR"
:ok
iex(5)> ExSecrets.get("FOO")
"BAR"
iex(6)> System.delete_env "FOO"
:ok
iex(7)> Application.delete_env(:ex_secrets, :default_provider)
:ok
Link to this function

get(key, provider)

Get secret value with provider name.

examples

Examples

iex(1)> Application.put_env(:ex_secrets, :providers, %{dot_env: %{path: "test/support/fixtures/dot_env_test.env"}})
:ok
iex(2)> ExSecrets.get("DEVS", :dot_env)
"ROCKS"
iex(4)> Application.delete_env(:ex_secrets, :providers)
:ok
Link to this function

get(key, provider, default)

Get secret value with provider name and default value

examples

Examples

iex(1)> Application.put_env(:ex_secrets, :providers, %{dot_env: %{path: "test/support/fixtures/dot_env_test.env"}})
:ok
iex(2)> ExSecrets.get("ERL", :dot_env)
nil
iex(3)> ExSecrets.get("ERL", :dot_env, "ANG")
"ANG"
iex(4)> Application.delete_env(:ex_secrets, :providers)
:ok
Link to this function

get_using_provider(key, provider)

Internal function for fetching secret with provide for catching and rate limiting. Do not rely on this function.

Resets cache and reloads all providers.