class Awry::Ssm
Public Instance Methods
client()
click to toggle source
# File lib/awry/ssm.rb, line 6 def client @_client ||= Aws::SSM::Client.new end
delete(name)
click to toggle source
# File lib/awry/ssm.rb, line 47 def delete(name) if yes?("Really delete parameter #{name}?", :yellow) client.delete_parameter(name: name) end rescue Aws::SSM::Errors::ParameterNotFound => e error(e.message) end
get(name)
click to toggle source
# File lib/awry/ssm.rb, line 22 def get(name) puts client.get_parameter(name: name, with_decryption: options[:decrypt]).parameter.value rescue Aws::SSM::Errors::ParameterNotFound => e error(e.message) end
ls(prefix = '/')
click to toggle source
# File lib/awry/ssm.rb, line 12 def ls(prefix = '/') filters = [ { key: :Name, option: :BeginsWith, values: [ prefix.sub(/^(\w)/, '/\1') ] } ] client.describe_parameters(parameter_filters: filters).each do |response| response.parameters.each { |p| puts p.name } sleep 0.1 # this api will throttle easily end end
put(name, value)
click to toggle source
# File lib/awry/ssm.rb, line 33 def put(name, value) client.put_parameter( name: name, value: value, description: options[:description], type: options[:type], key_id: options[:key_id], overwrite: options[:overwrite], ) rescue Aws::SSM::Errors::ParameterAlreadyExists => e error(e.message) end