class EnvironmentConfig::TypedEnv

Public Class Methods

fetch(type, key, *args) click to toggle source
# File lib/environment_config/typed_env.rb, line 10
def fetch(type, key, *args)
  Types.convert(type, key, fetch_raw(key, *args))
end

Private Class Methods

fetch_raw(key, *options, base64: false) click to toggle source
# File lib/environment_config/typed_env.rb, line 16
def fetch_raw(key, *options, base64: false)
  result = ENV.fetch(key, *options)
  return Base64.decode64(result) if base64

  result
rescue KeyError => e
  raise e,
        "Expected environment variable #{key} to be set, but was missing."
end