Sha256: b6289b1e571efecbfc7c7679389bf7ae6849e9d4b9a5d62164312f3336644929

Contents?: true

Size: 1.47 KB

Versions: 14

Compression:

Stored size: 1.47 KB

Contents

# frozen_string_literal: true

module Awspec::Helper
  module Finder
    module Waf
      def find_waf_web_acl(id)
        finded = nil
        next_marker = nil

        loop do
          res = waf_client.list_web_acls(next_marker: next_marker, limit: 100)
          finded = res.web_acls.find do |acl|
            acl.web_acl_id == id || acl.name == id
          end
          (finded.nil? && next_marker = res.next_marker) || break
        end

        return nil unless finded

        waf_client.get_web_acl(web_acl_id: finded.web_acl_id).web_acl
      end

      def find_waf_rule(id)
        finded = nil
        next_marker = nil

        loop do
          res = waf_client.list_rules(next_marker: next_marker, limit: 1)
          finded = res.rules.find do |rule|
            rule.rule_id == id || rule.name == id
          end
          (finded.nil? && next_marker = res.next_marker) || break
        end

        return nil unless finded

        waf_client.get_rule(rule_id: finded.rule_id).rule
      end

      def find_waf_ip_set(id)
        finded = nil
        next_marker = nil

        loop do
          res = waf_client.list_ip_sets(next_marker: next_marker, limit: 1)
          finded = res.ip_sets.find do |set|
            set.ip_set_id == id || set.name == id
          end
          (finded.nil? && next_marker = res.next_marker) || break
        end

        return nil unless finded

        waf_client.get_ip_set(ip_set_id: finded.ip_set_id).ip_set
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
awspec-1.32.0 lib/awspec/helper/finder/waf.rb
awspec-1.31.0 lib/awspec/helper/finder/waf.rb
awspec-1.30.0 lib/awspec/helper/finder/waf.rb
awspec-1.29.3 lib/awspec/helper/finder/waf.rb
awspec-1.29.2 lib/awspec/helper/finder/waf.rb
awspec-1.29.1 lib/awspec/helper/finder/waf.rb
awspec-1.29.0 lib/awspec/helper/finder/waf.rb
awspec-1.28.2 lib/awspec/helper/finder/waf.rb
awspec-1.28.1 lib/awspec/helper/finder/waf.rb
awspec-1.28.0 lib/awspec/helper/finder/waf.rb
awspec-1.27.1 lib/awspec/helper/finder/waf.rb
awspec-1.27.0 lib/awspec/helper/finder/waf.rb
awspec-1.26.0 lib/awspec/helper/finder/waf.rb
awspec-1.25.2 lib/awspec/helper/finder/waf.rb