diff --git a/aurora-postgres.cfndsl.rb b/aurora-postgres.cfndsl.rb index d0abced..4af3aa5 100644 --- a/aurora-postgres.cfndsl.rb +++ b/aurora-postgres.cfndsl.rb @@ -220,55 +220,46 @@ maint_window = external_parameters.fetch(:maint_window, nil) # key kept for backwards compatibility writer_maintenance_window = external_parameters.fetch(:writer_maintenance_window, maint_window) - if engine_mode == 'serverless' - RDS_DBInstance(:ServerlessDBInstance) { - Engine 'aurora-postgresql' - DBInstanceClass 'db.serverless' - DBClusterIdentifier Ref(:DBCluster) - } + Condition("CreateReaderRecord", FnAnd([FnEquals(Ref("EnableReader"), 'true'), Condition('CreateHostRecord')])) + Condition("EnableReader", FnEquals(Ref("EnableReader"), 'true')) - else - Condition("CreateReaderRecord", FnAnd([FnEquals(Ref("EnableReader"), 'true'), Condition('CreateHostRecord')])) - Condition("EnableReader", FnEquals(Ref("EnableReader"), 'true')) - - RDS_DBInstance(:DBClusterInstanceWriter) { - DBSubnetGroupName Ref(:DBClusterSubnetGroup) - DBParameterGroupName Ref(:DBInstanceParameterGroup) - DBClusterIdentifier Ref(:DBCluster) - Engine 'aurora-postgresql' - EngineVersion engine_version unless engine_version.nil? - AutoMinorVersionUpgrade minor_upgrade unless minor_upgrade.nil? - PreferredMaintenanceWindow writer_maintenance_window unless writer_maintenance_window.nil? - PubliclyAccessible 'false' - DBInstanceClass Ref(:WriterInstanceType) - Tags aurora_tags - } + RDS_DBInstance(:DBClusterInstanceWriter) { + DBSubnetGroupName Ref(:DBClusterSubnetGroup) + DBParameterGroupName Ref(:DBInstanceParameterGroup) + DBClusterIdentifier Ref(:DBCluster) + Engine 'aurora-postgresql' + EngineVersion engine_version unless engine_version.nil? + AutoMinorVersionUpgrade minor_upgrade unless minor_upgrade.nil? + PreferredMaintenanceWindow writer_maintenance_window unless writer_maintenance_window.nil? + PubliclyAccessible 'false' + DBInstanceClass Ref(:WriterInstanceType) + Tags aurora_tags + } - reader_maintenance_window = external_parameters.fetch(:reader_maintenance_window, nil) - - RDS_DBInstance(:DBClusterInstanceReader) { - Condition(:EnableReader) - DBSubnetGroupName Ref(:DBClusterSubnetGroup) - DBParameterGroupName Ref(:DBInstanceParameterGroup) - DBClusterIdentifier Ref(:DBCluster) - Engine 'aurora-postgresql' - EngineVersion engine_version unless engine_version.nil? - AutoMinorVersionUpgrade minor_upgrade unless minor_upgrade.nil? - PreferredMaintenanceWindow reader_maintenance_window unless reader_maintenance_window.nil? - PubliclyAccessible 'false' - DBInstanceClass Ref(:ReaderInstanceType) - Tags aurora_tags - } + reader_maintenance_window = external_parameters.fetch(:reader_maintenance_window, nil) - Route53_RecordSet(:DBClusterReaderRecord) { - Condition(:CreateReaderRecord) - HostedZoneName FnSub("#{external_parameters[:dns_format]}.") - Name FnSub("#{external_parameters[:hostname_read_endpoint]}.#{external_parameters[:dns_format]}.") - Type 'CNAME' - TTL '60' - ResourceRecords [ FnGetAtt('DBCluster','ReadEndpoint.Address') ] - } - end + RDS_DBInstance(:DBClusterInstanceReader) { + Condition(:EnableReader) + DBSubnetGroupName Ref(:DBClusterSubnetGroup) + DBParameterGroupName Ref(:DBInstanceParameterGroup) + DBClusterIdentifier Ref(:DBCluster) + Engine 'aurora-postgresql' + EngineVersion engine_version unless engine_version.nil? + AutoMinorVersionUpgrade minor_upgrade unless minor_upgrade.nil? + PreferredMaintenanceWindow reader_maintenance_window unless reader_maintenance_window.nil? + PubliclyAccessible 'false' + DBInstanceClass Ref(:ReaderInstanceType) + Tags aurora_tags + } + + Route53_RecordSet(:DBClusterReaderRecord) { + Condition(:CreateReaderRecord) + HostedZoneName FnSub("#{external_parameters[:dns_format]}.") + Name FnSub("#{external_parameters[:hostname_read_endpoint]}.#{external_parameters[:dns_format]}.") + Type 'CNAME' + TTL '60' + ResourceRecords [ FnGetAtt('DBCluster','ReadEndpoint.Address') ] + } Route53_RecordSet(:DBHostRecord) { Condition(:CreateHostRecord)