// Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Snapshot test 1`] = ` Object { "Outputs": Object { "EventHubConsumerOutputBucket": Object { "Value": Object { "Fn::GetAtt": Array [ "RawDataBucket57F26C03", "Arn", ], }, }, }, "Parameters": Object { "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1ArtifactHash0128B949": Object { "Description": "Artifact hash for asset \\"1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1\\"", "Type": "String", }, "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1S3Bucket4842F32D": Object { "Description": "S3 bucket for asset \\"1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1\\"", "Type": "String", }, "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1S3VersionKeyD0A0B57A": Object { "Description": "S3 key for asset version \\"1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1\\"", "Type": "String", }, }, "Resources": Object { "CheckpointTableBFD208F9": Object { "DeletionPolicy": "Delete", "Properties": Object { "AttributeDefinitions": Array [ Object { "AttributeName": "pk", "AttributeType": "S", }, Object { "AttributeName": "sk", "AttributeType": "S", }, ], "BillingMode": "PAY_PER_REQUEST", "KeySchema": Array [ Object { "AttributeName": "pk", "KeyType": "HASH", }, Object { "AttributeName": "sk", "KeyType": "RANGE", }, ], }, "Type": "AWS::DynamoDB::Table", "UpdateReplacePolicy": "Delete", }, "ClusterEB0386A7": Object { "Type": "AWS::ECS::Cluster", }, "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": Object { "DependsOn": Array [ "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092", ], "Properties": Object { "Code": Object { "S3Bucket": Object { "Ref": "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1S3Bucket4842F32D", }, "S3Key": Object { "Fn::Join": Array [ "", Array [ Object { "Fn::Select": Array [ 0, Object { "Fn::Split": Array [ "||", Object { "Ref": "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1S3VersionKeyD0A0B57A", }, ], }, ], }, Object { "Fn::Select": Array [ 1, Object { "Fn::Split": Array [ "||", Object { "Ref": "AssetParameters1f7e277bd526ebce1983fa1e7a84a5281ec533d9187caaebb773681bbf7bf4c1S3VersionKeyD0A0B57A", }, ], }, ], }, ], ], }, }, "Description": Object { "Fn::Join": Array [ "", Array [ "Lambda function for auto-deleting objects in ", Object { "Ref": "RawDataBucket57F26C03", }, " S3 bucket.", ], ], }, "Handler": "__entrypoint__.handler", "MemorySize": 128, "Role": Object { "Fn::GetAtt": Array [ "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092", "Arn", ], }, "Runtime": "nodejs12.x", "Timeout": 900, }, "Type": "AWS::Lambda::Function", }, "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": Object { "Properties": Object { "AssumeRolePolicyDocument": Object { "Statement": Array [ Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "lambda.amazonaws.com", }, }, ], "Version": "2012-10-17", }, "ManagedPolicyArns": Array [ Object { "Fn::Sub": "arn:\${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole", }, ], }, "Type": "AWS::IAM::Role", }, "RawDataBucket57F26C03": Object { "DeletionPolicy": "Delete", "Properties": Object { "BucketEncryption": Object { "ServerSideEncryptionConfiguration": Array [ Object { "ServerSideEncryptionByDefault": Object { "SSEAlgorithm": "AES256", }, }, ], }, "Tags": Array [ Object { "Key": "aws-cdk:auto-delete-objects", "Value": "true", }, ], }, "Type": "AWS::S3::Bucket", "UpdateReplacePolicy": "Delete", }, "RawDataBucketAutoDeleteObjectsCustomResource1C0E67FF": Object { "DeletionPolicy": "Delete", "DependsOn": Array [ "RawDataBucketPolicyAAD9269B", ], "Properties": Object { "BucketName": Object { "Ref": "RawDataBucket57F26C03", }, "ServiceToken": Object { "Fn::GetAtt": Array [ "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F", "Arn", ], }, }, "Type": "Custom::S3AutoDeleteObjects", "UpdateReplacePolicy": "Delete", }, "RawDataBucketPolicyAAD9269B": Object { "Properties": Object { "Bucket": Object { "Ref": "RawDataBucket57F26C03", }, "PolicyDocument": Object { "Statement": Array [ Object { "Action": Array [ "s3:GetBucket*", "s3:List*", "s3:DeleteObject*", ], "Effect": "Allow", "Principal": Object { "AWS": Object { "Fn::GetAtt": Array [ "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092", "Arn", ], }, }, "Resource": Array [ Object { "Fn::GetAtt": Array [ "RawDataBucket57F26C03", "Arn", ], }, Object { "Fn::Join": Array [ "", Array [ Object { "Fn::GetAtt": Array [ "RawDataBucket57F26C03", "Arn", ], }, "/*", ], ], }, ], }, ], "Version": "2012-10-17", }, }, "Type": "AWS::S3::BucketPolicy", }, "ServiceD69D759B": Object { "Properties": Object { "Cluster": Object { "Ref": "ClusterEB0386A7", }, "DeploymentConfiguration": Object { "DeploymentCircuitBreaker": Object { "Enable": true, "Rollback": true, }, "MaximumPercent": 200, "MinimumHealthyPercent": 100, }, "DeploymentController": Object { "Type": "ECS", }, "DesiredCount": 1, "EnableECSManagedTags": false, "LaunchType": "FARGATE", "NetworkConfiguration": Object { "AwsvpcConfiguration": Object { "AssignPublicIp": "DISABLED", "SecurityGroups": Array [ Object { "Fn::GetAtt": Array [ "ServiceSecurityGroupC96ED6A7", "GroupId", ], }, ], "Subnets": Array [ Object { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, Object { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, ], }, }, "TaskDefinition": Object { "Ref": "TaskDefinitionB36D86D9", }, }, "Type": "AWS::ECS::Service", }, "ServiceSecurityGroupC96ED6A7": Object { "Properties": Object { "GroupDescription": "MyTestStack/Service/SecurityGroup", "SecurityGroupEgress": Array [ Object { "CidrIp": "0.0.0.0/0", "Description": "Allow all outbound traffic by default", "IpProtocol": "-1", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::SecurityGroup", }, "TaskDefinitionB36D86D9": Object { "Properties": Object { "ContainerDefinitions": Array [ Object { "Environment": Array [ Object { "Name": "CONNECTION_STRING", "Value": "dummy", }, Object { "Name": "DESTINATION_BUCKET_NAME", "Value": Object { "Ref": "RawDataBucket57F26C03", }, }, Object { "Name": "CHECKPOINT_TABLE_NAME", "Value": Object { "Ref": "CheckpointTableBFD208F9", }, }, ], "Essential": true, "Image": Object { "Fn::Join": Array [ "", Array [ Object { "Ref": "AWS::AccountId", }, ".dkr.ecr.", Object { "Ref": "AWS::Region", }, ".", Object { "Ref": "AWS::URLSuffix", }, "/aws-cdk/assets:d61eab651f42a9d6bc7835f9e8227489cca07c27bb7735e9c02c068dd39edfdb", ], ], }, "LogConfiguration": Object { "LogDriver": "awslogs", "Options": Object { "awslogs-group": Object { "Ref": "TaskDefinitioncontainerLogGroupCE6ADFFE", }, "awslogs-region": Object { "Ref": "AWS::Region", }, "awslogs-stream-prefix": "/aws/ecs/eventhub-consumer", }, }, "Name": "container", }, ], "Cpu": "256", "ExecutionRoleArn": Object { "Fn::GetAtt": Array [ "TaskDefinitionExecutionRole8D61C2FB", "Arn", ], }, "Family": "MyTestStackTaskDefinitionEF32D0F7", "Memory": "1024", "NetworkMode": "awsvpc", "RequiresCompatibilities": Array [ "FARGATE", ], "TaskRoleArn": Object { "Fn::GetAtt": Array [ "TaskDefinitionTaskRoleFD40A61D", "Arn", ], }, }, "Type": "AWS::ECS::TaskDefinition", }, "TaskDefinitionExecutionRole8D61C2FB": Object { "Properties": Object { "AssumeRolePolicyDocument": Object { "Statement": Array [ Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "ecs-tasks.amazonaws.com", }, }, ], "Version": "2012-10-17", }, }, "Type": "AWS::IAM::Role", }, "TaskDefinitionExecutionRoleDefaultPolicy1F3406F5": Object { "Properties": Object { "PolicyDocument": Object { "Statement": Array [ Object { "Action": Array [ "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", ], "Effect": "Allow", "Resource": Object { "Fn::Join": Array [ "", Array [ "arn:", Object { "Ref": "AWS::Partition", }, ":ecr:", Object { "Ref": "AWS::Region", }, ":", Object { "Ref": "AWS::AccountId", }, ":repository/aws-cdk/assets", ], ], }, }, Object { "Action": "ecr:GetAuthorizationToken", "Effect": "Allow", "Resource": "*", }, Object { "Action": Array [ "logs:CreateLogStream", "logs:PutLogEvents", ], "Effect": "Allow", "Resource": Object { "Fn::GetAtt": Array [ "TaskDefinitioncontainerLogGroupCE6ADFFE", "Arn", ], }, }, ], "Version": "2012-10-17", }, "PolicyName": "TaskDefinitionExecutionRoleDefaultPolicy1F3406F5", "Roles": Array [ Object { "Ref": "TaskDefinitionExecutionRole8D61C2FB", }, ], }, "Type": "AWS::IAM::Policy", }, "TaskDefinitionTaskRoleDefaultPolicy282E8624": Object { "Properties": Object { "PolicyDocument": Object { "Statement": Array [ Object { "Action": Array [ "s3:DeleteObject*", "s3:PutObject*", "s3:Abort*", ], "Effect": "Allow", "Resource": Array [ Object { "Fn::GetAtt": Array [ "RawDataBucket57F26C03", "Arn", ], }, Object { "Fn::Join": Array [ "", Array [ Object { "Fn::GetAtt": Array [ "RawDataBucket57F26C03", "Arn", ], }, "/*", ], ], }, ], }, Object { "Action": Array [ "dynamodb:BatchGetItem", "dynamodb:GetRecords", "dynamodb:GetShardIterator", "dynamodb:Query", "dynamodb:GetItem", "dynamodb:Scan", "dynamodb:ConditionCheckItem", "dynamodb:BatchWriteItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", ], "Effect": "Allow", "Resource": Array [ Object { "Fn::GetAtt": Array [ "CheckpointTableBFD208F9", "Arn", ], }, Object { "Ref": "AWS::NoValue", }, ], }, Object { "Action": "cloudwatch:PutMetricData", "Effect": "Allow", "Resource": "*", }, ], "Version": "2012-10-17", }, "PolicyName": "TaskDefinitionTaskRoleDefaultPolicy282E8624", "Roles": Array [ Object { "Ref": "TaskDefinitionTaskRoleFD40A61D", }, ], }, "Type": "AWS::IAM::Policy", }, "TaskDefinitionTaskRoleFD40A61D": Object { "Properties": Object { "AssumeRolePolicyDocument": Object { "Statement": Array [ Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "ecs-tasks.amazonaws.com", }, }, ], "Version": "2012-10-17", }, }, "Type": "AWS::IAM::Role", }, "TaskDefinitioncontainerLogGroupCE6ADFFE": Object { "DeletionPolicy": "Retain", "Type": "AWS::Logs::LogGroup", "UpdateReplacePolicy": "Retain", }, "Vpc8378EB38": Object { "Properties": Object { "CidrBlock": "10.0.0.0/16", "EnableDnsHostnames": true, "EnableDnsSupport": true, "InstanceTenancy": "default", "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc", }, ], }, "Type": "AWS::EC2::VPC", }, "VpcIGWD7BA715C": Object { "Properties": Object { "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc", }, ], }, "Type": "AWS::EC2::InternetGateway", }, "VpcPrivateSubnet1DefaultRouteBE02A9ED": Object { "Properties": Object { "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": Object { "Ref": "VpcPublicSubnet1NATGateway4D7517AA", }, "RouteTableId": Object { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, }, "Type": "AWS::EC2::Route", }, "VpcPrivateSubnet1RouteTableAssociation70C59FA6": Object { "Properties": Object { "RouteTableId": Object { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, "SubnetId": Object { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, "VpcPrivateSubnet1RouteTableB2C5B500": Object { "Properties": Object { "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PrivateSubnet1", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, "VpcPrivateSubnet1Subnet536B997A": Object { "Properties": Object { "AvailabilityZone": Object { "Fn::Select": Array [ 0, Object { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.128.0/18", "MapPublicIpOnLaunch": false, "Tags": Array [ Object { "Key": "aws-cdk:subnet-name", "Value": "Private", }, Object { "Key": "aws-cdk:subnet-type", "Value": "Private", }, Object { "Key": "Name", "Value": "MyTestStack/Vpc/PrivateSubnet1", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, "VpcPrivateSubnet2DefaultRoute060D2087": Object { "Properties": Object { "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": Object { "Ref": "VpcPublicSubnet2NATGateway9182C01D", }, "RouteTableId": Object { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, }, "Type": "AWS::EC2::Route", }, "VpcPrivateSubnet2RouteTableA678073B": Object { "Properties": Object { "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PrivateSubnet2", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, "VpcPrivateSubnet2RouteTableAssociationA89CAD56": Object { "Properties": Object { "RouteTableId": Object { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, "SubnetId": Object { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, "VpcPrivateSubnet2Subnet3788AAA1": Object { "Properties": Object { "AvailabilityZone": Object { "Fn::Select": Array [ 1, Object { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.192.0/18", "MapPublicIpOnLaunch": false, "Tags": Array [ Object { "Key": "aws-cdk:subnet-name", "Value": "Private", }, Object { "Key": "aws-cdk:subnet-type", "Value": "Private", }, Object { "Key": "Name", "Value": "MyTestStack/Vpc/PrivateSubnet2", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, "VpcPublicSubnet1DefaultRoute3DA9E72A": Object { "DependsOn": Array [ "VpcVPCGWBF912B6E", ], "Properties": Object { "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": Object { "Ref": "VpcIGWD7BA715C", }, "RouteTableId": Object { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, }, "Type": "AWS::EC2::Route", }, "VpcPublicSubnet1EIPD7E02669": Object { "Properties": Object { "Domain": "vpc", "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet1", }, ], }, "Type": "AWS::EC2::EIP", }, "VpcPublicSubnet1NATGateway4D7517AA": Object { "Properties": Object { "AllocationId": Object { "Fn::GetAtt": Array [ "VpcPublicSubnet1EIPD7E02669", "AllocationId", ], }, "SubnetId": Object { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet1", }, ], }, "Type": "AWS::EC2::NatGateway", }, "VpcPublicSubnet1RouteTable6C95E38E": Object { "Properties": Object { "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet1", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, "VpcPublicSubnet1RouteTableAssociation97140677": Object { "Properties": Object { "RouteTableId": Object { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, "SubnetId": Object { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, "VpcPublicSubnet1Subnet5C2D37C4": Object { "Properties": Object { "AvailabilityZone": Object { "Fn::Select": Array [ 0, Object { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.0.0/18", "MapPublicIpOnLaunch": true, "Tags": Array [ Object { "Key": "aws-cdk:subnet-name", "Value": "Public", }, Object { "Key": "aws-cdk:subnet-type", "Value": "Public", }, Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet1", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, "VpcPublicSubnet2DefaultRoute97F91067": Object { "DependsOn": Array [ "VpcVPCGWBF912B6E", ], "Properties": Object { "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": Object { "Ref": "VpcIGWD7BA715C", }, "RouteTableId": Object { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, }, "Type": "AWS::EC2::Route", }, "VpcPublicSubnet2EIP3C605A87": Object { "Properties": Object { "Domain": "vpc", "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet2", }, ], }, "Type": "AWS::EC2::EIP", }, "VpcPublicSubnet2NATGateway9182C01D": Object { "Properties": Object { "AllocationId": Object { "Fn::GetAtt": Array [ "VpcPublicSubnet2EIP3C605A87", "AllocationId", ], }, "SubnetId": Object { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet2", }, ], }, "Type": "AWS::EC2::NatGateway", }, "VpcPublicSubnet2RouteTable94F7E489": Object { "Properties": Object { "Tags": Array [ Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet2", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, "VpcPublicSubnet2RouteTableAssociationDD5762D8": Object { "Properties": Object { "RouteTableId": Object { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, "SubnetId": Object { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, "VpcPublicSubnet2Subnet691E08A3": Object { "Properties": Object { "AvailabilityZone": Object { "Fn::Select": Array [ 1, Object { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.64.0/18", "MapPublicIpOnLaunch": true, "Tags": Array [ Object { "Key": "aws-cdk:subnet-name", "Value": "Public", }, Object { "Key": "aws-cdk:subnet-type", "Value": "Public", }, Object { "Key": "Name", "Value": "MyTestStack/Vpc/PublicSubnet2", }, ], "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, "VpcVPCGWBF912B6E": Object { "Properties": Object { "InternetGatewayId": Object { "Ref": "VpcIGWD7BA715C", }, "VpcId": Object { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::VPCGatewayAttachment", }, }, } `;