class Roadworker::DSL::Hostedzone
Attributes
result[R]
Public Class Methods
new(context, name, id, rrsets = [], &block)
click to toggle source
# File lib/roadworker/dsl.rb, line 68 def initialize(context, name, id, rrsets = [], &block) @name = DSL.normalize_dns_name(name) @context = context.merge(:hosted_zone_name => @name) @result = OpenStruct.new({ :id => id, :name => @name, :vpcs => [], :resource_record_sets => rrsets, :rrsets => rrsets, :ignore_patterns => [], }) instance_eval(&block) end
Private Instance Methods
ignore(rrset_name)
click to toggle source
# File lib/roadworker/dsl.rb, line 104 def ignore(rrset_name) @result.ignore_patterns << case rrset_name when Regexp rrset_name else rrset_name.to_s.sub(/\.\z/, '') end end
ignore_under(rrset_name)
click to toggle source
# File lib/roadworker/dsl.rb, line 113 def ignore_under(rrset_name) ignore(/(\A|\.)#{Regexp.escape(rrset_name.to_s.sub(/\.\z/, ''))}\z/) end
resource_record_set(rrset_name, type, &block)
click to toggle source
# File lib/roadworker/dsl.rb, line 117 def resource_record_set(rrset_name, type, &block) if rrset_name.sub(/\.\z/, '') !~ /#{Regexp.escape(@name.sub(/\.\Z/, ''))}\Z/i raise "Invalid ResourceRecordSet Name: #{rrset_name}" end @result.resource_record_sets << ResourceRecordSet.new(@context, rrset_name, type, &block).result end
Also aliased as: rrset
vpc(vpc_region, vpc_id)
click to toggle source
# File lib/roadworker/dsl.rb, line 86 def vpc(vpc_region, vpc_id) unless vpc_region raise "Invalid VPC Region: #{vpc_region.inspect}" end unless vpc_id raise "Invalid VPC ID: #{vpc_id}" end vpc_h = Aws::Route53::Types::VPC.new(:vpc_region => vpc_region.to_s, :vpc_id => vpc_id.to_s) if @result.vpcs.include?(vpc_h) raise "VPC is already defined: #{vpc_h.inspect}" end @result.vpcs << vpc_h end