diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/applicationMultipleTargetGroupsEc2ServiceTestDefaultTestDeployAssert1194B50F.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/applicationMultipleTargetGroupsEc2ServiceTestDefaultTestDeployAssert1194B50F.assets.json
index 910b880ef0d6a..52bf4aab6e6a9 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/applicationMultipleTargetGroupsEc2ServiceTestDefaultTestDeployAssert1194B50F.assets.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/applicationMultipleTargetGroupsEc2ServiceTestDefaultTestDeployAssert1194B50F.assets.json
@@ -1,5 +1,5 @@
{
- "version": "35.0.0",
+ "version": "38.0.1",
"files": {
"21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
"source": {
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.assets.json
index 99bb346a93a88..ef75cc8de3e7f 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.assets.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.assets.json
@@ -1,7 +1,7 @@
{
- "version": "35.0.0",
+ "version": "38.0.1",
"files": {
- "8b890d97c3cbf756b1557bcbd7797001fd3ce8a3f30d26704ab0cd3f1708bc28": {
+ "4206140067eea68731cbdc100e86cd6361e9d373c36720f4a999e7f7e6a50efe": {
"source": {
"path": "aws-ecs-integ-multiple-alb.template.json",
"packaging": "file"
@@ -9,7 +9,7 @@
"destinations": {
"current_account-current_region": {
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
- "objectKey": "8b890d97c3cbf756b1557bcbd7797001fd3ce8a3f30d26704ab0cd3f1708bc28.json",
+ "objectKey": "4206140067eea68731cbdc100e86cd6361e9d373c36720f4a999e7f7e6a50efe.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-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.template.json
index a9c7521131bb3..507891aec2498 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.template.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/aws-ecs-integ-multiple-alb.template.json
@@ -528,38 +528,79 @@
]
}
},
- "ClusterDefaultAutoScalingGroupLaunchConfig81EA5466": {
- "Type": "AWS::AutoScaling::LaunchConfiguration",
+ "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D": {
+ "Type": "AWS::EC2::LaunchTemplate",
"Properties": {
- "IamInstanceProfile": {
- "Ref": "ClusterDefaultAutoScalingGroupInstanceProfile2BB4FE55"
- },
- "ImageId": {
- "Ref": "SsmParameterValueawsserviceecsoptimizedamiamazonlinux2recommendedimageidC96584B6F00A464EAD1953AFF4B05118Parameter"
- },
- "InstanceType": "t2.micro",
- "SecurityGroups": [
- {
- "Fn::GetAtt": [
- "ClusterDefaultAutoScalingGroupInstanceSecurityGroup1D15236A",
- "GroupId"
- ]
- }
- ],
- "UserData": {
- "Fn::Base64": {
- "Fn::Join": [
- "",
- [
- "#!/bin/bash\necho ECS_CLUSTER=",
+ "LaunchTemplateData": {
+ "IamInstanceProfile": {
+ "Arn": {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupInstanceProfile2BB4FE55",
+ "Arn"
+ ]
+ }
+ },
+ "ImageId": {
+ "Ref": "SsmParameterValueawsserviceecsoptimizedamiamazonlinux2recommendedimageidC96584B6F00A464EAD1953AFF4B05118Parameter"
+ },
+ "InstanceType": "t2.micro",
+ "Monitoring": {
+ "Enabled": false
+ },
+ "SecurityGroupIds": [
+ {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupInstanceSecurityGroup1D15236A",
+ "GroupId"
+ ]
+ }
+ ],
+ "TagSpecifications": [
+ {
+ "ResourceType": "instance",
+ "Tags": [
{
- "Ref": "ClusterEB0386A7"
- },
- " >> /etc/ecs/ecs.config\nsudo iptables --insert FORWARD 1 --in-interface docker+ --destination 169.254.169.254/32 --jump DROP\nsudo service iptables save\necho ECS_AWSVPC_BLOCK_IMDS=true >> /etc/ecs/ecs.config"
+ "Key": "Name",
+ "Value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
+ ]
+ },
+ {
+ "ResourceType": "volume",
+ "Tags": [
+ {
+ "Key": "Name",
+ "Value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
]
+ }
+ ],
+ "UserData": {
+ "Fn::Base64": {
+ "Fn::Join": [
+ "",
+ [
+ "#!/bin/bash\necho ECS_CLUSTER=",
+ {
+ "Ref": "ClusterEB0386A7"
+ },
+ " >> /etc/ecs/ecs.config\nsudo iptables --insert FORWARD 1 --in-interface docker+ --destination 169.254.169.254/32 --jump DROP\nsudo service iptables save\necho ECS_AWSVPC_BLOCK_IMDS=true >> /etc/ecs/ecs.config"
+ ]
+ ]
+ }
+ }
+ },
+ "TagSpecifications": [
+ {
+ "ResourceType": "launch-template",
+ "Tags": [
+ {
+ "Key": "Name",
+ "Value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
]
}
- }
+ ]
},
"DependsOn": [
"ClusterDefaultAutoScalingGroupInstanceRoleDefaultPolicy06157A81",
@@ -569,8 +610,16 @@
"ClusterDefaultAutoScalingGroupASG0F98E147": {
"Type": "AWS::AutoScaling::AutoScalingGroup",
"Properties": {
- "LaunchConfigurationName": {
- "Ref": "ClusterDefaultAutoScalingGroupLaunchConfig81EA5466"
+ "LaunchTemplate": {
+ "LaunchTemplateId": {
+ "Ref": "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D"
+ },
+ "Version": {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D",
+ "LatestVersionNumber"
+ ]
+ }
},
"MaxSize": "1",
"MinSize": "1",
@@ -869,16 +918,104 @@
"ClusterDefaultAutoScalingGroupLifecycleHookDrainHookRole70201663"
]
},
+ "TaskDefTaskRole1EDB4A67": {
+ "Type": "AWS::IAM::Role",
+ "Properties": {
+ "AssumeRolePolicyDocument": {
+ "Statement": [
+ {
+ "Action": "sts:AssumeRole",
+ "Effect": "Allow",
+ "Principal": {
+ "Service": "ecs-tasks.amazonaws.com"
+ }
+ }
+ ],
+ "Version": "2012-10-17"
+ }
+ }
+ },
+ "TaskDefTaskRoleDefaultPolicyA592CB18": {
+ "Type": "AWS::IAM::Policy",
+ "Properties": {
+ "PolicyDocument": {
+ "Statement": [
+ {
+ "Action": [
+ "logs:CreateLogStream",
+ "logs:DescribeLogGroups",
+ "logs:DescribeLogStreams",
+ "logs:PutLogEvents",
+ "ssmmessages:CreateControlChannel",
+ "ssmmessages:CreateDataChannel",
+ "ssmmessages:OpenControlChannel",
+ "ssmmessages:OpenDataChannel"
+ ],
+ "Effect": "Allow",
+ "Resource": "*"
+ }
+ ],
+ "Version": "2012-10-17"
+ },
+ "PolicyName": "TaskDefTaskRoleDefaultPolicyA592CB18",
+ "Roles": [
+ {
+ "Ref": "TaskDefTaskRole1EDB4A67"
+ }
+ ]
+ }
+ },
+ "TaskDef54694570": {
+ "Type": "AWS::ECS::TaskDefinition",
+ "Properties": {
+ "ContainerDefinitions": [
+ {
+ "Command": [
+ "sh",
+ "-c",
+ "printf 'Listen 90\n \n DocumentRoot /var/www/html\n ServerName localhost\n' > /etc/httpd/conf.d/default-90.conf && /usr/sbin/apache2 -D FOREGROUND"
+ ],
+ "Essential": true,
+ "Image": "amazon/amazon-ecs-sample",
+ "Memory": 256,
+ "Name": "web",
+ "PortMappings": [
+ {
+ "ContainerPort": 80,
+ "HostPort": 0,
+ "Protocol": "tcp"
+ },
+ {
+ "ContainerPort": 90,
+ "HostPort": 0,
+ "Protocol": "tcp"
+ }
+ ]
+ }
+ ],
+ "Family": "awsecsintegmultiplealbTaskDef053E81DE",
+ "NetworkMode": "bridge",
+ "RequiresCompatibilities": [
+ "EC2"
+ ],
+ "TaskRoleArn": {
+ "Fn::GetAtt": [
+ "TaskDefTaskRole1EDB4A67",
+ "Arn"
+ ]
+ }
+ }
+ },
"myServiceLB168895E1": {
"Type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
"Properties": {
- "Name": "LB",
"LoadBalancerAttributes": [
{
"Key": "deletion_protection.enabled",
"Value": "false"
}
],
+ "Name": "LB",
"Scheme": "internet-facing",
"SecurityGroups": [
{
@@ -1023,158 +1160,6 @@
"Priority": 10
}
},
- "myServiceTaskDefTaskRole1C1DE6CC": {
- "Type": "AWS::IAM::Role",
- "Properties": {
- "AssumeRolePolicyDocument": {
- "Statement": [
- {
- "Action": "sts:AssumeRole",
- "Effect": "Allow",
- "Principal": {
- "Service": "ecs-tasks.amazonaws.com"
- }
- }
- ],
- "Version": "2012-10-17"
- }
- }
- },
- "myServiceTaskDefTaskRoleDefaultPolicyD48473C0": {
- "Type": "AWS::IAM::Policy",
- "Properties": {
- "PolicyDocument": {
- "Statement": [
- {
- "Action": [
- "logs:CreateLogStream",
- "logs:DescribeLogGroups",
- "logs:DescribeLogStreams",
- "logs:PutLogEvents",
- "ssmmessages:CreateControlChannel",
- "ssmmessages:CreateDataChannel",
- "ssmmessages:OpenControlChannel",
- "ssmmessages:OpenDataChannel"
- ],
- "Effect": "Allow",
- "Resource": "*"
- }
- ],
- "Version": "2012-10-17"
- },
- "PolicyName": "myServiceTaskDefTaskRoleDefaultPolicyD48473C0",
- "Roles": [
- {
- "Ref": "myServiceTaskDefTaskRole1C1DE6CC"
- }
- ]
- }
- },
- "myServiceTaskDef7FB8322A": {
- "Type": "AWS::ECS::TaskDefinition",
- "Properties": {
- "ContainerDefinitions": [
- {
- "Essential": true,
- "Image": "amazon/amazon-ecs-sample",
- "LogConfiguration": {
- "LogDriver": "awslogs",
- "Options": {
- "awslogs-group": {
- "Ref": "myServiceTaskDefwebLogGroupA1767F2C"
- },
- "awslogs-stream-prefix": "myService",
- "awslogs-region": {
- "Ref": "AWS::Region"
- }
- }
- },
- "Memory": 256,
- "Name": "web",
- "PortMappings": [
- {
- "ContainerPort": 80,
- "HostPort": 0,
- "Protocol": "tcp"
- },
- {
- "ContainerPort": 90,
- "HostPort": 0,
- "Protocol": "tcp"
- }
- ]
- }
- ],
- "ExecutionRoleArn": {
- "Fn::GetAtt": [
- "myServiceTaskDefExecutionRole618CD311",
- "Arn"
- ]
- },
- "Family": "awsecsintegmultiplealbmyServiceTaskDefC0AB61D5",
- "NetworkMode": "bridge",
- "RequiresCompatibilities": [
- "EC2"
- ],
- "TaskRoleArn": {
- "Fn::GetAtt": [
- "myServiceTaskDefTaskRole1C1DE6CC",
- "Arn"
- ]
- }
- }
- },
- "myServiceTaskDefwebLogGroupA1767F2C": {
- "Type": "AWS::Logs::LogGroup",
- "UpdateReplacePolicy": "Retain",
- "DeletionPolicy": "Retain"
- },
- "myServiceTaskDefExecutionRole618CD311": {
- "Type": "AWS::IAM::Role",
- "Properties": {
- "AssumeRolePolicyDocument": {
- "Statement": [
- {
- "Action": "sts:AssumeRole",
- "Effect": "Allow",
- "Principal": {
- "Service": "ecs-tasks.amazonaws.com"
- }
- }
- ],
- "Version": "2012-10-17"
- }
- }
- },
- "myServiceTaskDefExecutionRoleDefaultPolicyBDAEC571": {
- "Type": "AWS::IAM::Policy",
- "Properties": {
- "PolicyDocument": {
- "Statement": [
- {
- "Action": [
- "logs:CreateLogStream",
- "logs:PutLogEvents"
- ],
- "Effect": "Allow",
- "Resource": {
- "Fn::GetAtt": [
- "myServiceTaskDefwebLogGroupA1767F2C",
- "Arn"
- ]
- }
- }
- ],
- "Version": "2012-10-17"
- },
- "PolicyName": "myServiceTaskDefExecutionRoleDefaultPolicyBDAEC571",
- "Roles": [
- {
- "Ref": "myServiceTaskDefExecutionRole618CD311"
- }
- ]
- }
- },
"myServiceB0B6FAA0": {
"Type": "AWS::ECS::Service",
"Properties": {
@@ -1207,7 +1192,7 @@
],
"SchedulingStrategy": "REPLICA",
"TaskDefinition": {
- "Ref": "myServiceTaskDef7FB8322A"
+ "Ref": "TaskDef54694570"
}
},
"DependsOn": [
@@ -1215,8 +1200,8 @@
"myServiceLBPublicListenerECSTargetGroupweb90Group6388E5B5",
"myServiceLBPublicListenerECSTargetGroupweb90Rule0CAA997D",
"myServiceLBPublicListenerC78AE8A0",
- "myServiceTaskDefTaskRoleDefaultPolicyD48473C0",
- "myServiceTaskDefTaskRole1C1DE6CC"
+ "TaskDefTaskRoleDefaultPolicyA592CB18",
+ "TaskDefTaskRole1EDB4A67"
]
}
},
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/cdk.out
index c5cb2e5de6344..c6e612584e352 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/cdk.out
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/cdk.out
@@ -1 +1 @@
-{"version":"35.0.0"}
\ No newline at end of file
+{"version":"38.0.1"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/integ.json
index 6ab5ca41a43be..a6c9831ea8c9e 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/integ.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/integ.json
@@ -1,5 +1,5 @@
{
- "version": "35.0.0",
+ "version": "38.0.1",
"testCases": {
"applicationMultipleTargetGroupsEc2ServiceTest/DefaultTest": {
"stacks": [
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/manifest.json
index a577672dc9057..d67f3d2b84c9a 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/manifest.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/manifest.json
@@ -1,5 +1,5 @@
{
- "version": "35.0.0",
+ "version": "38.0.1",
"artifacts": {
"aws-ecs-integ-multiple-alb.assets": {
"type": "cdk:asset-manifest",
@@ -18,7 +18,7 @@
"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}/8b890d97c3cbf756b1557bcbd7797001fd3ce8a3f30d26704ab0cd3f1708bc28.json",
+ "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/4206140067eea68731cbdc100e86cd6361e9d373c36720f4a999e7f7e6a50efe.json",
"requiresBootstrapStackVersion": 6,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
"additionalDependencies": [
@@ -208,10 +208,10 @@
"data": "ClusterDefaultAutoScalingGroupInstanceProfile2BB4FE55"
}
],
- "/aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchConfig": [
+ "/aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate/Resource": [
{
"type": "aws:cdk:logicalId",
- "data": "ClusterDefaultAutoScalingGroupLaunchConfig81EA5466"
+ "data": "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D"
}
],
"/aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/ASG": [
@@ -280,6 +280,24 @@
"data": "SsmParameterValueawsserviceecsoptimizedamiamazonlinux2recommendedimageidC96584B6F00A464EAD1953AFF4B05118Parameter"
}
],
+ "/aws-ecs-integ-multiple-alb/TaskDef/TaskRole/Resource": [
+ {
+ "type": "aws:cdk:logicalId",
+ "data": "TaskDefTaskRole1EDB4A67"
+ }
+ ],
+ "/aws-ecs-integ-multiple-alb/TaskDef/TaskRole/DefaultPolicy/Resource": [
+ {
+ "type": "aws:cdk:logicalId",
+ "data": "TaskDefTaskRoleDefaultPolicyA592CB18"
+ }
+ ],
+ "/aws-ecs-integ-multiple-alb/TaskDef/Resource": [
+ {
+ "type": "aws:cdk:logicalId",
+ "data": "TaskDef54694570"
+ }
+ ],
"/aws-ecs-integ-multiple-alb/myService/LB/Resource": [
{
"type": "aws:cdk:logicalId",
@@ -334,42 +352,6 @@
"data": "myServiceServiceURL1258C56B"
}
],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDefTaskRole1C1DE6CC"
- }
- ],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/DefaultPolicy/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDefTaskRoleDefaultPolicyD48473C0"
- }
- ],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDef7FB8322A"
- }
- ],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/web/LogGroup/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDefwebLogGroupA1767F2C"
- }
- ],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDefExecutionRole618CD311"
- }
- ],
- "/aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/DefaultPolicy/Resource": [
- {
- "type": "aws:cdk:logicalId",
- "data": "myServiceTaskDefExecutionRoleDefaultPolicyBDAEC571"
- }
- ],
"/aws-ecs-integ-multiple-alb/myService/Service/Service": [
{
"type": "aws:cdk:logicalId",
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/tree.json
index 7e341f4dee25d..4bbb23996c8f7 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/tree.json
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.js.snapshot/tree.json
@@ -31,8 +31,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnVPC",
+ "version": "0.0.0"
}
},
"PublicSubnet1": {
@@ -75,16 +75,16 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet",
+ "version": "0.0.0"
}
},
"Acl": {
"id": "Acl",
"path": "aws-ecs-integ-multiple-alb/Vpc/PublicSubnet1/Acl",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"RouteTable": {
@@ -105,8 +105,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable",
+ "version": "0.0.0"
}
},
"RouteTableAssociation": {
@@ -124,8 +124,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation",
+ "version": "0.0.0"
}
},
"DefaultRoute": {
@@ -144,8 +144,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRoute",
+ "version": "0.0.0"
}
},
"EIP": {
@@ -164,8 +164,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnEIP",
+ "version": "0.0.0"
}
},
"NATGateway": {
@@ -192,14 +192,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet",
+ "version": "0.0.0"
}
},
"PublicSubnet2": {
@@ -242,16 +242,16 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet",
+ "version": "0.0.0"
}
},
"Acl": {
"id": "Acl",
"path": "aws-ecs-integ-multiple-alb/Vpc/PublicSubnet2/Acl",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"RouteTable": {
@@ -272,8 +272,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable",
+ "version": "0.0.0"
}
},
"RouteTableAssociation": {
@@ -291,8 +291,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation",
+ "version": "0.0.0"
}
},
"DefaultRoute": {
@@ -311,8 +311,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRoute",
+ "version": "0.0.0"
}
},
"EIP": {
@@ -331,8 +331,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnEIP",
+ "version": "0.0.0"
}
},
"NATGateway": {
@@ -359,14 +359,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet",
+ "version": "0.0.0"
}
},
"PrivateSubnet1": {
@@ -409,16 +409,16 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet",
+ "version": "0.0.0"
}
},
"Acl": {
"id": "Acl",
"path": "aws-ecs-integ-multiple-alb/Vpc/PrivateSubnet1/Acl",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"RouteTable": {
@@ -439,8 +439,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable",
+ "version": "0.0.0"
}
},
"RouteTableAssociation": {
@@ -458,8 +458,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation",
+ "version": "0.0.0"
}
},
"DefaultRoute": {
@@ -478,14 +478,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRoute",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet",
+ "version": "0.0.0"
}
},
"PrivateSubnet2": {
@@ -528,16 +528,16 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet",
+ "version": "0.0.0"
}
},
"Acl": {
"id": "Acl",
"path": "aws-ecs-integ-multiple-alb/Vpc/PrivateSubnet2/Acl",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"RouteTable": {
@@ -558,8 +558,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable",
+ "version": "0.0.0"
}
},
"RouteTableAssociation": {
@@ -577,8 +577,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation",
+ "version": "0.0.0"
}
},
"DefaultRoute": {
@@ -597,14 +597,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnRoute",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet",
+ "version": "0.0.0"
}
},
"IGW": {
@@ -622,8 +622,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway",
+ "version": "0.0.0"
}
},
"VPCGW": {
@@ -641,14 +641,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.Vpc",
+ "version": "0.0.0"
}
},
"Cluster": {
@@ -663,8 +663,8 @@
"aws:cdk:cloudformation:props": {}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ecs.CfnCluster",
+ "version": "0.0.0"
}
},
"DefaultAutoScalingGroup": {
@@ -701,8 +701,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup",
+ "version": "0.0.0"
}
},
"from awsecsintegmultiplealbmyServiceLBSecurityGroupA7380E25:32768-65535": {
@@ -730,14 +730,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup",
+ "version": "0.0.0"
}
},
"InstanceRole": {
@@ -748,8 +748,8 @@
"id": "ImportInstanceRole",
"path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/InstanceRole/ImportInstanceRole",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"Resource": {
@@ -779,8 +779,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnRole",
+ "version": "0.0.0"
}
},
"DefaultPolicy": {
@@ -849,20 +849,20 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnPolicy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Policy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Role",
+ "version": "0.0.0"
}
},
"InstanceProfile": {
@@ -879,50 +879,109 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile",
+ "version": "0.0.0"
}
},
- "LaunchConfig": {
- "id": "LaunchConfig",
- "path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchConfig",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::AutoScaling::LaunchConfiguration",
- "aws:cdk:cloudformation:props": {
- "iamInstanceProfile": {
- "Ref": "ClusterDefaultAutoScalingGroupInstanceProfile2BB4FE55"
- },
- "imageId": {
- "Ref": "SsmParameterValueawsserviceecsoptimizedamiamazonlinux2recommendedimageidC96584B6F00A464EAD1953AFF4B05118Parameter"
- },
- "instanceType": "t2.micro",
- "securityGroups": [
- {
- "Fn::GetAtt": [
- "ClusterDefaultAutoScalingGroupInstanceSecurityGroup1D15236A",
- "GroupId"
- ]
- }
- ],
- "userData": {
- "Fn::Base64": {
- "Fn::Join": [
- "",
- [
- "#!/bin/bash\necho ECS_CLUSTER=",
+ "ImportedInstanceProfile": {
+ "id": "ImportedInstanceProfile",
+ "path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/ImportedInstanceProfile",
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
+ }
+ },
+ "LaunchTemplate": {
+ "id": "LaunchTemplate",
+ "path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate",
+ "children": {
+ "Resource": {
+ "id": "Resource",
+ "path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate/Resource",
+ "attributes": {
+ "aws:cdk:cloudformation:type": "AWS::EC2::LaunchTemplate",
+ "aws:cdk:cloudformation:props": {
+ "launchTemplateData": {
+ "iamInstanceProfile": {
+ "arn": {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupInstanceProfile2BB4FE55",
+ "Arn"
+ ]
+ }
+ },
+ "imageId": {
+ "Ref": "SsmParameterValueawsserviceecsoptimizedamiamazonlinux2recommendedimageidC96584B6F00A464EAD1953AFF4B05118Parameter"
+ },
+ "instanceType": "t2.micro",
+ "monitoring": {
+ "enabled": false
+ },
+ "securityGroupIds": [
+ {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupInstanceSecurityGroup1D15236A",
+ "GroupId"
+ ]
+ }
+ ],
+ "tagSpecifications": [
{
- "Ref": "ClusterEB0386A7"
+ "resourceType": "instance",
+ "tags": [
+ {
+ "key": "Name",
+ "value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
+ ]
},
- " >> /etc/ecs/ecs.config\nsudo iptables --insert FORWARD 1 --in-interface docker+ --destination 169.254.169.254/32 --jump DROP\nsudo service iptables save\necho ECS_AWSVPC_BLOCK_IMDS=true >> /etc/ecs/ecs.config"
- ]
+ {
+ "resourceType": "volume",
+ "tags": [
+ {
+ "key": "Name",
+ "value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
+ ]
+ }
+ ],
+ "userData": {
+ "Fn::Base64": {
+ "Fn::Join": [
+ "",
+ [
+ "#!/bin/bash\necho ECS_CLUSTER=",
+ {
+ "Ref": "ClusterEB0386A7"
+ },
+ " >> /etc/ecs/ecs.config\nsudo iptables --insert FORWARD 1 --in-interface docker+ --destination 169.254.169.254/32 --jump DROP\nsudo service iptables save\necho ECS_AWSVPC_BLOCK_IMDS=true >> /etc/ecs/ecs.config"
+ ]
+ ]
+ }
+ }
+ },
+ "tagSpecifications": [
+ {
+ "resourceType": "launch-template",
+ "tags": [
+ {
+ "key": "Name",
+ "value": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LaunchTemplate"
+ }
+ ]
+ }
]
}
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_ec2.CfnLaunchTemplate",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.LaunchTemplate",
+ "version": "0.0.0"
}
},
"ASG": {
@@ -931,8 +990,16 @@
"attributes": {
"aws:cdk:cloudformation:type": "AWS::AutoScaling::AutoScalingGroup",
"aws:cdk:cloudformation:props": {
- "launchConfigurationName": {
- "Ref": "ClusterDefaultAutoScalingGroupLaunchConfig81EA5466"
+ "launchTemplate": {
+ "launchTemplateId": {
+ "Ref": "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D"
+ },
+ "version": {
+ "Fn::GetAtt": [
+ "ClusterDefaultAutoScalingGroupLaunchTemplate2449908D",
+ "LatestVersionNumber"
+ ]
+ }
},
"maxSize": "1",
"minSize": "1",
@@ -954,8 +1021,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_autoscaling.CfnAutoScalingGroup",
+ "version": "0.0.0"
}
},
"DrainECSHook": {
@@ -974,8 +1041,8 @@
"id": "ImportServiceRole",
"path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/DrainECSHook/Function/ServiceRole/ImportServiceRole",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"Resource": {
@@ -1019,8 +1086,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnRole",
+ "version": "0.0.0"
}
},
"DefaultPolicy": {
@@ -1118,20 +1185,20 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnPolicy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Policy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Role",
+ "version": "0.0.0"
}
},
"Resource": {
@@ -1168,8 +1235,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_lambda.CfnFunction",
+ "version": "0.0.0"
}
},
"AllowInvoke:awsecsintegmultiplealbClusterDefaultAutoScalingGroupLifecycleHookDrainHookTopic69A3F5ED": {
@@ -1192,8 +1259,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_lambda.CfnPermission",
+ "version": "0.0.0"
}
},
"Topic": {
@@ -1219,26 +1286,26 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_sns.CfnSubscription",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_sns.Subscription",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_lambda.Function",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
"fqn": "constructs.Construct",
- "version": "10.3.0"
+ "version": "10.4.2"
}
},
"LifecycleHookDrainHook": {
@@ -1264,14 +1331,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_sns.CfnTopic",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_sns.Topic",
+ "version": "0.0.0"
}
},
"Role": {
@@ -1282,8 +1349,8 @@
"id": "ImportRole",
"path": "aws-ecs-integ-multiple-alb/Cluster/DefaultAutoScalingGroup/LifecycleHookDrainHook/Role/ImportRole",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
}
},
"Resource": {
@@ -1313,8 +1380,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnRole",
+ "version": "0.0.0"
}
},
"DefaultPolicy": {
@@ -1348,20 +1415,20 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.CfnPolicy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Policy",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_iam.Role",
+ "version": "0.0.0"
}
},
"Resource": {
@@ -1388,42 +1455,200 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_autoscaling.CfnLifecycleHook",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_autoscaling.LifecycleHook",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_autoscaling.AutoScalingGroup",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ecs.Cluster",
+ "version": "0.0.0"
}
},
"SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": {
"id": "SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter",
"path": "aws-ecs-integ-multiple-alb/SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnParameter",
+ "version": "0.0.0"
}
},
"SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118": {
"id": "SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118",
"path": "aws-ecs-integ-multiple-alb/SsmParameterValue:--aws--service--ecs--optimized-ami--amazon-linux-2--recommended--image_id:C96584B6-F00A-464E-AD19-53AFF4B05118",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
+ }
+ },
+ "TaskDef": {
+ "id": "TaskDef",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef",
+ "children": {
+ "TaskRole": {
+ "id": "TaskRole",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/TaskRole",
+ "children": {
+ "ImportTaskRole": {
+ "id": "ImportTaskRole",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/TaskRole/ImportTaskRole",
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.Resource",
+ "version": "0.0.0"
+ }
+ },
+ "Resource": {
+ "id": "Resource",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/TaskRole/Resource",
+ "attributes": {
+ "aws:cdk:cloudformation:type": "AWS::IAM::Role",
+ "aws:cdk:cloudformation:props": {
+ "assumeRolePolicyDocument": {
+ "Statement": [
+ {
+ "Action": "sts:AssumeRole",
+ "Effect": "Allow",
+ "Principal": {
+ "Service": "ecs-tasks.amazonaws.com"
+ }
+ }
+ ],
+ "Version": "2012-10-17"
+ }
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_iam.CfnRole",
+ "version": "0.0.0"
+ }
+ },
+ "DefaultPolicy": {
+ "id": "DefaultPolicy",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/TaskRole/DefaultPolicy",
+ "children": {
+ "Resource": {
+ "id": "Resource",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/TaskRole/DefaultPolicy/Resource",
+ "attributes": {
+ "aws:cdk:cloudformation:type": "AWS::IAM::Policy",
+ "aws:cdk:cloudformation:props": {
+ "policyDocument": {
+ "Statement": [
+ {
+ "Action": [
+ "logs:CreateLogStream",
+ "logs:DescribeLogGroups",
+ "logs:DescribeLogStreams",
+ "logs:PutLogEvents",
+ "ssmmessages:CreateControlChannel",
+ "ssmmessages:CreateDataChannel",
+ "ssmmessages:OpenControlChannel",
+ "ssmmessages:OpenDataChannel"
+ ],
+ "Effect": "Allow",
+ "Resource": "*"
+ }
+ ],
+ "Version": "2012-10-17"
+ },
+ "policyName": "TaskDefTaskRoleDefaultPolicyA592CB18",
+ "roles": [
+ {
+ "Ref": "TaskDefTaskRole1EDB4A67"
+ }
+ ]
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_iam.CfnPolicy",
+ "version": "0.0.0"
+ }
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_iam.Policy",
+ "version": "0.0.0"
+ }
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_iam.Role",
+ "version": "0.0.0"
+ }
+ },
+ "Resource": {
+ "id": "Resource",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/Resource",
+ "attributes": {
+ "aws:cdk:cloudformation:type": "AWS::ECS::TaskDefinition",
+ "aws:cdk:cloudformation:props": {
+ "containerDefinitions": [
+ {
+ "command": [
+ "sh",
+ "-c",
+ "printf 'Listen 90\n \n DocumentRoot /var/www/html\n ServerName localhost\n' > /etc/httpd/conf.d/default-90.conf && /usr/sbin/apache2 -D FOREGROUND"
+ ],
+ "essential": true,
+ "image": "amazon/amazon-ecs-sample",
+ "memory": 256,
+ "name": "web",
+ "portMappings": [
+ {
+ "containerPort": 80,
+ "hostPort": 0,
+ "protocol": "tcp"
+ },
+ {
+ "containerPort": 90,
+ "hostPort": 0,
+ "protocol": "tcp"
+ }
+ ]
+ }
+ ],
+ "family": "awsecsintegmultiplealbTaskDef053E81DE",
+ "networkMode": "bridge",
+ "requiresCompatibilities": [
+ "EC2"
+ ],
+ "taskRoleArn": {
+ "Fn::GetAtt": [
+ "TaskDefTaskRole1EDB4A67",
+ "Arn"
+ ]
+ }
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_ecs.CfnTaskDefinition",
+ "version": "0.0.0"
+ }
+ },
+ "web": {
+ "id": "web",
+ "path": "aws-ecs-integ-multiple-alb/TaskDef/web",
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_ecs.ContainerDefinition",
+ "version": "0.0.0"
+ }
+ }
+ },
+ "constructInfo": {
+ "fqn": "aws-cdk-lib.aws_ecs.Ec2TaskDefinition",
+ "version": "0.0.0"
}
},
"myService": {
@@ -1446,6 +1671,7 @@
"value": "false"
}
],
+ "name": "LB",
"scheme": "internet-facing",
"securityGroups": [
{
@@ -1467,8 +1693,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.CfnLoadBalancer",
+ "version": "0.0.0"
}
},
"SecurityGroup": {
@@ -1497,8 +1723,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup",
+ "version": "0.0.0"
}
},
"to awsecsintegmultiplealbClusterDefaultAutoScalingGroupInstanceSecurityGroup9E5900FD:32768-65535": {
@@ -1526,14 +1752,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroupEgress",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup",
+ "version": "0.0.0"
}
},
"PublicListener": {
@@ -1562,8 +1788,8 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.CfnListener",
+ "version": "0.0.0"
}
},
"ECSTargetGroupweb80Group": {
@@ -1591,14 +1817,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.CfnTargetGroup",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationTargetGroup",
+ "version": "0.0.0"
}
},
"ECSTargetGroupweb90Group": {
@@ -1626,14 +1852,14 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.CfnTargetGroup",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationTargetGroup",
+ "version": "0.0.0"
}
},
"ECSTargetGroupweb90Rule": {
@@ -1671,327 +1897,42 @@
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.CfnListenerRule",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListenerRule",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListener",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer",
+ "version": "0.0.0"
}
},
"LoadBalancerDNS": {
"id": "LoadBalancerDNS",
"path": "aws-ecs-integ-multiple-alb/myService/LoadBalancerDNS",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnOutput",
+ "version": "0.0.0"
}
},
"ServiceURL": {
"id": "ServiceURL",
"path": "aws-ecs-integ-multiple-alb/myService/ServiceURL",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "TaskDef": {
- "id": "TaskDef",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef",
- "children": {
- "TaskRole": {
- "id": "TaskRole",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole",
- "children": {
- "ImportTaskRole": {
- "id": "ImportTaskRole",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/ImportTaskRole",
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::IAM::Role",
- "aws:cdk:cloudformation:props": {
- "assumeRolePolicyDocument": {
- "Statement": [
- {
- "Action": "sts:AssumeRole",
- "Effect": "Allow",
- "Principal": {
- "Service": "ecs-tasks.amazonaws.com"
- }
- }
- ],
- "Version": "2012-10-17"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "DefaultPolicy": {
- "id": "DefaultPolicy",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/DefaultPolicy",
- "children": {
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/TaskRole/DefaultPolicy/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::IAM::Policy",
- "aws:cdk:cloudformation:props": {
- "policyDocument": {
- "Statement": [
- {
- "Action": [
- "logs:CreateLogStream",
- "logs:DescribeLogGroups",
- "logs:DescribeLogStreams",
- "logs:PutLogEvents",
- "ssmmessages:CreateControlChannel",
- "ssmmessages:CreateDataChannel",
- "ssmmessages:OpenControlChannel",
- "ssmmessages:OpenDataChannel"
- ],
- "Effect": "Allow",
- "Resource": "*"
- }
- ],
- "Version": "2012-10-17"
- },
- "policyName": "myServiceTaskDefTaskRoleDefaultPolicyD48473C0",
- "roles": [
- {
- "Ref": "myServiceTaskDefTaskRole1C1DE6CC"
- }
- ]
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::ECS::TaskDefinition",
- "aws:cdk:cloudformation:props": {
- "containerDefinitions": [
- {
- "essential": true,
- "image": "amazon/amazon-ecs-sample",
- "memory": 256,
- "name": "web",
- "portMappings": [
- {
- "containerPort": 80,
- "hostPort": 0,
- "protocol": "tcp"
- },
- {
- "containerPort": 90,
- "hostPort": 0,
- "protocol": "tcp"
- }
- ],
- "logConfiguration": {
- "logDriver": "awslogs",
- "options": {
- "awslogs-group": {
- "Ref": "myServiceTaskDefwebLogGroupA1767F2C"
- },
- "awslogs-stream-prefix": "myService",
- "awslogs-region": {
- "Ref": "AWS::Region"
- }
- }
- }
- }
- ],
- "executionRoleArn": {
- "Fn::GetAtt": [
- "myServiceTaskDefExecutionRole618CD311",
- "Arn"
- ]
- },
- "family": "awsecsintegmultiplealbmyServiceTaskDefC0AB61D5",
- "networkMode": "bridge",
- "requiresCompatibilities": [
- "EC2"
- ],
- "taskRoleArn": {
- "Fn::GetAtt": [
- "myServiceTaskDefTaskRole1C1DE6CC",
- "Arn"
- ]
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "web": {
- "id": "web",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/web",
- "children": {
- "LogGroup": {
- "id": "LogGroup",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/web/LogGroup",
- "children": {
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/web/LogGroup/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::Logs::LogGroup",
- "aws:cdk:cloudformation:props": {}
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "ExecutionRole": {
- "id": "ExecutionRole",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole",
- "children": {
- "ImportExecutionRole": {
- "id": "ImportExecutionRole",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/ImportExecutionRole",
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::IAM::Role",
- "aws:cdk:cloudformation:props": {
- "assumeRolePolicyDocument": {
- "Statement": [
- {
- "Action": "sts:AssumeRole",
- "Effect": "Allow",
- "Principal": {
- "Service": "ecs-tasks.amazonaws.com"
- }
- }
- ],
- "Version": "2012-10-17"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- },
- "DefaultPolicy": {
- "id": "DefaultPolicy",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/DefaultPolicy",
- "children": {
- "Resource": {
- "id": "Resource",
- "path": "aws-ecs-integ-multiple-alb/myService/TaskDef/ExecutionRole/DefaultPolicy/Resource",
- "attributes": {
- "aws:cdk:cloudformation:type": "AWS::IAM::Policy",
- "aws:cdk:cloudformation:props": {
- "policyDocument": {
- "Statement": [
- {
- "Action": [
- "logs:CreateLogStream",
- "logs:PutLogEvents"
- ],
- "Effect": "Allow",
- "Resource": {
- "Fn::GetAtt": [
- "myServiceTaskDefwebLogGroupA1767F2C",
- "Arn"
- ]
- }
- }
- ],
- "Version": "2012-10-17"
- },
- "policyName": "myServiceTaskDefExecutionRoleDefaultPolicyBDAEC571",
- "roles": [
- {
- "Ref": "myServiceTaskDefExecutionRole618CD311"
- }
- ]
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
- }
- }
- },
- "constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnOutput",
+ "version": "0.0.0"
}
},
"Service": {
@@ -2033,47 +1974,47 @@
],
"schedulingStrategy": "REPLICA",
"taskDefinition": {
- "Ref": "myServiceTaskDef7FB8322A"
+ "Ref": "TaskDef54694570"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ecs.CfnService",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ecs.Ec2Service",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.aws_ecs_patterns.ApplicationMultipleTargetGroupsEc2Service",
+ "version": "0.0.0"
}
},
"BootstrapVersion": {
"id": "BootstrapVersion",
"path": "aws-ecs-integ-multiple-alb/BootstrapVersion",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnParameter",
+ "version": "0.0.0"
}
},
"CheckBootstrapVersion": {
"id": "CheckBootstrapVersion",
"path": "aws-ecs-integ-multiple-alb/CheckBootstrapVersion",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnRule",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Stack",
+ "version": "0.0.0"
}
},
"applicationMultipleTargetGroupsEc2ServiceTest": {
@@ -2089,7 +2030,7 @@
"path": "applicationMultipleTargetGroupsEc2ServiceTest/DefaultTest/Default",
"constructInfo": {
"fqn": "constructs.Construct",
- "version": "10.3.0"
+ "version": "10.4.2"
}
},
"DeployAssert": {
@@ -2100,22 +2041,22 @@
"id": "BootstrapVersion",
"path": "applicationMultipleTargetGroupsEc2ServiceTest/DefaultTest/DeployAssert/BootstrapVersion",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnParameter",
+ "version": "0.0.0"
}
},
"CheckBootstrapVersion": {
"id": "CheckBootstrapVersion",
"path": "applicationMultipleTargetGroupsEc2ServiceTest/DefaultTest/DeployAssert/CheckBootstrapVersion",
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.CfnRule",
+ "version": "0.0.0"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.Stack",
+ "version": "0.0.0"
}
}
},
@@ -2135,13 +2076,13 @@
"path": "Tree",
"constructInfo": {
"fqn": "constructs.Construct",
- "version": "10.3.0"
+ "version": "10.4.2"
}
}
},
"constructInfo": {
- "fqn": "constructs.Construct",
- "version": "10.3.0"
+ "fqn": "aws-cdk-lib.App",
+ "version": "0.0.0"
}
}
}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.ts
index 3788182dc2957..13176d783d9fb 100644
--- a/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.ts
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ecs-patterns/test/ec2/integ.multiple-application-load-balanced-ecs-service.ts
@@ -1,13 +1,12 @@
import { InstanceType, Vpc } from 'aws-cdk-lib/aws-ec2';
-import { Cluster, ContainerImage } from 'aws-cdk-lib/aws-ecs';
+import { Cluster, ContainerImage, Ec2TaskDefinition } from 'aws-cdk-lib/aws-ecs';
import { App, Stack } from 'aws-cdk-lib';
import * as integ from '@aws-cdk/integ-tests-alpha';
import { ApplicationMultipleTargetGroupsEc2Service } from 'aws-cdk-lib/aws-ecs-patterns';
-import { AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS } from 'aws-cdk-lib/cx-api';
+import { REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS } from 'aws-cdk-lib/cx-api';
const app = new App({
postCliContext: {
- [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: false,
[REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: false,
'@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature': false,
'@aws-cdk/aws-ecs:disableEcsImdsBlocking': false,
@@ -18,13 +17,22 @@ const vpc = new Vpc(stack, 'Vpc', { maxAzs: 2, restrictDefaultSecurityGroup: fal
const cluster = new Cluster(stack, 'Cluster', { vpc });
cluster.addCapacity('DefaultAutoScalingGroup', { instanceType: new InstanceType('t2.micro') });
+// A httpd task expose both port 80 and 90
+const taskDefinition = new Ec2TaskDefinition(stack, 'TaskDef', {});
+taskDefinition.addContainer('web', {
+ image: ContainerImage.fromRegistry('amazon/amazon-ecs-sample'),
+ command: [
+ 'sh',
+ '-c',
+ "printf 'Listen 90\n \n DocumentRoot /var/www/html\n ServerName localhost\n' > /etc/httpd/conf.d/default-90.conf && /usr/sbin/apache2 -D FOREGROUND",
+ ],
+ memoryLimitMiB: 256,
+});
+
// One load balancer with one listener and two target groups.
new ApplicationMultipleTargetGroupsEc2Service(stack, 'myService', {
cluster,
- memoryLimitMiB: 256,
- taskImageOptions: {
- image: ContainerImage.fromRegistry('amazon/amazon-ecs-sample'),
- },
+ taskDefinition,
enableExecuteCommand: true,
targetGroups: [
{