# RDS
# IS Aurora
RDSCluster = t.add_resource(DBCluster(
"RDSCluster",
Condition="isAuroraCondition",
Engine=Ref(SQLEngine),
Tags=Tags(
Customer=Ref(Customer),
Environment=Ref(Environment),
Name=Join("-", ["rdscluster", Ref(Customer), "db", Ref(Environment)]),
),
MasterUsername="username",
MasterUserPassword=Ref(Password),
VPCSecurityGroups=[Ref("SecurityGroupRDS")],
DataBaseName="temp",
DBSubnetGroupName=Ref("RDSSubnetGroup"),
BackupRetentionPeriod="7",
DependsOn="RDSSubnetGroup",
))
RDS = t.add_resource(DBInstance(
"RDS",
Condition="isAuroraCondition",
DBClusterIdentifier=Ref(RDSCluster),
Engine=Ref(SQLEngine),
MultiAZ=If("RDSMultiAZCondition", True, False),
AvailabilityZone=If("RDSMultiAZCondition", Ref("AWS::NoValue"), Select("0", GetAZs(Ref("AWS::Region")))),
PubliclyAccessible="false",
AllowMajorVersionUpgrade="true",
Tags=Tags(
Customer=Ref(Customer),
Environment=Ref(Environment),
Name=Join("-", ["rds", Ref(Customer), "db", Ref(Environment)]),
),
MasterUsername="username",
MasterUserPassword=Ref(Password),
AutoMinorVersionUpgrade="true",
VPCSecurityGroups=[Ref("SecurityGroupRDS")],
DBName="temp",
DBInstanceClass=Ref(RDSClass),
DBSubnetGroupName=Ref("RDSSubnetGroup"),
DBInstanceIdentifier=Join("-", ["rds", Ref(Customer), "db", Ref(Environment)]),
DependsOn="RDSSubnetGroup",
))
# Is Not Aurora
RDS = t.add_resource(DBInstance(
"RDS",
Condition="isNotAuroraCondition",
Engine=Ref(SQLEngine),
MultiAZ=If("RDSMultiAZCondition", True, False),
AvailabilityZone=If("RDSMultiAZCondition", Ref("AWS::NoValue"), Select("0", GetAZs(Ref("AWS::Region")))),
PubliclyAccessible="false",
AllowMajorVersionUpgrade="true",
Tags=Tags(
Customer=Ref(Customer),
Environment=Ref(Environment),
Name=Join("-", ["rds", Ref(Customer), "db", Ref(Environment)]),
),
MasterUsername="username",
MasterUserPassword=Ref(Password),
AutoMinorVersionUpgrade="true",
VPCSecurityGroups=[Ref("SecurityGroupRDS")],
DBName="temp",
AllocatedStorage="100",
DBInstanceClass=Ref(RDSClass),
DBSubnetGroupName=Ref("RDSSubnetGroup"),
StorageType="gp2",
BackupRetentionPeriod="7",
DBInstanceIdentifier=Join("-", ["rds", Ref(Customer), "db", Ref(Environment)]),
DependsOn="RDSSubnetGroup",
))
# RDS Subnet Group
RDSSubnetGroup = t.add_resource(DBSubnetGroup(
"RDSSubnetGroup",
SubnetIds=[Ref("Subnet0Private1"), Ref("Subnet2Private2")],
DBSubnetGroupDescription="RDS Subnet Group",
Tags=Tags(
Customer=Ref(Customer),
Environment=Ref(Environment),
Name=Join("-", ["rds", Ref(Customer), "dbsubnet", Ref(Environment)]),
),
))