Sha256: a29802a6ca3a061160022dbfca100fe4a4149e49d518e23bdcb9dd61b46d7cd8

Contents?: true

Size: 979 Bytes

Versions: 4

Compression:

Stored size: 979 Bytes

Contents

# frozen_string_literal: true

module Awspec::Helper
  module Finder
    module SsmParameter
      def find_ssm_parameter(name)
        req = {
          filters:  [
            {
              key: 'Name',
              values: [name]
            }
          ]
        }
        loop do
          res = ssm_client.describe_parameters(req)
          if res.parameters.size >= 1
            return res.parameters.first
          end
          break if res.next_token.nil?

          req[:next_token] = res.next_token
        end
      end

      def find_parameter_tag(id, tag_key)
        tag = nil
        begin
          response = ssm_client.list_tags_for_resource(
            resource_type: 'Parameter',
            resource_id: id
          )
          tag_set = response.tag_list
          tag = tag_set.find { |tag_obj| tag_obj.key == tag_key }
        rescue Aws::SSM::Errors::ServiceError
          nil
        end
        return tag if tag
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
awspec-1.32.0 lib/awspec/helper/finder/ssm_parameter.rb
awspec-1.31.0 lib/awspec/helper/finder/ssm_parameter.rb
awspec-1.30.0 lib/awspec/helper/finder/ssm_parameter.rb
awspec-1.29.3 lib/awspec/helper/finder/ssm_parameter.rb