module Formatron::CloudFormation::Resources::Route53
Generates CloudFormation
template Route53
resources
Public Class Methods
hosted_zone(name:, vpc:)
click to toggle source
rubocop:disable Metrics/MethodLength
# File lib/formatron/cloud_formation/resources/route53.rb, line 9 def self.hosted_zone(name:, vpc:) { Type: 'AWS::Route53::HostedZone', Properties: { HostedZoneConfig: { Comment: Template.join( 'Private Hosted Zone for CloudFormation Stack: ', Template.ref('AWS::StackName') ) }, Name: name, VPCs: [{ VPCId: Template.ref(vpc), VPCRegion: Template.ref('AWS::Region') }] } } end
record_set( hosted_zone_id:, sub_domain:, hosted_zone_name:, instance:, attribute: )
click to toggle source
rubocop:disable Metrics/MethodLength
# File lib/formatron/cloud_formation/resources/route53.rb, line 30 def self.record_set( hosted_zone_id:, sub_domain:, hosted_zone_name:, instance:, attribute: ) { Type: 'AWS::Route53::RecordSet', Properties: { HostedZoneId: hosted_zone_id, Name: "#{sub_domain}.#{hosted_zone_name}", ResourceRecords: [ Template.get_attribute(instance, attribute) ], TTL: '900', Type: 'A' } } end