diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.assets.json new file mode 100644 index 0000000000000..45c13225ef815 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.assets.json @@ -0,0 +1,19 @@ +{ + "version": "34.0.0", + "files": { + "6ef7bb16723c1bb9cf7146bc933297a5225c070c914722f051953fcd6623a3f3": { + "source": { + "path": "aws-cdk-rds-integ-with-feature-flag.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "6ef7bb16723c1bb9cf7146bc933297a5225c070c914722f051953fcd6623a3f3.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.template.json new file mode 100644 index 0000000000000..3e3a32b92397e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ-with-feature-flag.template.json @@ -0,0 +1,715 @@ +{ + "Resources": { + "VPCB9E5F0B4": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC" + } + ] + } + }, + "VPCPublicSubnet1SubnetB4246D30": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableFEE4B781": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet1RouteTableAssociation0B0896DC": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + } + } + }, + "VPCPublicSubnet1DefaultRoute91CEF279": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet1EIP6AD938E8": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" + } + ] + } + }, + "VPCPublicSubnet1NATGatewayE0556630": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet1EIP6AD938E8", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC" + ] + }, + "VPCPublicSubnet2Subnet74179F39": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTable6F1A15F1": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPublicSubnet2RouteTableAssociation5A808732": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + } + }, + "VPCPublicSubnet2DefaultRouteB7481BBA": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" + } + }, + "DependsOn": [ + "VPCVPCGW99B986DC" + ] + }, + "VPCPublicSubnet2EIP4947BC00": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" + } + ] + } + }, + "VPCPublicSubnet2NATGateway3C070193": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ + "VPCPublicSubnet2EIP4947BC00", + "AllocationId" + ] + }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ] + }, + "VPCPrivateSubnet1Subnet8BCA10E0": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableBE8A6027": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet1RouteTableAssociation347902D1": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet1Subnet8BCA10E0" + } + } + }, + "VPCPrivateSubnet1DefaultRouteAE1D6490": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" + } + } + }, + "VPCPrivateSubnet2SubnetCFCDAA7A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTable0A19E10E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "VPCPrivateSubnet2RouteTableAssociation0C73D413": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + }, + "SubnetId": { + "Ref": "VPCPrivateSubnet2SubnetCFCDAA7A" + } + } + }, + "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" + } + } + }, + "VPCIGWB7E252D3": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-rds-integ-with-feature-flag/VPC" + } + ] + } + }, + "VPCVPCGW99B986DC": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "ParamsA8366201": { + "Type": "AWS::RDS::DBClusterParameterGroup", + "Properties": { + "Description": "A nice parameter group", + "Family": "aurora-mysql8.0", + "Parameters": { + "character_set_database": "utf8mb4" + } + } + }, + "DbSecurity381C2C15": { + "Type": "AWS::KMS::Key", + "Properties": { + "KeyPolicy": { + "Statement": [ + { + "Action": "kms:*", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + }, + "Resource": "*" + } + ], + "Version": "2012-10-17" + } + }, + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" + }, + "DatabaseSubnets56F17B9A": { + "Type": "AWS::RDS::DBSubnetGroup", + "Properties": { + "DBSubnetGroupDescription": "Subnets for Database database", + "SubnetIds": [ + { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, + { + "Ref": "VPCPublicSubnet2Subnet74179F39" + } + ] + } + }, + "DatabaseSecurityGroup5C91FDCB": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "RDS security group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } + } + }, + "DatabaseSecurityGroupfrom00000IndirectPortF24F2E03": { + "Type": "AWS::EC2::SecurityGroupIngress", + "Properties": { + "CidrIp": "0.0.0.0/0", + "Description": "Open to the world", + "FromPort": { + "Fn::GetAtt": [ + "DatabaseB269D8BB", + "Endpoint.Port" + ] + }, + "GroupId": { + "Fn::GetAtt": [ + "DatabaseSecurityGroup5C91FDCB", + "GroupId" + ] + }, + "IpProtocol": "tcp", + "ToPort": { + "Fn::GetAtt": [ + "DatabaseB269D8BB", + "Endpoint.Port" + ] + } + } + }, + "DatabaseB269D8BB": { + "Type": "AWS::RDS::DBCluster", + "Properties": { + "CopyTagsToSnapshot": true, + "DBClusterParameterGroupName": { + "Ref": "ParamsA8366201" + }, + "DBSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "Engine": "aurora-mysql", + "EngineVersion": "8.0.mysql_aurora.3.03.0", + "KmsKeyId": { + "Fn::GetAtt": [ + "DbSecurity381C2C15", + "Arn" + ] + }, + "MasterUserPassword": "7959866cacc02c2d243ecfe177464fe6", + "MasterUsername": "admin", + "StorageEncrypted": true, + "VpcSecurityGroupIds": [ + { + "Fn::GetAtt": [ + "DatabaseSecurityGroup5C91FDCB", + "GroupId" + ] + } + ] + }, + "UpdateReplacePolicy": "Snapshot", + "DeletionPolicy": "Snapshot" + }, + "DatabaseInstance1844F58FD": { + "Type": "AWS::RDS::DBInstance", + "Properties": { + "DBClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "DBInstanceClass": "db.t3.medium", + "DBSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "Engine": "aurora-mysql", + "PubliclyAccessible": true + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC", + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseInstance2WrapperInstanceParameterGroup61FBD67B": { + "Type": "AWS::RDS::DBParameterGroup", + "Properties": { + "Description": "Parameter group for aurora-mysql8.0", + "Family": "aurora-mysql8.0", + "Parameters": {} + } + }, + "DatabaseInstance2AA380DEE": { + "Type": "AWS::RDS::DBInstance", + "Properties": { + "DBClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "DBInstanceClass": "db.t3.medium", + "DBParameterGroupName": { + "Ref": "DatabaseInstance2WrapperInstanceParameterGroup61FBD67B" + }, + "DBSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "Engine": "aurora-mysql", + "PubliclyAccessible": true + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC", + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "DatabaseInstance3WrapperInstanceParameterGroup00CB9DB5": { + "Type": "AWS::RDS::DBParameterGroup", + "Properties": { + "Description": "Parameter group for aurora-mysql8.0", + "Family": "aurora-mysql8.0", + "Parameters": {} + } + }, + "DatabaseInstance32FCBA185": { + "Type": "AWS::RDS::DBInstance", + "Properties": { + "DBClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "DBInstanceClass": "db.t3.medium", + "DBParameterGroupName": { + "Ref": "DatabaseInstance3WrapperInstanceParameterGroup00CB9DB5" + }, + "DBSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "Engine": "aurora-mysql", + "PubliclyAccessible": true + }, + "DependsOn": [ + "VPCPublicSubnet1DefaultRoute91CEF279", + "VPCPublicSubnet1RouteTableAssociation0B0896DC", + "VPCPublicSubnet2DefaultRouteB7481BBA", + "VPCPublicSubnet2RouteTableAssociation5A808732" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "ClusterIamAccess93AC3DF3": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ecs-tasks.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ClusterIamAccessDefaultPolicyA088E4DA": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "rds-db:connect", + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":rds-db:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":dbuser:", + { + "Fn::GetAtt": [ + "DatabaseB269D8BB", + "DBClusterResourceId" + ] + }, + "/db_user" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterIamAccessDefaultPolicyA088E4DA", + "Roles": [ + { + "Ref": "ClusterIamAccess93AC3DF3" + } + ] + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.assets.json index 97d5937dd81aa..47634f37f52bc 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.assets.json @@ -1,7 +1,7 @@ { - "version": "31.0.0", + "version": "34.0.0", "files": { - "ab8497529e7534d5574c621afdac85191ff049866873e461996dc3efa491f7cc": { + "c863658d0e268728186dc27ce3f510e5229991e4900b97bd41e8d8875becaefa": { "source": { "path": "aws-cdk-rds-integ.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "ab8497529e7534d5574c621afdac85191ff049866873e461996dc3efa491f7cc.json", + "objectKey": "c863658d0e268728186dc27ce3f510e5229991e4900b97bd41e8d8875becaefa.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.template.json index 30701ca89df87..8b068e2c04e4d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/aws-cdk-rds-integ.template.json @@ -18,9 +18,6 @@ "VPCPublicSubnet1SubnetB4246D30": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 0, @@ -44,21 +41,24 @@ "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PublicSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet1RouteTableFEE4B781": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PublicSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet1RouteTableAssociation0B0896DC": { @@ -75,12 +75,12 @@ "VPCPublicSubnet1DefaultRoute91CEF279": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPublicSubnet1RouteTableFEE4B781" - }, "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" } }, "DependsOn": [ @@ -102,15 +102,15 @@ "VPCPublicSubnet1NATGatewayE0556630": { "Type": "AWS::EC2::NatGateway", "Properties": { - "SubnetId": { - "Ref": "VPCPublicSubnet1SubnetB4246D30" - }, "AllocationId": { "Fn::GetAtt": [ "VPCPublicSubnet1EIP6AD938E8", "AllocationId" ] }, + "SubnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, "Tags": [ { "Key": "Name", @@ -126,9 +126,6 @@ "VPCPublicSubnet2Subnet74179F39": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 1, @@ -152,21 +149,24 @@ "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PublicSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet2RouteTable6F1A15F1": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PublicSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPublicSubnet2RouteTableAssociation5A808732": { @@ -183,12 +183,12 @@ "VPCPublicSubnet2DefaultRouteB7481BBA": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" - }, "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "RouteTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" } }, "DependsOn": [ @@ -210,15 +210,15 @@ "VPCPublicSubnet2NATGateway3C070193": { "Type": "AWS::EC2::NatGateway", "Properties": { - "SubnetId": { - "Ref": "VPCPublicSubnet2Subnet74179F39" - }, "AllocationId": { "Fn::GetAtt": [ "VPCPublicSubnet2EIP4947BC00", "AllocationId" ] }, + "SubnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, "Tags": [ { "Key": "Name", @@ -234,9 +234,6 @@ "VPCPrivateSubnet1Subnet8BCA10E0": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 0, @@ -260,21 +257,24 @@ "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PrivateSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet1RouteTableBE8A6027": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PrivateSubnet1" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet1RouteTableAssociation347902D1": { @@ -291,21 +291,18 @@ "VPCPrivateSubnet1DefaultRouteAE1D6490": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" - }, "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": { "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" } } }, "VPCPrivateSubnet2SubnetCFCDAA7A": { "Type": "AWS::EC2::Subnet", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "AvailabilityZone": { "Fn::Select": [ 1, @@ -329,21 +326,24 @@ "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PrivateSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet2RouteTable0A19E10E": { "Type": "AWS::EC2::RouteTable", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "Tags": [ { "Key": "Name", "Value": "aws-cdk-rds-integ/VPC/PrivateSubnet2" } - ] + ], + "VpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "VPCPrivateSubnet2RouteTableAssociation0C73D413": { @@ -360,12 +360,12 @@ "VPCPrivateSubnet2DefaultRouteF4F5CFD2": { "Type": "AWS::EC2::Route", "Properties": { - "RouteTableId": { - "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" - }, "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": { "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "RouteTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" } } }, @@ -383,11 +383,11 @@ "VPCVPCGW99B986DC": { "Type": "AWS::EC2::VPCGatewayAttachment", "Properties": { - "VpcId": { - "Ref": "VPCB9E5F0B4" - }, "InternetGatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "VpcId": { + "Ref": "VPCB9E5F0B4" } } }, @@ -469,7 +469,6 @@ "DatabaseSecurityGroupfrom00000IndirectPortF24F2E03": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { - "IpProtocol": "tcp", "CidrIp": "0.0.0.0/0", "Description": "Open to the world", "FromPort": { @@ -484,6 +483,7 @@ "GroupId" ] }, + "IpProtocol": "tcp", "ToPort": { "Fn::GetAtt": [ "DatabaseB269D8BB", @@ -510,8 +510,8 @@ "Arn" ] }, - "MasterUsername": "admin", "MasterUserPassword": "7959866cacc02c2d243ecfe177464fe6", + "MasterUsername": "admin", "StorageEncrypted": true, "VpcSecurityGroupIds": [ { @@ -547,6 +547,14 @@ "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, + "DatabaseInstanceParameterGroup6968C5BF": { + "Type": "AWS::RDS::DBParameterGroup", + "Properties": { + "Description": "Parameter group for aurora-mysql8.0", + "Family": "aurora-mysql8.0", + "Parameters": {} + } + }, "DatabaseInstance2AA380DEE": { "Type": "AWS::RDS::DBInstance", "Properties": { @@ -554,6 +562,9 @@ "Ref": "DatabaseB269D8BB" }, "DBInstanceClass": "db.t3.medium", + "DBParameterGroupName": { + "Ref": "DatabaseInstanceParameterGroup6968C5BF" + }, "DBSubnetGroupName": { "Ref": "DatabaseSubnets56F17B9A" }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/cdk.out index 7925065efbcc4..2313ab5436501 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"31.0.0"} \ No newline at end of file +{"version":"34.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/integ.json index 4b5aeeec886d9..5b65fd80329e2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/integ.json @@ -1,9 +1,9 @@ { - "version": "31.0.0", + "version": "34.0.0", "testCases": { "integ.cluster": { "stacks": [ - "aws-cdk-rds-integ" + "aws-cdk-rds-integ-with-feature-flag" ], "diffAssets": false, "stackUpdateWorkflow": true diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/manifest.json index 28b0b77535d2b..9f114e9da4194 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/manifest.json @@ -1,27 +1,27 @@ { - "version": "31.0.0", + "version": "34.0.0", "artifacts": { - "aws-cdk-rds-integ.assets": { + "aws-cdk-rds-integ-with-feature-flag.assets": { "type": "cdk:asset-manifest", "properties": { - "file": "aws-cdk-rds-integ.assets.json", + "file": "aws-cdk-rds-integ-with-feature-flag.assets.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" } }, - "aws-cdk-rds-integ": { + "aws-cdk-rds-integ-with-feature-flag": { "type": "aws:cloudformation:stack", "environment": "aws://unknown-account/unknown-region", "properties": { - "templateFile": "aws-cdk-rds-integ.template.json", + "templateFile": "aws-cdk-rds-integ-with-feature-flag.template.json", "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/ab8497529e7534d5574c621afdac85191ff049866873e461996dc3efa491f7cc.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/6ef7bb16723c1bb9cf7146bc933297a5225c070c914722f051953fcd6623a3f3.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ - "aws-cdk-rds-integ.assets" + "aws-cdk-rds-integ-with-feature-flag.assets" ], "lookupRole": { "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", @@ -30,221 +30,239 @@ } }, "dependencies": [ - "aws-cdk-rds-integ.assets" + "aws-cdk-rds-integ-with-feature-flag.assets" ], "metadata": { - "/aws-cdk-rds-integ/VPC/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/Resource": [ { "type": "aws:cdk:logicalId", "data": "VPCB9E5F0B4" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/Subnet": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1SubnetB4246D30" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/RouteTable": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/RouteTable": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1RouteTableFEE4B781" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/RouteTableAssociation": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1RouteTableAssociation0B0896DC" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/DefaultRoute": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/DefaultRoute": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1DefaultRoute91CEF279" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/EIP": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/EIP": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1EIP6AD938E8" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet1/NATGateway": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/NATGateway": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet1NATGatewayE0556630" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/Subnet": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2Subnet74179F39" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/RouteTable": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/RouteTable": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2RouteTable6F1A15F1" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/RouteTableAssociation": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2RouteTableAssociation5A808732" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/DefaultRoute": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/DefaultRoute": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2DefaultRouteB7481BBA" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/EIP": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/EIP": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2EIP4947BC00" } ], - "/aws-cdk-rds-integ/VPC/PublicSubnet2/NATGateway": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/NATGateway": [ { "type": "aws:cdk:logicalId", "data": "VPCPublicSubnet2NATGateway3C070193" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet1/Subnet": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet1Subnet8BCA10E0" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet1/RouteTable": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/RouteTable": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet1RouteTableBE8A6027" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet1/RouteTableAssociation": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet1RouteTableAssociation347902D1" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet1/DefaultRoute": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/DefaultRoute": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet1DefaultRouteAE1D6490" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet2/Subnet": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet2SubnetCFCDAA7A" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet2/RouteTable": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/RouteTable": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet2RouteTable0A19E10E" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet2/RouteTableAssociation": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet2RouteTableAssociation0C73D413" } ], - "/aws-cdk-rds-integ/VPC/PrivateSubnet2/DefaultRoute": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/DefaultRoute": [ { "type": "aws:cdk:logicalId", "data": "VPCPrivateSubnet2DefaultRouteF4F5CFD2" } ], - "/aws-cdk-rds-integ/VPC/IGW": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/IGW": [ { "type": "aws:cdk:logicalId", "data": "VPCIGWB7E252D3" } ], - "/aws-cdk-rds-integ/VPC/VPCGW": [ + "/aws-cdk-rds-integ-with-feature-flag/VPC/VPCGW": [ { "type": "aws:cdk:logicalId", "data": "VPCVPCGW99B986DC" } ], - "/aws-cdk-rds-integ/Params/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/Params/Resource": [ { "type": "aws:cdk:logicalId", "data": "ParamsA8366201" } ], - "/aws-cdk-rds-integ/DbSecurity/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/DbSecurity/Resource": [ { "type": "aws:cdk:logicalId", "data": "DbSecurity381C2C15" } ], - "/aws-cdk-rds-integ/Database/Subnets/Default": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/Subnets/Default": [ { "type": "aws:cdk:logicalId", "data": "DatabaseSubnets56F17B9A" } ], - "/aws-cdk-rds-integ/Database/SecurityGroup/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/SecurityGroup/Resource": [ { "type": "aws:cdk:logicalId", "data": "DatabaseSecurityGroup5C91FDCB" } ], - "/aws-cdk-rds-integ/Database/SecurityGroup/from 0.0.0.0_0:{IndirectPort}": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/SecurityGroup/from 0.0.0.0_0:{IndirectPort}": [ { "type": "aws:cdk:logicalId", "data": "DatabaseSecurityGroupfrom00000IndirectPortF24F2E03" } ], - "/aws-cdk-rds-integ/Database/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/Resource": [ { "type": "aws:cdk:logicalId", "data": "DatabaseB269D8BB" } ], - "/aws-cdk-rds-integ/Database/Instance1": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/Instance1": [ { "type": "aws:cdk:logicalId", "data": "DatabaseInstance1844F58FD" } ], - "/aws-cdk-rds-integ/Database/Instance2": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/Instance2Wrapper/InstanceParameterGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseInstance2WrapperInstanceParameterGroup61FBD67B" + } + ], + "/aws-cdk-rds-integ-with-feature-flag/Database/Instance2": [ { "type": "aws:cdk:logicalId", "data": "DatabaseInstance2AA380DEE" } ], - "/aws-cdk-rds-integ/ClusterIamAccess/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/Database/Instance3Wrapper/InstanceParameterGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseInstance3WrapperInstanceParameterGroup00CB9DB5" + } + ], + "/aws-cdk-rds-integ-with-feature-flag/Database/Instance3": [ + { + "type": "aws:cdk:logicalId", + "data": "DatabaseInstance32FCBA185" + } + ], + "/aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/Resource": [ { "type": "aws:cdk:logicalId", "data": "ClusterIamAccess93AC3DF3" } ], - "/aws-cdk-rds-integ/ClusterIamAccess/DefaultPolicy/Resource": [ + "/aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/DefaultPolicy/Resource": [ { "type": "aws:cdk:logicalId", "data": "ClusterIamAccessDefaultPolicyA088E4DA" } ], - "/aws-cdk-rds-integ/BootstrapVersion": [ + "/aws-cdk-rds-integ-with-feature-flag/BootstrapVersion": [ { "type": "aws:cdk:logicalId", "data": "BootstrapVersion" } ], - "/aws-cdk-rds-integ/CheckBootstrapVersion": [ + "/aws-cdk-rds-integ-with-feature-flag/CheckBootstrapVersion": [ { "type": "aws:cdk:logicalId", "data": "CheckBootstrapVersion" } ] }, - "displayName": "aws-cdk-rds-integ" + "displayName": "aws-cdk-rds-integ-with-feature-flag" }, "Tree": { "type": "cdk:tree", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/tree.json index 4134fb6be9e70..bd3e7a0e31aa5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.js.snapshot/tree.json @@ -4,17 +4,17 @@ "id": "App", "path": "", "children": { - "aws-cdk-rds-integ": { - "id": "aws-cdk-rds-integ", - "path": "aws-cdk-rds-integ", + "aws-cdk-rds-integ-with-feature-flag": { + "id": "aws-cdk-rds-integ-with-feature-flag", + "path": "aws-cdk-rds-integ-with-feature-flag", "children": { "VPC": { "id": "VPC", - "path": "aws-cdk-rds-integ/VPC", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC", "children": { "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/VPC/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::VPC", "aws:cdk:cloudformation:props": { @@ -25,29 +25,26 @@ "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "PublicSubnet1": { "id": "PublicSubnet1", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1", "children": { "Subnet": { "id": "Subnet", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/Subnet", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/Subnet", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 0, @@ -69,49 +66,52 @@ }, { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Acl": { "id": "Acl", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/Acl", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/Acl", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTable": { "id": "RouteTable", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/RouteTable", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/RouteTable", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTableAssociation": { "id": "RouteTableAssociation", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/RouteTableAssociation", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/RouteTableAssociation", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", "aws:cdk:cloudformation:props": { @@ -125,32 +125,32 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DefaultRoute": { "id": "DefaultRoute", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/DefaultRoute", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/DefaultRoute", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPublicSubnet1RouteTableFEE4B781" - }, "destinationCidrBlock": "0.0.0.0/0", "gatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet1RouteTableFEE4B781" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "EIP": { "id": "EIP", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/EIP", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/EIP", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::EIP", "aws:cdk:cloudformation:props": { @@ -158,63 +158,60 @@ "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "NATGateway": { "id": "NATGateway", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet1/NATGateway", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1/NATGateway", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", "aws:cdk:cloudformation:props": { - "subnetId": { - "Ref": "VPCPublicSubnet1SubnetB4246D30" - }, "allocationId": { "Fn::GetAtt": [ "VPCPublicSubnet1EIP6AD938E8", "AllocationId" ] }, + "subnetId": { + "Ref": "VPCPublicSubnet1SubnetB4246D30" + }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet1" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "PublicSubnet2": { "id": "PublicSubnet2", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2", "children": { "Subnet": { "id": "Subnet", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/Subnet", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/Subnet", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 1, @@ -236,49 +233,52 @@ }, { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Acl": { "id": "Acl", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/Acl", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/Acl", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTable": { "id": "RouteTable", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/RouteTable", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/RouteTable", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTableAssociation": { "id": "RouteTableAssociation", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/RouteTableAssociation", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/RouteTableAssociation", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", "aws:cdk:cloudformation:props": { @@ -292,32 +292,32 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DefaultRoute": { "id": "DefaultRoute", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/DefaultRoute", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/DefaultRoute", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" - }, "destinationCidrBlock": "0.0.0.0/0", "gatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "routeTableId": { + "Ref": "VPCPublicSubnet2RouteTable6F1A15F1" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "EIP": { "id": "EIP", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/EIP", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/EIP", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::EIP", "aws:cdk:cloudformation:props": { @@ -325,63 +325,60 @@ "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "NATGateway": { "id": "NATGateway", - "path": "aws-cdk-rds-integ/VPC/PublicSubnet2/NATGateway", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2/NATGateway", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", "aws:cdk:cloudformation:props": { - "subnetId": { - "Ref": "VPCPublicSubnet2Subnet74179F39" - }, "allocationId": { "Fn::GetAtt": [ "VPCPublicSubnet2EIP4947BC00", "AllocationId" ] }, + "subnetId": { + "Ref": "VPCPublicSubnet2Subnet74179F39" + }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PublicSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PublicSubnet2" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "PrivateSubnet1": { "id": "PrivateSubnet1", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1", "children": { "Subnet": { "id": "Subnet", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1/Subnet", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/Subnet", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 0, @@ -403,49 +400,52 @@ }, { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PrivateSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Acl": { "id": "Acl", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1/Acl", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/Acl", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTable": { "id": "RouteTable", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1/RouteTable", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/RouteTable", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PrivateSubnet1" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTableAssociation": { "id": "RouteTableAssociation", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1/RouteTableAssociation", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/RouteTableAssociation", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", "aws:cdk:cloudformation:props": { @@ -459,48 +459,45 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DefaultRoute": { "id": "DefaultRoute", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet1/DefaultRoute", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet1/DefaultRoute", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" - }, "destinationCidrBlock": "0.0.0.0/0", "natGatewayId": { "Ref": "VPCPublicSubnet1NATGatewayE0556630" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet1RouteTableBE8A6027" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "PrivateSubnet2": { "id": "PrivateSubnet2", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2", "children": { "Subnet": { "id": "Subnet", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2/Subnet", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/Subnet", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "availabilityZone": { "Fn::Select": [ 1, @@ -522,49 +519,52 @@ }, { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PrivateSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Acl": { "id": "Acl", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2/Acl", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/Acl", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTable": { "id": "RouteTable", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2/RouteTable", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/RouteTable", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC/PrivateSubnet2" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2" } - ] + ], + "vpcId": { + "Ref": "VPCB9E5F0B4" + } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "RouteTableAssociation": { "id": "RouteTableAssociation", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2/RouteTableAssociation", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/RouteTableAssociation", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", "aws:cdk:cloudformation:props": { @@ -578,86 +578,86 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DefaultRoute": { "id": "DefaultRoute", - "path": "aws-cdk-rds-integ/VPC/PrivateSubnet2/DefaultRoute", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/PrivateSubnet2/DefaultRoute", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Route", "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" - }, "destinationCidrBlock": "0.0.0.0/0", "natGatewayId": { "Ref": "VPCPublicSubnet2NATGateway3C070193" + }, + "routeTableId": { + "Ref": "VPCPrivateSubnet2RouteTable0A19E10E" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "IGW": { "id": "IGW", - "path": "aws-cdk-rds-integ/VPC/IGW", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/IGW", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", "aws:cdk:cloudformation:props": { "tags": [ { "key": "Name", - "value": "aws-cdk-rds-integ/VPC" + "value": "aws-cdk-rds-integ-with-feature-flag/VPC" } ] } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "VPCGW": { "id": "VPCGW", - "path": "aws-cdk-rds-integ/VPC/VPCGW", + "path": "aws-cdk-rds-integ-with-feature-flag/VPC/VPCGW", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", "aws:cdk:cloudformation:props": { - "vpcId": { - "Ref": "VPCB9E5F0B4" - }, "internetGatewayId": { "Ref": "VPCIGWB7E252D3" + }, + "vpcId": { + "Ref": "VPCB9E5F0B4" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Params": { "id": "Params", - "path": "aws-cdk-rds-integ/Params", + "path": "aws-cdk-rds-integ-with-feature-flag/Params", "children": { "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/Params/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/Params/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBClusterParameterGroup", "aws:cdk:cloudformation:props": { @@ -670,22 +670,22 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DbSecurity": { "id": "DbSecurity", - "path": "aws-cdk-rds-integ/DbSecurity", + "path": "aws-cdk-rds-integ-with-feature-flag/DbSecurity", "children": { "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/DbSecurity/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/DbSecurity/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::KMS::Key", "aws:cdk:cloudformation:props": { @@ -721,26 +721,26 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Database": { "id": "Database", - "path": "aws-cdk-rds-integ/Database", + "path": "aws-cdk-rds-integ-with-feature-flag/Database", "children": { "Subnets": { "id": "Subnets", - "path": "aws-cdk-rds-integ/Database/Subnets", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Subnets", "children": { "Default": { "id": "Default", - "path": "aws-cdk-rds-integ/Database/Subnets/Default", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Subnets/Default", "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBSubnetGroup", "aws:cdk:cloudformation:props": { @@ -757,22 +757,22 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "SecurityGroup": { "id": "SecurityGroup", - "path": "aws-cdk-rds-integ/Database/SecurityGroup", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/SecurityGroup", "children": { "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/Database/SecurityGroup/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/SecurityGroup/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", "aws:cdk:cloudformation:props": { @@ -791,16 +791,15 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "from 0.0.0.0_0:{IndirectPort}": { "id": "from 0.0.0.0_0:{IndirectPort}", - "path": "aws-cdk-rds-integ/Database/SecurityGroup/from 0.0.0.0_0:{IndirectPort}", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/SecurityGroup/from 0.0.0.0_0:{IndirectPort}", "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroupIngress", "aws:cdk:cloudformation:props": { - "ipProtocol": "tcp", "cidrIp": "0.0.0.0/0", "description": "Open to the world", "fromPort": { @@ -815,6 +814,7 @@ "GroupId" ] }, + "ipProtocol": "tcp", "toPort": { "Fn::GetAtt": [ "DatabaseB269D8BB", @@ -825,18 +825,18 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/Database/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBCluster", "aws:cdk:cloudformation:props": { @@ -870,20 +870,20 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Instance1Wrapper": { "id": "Instance1Wrapper", - "path": "aws-cdk-rds-integ/Database/Instance1Wrapper", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance1Wrapper", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Instance1": { "id": "Instance1", - "path": "aws-cdk-rds-integ/Database/Instance1", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance1", "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBInstance", "aws:cdk:cloudformation:props": { @@ -900,20 +900,109 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Instance2Wrapper": { "id": "Instance2Wrapper", - "path": "aws-cdk-rds-integ/Database/Instance2Wrapper", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance2Wrapper", + "children": { + "InstanceParameterGroup": { + "id": "InstanceParameterGroup", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance2Wrapper/InstanceParameterGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance2Wrapper/InstanceParameterGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::RDS::DBParameterGroup", + "aws:cdk:cloudformation:props": { + "description": "Parameter group for aurora-mysql8.0", + "family": "aurora-mysql8.0", + "parameters": {} + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + } + }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Instance2": { "id": "Instance2", - "path": "aws-cdk-rds-integ/Database/Instance2", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance2", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::RDS::DBInstance", + "aws:cdk:cloudformation:props": { + "dbClusterIdentifier": { + "Ref": "DatabaseB269D8BB" + }, + "dbInstanceClass": "db.t3.medium", + "dbParameterGroupName": { + "Ref": "DatabaseInstance2WrapperInstanceParameterGroup61FBD67B" + }, + "dbSubnetGroupName": { + "Ref": "DatabaseSubnets56F17B9A" + }, + "engine": "aurora-mysql", + "publiclyAccessible": true + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + }, + "Instance3Wrapper": { + "id": "Instance3Wrapper", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance3Wrapper", + "children": { + "InstanceParameterGroup": { + "id": "InstanceParameterGroup", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance3Wrapper/InstanceParameterGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance3Wrapper/InstanceParameterGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::RDS::DBParameterGroup", + "aws:cdk:cloudformation:props": { + "description": "Parameter group for aurora-mysql8.0", + "family": "aurora-mysql8.0", + "parameters": {} + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + } + }, + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.2.70" + } + }, + "Instance3": { + "id": "Instance3", + "path": "aws-cdk-rds-integ-with-feature-flag/Database/Instance3", "attributes": { "aws:cdk:cloudformation:type": "AWS::RDS::DBInstance", "aws:cdk:cloudformation:props": { @@ -921,6 +1010,9 @@ "Ref": "DatabaseB269D8BB" }, "dbInstanceClass": "db.t3.medium", + "dbParameterGroupName": { + "Ref": "DatabaseInstance3WrapperInstanceParameterGroup00CB9DB5" + }, "dbSubnetGroupName": { "Ref": "DatabaseSubnets56F17B9A" }, @@ -930,30 +1022,30 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "ClusterIamAccess": { "id": "ClusterIamAccess", - "path": "aws-cdk-rds-integ/ClusterIamAccess", + "path": "aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess", "children": { "ImportClusterIamAccess": { "id": "ImportClusterIamAccess", - "path": "aws-cdk-rds-integ/ClusterIamAccess/ImportClusterIamAccess", + "path": "aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/ImportClusterIamAccess", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/ClusterIamAccess/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::IAM::Role", "aws:cdk:cloudformation:props": { @@ -973,16 +1065,16 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "DefaultPolicy": { "id": "DefaultPolicy", - "path": "aws-cdk-rds-integ/ClusterIamAccess/DefaultPolicy", + "path": "aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/DefaultPolicy", "children": { "Resource": { "id": "Resource", - "path": "aws-cdk-rds-integ/ClusterIamAccess/DefaultPolicy/Resource", + "path": "aws-cdk-rds-integ-with-feature-flag/ClusterIamAccess/DefaultPolicy/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::IAM::Policy", "aws:cdk:cloudformation:props": { @@ -1032,41 +1124,41 @@ }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "BootstrapVersion": { "id": "BootstrapVersion", - "path": "aws-cdk-rds-integ/BootstrapVersion", + "path": "aws-cdk-rds-integ-with-feature-flag/BootstrapVersion", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", - "path": "aws-cdk-rds-integ/CheckBootstrapVersion", + "path": "aws-cdk-rds-integ-with-feature-flag/CheckBootstrapVersion", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } }, "Tree": { @@ -1074,13 +1166,13 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } }, "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.270" + "version": "10.2.70" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.ts index 5ce12d092d9eb..674e0377a0b48 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-rds/test/integ.cluster.ts @@ -3,63 +3,92 @@ import * as iam from 'aws-cdk-lib/aws-iam'; import * as kms from 'aws-cdk-lib/aws-kms'; import * as cdk from 'aws-cdk-lib'; import { AuroraMysqlEngineVersion, ClusterInstance, Credentials, DatabaseCluster, DatabaseClusterEngine, ParameterGroup } from 'aws-cdk-lib/aws-rds'; +import { AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS } from 'aws-cdk-lib/cx-api'; -const app = new cdk.App(); -const stack = new cdk.Stack(app, 'aws-cdk-rds-integ'); +let featureFlag = false; -const vpc = new ec2.Vpc(stack, 'VPC', { maxAzs: 2, restrictDefaultSecurityGroup: false }); +class TestStack extends cdk.Stack { + constructor(scope: cdk.App, id: string, props?: cdk.StackProps) { + super(scope, id, props); + const vpc = new ec2.Vpc(this, 'VPC', { maxAzs: 2, restrictDefaultSecurityGroup: false }); -const params = new ParameterGroup(stack, 'Params', { - engine: DatabaseClusterEngine.auroraMysql({ - version: AuroraMysqlEngineVersion.VER_3_03_0, - }), - description: 'A nice parameter group', - parameters: { - character_set_database: 'utf8mb4', - }, -}); + const params = new ParameterGroup(this, 'Params', { + engine: DatabaseClusterEngine.auroraMysql({ + version: AuroraMysqlEngineVersion.VER_3_03_0, + }), + description: 'A nice parameter group', + parameters: { + character_set_database: 'utf8mb4', + }, + }); -const kmsKey = new kms.Key(stack, 'DbSecurity'); + const kmsKey = new kms.Key(this, 'DbSecurity'); -const instanceProps = { - instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.MEDIUM), - isFromLegacyInstanceProps: true, -}; -const cluster = new DatabaseCluster(stack, 'Database', { - engine: DatabaseClusterEngine.auroraMysql({ - version: AuroraMysqlEngineVersion.VER_3_03_0, - }), - credentials: Credentials.fromUsername('admin', { password: cdk.SecretValue.unsafePlainText('7959866cacc02c2d243ecfe177464fe6') }), - vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }, - vpc, - writer: ClusterInstance.provisioned('Instance1', { - ...instanceProps, - }), - readers: [ - ClusterInstance.provisioned('Instance2', { - ...instanceProps, - }), - ], - parameterGroup: params, - storageEncryptionKey: kmsKey, -}); + const instanceProps = { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.MEDIUM), + isFromLegacyInstanceProps: true, + }; -cluster.connections.allowDefaultPortFromAnyIpv4('Open to the world'); + const readers = featureFlag + ? [ + ClusterInstance.provisioned('Instance2', { + ...instanceProps, + parameters: {}, + }), + ClusterInstance.provisioned('Instance3', { + ...instanceProps, + parameters: {}, + }), + ] + : [ + ClusterInstance.provisioned('Instance2', { + ...instanceProps, + parameters: {}, + }), + ]; -const role = new iam.Role(stack, 'ClusterIamAccess', { - assumedBy: new iam.ServicePrincipal('ecs-tasks.amazonaws.com'), -}); -const clusterIamAuthArn = stack.formatArn({ - service: 'rds-db', - resource: `dbuser:${cluster.clusterResourceIdentifier}`, - resourceName: 'db_user', -}); -role.addToPolicy( - new iam.PolicyStatement({ - effect: iam.Effect.ALLOW, - actions: ['rds-db:connect'], - resources: [clusterIamAuthArn], - }), -); + const cluster = new DatabaseCluster(this, 'Database', { + engine: DatabaseClusterEngine.auroraMysql({ + version: AuroraMysqlEngineVersion.VER_3_03_0, + }), + credentials: Credentials.fromUsername('admin', { password: cdk.SecretValue.unsafePlainText('7959866cacc02c2d243ecfe177464fe6') }), + vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }, + vpc, + writer: ClusterInstance.provisioned('Instance1', { + ...instanceProps, + }), + readers: readers, + parameterGroup: params, + storageEncryptionKey: kmsKey, + }); + cluster.connections.allowDefaultPortFromAnyIpv4('Open to the world'); + + const role = new iam.Role(this, 'ClusterIamAccess', { + assumedBy: new iam.ServicePrincipal('ecs-tasks.amazonaws.com'), + }); + const clusterIamAuthArn = this.formatArn({ + service: 'rds-db', + resource: `dbuser:${cluster.clusterResourceIdentifier}`, + resourceName: 'db_user', + }); + role.addToPolicy( + new iam.PolicyStatement({ + effect: iam.Effect.ALLOW, + actions: ['rds-db:connect'], + resources: [clusterIamAuthArn], + }), + ); + } +} + +const app = new cdk.App(); +new TestStack(app, 'aws-cdk-rds-integ'); app.synth(); + +featureFlag = true; +const appWithFeatureFlag = new cdk.App({ + context: { [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: true }, +}); +new TestStack(appWithFeatureFlag, 'aws-cdk-rds-integ-with-feature-flag'); +appWithFeatureFlag.synth(); \ No newline at end of file diff --git a/packages/aws-cdk-lib/aws-rds/lib/aurora-cluster-instance.ts b/packages/aws-cdk-lib/aws-rds/lib/aurora-cluster-instance.ts index 7e15711411d11..8ac577a7f0a3d 100644 --- a/packages/aws-cdk-lib/aws-rds/lib/aurora-cluster-instance.ts +++ b/packages/aws-cdk-lib/aws-rds/lib/aurora-cluster-instance.ts @@ -10,7 +10,8 @@ import { ISubnetGroup } from './subnet-group'; import * as ec2 from '../../aws-ec2'; import { IRole } from '../../aws-iam'; import * as kms from '../../aws-kms'; -import { IResource, Resource, Duration, RemovalPolicy, ArnFormat } from '../../core'; +import { IResource, Resource, Duration, RemovalPolicy, ArnFormat, FeatureFlags } from '../../core'; +import { AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS } from '../../cx-api'; /** * Options for binding the instance to the cluster @@ -471,10 +472,15 @@ class AuroraClusterInstance extends Resource implements IAuroraClusterInstance { const instanceParameterGroup = props.parameterGroup ?? ( props.parameters - ? new ParameterGroup(props.cluster, 'InstanceParameterGroup', { - engine: engine, - parameters: props.parameters, - }) + ? FeatureFlags.of(this).isEnabled(AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS) + ? new ParameterGroup(this, 'InstanceParameterGroup', { + engine: engine, + parameters: props.parameters, + }) + : new ParameterGroup(props.cluster, 'InstanceParameterGroup', { + engine: engine, + parameters: props.parameters, + }) : undefined ); const instanceParameterGroupConfig = instanceParameterGroup?.bindToInstance({}); diff --git a/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts b/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts index 45002bdc09c8b..43bd2f63466b5 100644 --- a/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts +++ b/packages/aws-cdk-lib/aws-rds/test/cluster.test.ts @@ -6,6 +6,7 @@ import * as logs from '../../aws-logs'; import * as s3 from '../../aws-s3'; import * as cdk from '../../core'; import { RemovalPolicy, Stack, Annotations as CoreAnnotations } from '../../core'; +import { AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS } from '../../cx-api'; import { AuroraEngineVersion, AuroraMysqlEngineVersion, AuroraPostgresEngineVersion, CfnDBCluster, Credentials, DatabaseCluster, DatabaseClusterEngine, DatabaseClusterFromSnapshot, ParameterGroup, PerformanceInsightRetention, SubnetGroup, DatabaseSecret, @@ -826,6 +827,46 @@ describe('cluster new api', () => { Annotations.fromStack(stack).hasNoWarning('*', '*'); }); + + test('can create with multiple readers with each parameters', () => { + // GIVEN + const stack = testStack(); + stack.node.setContext(AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, true); + const vpc = new ec2.Vpc(stack, 'VPC'); + + // WHEN + new DatabaseCluster(stack, 'Database', { + engine: DatabaseClusterEngine.AURORA, + vpc, + writer: ClusterInstance.provisioned('writer', {}), + readers: [ + ClusterInstance.provisioned('reader', { + parameters: {}, + }), + ClusterInstance.provisioned('reader2', { + parameters: {}, + }), + ], + }); + + // THEN + const template = Template.fromStack(stack); + template.resourceCountIs('AWS::RDS::DBInstance', 3); + template.resourceCountIs('AWS::RDS::DBParameterGroup', 2); + template.hasResourceProperties('AWS::RDS::DBInstance', { + DBClusterIdentifier: { Ref: 'DatabaseB269D8BB' }, + }); + template.hasResourceProperties('AWS::RDS::DBInstance', { + DBClusterIdentifier: { Ref: 'DatabaseB269D8BB' }, + DBParameterGroupName: { Ref: 'DatabasereaderInstanceParameterGroupA66BCEF9' }, + }); + template.hasResourceProperties('AWS::RDS::DBInstance', { + DBClusterIdentifier: { Ref: 'DatabaseB269D8BB' }, + DBParameterGroupName: { Ref: 'Databasereader2InstanceParameterGroupD35BEBC4' }, + }); + + Annotations.fromStack(stack).hasNoWarning('*', '*'); + }); }); describe('mixed readers', () => { diff --git a/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md b/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md index db9c02526aa34..aec789d002427 100644 --- a/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md +++ b/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md @@ -60,6 +60,7 @@ Flags come in three types: | [@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId](#aws-cdkaws-efsmounttargetorderinsensitivelogicalid) | When enabled, mount targets will have a stable logicalId that is linked to the associated subnet. | 2.93.0 | (fix) | | [@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion](#aws-cdkaws-lambda-nodejsuselatestruntimeversion) | Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default | 2.93.0 | (default) | | [@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier](#aws-cdkaws-appsyncusearnforsourceapiassociationidentifier) | When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id. | V2NEXT | (fix) | +| [@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters](#aws-cdkaws-rdsauroraclusterchangescopeofinstanceparametergroupwitheachparameters) | When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change. | V2NEXT | (fix) | @@ -110,7 +111,8 @@ The following json shows the current recommended set of flags, as `cdk init` wou "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": true, "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": true, "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": true, - "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": true + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": true, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": true } } ``` @@ -1130,4 +1132,21 @@ Note that for existing source api associations created with this flag disabled, | V2NEXT | `false` | `true` | +### @aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters + +*When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.* (fix) + +When this feature flag is enabled, a scope of `InstanceParameterGroup` for +`AuroraClusterInstance` with each parameters will change to AuroraClusterInstance +from AuroraCluster. +If the flag is set to false then it can only make one `AuroraClusterInstance` +with each `InstanceParameterGroup` in the AuroraCluster. + + +| Since | Default | Recommended | +| ----- | ----- | ----- | +| (not in v1) | | | +| V2NEXT | `false` | `true` | + + diff --git a/packages/aws-cdk-lib/cx-api/lib/features.ts b/packages/aws-cdk-lib/cx-api/lib/features.ts index e75f8a81f1b3c..7f3da88f525df 100644 --- a/packages/aws-cdk-lib/cx-api/lib/features.ts +++ b/packages/aws-cdk-lib/cx-api/lib/features.ts @@ -93,6 +93,7 @@ export const EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = '@aws-cdk/aws-efs:mou export const AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = '@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig'; export const ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = '@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby'; export const LAMBDA_NODEJS_USE_LATEST_RUNTIME = '@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion'; +export const AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = '@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters'; export const APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = '@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier'; export const FLAGS: Record = { @@ -908,6 +909,21 @@ export const FLAGS: Record = { introducedIn: { v2: '2.93.0' }, recommendedValue: true, }, + ////////////////////////////////////////////////////////////////////// + [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: { + type: FlagType.BugFix, + summary: 'When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.', + detailsMd: ` + When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for + \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance + from AuroraCluster. + + If the flag is set to false then it can only make one \`AuroraClusterInstance\` + with each \`InstanceParameterGroup\` in the AuroraCluster. + `, + introducedIn: { v2: 'V2NEXT' }, + recommendedValue: true, + }, ////////////////////////////////////////////////////////////////////// [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: {