docbrown/config/initializers/vault.rb

40 lines
1.5 KiB
Ruby

Vault.configure do |config|
# The address of the Vault server, also read as
config.address = ENV["VAULT_ADDR"] || "http://127.0.0.1:8200"
# The policy token to authenticate with Vault
# Each app will get its own policy https://learn.hashicorp.com/vault/getting-started/policies#overview
# Each policy comes with its own token to give the app access to ONLY its secrets
config.token = ENV["VAULT_TOKEN"]
# Mimic Paths for communities
# Optional - if using the Namespace enterprise feature
# config.namespace = ENV["VAULT_NAMESPACE"]
# Proxy connection information, also read as ENV["VAULT_PROXY_(thing)"]
# config.proxy_address = "..."
# config.proxy_port = "..."
# config.proxy_username = "..."
# config.proxy_password = "..."
# Custom SSL PEM, also read as ENV["VAULT_SSL_CERT"]
# config.ssl_pem_file = "/path/on/disk.pem"
# As an alternative to a pem file, you can provide the raw PEM string, also read in the following order of preference:
# ENV["VAULT_SSL_PEM_CONTENTS_BASE64"] then ENV["VAULT_SSL_PEM_CONTENTS"]
# config.ssl_pem_contents = "-----BEGIN ENCRYPTED..."
# Use SSL verification, also read as ENV["VAULT_SSL_VERIFY"]
config.ssl_verify = ENV["VAULT_SSL_VERIFY"] || true
# Timeout the connection after a certain amount of time (seconds), also read
# as ENV["VAULT_TIMEOUT"]
config.timeout = 30
# It is also possible to have finer-grained controls over the timeouts, these
# may also be read as environment variables
config.ssl_timeout = 5
config.open_timeout = 5
config.read_timeout = 30
end