Sha256: c7ca919230878359cef9ac7b38e3e2e1562b52f01e8e166dbaed993e0195adee

Contents?: true

Size: 1.2 KB

Versions: 22

Compression:

Stored size: 1.2 KB

Contents

module Awspec::Type
  class Route53HostedZone < ResourceBase
    def resource_via_client
      @resource_via_client ||= find_hosted_zone(@display_name)
    end

    def id
      @id ||= resource_via_client.id if resource_via_client
    end

    def resource_via_client_record_sets
      @resource_via_client_record_sets ||= select_record_sets_by_hosted_zone_id(id)
    end

    def has_record_set?(name, type, value, options = {})
      name.gsub!(/\*/, '\\\052') # wildcard support
      ret = resource_via_client_record_sets.find do |record_set|
        # next if record_set.type != type.upcase
        next unless record_set.type.casecmp(type) == 0
        if !record_set.resource_records.empty?
          sorted = record_set.resource_records.map { |r| r.value }.sort.join("\n")
          ttl = options[:ttl] || record_set[:ttl]
          record_set.name == name && \
          value.split("\n").sort.join("\n") == sorted && \
          record_set.ttl == ttl
        else
          # ALIAS
          record_set.name == name && \
          record_set.alias_target.dns_name == options[:alias_dns_name] && \
          record_set.alias_target.hosted_zone_id == options[:alias_hosted_zone_id]
        end
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 2 rubygems

Version Path
awspec-1.5.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.4.3 lib/awspec/type/route53_hosted_zone.rb
awspec-1.4.2 lib/awspec/type/route53_hosted_zone.rb
awspec-1.4.1 lib/awspec/type/route53_hosted_zone.rb
awspec-1.4.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.3.1 lib/awspec/type/route53_hosted_zone.rb
awspec-1.3.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.2.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.1.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.0.0 lib/awspec/type/route53_hosted_zone.rb
awspec-1.0.0.rc lib/awspec/type/route53_hosted_zone.rb
awspec-0.88.2 lib/awspec/type/route53_hosted_zone.rb
awspec-0.88.1 lib/awspec/type/route53_hosted_zone.rb
awspec-0.88.0 lib/awspec/type/route53_hosted_zone.rb
awspec-0.87.1 lib/awspec/type/route53_hosted_zone.rb
awspec-0.87.0 lib/awspec/type/route53_hosted_zone.rb
awspec-0.86.0 lib/awspec/type/route53_hosted_zone.rb
cmonson_2ndwatch_awspec-0.85.4 lib/awspec/type/route53_hosted_zone.rb
awspec-0.85.3 lib/awspec/type/route53_hosted_zone.rb
cmonson_2ndwatch_awspec-0.85.3 lib/awspec/type/route53_hosted_zone.rb