module SecretEnv::Storage

Public Class Methods

setup(config) click to toggle source
# File lib/secret_env/storage.rb, line 4
def setup(config)
  if config
    klass(config.fetch('type')).new(namespace: config['namespace'])
  else
    Storage::Plain.new
  end
end

Private Class Methods

klass(type) click to toggle source
# File lib/secret_env/storage.rb, line 14
def klass(type)
  case type
  when 'plain'
    Storage::Plain
  when 'credstash'
    require 'rcredstash'
    Storage::CredStash
  when 'file'
    Storage::File
  else
    raise "Unknown storage type: #{type}"
  end
end