Protect the environment by deleting + fetching keys: delete!

Requirements
– Keeping secrets in the environment is convenient, but not every sub-process can be trusted.
– Fail fast when configuration is missing

Solution

def ENV.delete!(key)
  delete(key) || raise(KeyError, "key not found: #{key.inspect}")
end

secret = ENV.delete!('SECRECT')
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s