From b9d8c024e8a99523da9f59f47d3e33e99b6e7a1a Mon Sep 17 00:00:00 2001 From: Matt Conway Date: Fri, 6 Sep 2019 12:40:39 -0400 Subject: [PATCH] move client out of ctor to fix tests --- .../atmos/providers/aws/ssm_secret_manager.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/simplygenius/atmos/providers/aws/ssm_secret_manager.rb b/lib/simplygenius/atmos/providers/aws/ssm_secret_manager.rb index e9736f6..22a032b 100644 --- a/lib/simplygenius/atmos/providers/aws/ssm_secret_manager.rb +++ b/lib/simplygenius/atmos/providers/aws/ssm_secret_manager.rb @@ -13,7 +13,6 @@ def initialize(provider) @provider = provider @path_prefix = "#{Atmos.config[:secret][:prefix]}" @encrypt = Atmos.config[:secret][:encrypt] - @client = ::Aws::SSM::Client.new end def set(key, value, force: false) @@ -29,21 +28,21 @@ def set(key, value, force: false) param_value = value.join(",") end - @client.put_parameter(name: param_name, value: param_value, type: param_type, overwrite: force) + client.put_parameter(name: param_name, value: param_value, type: param_type, overwrite: force) end def get(key) - resp = @client.get_parameter(name: param_name(key), with_decryption: @encrypt) + resp = client.get_parameter(name: param_name(key), with_decryption: @encrypt) resp.parameter.value end def delete(key) - @client.delete_parameter(name: param_name(key)) + client.delete_parameter(name: param_name(key)) end def to_h result = {} - resp = @client.get_parameters_by_path(path: param_name(""), recursive: true, with_decryption: @encrypt) + resp = client.get_parameters_by_path(path: param_name(""), recursive: true, with_decryption: @encrypt) resp.parameters.each do |p| key = p.name.gsub(/^#{param_name("")}/, '') result[key] = p.value @@ -60,6 +59,9 @@ def param_name(key) param_name end + def client + @client ||= ::Aws::SSM::Client.new + end end end