Module: ParamStore

Extended by:
SingleForwardable
Defined in:
lib/param_store.rb,
lib/param_store/version.rb,
lib/param_store/wrapper.rb,
lib/param_store/adapters/env.rb,
lib/param_store/adapters/ssm.rb,
lib/param_store/adapters/ejson_wrapper.rb,
lib/param_store/adapters/secrets_manager.rb

Defined Under Namespace

Modules: Adapters Classes: Wrapper

Constant Summary collapse

VERSION =
'1.0.1'.freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.adapter(adapter, **opts) ⇒ Object (readonly)

Returns the value of attribute adapter.



21
22
23
# File 'lib/param_store.rb', line 21

def adapter
  @adapter
end

.secrets_manager_clientObject



28
29
30
# File 'lib/param_store.rb', line 28

def secrets_manager_client
  @secrets_manager_client ||= Aws::SecretsManager::Client.new
end

.ssm_clientObject



24
25
26
# File 'lib/param_store.rb', line 24

def ssm_client
  @ssm_client ||= Aws::SSM::Client.new
end

.wrapperObject (readonly)

Returns the value of attribute wrapper.



21
22
23
# File 'lib/param_store.rb', line 21

def wrapper
  @wrapper
end

Class Method Details

.adapter_class(adapter) ⇒ Object



37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/param_store.rb', line 37

def adapter_class(adapter)
  case adapter
  when :env
    Adapters::Env
  when :aws_ssm
    require_adapter_dependency(adapter, 'aws-sdk-ssm')
    Adapters::SSM
  when :aws_secrets_manager
    require_adapter_dependency(adapter, 'aws-sdk-secretsmanager')
    Adapters::SecretsManager
  when :ejson_wrapper
    require_adapter_dependency(adapter, 'ejson_wrapper')
    Adapters::EJSONWrapper
  else
    raise "Invalid adapter: #{adapter}"
  end
end