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')