From 417ddf9d39d57ba0977dcb4403ebf7abc9fc299b Mon Sep 17 00:00:00 2001 From: Pahud Hsieh Date: Wed, 3 Dec 2025 13:18:11 -0500 Subject: [PATCH 1/3] fix(efs): restrict anonymous access to account principals only - Replace AnyPrincipal with AccountRootPrincipal in EFS resource policy to block anonymous NFS access - Add ClientMount action to the policy statement alongside existing Write and RootAccess actions - Update policy to enforce IAM authentication by switching EFS from default anonymous access mode to IAM enforcement mode - Add comprehensive documentation explaining why AccountRootPrincipal is used instead of AnyPrincipal - Update all related test cases to reflect the new AccountRootPrincipal ARN in policy assertions - Ensure same-account IAM principals can still access the file system with proper identity-based permissions while preventing cross-account anonymous access --- .../aws-cdk-lib/aws-efs/lib/efs-file-system.ts | 16 +++++++++++++++- .../aws-efs/test/efs-file-system.test.ts | 15 ++++++++++----- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts b/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts index 87d5045d58d74..0e3dc250614f9 100644 --- a/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts +++ b/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts @@ -815,9 +815,23 @@ export class FileSystem extends FileSystemBase { const denyAnonymousAccessByDefault = denyAnonymousAccessFlag || this._grantedClient; const allowAnonymousAccess = props.allowAnonymousAccess ?? !denyAnonymousAccessByDefault; if (!allowAnonymousAccess) { + // Create a simple ALLOW policy to block anonymous access. + // Per AWS documentation, when NO file system policy exists, EFS uses its default behavior + // which allows anonymous NFS access without IAM authentication. By creating ANY policy, + // EFS switches to IAM enforcement mode, which blocks anonymous clients (they have no IAM + // credentials to authenticate). IAM principals with proper identity permissions can still + // access the file system because this ALLOW policy permits their actions. + // + // We use AccountRootPrincipal to restrict access to IAM principals within this AWS account only. + // This prevents unintended cross-account access while still allowing same-account IAM principals + // to access the file system with proper identity-based permissions. For cross-account access, + // users should explicitly grant access using the grant methods or add specific principal ARNs. + // + // See: https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html this.addToResourcePolicy(new iam.PolicyStatement({ - principals: [new iam.AnyPrincipal()], + principals: [new iam.AccountRootPrincipal()], actions: [ + ClientAction.MOUNT, ClientAction.WRITE, ClientAction.ROOT_ACCESS, ], diff --git a/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts b/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts index fb8a453b69fd6..e4f805a7c7ed5 100644 --- a/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts +++ b/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts @@ -720,9 +720,10 @@ test('anonymous access is prohibited by default when using GrantRead', () => { { Effect: 'Allow', Principal: { - AWS: '*', + AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ + 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -777,9 +778,10 @@ test('anonymous access is prohibited by default when using GrantReadWrite', () = { Effect: 'Allow', Principal: { - AWS: '*', + AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ + 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -835,9 +837,10 @@ test('anonymous access is prohibited by default when using GrantRootAccess', () { Effect: 'Allow', Principal: { - AWS: '*', + AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ + 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -866,9 +869,10 @@ test('anonymous access is prohibited by the allowAnonymousAccess props even when { Effect: 'Allow', Principal: { - AWS: '*', + AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ + 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -922,9 +926,10 @@ test('anonymous access is prohibited by the @aws-cdk/aws-efs:denyAnonymousAccess { Effect: 'Allow', Principal: { - AWS: '*', + AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ + 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], From b48956cb16da6a67de02c4826ab5b88a0ff26167 Mon Sep 17 00:00:00 2001 From: Pahud Hsieh Date: Thu, 4 Dec 2025 11:02:23 -0500 Subject: [PATCH 2/3] chore(efs): update integration test snapshots - Update EFS filesystem one-zone integration test snapshot manifests - Update EFS filesystem policy integration test snapshot files - Update EFS filesystem protection integration test snapshots - Update EFS filesystem replication integration test snapshots - Update EFS from imported subnet integration test snapshots - Update EFS transition integration test snapshots - Update EFS permission integration test snapshots and source - Regenerate CloudFormation templates and asset hashes - Simplify analytics construct data in snapshot manifests --- .../manifest.json | 136 +- .../test-efs-one-zone-integ.assets.json | 6 +- .../test-efs-one-zone-integ.template.json | 36 +- .../tree.json | 2 +- ...efaultTestDeployAssertD0596FC1.assets.json | 2 +- .../cdk.out | 2 +- .../integ.json | 4 +- .../manifest.json | 215 +- .../test-efs-integ.assets.json | 8 +- .../test-efs-integ.template.json | 18 +- .../tree.json | 2 +- .../manifest.json | 113 +- .../test-efs-protection-integ.assets.json | 6 +- .../test-efs-protection-integ.template.json | 18 +- .../tree.json | 2 +- .../efsReplication.assets.json | 6 +- .../efsReplication.template.json | 54 +- .../manifest.json | 137 +- .../tree.json | 2 +- .../cdk.out | 2 +- .../efs-from-imported-subnet.assets.json | 8 +- .../efs-from-imported-subnet.template.json | 18 +- ...efaultTestDeployAssertC5BA6A6C.assets.json | 4 +- .../integ.json | 5 +- .../manifest.json | 572 ++++- .../tree.json | 2 +- .../integ.efs-transition.js.snapshot/cdk.out | 2 +- .../integ.json | 5 +- .../manifest.json | 606 +++++- .../test-efs-transition-integ.assets.json | 9 +- .../test-efs-transition-integ.template.json | 18 +- ...efaultTestDeployAssert7E1529D5.assets.json | 5 +- .../tree.json | 959 +-------- .../test/integ.efs.js.snapshot/cdk.out | 2 +- .../test/integ.efs.js.snapshot/integ.json | 5 +- .../test/integ.efs.js.snapshot/manifest.json | 595 +++++- .../test-efs-integ.assets.json | 9 +- .../test-efs-integ.template.json | 18 +- ...efaultTestDeployAssert7E1529D5.assets.json | 5 +- .../test/integ.efs.js.snapshot/tree.json | 886 +------- ...efaultTestDeployAssert4DFC2F97.assets.json | 14 +- ...aultTestDeployAssert4DFC2F97.template.json | 635 ++---- .../index.js | 1891 +++++++++++++++-- .../manifest.json | 781 +++---- .../test-efs-permission-integ.assets.json | 6 +- .../test-efs-permission-integ.template.json | 1149 +++++----- .../tree.json | 2 +- .../test/aws-efs/test/integ.efs.permission.ts | 231 +- 48 files changed, 5023 insertions(+), 4190 deletions(-) rename packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/{asset.4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.bundle => asset.ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.bundle}/index.js (96%) diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json index 9cedd9b5abdbc..67286adc3069d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json @@ -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}/ea565f14374933cc04076e809c4451889c5c5b101096fadde2408dbdd9437cee.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -49,37 +49,19 @@ "/test-efs-one-zone-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet": [ @@ -121,37 +103,19 @@ "/test-efs-one-zone-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet": [ @@ -193,29 +157,15 @@ "/test-efs-one-zone-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -245,29 +195,15 @@ "/test-efs-one-zone-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -339,10 +275,7 @@ "/test-efs-one-zone-integ/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "oneZone": true - } + "data": "*" } ], "/test-efs-one-zone-integ/FileSystem/Resource": [ @@ -354,9 +287,7 @@ "/test-efs-one-zone-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -374,13 +305,7 @@ "/test-efs-one-zone-integ/FileSystem2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "oneZone": true, - "vpcSubnets": { - "availabilityZones": "*" - } - } + "data": "*" } ], "/test-efs-one-zone-integ/FileSystem2/Resource": [ @@ -392,9 +317,7 @@ "/test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource": [ @@ -484,6 +407,7 @@ "module": "aws-cdk-lib", "flags": { "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, "recommendedValue": true, "explanation": "Pass signingProfileName to CfnSigningProfile" }, @@ -502,6 +426,7 @@ } }, "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, "recommendedValue": true, "explanation": "Disable implicit openListener when custom security groups are provided" }, @@ -613,7 +538,7 @@ "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { "userValue": true, "recommendedValue": true, - "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in." + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." }, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { "userValue": true, @@ -952,10 +877,25 @@ "userValue": true, "recommendedValue": true, "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" } } } } }, - "minimumCliVersion": "2.1027.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json index b7c1ef0b936ce..3dec7601c67e9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "ea565f14374933cc04076e809c4451889c5c5b101096fadde2408dbdd9437cee": { + "2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e": { "displayName": "test-efs-one-zone-integ Template", "source": { "path": "test-efs-one-zone-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-c9cdefcc": { + "current_account-current_region-64cb0fd0": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "ea565f14374933cc04076e809c4451889c5c5b101096fadde2408dbdd9437cee.json", + "objectKey": "2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e.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-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json index db59aa3e278a5..d5d696546fe76 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json @@ -523,6 +523,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -533,7 +534,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], @@ -606,6 +622,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -616,7 +633,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json index 44b7fe36f5395..31f344a5f0eed 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-one-zone-integ":{"id":"test-efs-one-zone-integ","path":"test-efs-one-zone-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-one-zone-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet2EIP3C605A87","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet2NATGateway9182C01D"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-one-zone-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-one-zone-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-one-zone-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","oneZone":true}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-one-zone-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}}}},"FileSystem2":{"id":"FileSystem2","path":"test-efs-one-zone-integ/FileSystem2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","oneZone":true,"vpcSubnets":{"availabilityZones":"*"}}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-one-zone-integ/FileSystem2/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem2C84D7800"},"securityGroups":[{"Fn::GetAtt":["FileSystem2EfsSecurityGroup2AF8F758","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-one-zone-integ-test":{"id":"test-efs-one-zone-integ-test","path":"test-efs-one-zone-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-one-zone-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-one-zone-integ":{"id":"test-efs-one-zone-integ","path":"test-efs-one-zone-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-one-zone-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet2EIP3C605A87","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet2NATGateway9182C01D"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-one-zone-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-one-zone-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-one-zone-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-one-zone-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}}}},"FileSystem2":{"id":"FileSystem2","path":"test-efs-one-zone-integ/FileSystem2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-one-zone-integ/FileSystem2/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem2C84D7800"},"securityGroups":[{"Fn::GetAtt":["FileSystem2EfsSecurityGroup2AF8F758","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-one-zone-integ-test":{"id":"test-efs-one-zone-integ-test","path":"test-efs-one-zone-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-one-zone-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/FileSystemPolicyTestDefaultTestDeployAssertD0596FC1.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/FileSystemPolicyTestDefaultTestDeployAssertD0596FC1.assets.json index 9a7b0cb465e35..bad0015d9fb62 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/FileSystemPolicyTestDefaultTestDeployAssertD0596FC1.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/FileSystemPolicyTestDefaultTestDeployAssertD0596FC1.assets.json @@ -1,5 +1,5 @@ { - "version": "45.0.0", + "version": "48.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { "displayName": "FileSystemPolicyTestDefaultTestDeployAssertD0596FC1 Template", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/cdk.out index 3704a1b682acf..523a9aac37cbf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"45.0.0"} \ No newline at end of file +{"version":"48.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/integ.json index fbd608feb2ec6..835663cb4fd7e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "45.0.0", + "version": "48.0.0", "testCases": { "FileSystemPolicyTest/DefaultTest": { "stacks": [ @@ -9,5 +9,5 @@ "assertionStackName": "FileSystemPolicyTestDefaultTestDeployAssertD0596FC1" } }, - "minimumCliVersion": "2.1020.2" + "minimumCliVersion": "2.1027.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json index bd35ce05ff792..a13b6ad39d515 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json @@ -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}/7ae1d2527c3779ce32e98c5ca2ec2521998e4d2632aa17a5c6836a79a655f0a6.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,11 +37,7 @@ "/test-efs-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": { - "maxAzs": "*", - "natGateways": "*", - "restrictDefaultSecurityGroup": false - } + "data": "*" } ], "/test-efs-integ/Vpc/Resource": [ @@ -53,37 +49,19 @@ "/test-efs-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-integ/Vpc/PublicSubnet1/Subnet": [ @@ -125,29 +103,15 @@ "/test-efs-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-integ/Vpc/PublicSubnet2/Subnet": [ @@ -177,29 +141,15 @@ "/test-efs-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -229,29 +179,15 @@ "/test-efs-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -293,10 +229,7 @@ "/test-efs-integ/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "fileSystemPolicy": "*" - } + "data": "*" } ], "/test-efs-integ/FileSystem/Resource": [ @@ -308,9 +241,7 @@ "/test-efs-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/test-efs-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -334,9 +265,7 @@ "/test-efs-integ/AccessPoint": [ { "type": "aws:cdk:analytics:construct", - "data": { - "fileSystem": "*" - } + "data": "*" } ], "/test-efs-integ/AccessPoint/Resource": [ @@ -419,57 +348,50 @@ "properties": { "module": "aws-cdk-lib", "flags": { - "@aws-cdk/core:enableStackNameDuplicates": { - "recommendedValue": true, - "explanation": "Allow multiple stacks with the same name" - }, - "aws-cdk:enableDiffNoFail": { + "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, "recommendedValue": true, - "explanation": "Make `cdk diff` not fail when there are differences" + "explanation": "Pass signingProfileName to CfnSigningProfile" }, "@aws-cdk/core:newStyleStackSynthesis": { "recommendedValue": true, - "explanation": "Switch to new stack synthesis method which enables CI/CD" + "explanation": "Switch to new stack synthesis method which enables CI/CD", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/core:stackRelativeExports": { "recommendedValue": true, - "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path" - }, - "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport": { - "recommendedValue": true, - "explanation": "DockerImageAsset properly supports `.dockerignore` files by default" - }, - "@aws-cdk/aws-secretsmanager:parseOwnedSecretName": { - "recommendedValue": true, - "explanation": "Fix the referencing of SecretsManager names from ARNs" - }, - "@aws-cdk/aws-kms:defaultKeyPolicies": { - "recommendedValue": true, - "explanation": "Tighten default KMS key policies" - }, - "@aws-cdk/aws-s3:grantWriteWithoutAcl": { - "recommendedValue": true, - "explanation": "Remove `PutObjectAcl` from Bucket.grantWrite" + "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path", + "unconfiguredBehavesLike": { + "v2": true + } }, - "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount": { + "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, "recommendedValue": true, - "explanation": "Do not specify a default DesiredCount for ECS services" + "explanation": "Disable implicit openListener when custom security groups are provided" }, "@aws-cdk/aws-rds:lowercaseDbIdentifier": { "recommendedValue": true, - "explanation": "Force lowercasing of RDS Cluster names in CDK" + "explanation": "Force lowercasing of RDS Cluster names in CDK", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": { "recommendedValue": true, - "explanation": "Allow adding/removing multiple UsagePlanKeys independently" - }, - "@aws-cdk/aws-efs:defaultEncryptionAtRest": { - "recommendedValue": true, - "explanation": "Enable this feature flag to have elastic file systems encrypted at rest by default." + "explanation": "Allow adding/removing multiple UsagePlanKeys independently", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-lambda:recognizeVersionProps": { "recommendedValue": true, - "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`." + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-lambda:recognizeLayerVersion": { "userValue": true, @@ -478,7 +400,10 @@ }, "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": { "recommendedValue": true, - "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default." + "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/core:checkSecretUsage": { "userValue": true, @@ -555,7 +480,7 @@ "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { "userValue": true, "recommendedValue": true, - "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in." + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." }, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { "userValue": true, @@ -699,7 +624,10 @@ }, "@aws-cdk/pipelines:reduceAssetRoleTrustScope": { "recommendedValue": true, - "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy" + "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-eks:nodegroupNameAttribute": { "userValue": true, @@ -728,7 +656,10 @@ }, "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": { "recommendedValue": true, - "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model." + "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/core:explicitStackTags": { "userValue": true, @@ -792,7 +723,10 @@ }, "@aws-cdk/core:aspectStabilization": { "recommendedValue": true, - "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis." + "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": { "userValue": true, @@ -826,7 +760,10 @@ }, "@aws-cdk/pipelines:reduceStageRoleTrustScope": { "recommendedValue": true, - "explanation": "Remove the root account principal from Stage addActions trust policy" + "explanation": "Remove the root account principal from Stage addActions trust policy", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-events:requireEventBusPolicySid": { "userValue": true, @@ -849,7 +786,10 @@ }, "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": { "recommendedValue": true, - "explanation": "When enabled, scopes down the trust policy for the cross-account action role" + "explanation": "When enabled, scopes down the trust policy for the cross-account action role", + "unconfiguredBehavesLike": { + "v2": true + } }, "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": { "userValue": true, @@ -879,10 +819,25 @@ "userValue": true, "recommendedValue": true, "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" } } } } }, - "minimumCliVersion": "2.1023.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json index d33cd6bb435d3..ed95d122a0314 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json @@ -1,16 +1,16 @@ { - "version": "45.0.0", + "version": "48.0.0", "files": { - "7ae1d2527c3779ce32e98c5ca2ec2521998e4d2632aa17a5c6836a79a655f0a6": { + "41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c": { "displayName": "test-efs-integ Template", "source": { "path": "test-efs-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-f95f9260": { + "current_account-current_region-7ba0ff9d": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "7ae1d2527c3779ce32e98c5ca2ec2521998e4d2632aa17a5c6836a79a655f0a6.json", + "objectKey": "41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c.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-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json index 3276c592e70c5..b469b6dea3535 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json @@ -422,6 +422,7 @@ }, { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -432,7 +433,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json index fccc5187ccd66..29babb77a810e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"maxAzs":"*","natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","fileSystemPolicy":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":"elasticfilesystem:ClientRootAccess","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/AccessPoint","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.AccessPoint","version":"0.0.0","metadata":[{"fileSystem":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/AccessPoint/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnAccessPoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"rootDirectory":{},"accessPointTags":[{"key":"Name","value":"MyAccessPoint"}]}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"FileSystemPolicyTest":{"id":"FileSystemPolicyTest","path":"FileSystemPolicyTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"FileSystemPolicyTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"FileSystemPolicyTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"FileSystemPolicyTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":"elasticfilesystem:ClientRootAccess","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"rootDirectory":{},"accessPointTags":[{"key":"Name","value":"MyAccessPoint"}]}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystemPolicyTest":{"id":"FileSystemPolicyTest","path":"FileSystemPolicyTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"FileSystemPolicyTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"FileSystemPolicyTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"FileSystemPolicyTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json index 8e32bd2830d82..f4381ad5554f4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json @@ -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}/c03212663ee0e0cc560cb264d7e9cb151923bd0a2ba788797e31a4cae7df378d.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,9 +37,7 @@ "/test-efs-protection-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": { - "natGateways": "*" - } + "data": "*" } ], "/test-efs-protection-integ/Vpc/Resource": [ @@ -51,29 +49,15 @@ "/test-efs-protection-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-protection-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,29 +87,15 @@ "/test-efs-protection-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-protection-integ/Vpc/PublicSubnet2/Subnet": [ @@ -155,25 +125,11 @@ "/test-efs-protection-integ/Vpc/IsolatedSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" } ], "/test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet": [ @@ -197,25 +153,11 @@ "/test-efs-protection-integ/Vpc/IsolatedSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" } ], "/test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet": [ @@ -281,11 +223,7 @@ "/test-efs-protection-integ/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "removalPolicy": "destroy", - "replicationOverwriteProtection": "DISABLED" - } + "data": "*" } ], "/test-efs-protection-integ/FileSystem/Resource": [ @@ -297,9 +235,7 @@ "/test-efs-protection-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -395,6 +331,7 @@ "module": "aws-cdk-lib", "flags": { "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, "recommendedValue": true, "explanation": "Pass signingProfileName to CfnSigningProfile" }, @@ -413,6 +350,7 @@ } }, "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, "recommendedValue": true, "explanation": "Disable implicit openListener when custom security groups are provided" }, @@ -524,7 +462,7 @@ "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { "userValue": true, "recommendedValue": true, - "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in." + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." }, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { "userValue": true, @@ -863,10 +801,25 @@ "userValue": true, "recommendedValue": true, "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" } } } } }, - "minimumCliVersion": "2.1027.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json index c17fba75da7cd..6eb830e9cdf78 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "c03212663ee0e0cc560cb264d7e9cb151923bd0a2ba788797e31a4cae7df378d": { + "9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da": { "displayName": "test-efs-protection-integ Template", "source": { "path": "test-efs-protection-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-d4d394f4": { + "current_account-current_region-6c094f36": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "c03212663ee0e0cc560cb264d7e9cb151923bd0a2ba788797e31a4cae7df378d.json", + "objectKey": "9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da.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-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json index 0d6dd3d7efdea..fccf1dc1fc8be 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json @@ -419,6 +419,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -429,7 +430,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json index fcd73fff9e95b..47748e983534f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-protection-integ":{"id":"test-efs-protection-integ","path":"test-efs-protection-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-protection-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-protection-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-protection-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"test-efs-protection-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-protection-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-protection-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","removalPolicy":"destroy","replicationOverwriteProtection":"DISABLED"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-protection-integ-test":{"id":"test-efs-protection-integ-test","path":"test-efs-protection-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-protection-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-protection-integ":{"id":"test-efs-protection-integ","path":"test-efs-protection-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-protection-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-protection-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-protection-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"test-efs-protection-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-protection-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-protection-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-protection-integ-test":{"id":"test-efs-protection-integ-test","path":"test-efs-protection-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-protection-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json index 7ae475c60c7e4..06d79bf9c51f9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json @@ -15,16 +15,16 @@ } } }, - "1c1668c6802707f0dbb94bd8ba11e94e7a236a8718c83294dbdf1bc62fc95dea": { + "3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e": { "displayName": "efsReplication Template", "source": { "path": "efsReplication.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-b65412bf": { + "current_account-current_region-789d4b0c": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "1c1668c6802707f0dbb94bd8ba11e94e7a236a8718c83294dbdf1bc62fc95dea.json", + "objectKey": "3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e.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-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json index 68f86978c0ee3..d632d09f40b63 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json @@ -454,6 +454,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -464,7 +465,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], @@ -562,6 +578,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -572,7 +589,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], @@ -659,6 +691,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -669,7 +702,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json index 9c6b431115046..672b3c575eec5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json @@ -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}/1c1668c6802707f0dbb94bd8ba11e94e7a236a8718c83294dbdf1bc62fc95dea.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,9 +37,7 @@ "/efsReplication/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": { - "natGateways": "*" - } + "data": "*" } ], "/efsReplication/Vpc/Resource": [ @@ -51,29 +49,15 @@ "/efsReplication/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/efsReplication/Vpc/PublicSubnet1/Subnet": [ @@ -103,29 +87,15 @@ "/efsReplication/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/efsReplication/Vpc/PublicSubnet2/Subnet": [ @@ -155,25 +125,11 @@ "/efsReplication/Vpc/IsolatedSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" } ], "/efsReplication/Vpc/IsolatedSubnet1/Subnet": [ @@ -197,25 +153,11 @@ "/efsReplication/Vpc/IsolatedSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" } ], "/efsReplication/Vpc/IsolatedSubnet2/Subnet": [ @@ -281,9 +223,7 @@ "/efsReplication/Key": [ { "type": "aws:cdk:analytics:construct", - "data": { - "removalPolicy": "destroy" - } + "data": "*" } ], "/efsReplication/Key/Resource": [ @@ -295,11 +235,7 @@ "/efsReplication/oneZoneReplicationFileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "removalPolicy": "destroy", - "replicationConfiguration": "*" - } + "data": "*" } ], "/efsReplication/oneZoneReplicationFileSystem/Resource": [ @@ -311,9 +247,7 @@ "/efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource": [ @@ -337,11 +271,7 @@ "/efsReplication/destinationFileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "removalPolicy": "destroy", - "replicationOverwriteProtection": "DISABLED" - } + "data": "*" } ], "/efsReplication/destinationFileSystem/Resource": [ @@ -353,9 +283,7 @@ "/efsReplication/destinationFileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/efsReplication/destinationFileSystem/EfsSecurityGroup/Resource": [ @@ -379,11 +307,7 @@ "/efsReplication/existFileSystemReplication": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "removalPolicy": "destroy", - "replicationConfiguration": "*" - } + "data": "*" } ], "/efsReplication/existFileSystemReplication/Resource": [ @@ -395,9 +319,7 @@ "/efsReplication/existFileSystemReplication/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource": [ @@ -493,6 +415,7 @@ "module": "aws-cdk-lib", "flags": { "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, "recommendedValue": true, "explanation": "Pass signingProfileName to CfnSigningProfile" }, @@ -511,6 +434,7 @@ } }, "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, "recommendedValue": true, "explanation": "Disable implicit openListener when custom security groups are provided" }, @@ -622,7 +546,7 @@ "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { "userValue": true, "recommendedValue": true, - "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in." + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." }, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { "userValue": true, @@ -961,10 +885,25 @@ "userValue": true, "recommendedValue": true, "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" } } } } }, - "minimumCliVersion": "2.1027.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json index 86279ec65ce21..7989490491f16 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"efsReplication":{"id":"efsReplication","path":"efsReplication","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"efsReplication/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"efsReplication/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"efsReplication/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"efsReplication/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"efsReplication/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"efsReplication/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efsReplication/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Key":{"id":"Key","path":"efsReplication/Key","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.Key","version":"0.0.0","metadata":[{"removalPolicy":"destroy"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Key/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.CfnKey","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"oneZoneReplicationFileSystem":{"id":"oneZoneReplicationFileSystem","path":"efsReplication/oneZoneReplicationFileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","removalPolicy":"destroy","replicationConfiguration":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"kmsKeyId":{"Fn::GetAtt":["Key961B73FD","Arn"]},"region":"us-east-1","availabilityZoneName":"us-east-1a"}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"destinationFileSystem":{"id":"destinationFileSystem","path":"efsReplication/destinationFileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","removalPolicy":"destroy","replicationOverwriteProtection":"DISABLED"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/destinationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/destinationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"existFileSystemReplication":{"id":"existFileSystemReplication","path":"efsReplication/existFileSystemReplication","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","removalPolicy":"destroy","replicationConfiguration":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"region":{"Ref":"AWS::Region"}}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/existFileSystemReplication/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplication/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplication/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"efsReplicationIntegTest":{"id":"efsReplicationIntegTest","path":"efsReplicationIntegTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efsReplicationIntegTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efsReplicationIntegTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efsReplicationIntegTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"efsReplication":{"id":"efsReplication","path":"efsReplication","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"efsReplication/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"efsReplication/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"efsReplication/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"efsReplication/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"efsReplication/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"efsReplication/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efsReplication/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Key":{"id":"Key","path":"efsReplication/Key","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Key/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"oneZoneReplicationFileSystem":{"id":"oneZoneReplicationFileSystem","path":"efsReplication/oneZoneReplicationFileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"kmsKeyId":{"Fn::GetAtt":["Key961B73FD","Arn"]},"region":"us-east-1","availabilityZoneName":"us-east-1a"}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"destinationFileSystem":{"id":"destinationFileSystem","path":"efsReplication/destinationFileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/destinationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/destinationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"existFileSystemReplication":{"id":"existFileSystemReplication","path":"efsReplication/existFileSystemReplication","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"region":{"Ref":"AWS::Region"}}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/existFileSystemReplication/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplication/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplication/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"efsReplicationIntegTest":{"id":"efsReplicationIntegTest","path":"efsReplicationIntegTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efsReplicationIntegTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efsReplicationIntegTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efsReplicationIntegTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/cdk.out index 188478b55560e..523a9aac37cbf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"41.0.0"} \ No newline at end of file +{"version":"48.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json index 78cedcab89393..3ae65edc692e9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json @@ -1,16 +1,16 @@ { - "version": "41.0.0", + "version": "48.0.0", "files": { - "2a39fbf7192f71f2ade2c1ddeba447fe088dc986596356a56b2871ac5c8325a7": { + "9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55": { "displayName": "efs-from-imported-subnet Template", "source": { "path": "efs-from-imported-subnet.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-1cde8880": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "2a39fbf7192f71f2ade2c1ddeba447fe088dc986596356a56b2871ac5c8325a7.json", + "objectKey": "9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55.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-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json index 8ea3ab9cbe360..1b8e964ff5bdd 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json @@ -225,6 +225,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -235,7 +236,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C.assets.json index 8241bd4adeb0d..ad8e5bcbf3fc0 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C.assets.json @@ -1,5 +1,5 @@ { - "version": "41.0.0", + "version": "48.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { "displayName": "efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C Template", @@ -8,7 +8,7 @@ "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-d8d86b35": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.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-efs/test/integ.efs-from-imported-subnet.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/integ.json index efd5abe5d7247..52500ababfe2b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "41.0.0", + "version": "48.0.0", "testCases": { "efs-from-imported-subnet-test/DefaultTest": { "stacks": [ @@ -8,5 +8,6 @@ "assertionStack": "efs-from-imported-subnet-test/DefaultTest/DeployAssert", "assertionStackName": "efsfromimportedsubnettestDefaultTestDeployAssertC5BA6A6C" } - } + }, + "minimumCliVersion": "2.1027.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json index f7d12c7715109..7c9f7b63f91c1 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "42.0.0", + "version": "48.0.0", "artifacts": { "efs-from-imported-subnet.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}/2a39fbf7192f71f2ade2c1ddeba447fe088dc986596356a56b2871ac5c8325a7.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,16 +37,7 @@ "/efs-from-imported-subnet/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": { - "natGateways": "*", - "restrictDefaultSecurityGroup": false, - "subnetConfiguration": [ - { - "name": "*", - "subnetType": "Public" - } - ] - } + "data": "*" } ], "/efs-from-imported-subnet/Vpc/Resource": [ @@ -58,37 +49,19 @@ "/efs-from-imported-subnet/Vpc/testSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/efs-from-imported-subnet/Vpc/testSubnet1/Subnet": [ @@ -130,29 +103,15 @@ "/efs-from-imported-subnet/Vpc/testSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/efs-from-imported-subnet/Vpc/testSubnet2/Subnet": [ @@ -204,15 +163,7 @@ "/efs-from-imported-subnet/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "vpcSubnets": { - "subnets": [ - "*" - ] - }, - "removalPolicy": "destroy" - } + "data": "*" } ], "/efs-from-imported-subnet/FileSystem/Resource": [ @@ -224,9 +175,7 @@ "/efs-from-imported-subnet/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource": [ @@ -309,7 +258,502 @@ "properties": { "file": "tree.json" } + }, + "aws-cdk-lib/feature-flag-report": { + "type": "cdk:feature-flag-report", + "properties": { + "module": "aws-cdk-lib", + "flags": { + "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, + "recommendedValue": true, + "explanation": "Pass signingProfileName to CfnSigningProfile" + }, + "@aws-cdk/core:newStyleStackSynthesis": { + "recommendedValue": true, + "explanation": "Switch to new stack synthesis method which enables CI/CD", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:stackRelativeExports": { + "recommendedValue": true, + "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, + "recommendedValue": true, + "explanation": "Disable implicit openListener when custom security groups are provided" + }, + "@aws-cdk/aws-rds:lowercaseDbIdentifier": { + "recommendedValue": true, + "explanation": "Force lowercasing of RDS Cluster names in CDK", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": { + "recommendedValue": true, + "explanation": "Allow adding/removing multiple UsagePlanKeys independently", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeVersionProps": { + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeLayerVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`." + }, + "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": { + "recommendedValue": true, + "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:checkSecretUsage": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations" + }, + "@aws-cdk/core:target-partitions": { + "recommendedValue": [ + "aws", + "aws-cn" + ], + "explanation": "What regions to include in lookup tables of environment agnostic stacks" + }, + "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": { + "userValue": true, + "recommendedValue": true, + "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified" + }, + "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names." + }, + "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": { + "userValue": true, + "recommendedValue": true, + "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID." + }, + "@aws-cdk/aws-iam:minimizePolicies": { + "userValue": true, + "recommendedValue": true, + "explanation": "Minimize IAM policies by combining Statements" + }, + "@aws-cdk/core:validateSnapshotRemovalPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Error on snapshot removal policies on resources that do not support it." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate key aliases that include the stack name" + }, + "@aws-cdk/aws-s3:createDefaultLoggingPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist." + }, + "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict KMS key policy for encrypted Queues a bit more" + }, + "@aws-cdk/aws-apigateway:disableCloudWatchRole": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment" + }, + "@aws-cdk/core:enablePartitionLiterals": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make ARNs concrete if AWS partition is known" + }, + "@aws-cdk/aws-events:eventsTargetQueueSameAccount": { + "userValue": true, + "recommendedValue": true, + "explanation": "Event Rules may only push to encrypted SQS queues in the same account" + }, + "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": { + "userValue": true, + "recommendedValue": true, + "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker" + }, + "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." + }, + "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging" + }, + "@aws-cdk/aws-route53-patters:useCertificate": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`" + }, + "@aws-cdk/customresources:installLatestAwsSdkDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "Whether to install the latest SDK by default in AwsCustomResource" + }, + "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use unique resource name for Database Proxy" + }, + "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Remove CloudWatch alarms from deployment group" + }, + "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID." + }, + "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": { + "userValue": true, + "recommendedValue": true, + "explanation": "Define user data for a launch template by default when a machine image is provided." + }, + "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": { + "userValue": true, + "recommendedValue": true, + "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret." + }, + "@aws-cdk/aws-redshift:columnId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Whether to use an ID to track Redshift column changes" + }, + "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies" + }, + "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict access to the VPC default security group" + }, + "@aws-cdk/aws-apigateway:requestValidatorUniqueId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a unique id for each RequestValidator added to a method" + }, + "@aws-cdk/aws-kms:aliasNameRef": { + "userValue": true, + "recommendedValue": true, + "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key" + }, + "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition" + }, + "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a launch template when creating an AutoScalingGroup" + }, + "@aws-cdk/core:includePrefixInUniqueNameGeneration": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include the stack prefix in the stack name generation process" + }, + "@aws-cdk/aws-efs:denyAnonymousAccess": { + "userValue": true, + "recommendedValue": true, + "explanation": "EFS denies anonymous clients accesses" + }, + "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains" + }, + "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default" + }, + "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet." + }, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change." + }, + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id." + }, + "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials." + }, + "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'." + }, + "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false." + }, + "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default pipeline type to V2." + }, + "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only." + }, + "@aws-cdk/pipelines:reduceAssetRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-eks:nodegroupNameAttribute": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix." + }, + "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default volume type of the EBS volume will be GP3" + }, + "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, remove default deployment alarm settings" + }, + "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default" + }, + "@aws-cdk/aws-s3:keepNotificationInImportedBucket": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack." + }, + "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": { + "recommendedValue": true, + "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:explicitStackTags": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack." + }, + "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature": { + "userValue": false, + "recommendedValue": false, + "explanation": "When set to true along with canContainersAccessInstanceRole=false in ECS cluster, new updated commands will be added to UserData to block container accessing IMDS. **Applicable to Linux only. IMPORTANT: See [details.](#aws-cdkaws-ecsenableImdsBlockingDeprecatedFeature)**" + }, + "@aws-cdk/aws-ecs:disableEcsImdsBlocking": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, CDK synth will throw exception if canContainersAccessInstanceRole is false. **IMPORTANT: See [details.](#aws-cdkaws-ecsdisableEcsImdsBlocking)**" + }, + "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration" + }, + "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas" + }, + "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together." + }, + "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn." + }, + "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`" + }, + "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values." + }, + "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications." + }, + "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN." + }, + "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2." + }, + "@aws-cdk/core:aspectStabilization": { + "recommendedValue": true, + "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource." + }, + "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere" + }, + "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections" + }, + "@aws-cdk/core:enableAdditionalMetadataCollection": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues." + }, + "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": { + "userValue": false, + "recommendedValue": false, + "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement" + }, + "@aws-cdk/aws-s3:setUniqueReplicationRoleName": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication." + }, + "@aws-cdk/pipelines:reduceStageRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from Stage addActions trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-events:requireEventBusPolicySid": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals." + }, + "@aws-cdk/core:aspectPrioritiesMutating": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING." + }, + "@aws-cdk/aws-dynamodb:retainTableReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise." + }, + "@aws-cdk/cognito:logUserPoolClientSecretValue": { + "recommendedValue": false, + "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs." + }, + "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": { + "recommendedValue": true, + "explanation": "When enabled, scopes down the trust policy for the cross-account action role", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter" + }, + "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": { + "userValue": true, + "recommendedValue": true, + "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions." + }, + "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC." + }, + "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": { + "recommendedValue": false, + "explanation": "When enabled, use resource IDs for VPC V2 migration" + }, + "@aws-cdk/aws-s3:publicAccessBlockedByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined." + }, + "@aws-cdk/aws-lambda:useCdkManagedLogGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" + } + } + } } }, - "minimumCliVersion": "2.1006.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json index 11cc2c77b1d16..122467996a4e9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","children":{"efs-from-imported-subnet":{"id":"efs-from-imported-subnet","path":"efs-from-imported-subnet","children":{"Vpc":{"id":"Vpc","path":"efs-from-imported-subnet/Vpc","children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/Vpc/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"}},"testSubnet1":{"id":"testSubnet1","path":"efs-from-imported-subnet/Vpc/testSubnet1","children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet1/Subnet","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTable","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTableAssociation","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet1/DefaultRoute","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"}},"EIP":{"id":"EIP","path":"efs-from-imported-subnet/Vpc/testSubnet1/EIP","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"}},"NATGateway":{"id":"NATGateway","path":"efs-from-imported-subnet/Vpc/testSubnet1/NATGateway","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpctestSubnet1EIPEE8206FB","AllocationId"]},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"},"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]}},"testSubnet2":{"id":"testSubnet2","path":"efs-from-imported-subnet/Vpc/testSubnet2","children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet2/Subnet","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTable","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTableAssociation","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"},"subnetId":{"Ref":"VpctestSubnet2Subnet3B2E5192"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet2/DefaultRoute","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]}},"IGW":{"id":"IGW","path":"efs-from-imported-subnet/Vpc/IGW","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"}},"VPCGW":{"id":"VPCGW","path":"efs-from-imported-subnet/Vpc/VPCGW","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*","restrictDefaultSecurityGroup":false,"subnetConfiguration":[{"name":"*","subnetType":"Public"}]}]}},"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Subnet","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"FileSystem":{"id":"FileSystem","path":"efs-from-imported-subnet/FileSystem","children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]}},"EfsMountTarget-Subnet":{"id":"EfsMountTarget-Subnet","path":"efs-from-imported-subnet/FileSystem/EfsMountTarget-Subnet","attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","vpcSubnets":{"subnets":["*"]},"removalPolicy":"destroy"}]}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"}},"efs-from-imported-subnet-test":{"id":"efs-from-imported-subnet-test","path":"efs-from-imported-subnet-test","children":{"DefaultTest":{"id":"DefaultTest","path":"efs-from-imported-subnet-test/DefaultTest","children":{"Default":{"id":"Default","path":"efs-from-imported-subnet-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert","children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"}}},"constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"}}},"constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}},"constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"efs-from-imported-subnet":{"id":"efs-from-imported-subnet","path":"efs-from-imported-subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"efs-from-imported-subnet/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"testSubnet1":{"id":"testSubnet1","path":"efs-from-imported-subnet/Vpc/testSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"}}}},"EIP":{"id":"EIP","path":"efs-from-imported-subnet/Vpc/testSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"efs-from-imported-subnet/Vpc/testSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpctestSubnet1EIPEE8206FB","AllocationId"]},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"},"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}}}},"testSubnet2":{"id":"testSubnet2","path":"efs-from-imported-subnet/Vpc/testSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"},"subnetId":{"Ref":"VpctestSubnet2Subnet3B2E5192"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"}}}}}},"IGW":{"id":"IGW","path":"efs-from-imported-subnet/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efs-from-imported-subnet/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"FileSystem":{"id":"FileSystem","path":"efs-from-imported-subnet/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-Subnet":{"id":"EfsMountTarget-Subnet","path":"efs-from-imported-subnet/FileSystem/EfsMountTarget-Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"efs-from-imported-subnet-test":{"id":"efs-from-imported-subnet-test","path":"efs-from-imported-subnet-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efs-from-imported-subnet-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efs-from-imported-subnet-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/cdk.out index 1e02a2deb191b..523a9aac37cbf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"40.0.0"} \ No newline at end of file +{"version":"48.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/integ.json index 384caea04322b..751681757fbff 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "40.0.0", + "version": "48.0.0", "testCases": { "test-efs-integ-test/DefaultTest": { "stacks": [ @@ -8,5 +8,6 @@ "assertionStack": "test-efs-integ-test/DefaultTest/DeployAssert", "assertionStackName": "testefsintegtestDefaultTestDeployAssert7E1529D5" } - } + }, + "minimumCliVersion": "2.1027.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json index ba72388d7dbf1..dbd684fd1c637 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "40.0.0", + "version": "48.0.0", "artifacts": { "test-efs-transition-integ.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}/85d9300d4ebe9c71f0d30c1d8d5ac6ceb9c2a01a2fef18719c6b2c25a70d80fc.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,11 +37,7 @@ "/test-efs-transition-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": { - "maxAzs": "*", - "natGateways": "*", - "restrictDefaultSecurityGroup": false - } + "data": "*" } ], "/test-efs-transition-integ/Vpc/Resource": [ @@ -53,37 +49,19 @@ "/test-efs-transition-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-transition-integ/Vpc/PublicSubnet1/Subnet": [ @@ -125,29 +103,15 @@ "/test-efs-transition-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-transition-integ/Vpc/PublicSubnet2/Subnet": [ @@ -177,29 +141,15 @@ "/test-efs-transition-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -229,29 +179,15 @@ "/test-efs-transition-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -293,13 +229,7 @@ "/test-efs-transition-integ/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "lifecyclePolicy": "AFTER_14_DAYS", - "throughputMode": "elastic", - "transitionToArchivePolicy": "AFTER_90_DAYS", - "outOfInfrequentAccessPolicy": "AFTER_1_ACCESS" - } + "data": "*" } ], "/test-efs-transition-integ/FileSystem/Resource": [ @@ -311,9 +241,7 @@ "/test-efs-transition-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" } ], "/test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -402,6 +330,502 @@ "properties": { "file": "tree.json" } + }, + "aws-cdk-lib/feature-flag-report": { + "type": "cdk:feature-flag-report", + "properties": { + "module": "aws-cdk-lib", + "flags": { + "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, + "recommendedValue": true, + "explanation": "Pass signingProfileName to CfnSigningProfile" + }, + "@aws-cdk/core:newStyleStackSynthesis": { + "recommendedValue": true, + "explanation": "Switch to new stack synthesis method which enables CI/CD", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:stackRelativeExports": { + "recommendedValue": true, + "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, + "recommendedValue": true, + "explanation": "Disable implicit openListener when custom security groups are provided" + }, + "@aws-cdk/aws-rds:lowercaseDbIdentifier": { + "recommendedValue": true, + "explanation": "Force lowercasing of RDS Cluster names in CDK", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": { + "recommendedValue": true, + "explanation": "Allow adding/removing multiple UsagePlanKeys independently", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeVersionProps": { + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeLayerVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`." + }, + "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": { + "recommendedValue": true, + "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:checkSecretUsage": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations" + }, + "@aws-cdk/core:target-partitions": { + "recommendedValue": [ + "aws", + "aws-cn" + ], + "explanation": "What regions to include in lookup tables of environment agnostic stacks" + }, + "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": { + "userValue": true, + "recommendedValue": true, + "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified" + }, + "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names." + }, + "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": { + "userValue": true, + "recommendedValue": true, + "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID." + }, + "@aws-cdk/aws-iam:minimizePolicies": { + "userValue": true, + "recommendedValue": true, + "explanation": "Minimize IAM policies by combining Statements" + }, + "@aws-cdk/core:validateSnapshotRemovalPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Error on snapshot removal policies on resources that do not support it." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate key aliases that include the stack name" + }, + "@aws-cdk/aws-s3:createDefaultLoggingPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist." + }, + "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict KMS key policy for encrypted Queues a bit more" + }, + "@aws-cdk/aws-apigateway:disableCloudWatchRole": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment" + }, + "@aws-cdk/core:enablePartitionLiterals": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make ARNs concrete if AWS partition is known" + }, + "@aws-cdk/aws-events:eventsTargetQueueSameAccount": { + "userValue": true, + "recommendedValue": true, + "explanation": "Event Rules may only push to encrypted SQS queues in the same account" + }, + "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": { + "userValue": true, + "recommendedValue": true, + "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker" + }, + "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." + }, + "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging" + }, + "@aws-cdk/aws-route53-patters:useCertificate": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`" + }, + "@aws-cdk/customresources:installLatestAwsSdkDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "Whether to install the latest SDK by default in AwsCustomResource" + }, + "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use unique resource name for Database Proxy" + }, + "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Remove CloudWatch alarms from deployment group" + }, + "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID." + }, + "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": { + "userValue": true, + "recommendedValue": true, + "explanation": "Define user data for a launch template by default when a machine image is provided." + }, + "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": { + "userValue": true, + "recommendedValue": true, + "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret." + }, + "@aws-cdk/aws-redshift:columnId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Whether to use an ID to track Redshift column changes" + }, + "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies" + }, + "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict access to the VPC default security group" + }, + "@aws-cdk/aws-apigateway:requestValidatorUniqueId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a unique id for each RequestValidator added to a method" + }, + "@aws-cdk/aws-kms:aliasNameRef": { + "userValue": true, + "recommendedValue": true, + "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key" + }, + "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition" + }, + "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a launch template when creating an AutoScalingGroup" + }, + "@aws-cdk/core:includePrefixInUniqueNameGeneration": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include the stack prefix in the stack name generation process" + }, + "@aws-cdk/aws-efs:denyAnonymousAccess": { + "userValue": true, + "recommendedValue": true, + "explanation": "EFS denies anonymous clients accesses" + }, + "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains" + }, + "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default" + }, + "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet." + }, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change." + }, + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id." + }, + "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials." + }, + "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'." + }, + "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false." + }, + "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default pipeline type to V2." + }, + "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only." + }, + "@aws-cdk/pipelines:reduceAssetRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-eks:nodegroupNameAttribute": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix." + }, + "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default volume type of the EBS volume will be GP3" + }, + "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, remove default deployment alarm settings" + }, + "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default" + }, + "@aws-cdk/aws-s3:keepNotificationInImportedBucket": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack." + }, + "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": { + "recommendedValue": true, + "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:explicitStackTags": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack." + }, + "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature": { + "userValue": false, + "recommendedValue": false, + "explanation": "When set to true along with canContainersAccessInstanceRole=false in ECS cluster, new updated commands will be added to UserData to block container accessing IMDS. **Applicable to Linux only. IMPORTANT: See [details.](#aws-cdkaws-ecsenableImdsBlockingDeprecatedFeature)**" + }, + "@aws-cdk/aws-ecs:disableEcsImdsBlocking": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, CDK synth will throw exception if canContainersAccessInstanceRole is false. **IMPORTANT: See [details.](#aws-cdkaws-ecsdisableEcsImdsBlocking)**" + }, + "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration" + }, + "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas" + }, + "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together." + }, + "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn." + }, + "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`" + }, + "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values." + }, + "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications." + }, + "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN." + }, + "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2." + }, + "@aws-cdk/core:aspectStabilization": { + "recommendedValue": true, + "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource." + }, + "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere" + }, + "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections" + }, + "@aws-cdk/core:enableAdditionalMetadataCollection": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues." + }, + "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": { + "userValue": false, + "recommendedValue": false, + "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement" + }, + "@aws-cdk/aws-s3:setUniqueReplicationRoleName": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication." + }, + "@aws-cdk/pipelines:reduceStageRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from Stage addActions trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-events:requireEventBusPolicySid": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals." + }, + "@aws-cdk/core:aspectPrioritiesMutating": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING." + }, + "@aws-cdk/aws-dynamodb:retainTableReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise." + }, + "@aws-cdk/cognito:logUserPoolClientSecretValue": { + "recommendedValue": false, + "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs." + }, + "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": { + "recommendedValue": true, + "explanation": "When enabled, scopes down the trust policy for the cross-account action role", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter" + }, + "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": { + "userValue": true, + "recommendedValue": true, + "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions." + }, + "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC." + }, + "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": { + "recommendedValue": false, + "explanation": "When enabled, use resource IDs for VPC V2 migration" + }, + "@aws-cdk/aws-s3:publicAccessBlockedByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined." + }, + "@aws-cdk/aws-lambda:useCdkManagedLogGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" + } + } + } } - } + }, + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json index 7fe1fdc42d5ed..7b67c0dc0b979 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json @@ -1,15 +1,16 @@ { - "version": "40.0.0", + "version": "48.0.0", "files": { - "85d9300d4ebe9c71f0d30c1d8d5ac6ceb9c2a01a2fef18719c6b2c25a70d80fc": { + "68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f": { + "displayName": "test-efs-transition-integ Template", "source": { "path": "test-efs-transition-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-c2cfbb53": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "85d9300d4ebe9c71f0d30c1d8d5ac6ceb9c2a01a2fef18719c6b2c25a70d80fc.json", + "objectKey": "68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f.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-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json index 816f67857f396..7d6e774eecdfe 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json @@ -363,6 +363,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -373,7 +374,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json index 3c6e7f3ac48d8..1a08bd7ba3981 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json @@ -1,13 +1,14 @@ { - "version": "40.0.0", + "version": "48.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "displayName": "testefsintegtestDefaultTestDeployAssert7E1529D5 Template", "source": { "path": "testefsintegtestDefaultTestDeployAssert7E1529D5.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-d8d86b35": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.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-efs/test/integ.efs-transition.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json index 132c5835efd96..7745eeab529ce 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json @@ -1,958 +1 @@ -{ - "version": "tree-0.1", - "tree": { - "id": "App", - "path": "", - "children": { - "test-efs-transition-integ": { - "id": "test-efs-transition-integ", - "path": "test-efs-transition-integ", - "children": { - "Vpc": { - "id": "Vpc", - "path": "test-efs-transition-integ/Vpc", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-transition-integ/Vpc/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::VPC", - "aws:cdk:cloudformation:props": { - "cidrBlock": "10.0.0.0/16", - "enableDnsHostnames": true, - "enableDnsSupport": true, - "instanceTenancy": "default", - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", - "version": "0.0.0" - } - }, - "PublicSubnet1": { - "id": "PublicSubnet1", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-transition-integ/Vpc/PublicSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0", - "metadata": [] - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PublicSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - }, - "subnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "gatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "routeTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - }, - "EIP": { - "id": "EIP", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/EIP", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::EIP", - "aws:cdk:cloudformation:props": { - "domain": "vpc", - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PublicSubnet1" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", - "version": "0.0.0" - } - }, - "NATGateway": { - "id": "NATGateway", - "path": "test-efs-transition-integ/Vpc/PublicSubnet1/NATGateway", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", - "aws:cdk:cloudformation:props": { - "allocationId": { - "Fn::GetAtt": [ - "VpcPublicSubnet1EIPD7E02669", - "AllocationId" - ] - }, - "subnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - }, - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PublicSubnet1" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", - "version": "0.0.0", - "metadata": [ - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - {}, - { - "addNatGateway": [ - "*" - ] - } - ] - } - }, - "PublicSubnet2": { - "id": "PublicSubnet2", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-transition-integ/Vpc/PublicSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0", - "metadata": [] - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PublicSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - }, - "subnetId": { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-transition-integ/Vpc/PublicSubnet2/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "gatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "routeTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", - "version": "0.0.0", - "metadata": [ - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - {} - ] - } - }, - "PrivateSubnet1": { - "id": "PrivateSubnet1", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-transition-integ/Vpc/PrivateSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0", - "metadata": [] - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PrivateSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - }, - "subnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet1/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "natGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" - }, - "routeTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", - "version": "0.0.0", - "metadata": [ - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - {} - ] - } - }, - "PrivateSubnet2": { - "id": "PrivateSubnet2", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-transition-integ/Vpc/PrivateSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0", - "metadata": [] - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc/PrivateSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - }, - "subnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-transition-integ/Vpc/PrivateSubnet2/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "natGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" - }, - "routeTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", - "version": "0.0.0", - "metadata": [ - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - }, - {} - ] - } - }, - "IGW": { - "id": "IGW", - "path": "test-efs-transition-integ/Vpc/IGW", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/Vpc" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", - "version": "0.0.0" - } - }, - "VPCGW": { - "id": "VPCGW", - "path": "test-efs-transition-integ/Vpc/VPCGW", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", - "aws:cdk:cloudformation:props": { - "internetGatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.Vpc", - "version": "0.0.0", - "metadata": [ - { - "maxAzs": "*", - "natGateways": "*", - "restrictDefaultSecurityGroup": false - } - ] - } - }, - "FileSystem": { - "id": "FileSystem", - "path": "test-efs-transition-integ/FileSystem", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-transition-integ/FileSystem/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::FileSystem", - "aws:cdk:cloudformation:props": { - "encrypted": true, - "fileSystemPolicy": { - "Statement": [ - { - "Action": [ - "elasticfilesystem:ClientRootAccess", - "elasticfilesystem:ClientWrite" - ], - "Condition": { - "Bool": { - "elasticfilesystem:AccessedViaMountTarget": "true" - } - }, - "Effect": "Allow", - "Principal": { - "AWS": "*" - } - } - ], - "Version": "2012-10-17" - }, - "lifecyclePolicies": [ - { - "transitionToIa": "AFTER_14_DAYS" - }, - { - "transitionToPrimaryStorageClass": "AFTER_1_ACCESS" - }, - { - "transitionToArchive": "AFTER_90_DAYS" - } - ], - "fileSystemTags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/FileSystem" - } - ], - "throughputMode": "elastic" - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnFileSystem", - "version": "0.0.0" - } - }, - "EfsSecurityGroup": { - "id": "EfsSecurityGroup", - "path": "test-efs-transition-integ/FileSystem/EfsSecurityGroup", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", - "aws:cdk:cloudformation:props": { - "groupDescription": "test-efs-transition-integ/FileSystem/EfsSecurityGroup", - "securityGroupEgress": [ - { - "cidrIp": "0.0.0.0/0", - "description": "Allow all outbound traffic by default", - "ipProtocol": "-1" - } - ], - "tags": [ - { - "key": "Name", - "value": "test-efs-transition-integ/FileSystem" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", - "version": "0.0.0", - "metadata": [ - { - "vpc": "*" - } - ] - } - }, - "EfsMountTarget-PrivateSubnet1": { - "id": "EfsMountTarget-PrivateSubnet1", - "path": "test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet1", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::MountTarget", - "aws:cdk:cloudformation:props": { - "fileSystemId": { - "Ref": "FileSystem8A8E25C0" - }, - "securityGroups": [ - { - "Fn::GetAtt": [ - "FileSystemEfsSecurityGroup212D3ACB", - "GroupId" - ] - } - ], - "subnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnMountTarget", - "version": "0.0.0" - } - }, - "EfsMountTarget-PrivateSubnet2": { - "id": "EfsMountTarget-PrivateSubnet2", - "path": "test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet2", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::MountTarget", - "aws:cdk:cloudformation:props": { - "fileSystemId": { - "Ref": "FileSystem8A8E25C0" - }, - "securityGroups": [ - { - "Fn::GetAtt": [ - "FileSystemEfsSecurityGroup212D3ACB", - "GroupId" - ] - } - ], - "subnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnMountTarget", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.FileSystem", - "version": "0.0.0", - "metadata": [ - { - "vpc": "*", - "lifecyclePolicy": "AFTER_14_DAYS", - "throughputMode": "elastic", - "transitionToArchivePolicy": "AFTER_90_DAYS", - "outOfInfrequentAccessPolicy": "AFTER_1_ACCESS" - } - ] - } - }, - "BootstrapVersion": { - "id": "BootstrapVersion", - "path": "test-efs-transition-integ/BootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" - } - }, - "CheckBootstrapVersion": { - "id": "CheckBootstrapVersion", - "path": "test-efs-transition-integ/CheckBootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" - } - }, - "test-efs-integ-test": { - "id": "test-efs-integ-test", - "path": "test-efs-integ-test", - "children": { - "DefaultTest": { - "id": "DefaultTest", - "path": "test-efs-integ-test/DefaultTest", - "children": { - "Default": { - "id": "Default", - "path": "test-efs-integ-test/DefaultTest/Default", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.4.2" - } - }, - "DeployAssert": { - "id": "DeployAssert", - "path": "test-efs-integ-test/DefaultTest/DeployAssert", - "children": { - "BootstrapVersion": { - "id": "BootstrapVersion", - "path": "test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" - } - }, - "CheckBootstrapVersion": { - "id": "CheckBootstrapVersion", - "path": "test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", - "version": "0.0.0" - } - }, - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.4.2" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.App", - "version": "0.0.0" - } - } -} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-transition-integ":{"id":"test-efs-transition-integ","path":"test-efs-transition-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-transition-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-transition-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-transition-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-transition-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-transition-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-transition-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-transition-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-transition-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-transition-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-transition-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"lifecyclePolicies":[{"transitionToIa":"AFTER_14_DAYS"},{"transitionToPrimaryStorageClass":"AFTER_1_ACCESS"},{"transitionToArchive":"AFTER_90_DAYS"}],"fileSystemTags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"throughputMode":"elastic"}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-transition-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-transition-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/cdk.out index bd5311dc372de..523a9aac37cbf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"36.0.5"} \ No newline at end of file +{"version":"48.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/integ.json index 8ed7e1cb009cd..a59f6d22ee81a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "36.0.5", + "version": "48.0.0", "testCases": { "test-efs-integ-test/DefaultTest": { "stacks": [ @@ -8,5 +8,6 @@ "assertionStack": "test-efs-integ-test/DefaultTest/DeployAssert", "assertionStackName": "testefsintegtestDefaultTestDeployAssert7E1529D5" } - } + }, + "minimumCliVersion": "2.1027.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json index c6dbaf807913c..5e94a6b7b651a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "36.0.5", + "version": "48.0.0", "artifacts": { "test-efs-integ.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}/f38d63f13d470d5b3ddbf40c819538dea6aefd66655c0fdbfc1d5bc3edf24d17.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -34,12 +34,36 @@ "test-efs-integ.assets" ], "metadata": { + "/test-efs-integ/Vpc": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], "/test-efs-integ/Vpc/Resource": [ { "type": "aws:cdk:logicalId", "data": "Vpc8378EB38" } ], + "/test-efs-integ/Vpc/PublicSubnet1": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], "/test-efs-integ/Vpc/PublicSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", @@ -76,6 +100,20 @@ "data": "VpcPublicSubnet1NATGateway4D7517AA" } ], + "/test-efs-integ/Vpc/PublicSubnet2": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], "/test-efs-integ/Vpc/PublicSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", @@ -100,6 +138,20 @@ "data": "VpcPublicSubnet2DefaultRoute97F91067" } ], + "/test-efs-integ/Vpc/PrivateSubnet1": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], "/test-efs-integ/Vpc/PrivateSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", @@ -124,6 +176,20 @@ "data": "VpcPrivateSubnet1DefaultRouteBE02A9ED" } ], + "/test-efs-integ/Vpc/PrivateSubnet2": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], "/test-efs-integ/Vpc/PrivateSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", @@ -160,12 +226,28 @@ "data": "VpcVPCGWBF912B6E" } ], + "/test-efs-integ/FileSystem": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], "/test-efs-integ/FileSystem/Resource": [ { "type": "aws:cdk:logicalId", "data": "FileSystem8A8E25C0" } ], + "/test-efs-integ/FileSystem/EfsSecurityGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], "/test-efs-integ/FileSystem/EfsSecurityGroup/Resource": [ { "type": "aws:cdk:logicalId", @@ -184,13 +266,16 @@ "data": "FileSystemEfsMountTargetPrivateSubnet265F3ED67" } ], + "/test-efs-integ/FileSystem/AccessPoint": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], "/test-efs-integ/FileSystem/AccessPoint/Resource": [ { "type": "aws:cdk:logicalId", - "data": "FileSystemAccessPointF8178182", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" - ] + "data": "FileSystemAccessPointF8178182" } ], "/test-efs-integ/BootstrapVersion": [ @@ -261,6 +346,502 @@ "properties": { "file": "tree.json" } + }, + "aws-cdk-lib/feature-flag-report": { + "type": "cdk:feature-flag-report", + "properties": { + "module": "aws-cdk-lib", + "flags": { + "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, + "recommendedValue": true, + "explanation": "Pass signingProfileName to CfnSigningProfile" + }, + "@aws-cdk/core:newStyleStackSynthesis": { + "recommendedValue": true, + "explanation": "Switch to new stack synthesis method which enables CI/CD", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:stackRelativeExports": { + "recommendedValue": true, + "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, + "recommendedValue": true, + "explanation": "Disable implicit openListener when custom security groups are provided" + }, + "@aws-cdk/aws-rds:lowercaseDbIdentifier": { + "recommendedValue": true, + "explanation": "Force lowercasing of RDS Cluster names in CDK", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": { + "recommendedValue": true, + "explanation": "Allow adding/removing multiple UsagePlanKeys independently", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeVersionProps": { + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeLayerVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`." + }, + "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": { + "recommendedValue": true, + "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:checkSecretUsage": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations" + }, + "@aws-cdk/core:target-partitions": { + "recommendedValue": [ + "aws", + "aws-cn" + ], + "explanation": "What regions to include in lookup tables of environment agnostic stacks" + }, + "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": { + "userValue": true, + "recommendedValue": true, + "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified" + }, + "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names." + }, + "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": { + "userValue": true, + "recommendedValue": true, + "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID." + }, + "@aws-cdk/aws-iam:minimizePolicies": { + "userValue": true, + "recommendedValue": true, + "explanation": "Minimize IAM policies by combining Statements" + }, + "@aws-cdk/core:validateSnapshotRemovalPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Error on snapshot removal policies on resources that do not support it." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate key aliases that include the stack name" + }, + "@aws-cdk/aws-s3:createDefaultLoggingPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist." + }, + "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict KMS key policy for encrypted Queues a bit more" + }, + "@aws-cdk/aws-apigateway:disableCloudWatchRole": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment" + }, + "@aws-cdk/core:enablePartitionLiterals": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make ARNs concrete if AWS partition is known" + }, + "@aws-cdk/aws-events:eventsTargetQueueSameAccount": { + "userValue": true, + "recommendedValue": true, + "explanation": "Event Rules may only push to encrypted SQS queues in the same account" + }, + "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": { + "userValue": true, + "recommendedValue": true, + "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker" + }, + "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." + }, + "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging" + }, + "@aws-cdk/aws-route53-patters:useCertificate": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`" + }, + "@aws-cdk/customresources:installLatestAwsSdkDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "Whether to install the latest SDK by default in AwsCustomResource" + }, + "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use unique resource name for Database Proxy" + }, + "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Remove CloudWatch alarms from deployment group" + }, + "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID." + }, + "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": { + "userValue": true, + "recommendedValue": true, + "explanation": "Define user data for a launch template by default when a machine image is provided." + }, + "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": { + "userValue": true, + "recommendedValue": true, + "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret." + }, + "@aws-cdk/aws-redshift:columnId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Whether to use an ID to track Redshift column changes" + }, + "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies" + }, + "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict access to the VPC default security group" + }, + "@aws-cdk/aws-apigateway:requestValidatorUniqueId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a unique id for each RequestValidator added to a method" + }, + "@aws-cdk/aws-kms:aliasNameRef": { + "userValue": true, + "recommendedValue": true, + "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key" + }, + "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition" + }, + "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a launch template when creating an AutoScalingGroup" + }, + "@aws-cdk/core:includePrefixInUniqueNameGeneration": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include the stack prefix in the stack name generation process" + }, + "@aws-cdk/aws-efs:denyAnonymousAccess": { + "userValue": true, + "recommendedValue": true, + "explanation": "EFS denies anonymous clients accesses" + }, + "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains" + }, + "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default" + }, + "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet." + }, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change." + }, + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id." + }, + "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials." + }, + "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'." + }, + "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false." + }, + "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default pipeline type to V2." + }, + "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only." + }, + "@aws-cdk/pipelines:reduceAssetRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-eks:nodegroupNameAttribute": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix." + }, + "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default volume type of the EBS volume will be GP3" + }, + "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, remove default deployment alarm settings" + }, + "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default" + }, + "@aws-cdk/aws-s3:keepNotificationInImportedBucket": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack." + }, + "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": { + "recommendedValue": true, + "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:explicitStackTags": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack." + }, + "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature": { + "userValue": false, + "recommendedValue": false, + "explanation": "When set to true along with canContainersAccessInstanceRole=false in ECS cluster, new updated commands will be added to UserData to block container accessing IMDS. **Applicable to Linux only. IMPORTANT: See [details.](#aws-cdkaws-ecsenableImdsBlockingDeprecatedFeature)**" + }, + "@aws-cdk/aws-ecs:disableEcsImdsBlocking": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, CDK synth will throw exception if canContainersAccessInstanceRole is false. **IMPORTANT: See [details.](#aws-cdkaws-ecsdisableEcsImdsBlocking)**" + }, + "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration" + }, + "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas" + }, + "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together." + }, + "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn." + }, + "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`" + }, + "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values." + }, + "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications." + }, + "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN." + }, + "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2." + }, + "@aws-cdk/core:aspectStabilization": { + "recommendedValue": true, + "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource." + }, + "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere" + }, + "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections" + }, + "@aws-cdk/core:enableAdditionalMetadataCollection": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues." + }, + "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": { + "userValue": false, + "recommendedValue": false, + "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement" + }, + "@aws-cdk/aws-s3:setUniqueReplicationRoleName": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication." + }, + "@aws-cdk/pipelines:reduceStageRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from Stage addActions trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-events:requireEventBusPolicySid": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals." + }, + "@aws-cdk/core:aspectPrioritiesMutating": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING." + }, + "@aws-cdk/aws-dynamodb:retainTableReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise." + }, + "@aws-cdk/cognito:logUserPoolClientSecretValue": { + "recommendedValue": false, + "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs." + }, + "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": { + "recommendedValue": true, + "explanation": "When enabled, scopes down the trust policy for the cross-account action role", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter" + }, + "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": { + "userValue": true, + "recommendedValue": true, + "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions." + }, + "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC." + }, + "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": { + "recommendedValue": false, + "explanation": "When enabled, use resource IDs for VPC V2 migration" + }, + "@aws-cdk/aws-s3:publicAccessBlockedByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined." + }, + "@aws-cdk/aws-lambda:useCdkManagedLogGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" + } + } + } } - } + }, + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json index fc5074dea778b..5d82bfa6f088a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json @@ -1,15 +1,16 @@ { - "version": "36.0.5", + "version": "48.0.0", "files": { - "f38d63f13d470d5b3ddbf40c819538dea6aefd66655c0fdbfc1d5bc3edf24d17": { + "06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874": { + "displayName": "test-efs-integ Template", "source": { "path": "test-efs-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-c71b3307": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "f38d63f13d470d5b3ddbf40c819538dea6aefd66655c0fdbfc1d5bc3edf24d17.json", + "objectKey": "06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874.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-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json index 4e6af142e86ce..424af2fe258ee 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json @@ -363,6 +363,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -373,7 +374,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json index 32c92a250f37d..1a08bd7ba3981 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/testefsintegtestDefaultTestDeployAssert7E1529D5.assets.json @@ -1,13 +1,14 @@ { - "version": "36.0.5", + "version": "48.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "displayName": "testefsintegtestDefaultTestDeployAssert7E1529D5 Template", "source": { "path": "testefsintegtestDefaultTestDeployAssert7E1529D5.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region": { + "current_account-current_region-d8d86b35": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.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-efs/test/integ.efs.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json index a690d5ea9de34..7844f8ce4b1ab 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json @@ -1,885 +1 @@ -{ - "version": "tree-0.1", - "tree": { - "id": "App", - "path": "", - "children": { - "test-efs-integ": { - "id": "test-efs-integ", - "path": "test-efs-integ", - "children": { - "Vpc": { - "id": "Vpc", - "path": "test-efs-integ/Vpc", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-integ/Vpc/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::VPC", - "aws:cdk:cloudformation:props": { - "cidrBlock": "10.0.0.0/16", - "enableDnsHostnames": true, - "enableDnsSupport": true, - "instanceTenancy": "default", - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", - "version": "0.0.0" - } - }, - "PublicSubnet1": { - "id": "PublicSubnet1", - "path": "test-efs-integ/Vpc/PublicSubnet1", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-integ/Vpc/PublicSubnet1/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-integ/Vpc/PublicSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-integ/Vpc/PublicSubnet1/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-integ/Vpc/PublicSubnet1/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PublicSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - }, - "subnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-integ/Vpc/PublicSubnet1/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "gatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "routeTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - }, - "EIP": { - "id": "EIP", - "path": "test-efs-integ/Vpc/PublicSubnet1/EIP", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::EIP", - "aws:cdk:cloudformation:props": { - "domain": "vpc", - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PublicSubnet1" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", - "version": "0.0.0" - } - }, - "NATGateway": { - "id": "NATGateway", - "path": "test-efs-integ/Vpc/PublicSubnet1/NATGateway", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", - "aws:cdk:cloudformation:props": { - "allocationId": { - "Fn::GetAtt": [ - "VpcPublicSubnet1EIPD7E02669", - "AllocationId" - ] - }, - "subnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - }, - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PublicSubnet1" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", - "version": "0.0.0" - } - }, - "PublicSubnet2": { - "id": "PublicSubnet2", - "path": "test-efs-integ/Vpc/PublicSubnet2", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-integ/Vpc/PublicSubnet2/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-integ/Vpc/PublicSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-integ/Vpc/PublicSubnet2/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-integ/Vpc/PublicSubnet2/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PublicSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - }, - "subnetId": { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-integ/Vpc/PublicSubnet2/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "gatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "routeTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", - "version": "0.0.0" - } - }, - "PrivateSubnet1": { - "id": "PrivateSubnet1", - "path": "test-efs-integ/Vpc/PrivateSubnet1", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-integ/Vpc/PrivateSubnet1/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-integ/Vpc/PrivateSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-integ/Vpc/PrivateSubnet1/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-integ/Vpc/PrivateSubnet1/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PrivateSubnet1" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - }, - "subnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "natGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" - }, - "routeTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", - "version": "0.0.0" - } - }, - "PrivateSubnet2": { - "id": "PrivateSubnet2", - "path": "test-efs-integ/Vpc/PrivateSubnet2", - "children": { - "Subnet": { - "id": "Subnet", - "path": "test-efs-integ/Vpc/PrivateSubnet2/Subnet", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", - "aws:cdk:cloudformation:props": { - "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": "test-efs-integ/Vpc/PrivateSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", - "version": "0.0.0" - } - }, - "Acl": { - "id": "Acl", - "path": "test-efs-integ/Vpc/PrivateSubnet2/Acl", - "constructInfo": { - "fqn": "aws-cdk-lib.Resource", - "version": "0.0.0" - } - }, - "RouteTable": { - "id": "RouteTable", - "path": "test-efs-integ/Vpc/PrivateSubnet2/RouteTable", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc/PrivateSubnet2" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", - "version": "0.0.0" - } - }, - "RouteTableAssociation": { - "id": "RouteTableAssociation", - "path": "test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", - "aws:cdk:cloudformation:props": { - "routeTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - }, - "subnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", - "version": "0.0.0" - } - }, - "DefaultRoute": { - "id": "DefaultRoute", - "path": "test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::Route", - "aws:cdk:cloudformation:props": { - "destinationCidrBlock": "0.0.0.0/0", - "natGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" - }, - "routeTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", - "version": "0.0.0" - } - }, - "IGW": { - "id": "IGW", - "path": "test-efs-integ/Vpc/IGW", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", - "aws:cdk:cloudformation:props": { - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/Vpc" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", - "version": "0.0.0" - } - }, - "VPCGW": { - "id": "VPCGW", - "path": "test-efs-integ/Vpc/VPCGW", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", - "aws:cdk:cloudformation:props": { - "internetGatewayId": { - "Ref": "VpcIGWD7BA715C" - }, - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.Vpc", - "version": "0.0.0" - } - }, - "FileSystem": { - "id": "FileSystem", - "path": "test-efs-integ/FileSystem", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-integ/FileSystem/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::FileSystem", - "aws:cdk:cloudformation:props": { - "encrypted": true, - "fileSystemPolicy": { - "Statement": [ - { - "Action": [ - "elasticfilesystem:ClientRootAccess", - "elasticfilesystem:ClientWrite" - ], - "Condition": { - "Bool": { - "elasticfilesystem:AccessedViaMountTarget": "true" - } - }, - "Effect": "Allow", - "Principal": { - "AWS": "*" - } - } - ], - "Version": "2012-10-17" - }, - "fileSystemTags": [ - { - "key": "Name", - "value": "test-efs-integ/FileSystem" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnFileSystem", - "version": "0.0.0" - } - }, - "EfsSecurityGroup": { - "id": "EfsSecurityGroup", - "path": "test-efs-integ/FileSystem/EfsSecurityGroup", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-integ/FileSystem/EfsSecurityGroup/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", - "aws:cdk:cloudformation:props": { - "groupDescription": "test-efs-integ/FileSystem/EfsSecurityGroup", - "securityGroupEgress": [ - { - "cidrIp": "0.0.0.0/0", - "description": "Allow all outbound traffic by default", - "ipProtocol": "-1" - } - ], - "tags": [ - { - "key": "Name", - "value": "test-efs-integ/FileSystem" - } - ], - "vpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", - "version": "0.0.0" - } - }, - "EfsMountTarget-PrivateSubnet1": { - "id": "EfsMountTarget-PrivateSubnet1", - "path": "test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::MountTarget", - "aws:cdk:cloudformation:props": { - "fileSystemId": { - "Ref": "FileSystem8A8E25C0" - }, - "securityGroups": [ - { - "Fn::GetAtt": [ - "FileSystemEfsSecurityGroup212D3ACB", - "GroupId" - ] - } - ], - "subnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnMountTarget", - "version": "0.0.0" - } - }, - "EfsMountTarget-PrivateSubnet2": { - "id": "EfsMountTarget-PrivateSubnet2", - "path": "test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::MountTarget", - "aws:cdk:cloudformation:props": { - "fileSystemId": { - "Ref": "FileSystem8A8E25C0" - }, - "securityGroups": [ - { - "Fn::GetAtt": [ - "FileSystemEfsSecurityGroup212D3ACB", - "GroupId" - ] - } - ], - "subnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnMountTarget", - "version": "0.0.0" - } - }, - "AccessPoint": { - "id": "AccessPoint", - "path": "test-efs-integ/FileSystem/AccessPoint", - "children": { - "Resource": { - "id": "Resource", - "path": "test-efs-integ/FileSystem/AccessPoint/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::EFS::AccessPoint", - "aws:cdk:cloudformation:props": { - "clientToken": "client-token", - "fileSystemId": { - "Ref": "FileSystem8A8E25C0" - }, - "posixUser": { - "uid": "1000", - "gid": "1000" - }, - "rootDirectory": { - "creationInfo": { - "ownerGid": "1000", - "ownerUid": "1000", - "permissions": "755" - }, - "path": "/custom-path" - }, - "accessPointTags": [ - { - "key": "Name", - "value": "test-efs-integ/FileSystem/AccessPoint" - } - ] - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.CfnAccessPoint", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.AccessPoint", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.aws_efs.FileSystem", - "version": "0.0.0" - } - }, - "BootstrapVersion": { - "id": "BootstrapVersion", - "path": "test-efs-integ/BootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" - } - }, - "CheckBootstrapVersion": { - "id": "CheckBootstrapVersion", - "path": "test-efs-integ/CheckBootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" - } - }, - "test-efs-integ-test": { - "id": "test-efs-integ-test", - "path": "test-efs-integ-test", - "children": { - "DefaultTest": { - "id": "DefaultTest", - "path": "test-efs-integ-test/DefaultTest", - "children": { - "Default": { - "id": "Default", - "path": "test-efs-integ-test/DefaultTest/Default", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.3.0" - } - }, - "DeployAssert": { - "id": "DeployAssert", - "path": "test-efs-integ-test/DefaultTest/DeployAssert", - "children": { - "BootstrapVersion": { - "id": "BootstrapVersion", - "path": "test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnParameter", - "version": "0.0.0" - } - }, - "CheckBootstrapVersion": { - "id": "CheckBootstrapVersion", - "path": "test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion", - "constructInfo": { - "fqn": "aws-cdk-lib.CfnRule", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.Stack", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", - "version": "0.0.0" - } - }, - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.3.0" - } - } - }, - "constructInfo": { - "fqn": "aws-cdk-lib.App", - "version": "0.0.0" - } - } -} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"clientToken":"client-token","fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/custom-path"},"accessPointTags":[{"key":"Name","value":"test-efs-integ/FileSystem/AccessPoint"}]}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json index 2c1e1d24f7641..9c81c0d69bb29 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json @@ -1,29 +1,29 @@ { "version": "48.0.0", "files": { - "4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276": { + "ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515": { "source": { - "path": "asset.4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.bundle", + "path": "asset.ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.bundle", "packaging": "zip" }, "destinations": { - "current_account-current_region-26dc760b": { + "current_account-current_region-1c53d0df": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.zip", + "objectKey": "ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.zip", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "cc5b1ca406f6e4d7bdecd9ecc44bbeadbfa5f180cab833c9f16c9433bdd7eb93": { + "7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e": { "displayName": "EfsPermissionTestDefaultTestDeployAssert4DFC2F97 Template", "source": { "path": "EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-d3d573fb": { + "current_account-current_region-433d30f2": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "cc5b1ca406f6e4d7bdecd9ecc44bbeadbfa5f180cab833c9f16c9433bdd7eb93.json", + "objectKey": "7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e.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-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json index 607a1c2a1e4e5..c04b0b3d733a7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json @@ -1,7 +1,7 @@ { "Resources": { - "AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d": { - "Type": "Custom::DeployAssert@SdkCallSSMsendCommand", + "LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c": { + "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { "ServiceToken": { "Fn::GetAtt": [ @@ -9,44 +9,44 @@ "Arn" ] }, - "service": "SSM", - "api": "sendCommand", + "service": "Lambda", + "api": "invoke", + "expected": "{\"$ObjectLike\":{\"Payload\":{\"result\":\"{\\\"$StringLike\\\":\\\".*Write successful.*\\\"}\"}}}", "parameters": { - "InstanceIds": { + "FunctionName": { "Fn::Join": [ "", [ - "[\"", - { - "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefAnonymousInstance51D4C7152602e043eee6300d7C50D25E" - }, - "\"]" - ] - ] - }, - "DocumentName": "\"AWS-RunShellScript\"", - "Parameters": { - "Fn::Join": [ - "", - [ - "{\"commands\":[\"mount -t efs -o tls,iam ", + "\"", { - "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefFileSystem8A8E25C0B454ACF3" + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefWriteLambda0E72B4A42765E7AF" }, - " /mnt/efs\"]}" + "\"" ] ] } }, - "flattenResponse": "true", - "outputPaths": [ - "Command.CommandId" - ], - "salt": "1759420852517" + "flattenResponse": "false", + "salt": "1764856235178" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, + "LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2cInvoke7150CDEA": { + "Type": "AWS::Lambda::Permission", + "Properties": { + "Action": "lambda:InvokeFunction", + "FunctionName": { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefWriteLambda0E72B4A42765E7AF" + }, + "Principal": { + "Fn::GetAtt": [ + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", + "Arn" + ] + } + } + }, "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": { "Type": "AWS::IAM::Role", "Properties": { @@ -75,7 +75,7 @@ "Statement": [ { "Action": [ - "ssm:SendCommand" + "lambda:Invoke" ], "Effect": "Allow", "Resource": [ @@ -84,16 +84,38 @@ }, { "Action": [ - "ssm:GetCommandInvocation" + "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": [ - "*" + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":function:", + { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefWriteLambda0E72B4A42765E7AF" + } + ] + ] + } ] }, { "Action": [ - "states:StartExecution" + "lambda:Invoke" ], "Effect": "Allow", "Resource": [ @@ -102,16 +124,38 @@ }, { "Action": [ - "ssm:SendCommand" + "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": [ - "*" + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":function:", + { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" + } + ] + ] + } ] }, { "Action": [ - "ssm:GetCommandInvocation" + "lambda:Invoke" ], "Effect": "Allow", "Resource": [ @@ -120,12 +164,74 @@ }, { "Action": [ - "states:StartExecution" + "lambda:InvokeFunction" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":function:", + { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" + } + ] + ] + } + ] + }, + { + "Action": [ + "lambda:Invoke" ], "Effect": "Allow", "Resource": [ "*" ] + }, + { + "Action": [ + "lambda:InvokeFunction" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":function:", + { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7" + } + ] + ] + } + ] } ] } @@ -141,7 +247,7 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.zip" + "S3Key": "ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.zip" }, "Timeout": 120, "Handler": "index.handler", @@ -153,8 +259,8 @@ } } }, - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef": { - "Type": "Custom::DeployAssert@SdkCallSSMgetCommandInvocation", + "LambdaInvoke60d18b84c11c66e9414556fc35df6d38": { + "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { "ServiceToken": { "Fn::GetAtt": [ @@ -162,278 +268,47 @@ "Arn" ] }, - "service": "SSM", - "api": "getCommandInvocation", - "expected": "{\"$ObjectLike\":{\"StandardErrorContent\":\"b'mount.nfs4: access denied by server while mounting 127.0.0.1:/'\\nfailed to run commands: exit status 32\",\"Status\":\"Failed\"}}", - "stateMachineArn": { - "Ref": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitFor25410491" - }, + "service": "Lambda", + "api": "invoke", + "expected": "{\"$ObjectLike\":{\"Payload\":{\"result\":\"{\\\"$StringLike\\\":\\\".*Content: Integ Test.*\\\"}\"}}}", "parameters": { - "CommandId": { + "FunctionName": { "Fn::Join": [ "", [ "\"", { - "Fn::GetAtt": [ - "AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d", - "apiCallResponse.Command.CommandId" - ] + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" }, "\"" ] ] }, - "InstanceId": { - "Fn::Join": [ - "", - [ - "\"", - { - "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefAnonymousInstance51D4C7152602e043eee6300d7C50D25E" - }, - "\"" - ] - ] - } + "Payload": "\"{\\\"action\\\":\\\"read\\\"}\"" }, "flattenResponse": "false", - "salt": "1759420852518" + "salt": "1764856235179" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForIsCompleteProviderInvoke0E3B9656": { + "LambdaInvoke60d18b84c11c66e9414556fc35df6d38Invoke3518074E": { "Type": "AWS::Lambda::Permission", "Properties": { "Action": "lambda:InvokeFunction", "FunctionName": { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" }, "Principal": { "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9", - "Arn" - ] - } - } - }, - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForTimeoutProviderInvokeB2FF1355": { - "Type": "AWS::Lambda::Permission", - "Properties": { - "Action": "lambda:InvokeFunction", - "FunctionName": { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - }, - "Principal": { - "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9", - "Arn" - ] - } - } - }, - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "states.amazonaws.com" - } - } - ] - }, - "Policies": [ - { - "PolicyName": "InlineInvokeFunctions", - "PolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "lambda:InvokeFunction", - "Effect": "Allow", - "Resource": [ - { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] - }, - { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - } - ] - } - ] - } - } - ] - } - }, - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitFor25410491": { - "Type": "AWS::StepFunctions::StateMachine", - "Properties": { - "DefinitionString": { - "Fn::Join": [ - "", - [ - "{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":5,\"MaxAttempts\":36,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"", - { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] - }, - "\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"", - { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - }, - "\"}}}" - ] - ] - }, - "RoleArn": { - "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9", - "Arn" - ] - } - }, - "DependsOn": [ - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9" - ] - }, - "SingletonFunction76b3e830a873425f8453eddd85c86925Role918961BB": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } - } - ] - }, - "ManagedPolicyArns": [ - { - "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - } - ], - "Policies": [ - { - "PolicyName": "Inline", - "PolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": [ - "ssm:GetCommandInvocation" - ], - "Effect": "Allow", - "Resource": [ - "*" - ] - }, - { - "Action": [ - "ssm:GetCommandInvocation" - ], - "Effect": "Allow", - "Resource": [ - "*" - ] - } - ] - } - } - ] - } - }, - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE": { - "Type": "AWS::Lambda::Function", - "Properties": { - "Runtime": "nodejs22.x", - "Code": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.zip" - }, - "Timeout": 120, - "Handler": "index.isComplete", - "Role": { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Role918961BB", - "Arn" - ] - } - } - }, - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aRoleB84BD8CE": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } - } - ] - }, - "ManagedPolicyArns": [ - { - "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - } - ] - } - }, - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA": { - "Type": "AWS::Lambda::Function", - "Properties": { - "Runtime": "nodejs22.x", - "Code": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.zip" - }, - "Timeout": 120, - "Handler": "index.onTimeout", - "Role": { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aRoleB84BD8CE", + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", "Arn" ] } } }, - "AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f": { - "Type": "Custom::DeployAssert@SdkCallSSMsendCommand", + "LambdaInvokefdb04e42910c7dcf6256870d54fe4a59": { + "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { "ServiceToken": { "Fn::GetAtt": [ @@ -441,35 +316,47 @@ "Arn" ] }, - "service": "SSM", - "api": "sendCommand", + "service": "Lambda", + "api": "invoke", + "expected": "{\"$ObjectLike\":{\"Payload\":{\"result\":\"{\\\"$StringLike\\\":\\\".*Permission denied.*\\\"}\"}}}", "parameters": { - "InstanceIds": { + "FunctionName": { "Fn::Join": [ "", [ - "[\"", + "\"", { - "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadInstanceE94183C76867391ec2104698F9816D55" + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" }, - "\"]" + "\"" ] ] }, - "DocumentName": "\"AWS-RunShellScript\"", - "Parameters": "{\"commands\":[\"cat /mnt/efs/integ-test.txt\"]}" + "Payload": "\"{\\\"action\\\":\\\"write\\\"}\"" }, - "flattenResponse": "true", - "outputPaths": [ - "Command.CommandId" - ], - "salt": "1759420852521" + "flattenResponse": "false", + "salt": "1764856235179" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2": { - "Type": "Custom::DeployAssert@SdkCallSSMgetCommandInvocation", + "LambdaInvokefdb04e42910c7dcf6256870d54fe4a59InvokeACED3029": { + "Type": "AWS::Lambda::Permission", + "Properties": { + "Action": "lambda:InvokeFunction", + "FunctionName": { + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" + }, + "Principal": { + "Fn::GetAtt": [ + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", + "Arn" + ] + } + } + }, + "LambdaInvoke069b5aed588f50b50dfb3fae8f2be816": { + "Type": "Custom::DeployAssert@SdkCallLambdainvoke", "Properties": { "ServiceToken": { "Fn::GetAtt": [ @@ -477,35 +364,17 @@ "Arn" ] }, - "service": "SSM", - "api": "getCommandInvocation", - "expected": "{\"$ObjectLike\":{\"StandardOutputContent\":\"Integ Test\\n\",\"Status\":\"Success\"}}", - "stateMachineArn": { - "Ref": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForBC48DF7E" - }, + "service": "Lambda", + "api": "invoke", + "expected": "{\"$ObjectLike\":{\"Payload\":{\"result\":\"{\\\"$StringLike\\\":\\\".*Error.*\\\"}\"}}}", "parameters": { - "CommandId": { + "FunctionName": { "Fn::Join": [ "", [ "\"", { - "Fn::GetAtt": [ - "AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f", - "apiCallResponse.Command.CommandId" - ] - }, - "\"" - ] - ] - }, - "InstanceId": { - "Fn::Join": [ - "", - [ - "\"", - { - "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefReadInstanceE94183C76867391ec2104698F9816D55" + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7" }, "\"" ] @@ -513,142 +382,56 @@ } }, "flattenResponse": "false", - "salt": "1759420852521" + "salt": "1764856235179" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" }, - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForIsCompleteProviderInvoke0043BB8D": { + "LambdaInvoke069b5aed588f50b50dfb3fae8f2be816InvokeA9153515": { "Type": "AWS::Lambda::Permission", "Properties": { "Action": "lambda:InvokeFunction", "FunctionName": { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] + "Fn::ImportValue": "test-efs-permission-integ:ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7" }, "Principal": { "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364", + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", "Arn" ] } } - }, - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForTimeoutProviderInvokeABA3643B": { - "Type": "AWS::Lambda::Permission", - "Properties": { - "Action": "lambda:InvokeFunction", - "FunctionName": { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - }, - "Principal": { - "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364", - "Arn" - ] - } + } + }, + "Outputs": { + "AssertionResultsLambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c": { + "Value": { + "Fn::GetAtt": [ + "LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c", + "assertion" + ] } }, - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "states.amazonaws.com" - } - } - ] - }, - "Policies": [ - { - "PolicyName": "InlineInvokeFunctions", - "PolicyDocument": { - "Version": "2012-10-17", - "Statement": [ - { - "Action": "lambda:InvokeFunction", - "Effect": "Allow", - "Resource": [ - { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] - }, - { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - } - ] - } - ] - } - } + "AssertionResultsLambdaInvoke60d18b84c11c66e9414556fc35df6d38": { + "Value": { + "Fn::GetAtt": [ + "LambdaInvoke60d18b84c11c66e9414556fc35df6d38", + "assertion" ] } }, - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForBC48DF7E": { - "Type": "AWS::StepFunctions::StateMachine", - "Properties": { - "DefinitionString": { - "Fn::Join": [ - "", - [ - "{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":5,\"MaxAttempts\":36,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"", - { - "Fn::GetAtt": [ - "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE", - "Arn" - ] - }, - "\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"", - { - "Fn::GetAtt": [ - "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA", - "Arn" - ] - }, - "\"}}}" - ] - ] - }, - "RoleArn": { - "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364", - "Arn" - ] - } - }, - "DependsOn": [ - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364" - ] - } - }, - "Outputs": { - "AssertionResultsAwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef": { + "AssertionResultsLambdaInvokefdb04e42910c7dcf6256870d54fe4a59": { "Value": { "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef", + "LambdaInvokefdb04e42910c7dcf6256870d54fe4a59", "assertion" ] } }, - "AssertionResultsAwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2": { + "AssertionResultsLambdaInvoke069b5aed588f50b50dfb3fae8f2be816": { "Value": { "Fn::GetAtt": [ - "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2", + "LambdaInvoke069b5aed588f50b50dfb3fae8f2be816", "assertion" ] } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.bundle/index.js similarity index 96% rename from packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.bundle/index.js rename to packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.bundle/index.js index f9b2ff374dee1..2ed47ba2ab00a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.4e818c462cf84c112f84262d376efd099d66da03f7a2aabae64c50c0511de276.bundle/index.js +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/asset.ca235e6258b11c240506ff06f79037eca461b8d0d9464a947a386d38d8163515.bundle/index.js @@ -1,3 +1,4 @@ +"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; @@ -63,14 +64,18 @@ var init_matcher = __esm({ } }; MatchResult = class { + /** + * The target for which this result was generated. + */ + target; + failuresHere = /* @__PURE__ */ new Map(); + captures = /* @__PURE__ */ new Map(); + finalized = false; + innerMatchFailures = /* @__PURE__ */ new Map(); + _hasFailed = false; + _failCount = 0; + _cost = 0; constructor(target) { - this.failuresHere = /* @__PURE__ */ new Map(); - this.captures = /* @__PURE__ */ new Map(); - this.finalized = false; - this.innerMatchFailures = /* @__PURE__ */ new Map(); - this._hasFailed = false; - this._failCount = 0; - this._cost = 0; this.target = target; } /** @@ -403,9 +408,7 @@ var init_sparse_matrix = __esm({ "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() { "use strict"; SparseMatrix = class { - constructor() { - this.matrix = /* @__PURE__ */ new Map(); - } + matrix = /* @__PURE__ */ new Map(); get(row, col) { return this.matrix.get(row)?.get(col); } @@ -532,6 +535,7 @@ var init_match = __esm({ throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply."); } } + partialObjects; test(actual) { if (Array.isArray(this.pattern)) { return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual); @@ -566,6 +570,8 @@ var init_match = __esm({ this.subsequence = options.subsequence ?? true; this.partialObjects = options.partialObjects ?? false; } + subsequence; + partialObjects; test(actual) { if (!Array.isArray(actual)) { return new MatchResult(actual).recordFailure({ @@ -666,6 +672,7 @@ var init_match = __esm({ this.pattern = pattern; this.partial = options.partial ?? true; } + partial; test(actual) { if (typeof actual !== "object" || Array.isArray(actual)) { return new MatchResult(actual).recordFailure({ @@ -5442,9 +5449,9 @@ var require_dist_cjs24 = __commonJS({ } }); -// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +// ../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js var require_getHomeDir = __commonJS({ - "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getHomeDir = void 0; @@ -5474,9 +5481,9 @@ var require_getHomeDir = __commonJS({ } }); -// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +// ../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js var require_getSSOTokenFilepath = __commonJS({ - "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getSSOTokenFilepath = void 0; @@ -5492,9 +5499,9 @@ var require_getSSOTokenFilepath = __commonJS({ } }); -// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +// ../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js var require_getSSOTokenFromFile = __commonJS({ - "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getSSOTokenFromFile = void 0; @@ -5510,9 +5517,9 @@ var require_getSSOTokenFromFile = __commonJS({ } }); -// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +// ../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js var require_slurpFile = __commonJS({ - "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.slurpFile = void 0; @@ -5529,9 +5536,9 @@ var require_slurpFile = __commonJS({ } }); -// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +// ../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js var require_dist_cjs25 = __commonJS({ - "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + "../../../node_modules/@smithy/node-config-provider/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; var __getOwnPropNames2 = Object.getOwnPropertyNames; @@ -5780,13 +5787,265 @@ var require_dist_cjs26 = __commonJS({ } }); +// ../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir2 = __commonJS({ + "../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath2 = __commonJS({ + "../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir2(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile2 = __commonJS({ + "../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath2(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile2 = __commonJS({ + "../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs27 = __commonJS({ + "../../../node_modules/@smithy/middleware-endpoint/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir2(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath2(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile2(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir2(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir2(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir2(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile2(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile2(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); + } +}); + // ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js var require_getEndpointUrlConfig = __commonJS({ "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getEndpointUrlConfig = void 0; - var shared_ini_file_loader_1 = require_dist_cjs25(); + var shared_ini_file_loader_1 = require_dist_cjs27(); var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL"; var CONFIG_ENDPOINT_URL = "endpoint_url"; var getEndpointUrlConfig = (serviceId) => ({ @@ -5835,7 +6094,7 @@ var require_getEndpointFromConfig = __commonJS({ }); // ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js -var require_dist_cjs27 = __commonJS({ +var require_dist_cjs28 = __commonJS({ "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -5886,7 +6145,7 @@ var require_dist_cjs27 = __commonJS({ }); // ../../../node_modules/@smithy/url-parser/dist-cjs/index.js -var require_dist_cjs28 = __commonJS({ +var require_dist_cjs29 = __commonJS({ "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -5911,7 +6170,7 @@ var require_dist_cjs28 = __commonJS({ parseUrl: () => parseUrl }); module2.exports = __toCommonJS2(src_exports); - var import_querystring_parser = require_dist_cjs27(); + var import_querystring_parser = require_dist_cjs28(); var parseUrl = /* @__PURE__ */ __name((url2) => { if (typeof url2 === "string") { return parseUrl(new URL(url2)); @@ -5933,7 +6192,7 @@ var require_dist_cjs28 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js -var require_dist_cjs29 = __commonJS({ +var require_dist_cjs30 = __commonJS({ "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6035,7 +6294,7 @@ var require_dist_cjs29 = __commonJS({ return configProvider; }, "createConfigValueProvider"); var import_getEndpointFromConfig = require_getEndpointFromConfig(); - var import_url_parser = require_dist_cjs28(); + var import_url_parser = require_dist_cjs29(); var toEndpointV1 = /* @__PURE__ */ __name((endpoint) => { if (typeof endpoint === "object") { if ("url" in endpoint) { @@ -6542,7 +6801,7 @@ var init_esm_node = __esm({ }); // ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js -var require_dist_cjs30 = __commonJS({ +var require_dist_cjs31 = __commonJS({ "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6629,7 +6888,7 @@ var require_dist_cjs30 = __commonJS({ }); // ../../../node_modules/@smithy/util-retry/dist-cjs/index.js -var require_dist_cjs31 = __commonJS({ +var require_dist_cjs32 = __commonJS({ "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -6676,7 +6935,7 @@ var require_dist_cjs31 = __commonJS({ })(RETRY_MODES || {}); var DEFAULT_MAX_ATTEMPTS = 3; var DEFAULT_RETRY_MODE = "standard"; - var import_service_error_classification = require_dist_cjs30(); + var import_service_error_classification = require_dist_cjs31(); var _DefaultRateLimiter = class _DefaultRateLimiter2 { constructor(options) { this.currentCapacity = 0; @@ -6944,7 +7203,7 @@ var require_dist_cjs31 = __commonJS({ }); // ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js -var require_dist_cjs32 = __commonJS({ +var require_dist_cjs33 = __commonJS({ "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -7261,7 +7520,7 @@ var require_dist_cjs32 = __commonJS({ }); // ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js -var require_dist_cjs33 = __commonJS({ +var require_dist_cjs34 = __commonJS({ "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -7346,7 +7605,7 @@ var require_dist_cjs33 = __commonJS({ withBaseException: () => withBaseException }); module2.exports = __toCommonJS2(src_exports); - var import_middleware_stack = require_dist_cjs32(); + var import_middleware_stack = require_dist_cjs33(); var _Client = class _Client { constructor(config) { this.config = config; @@ -8450,7 +8709,7 @@ var require_isStreamingPayload = __commonJS({ }); // ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js -var require_dist_cjs34 = __commonJS({ +var require_dist_cjs35 = __commonJS({ "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -8494,7 +8753,7 @@ var require_dist_cjs34 = __commonJS({ module2.exports = __toCommonJS2(src_exports); var import_protocol_http8 = require_dist_cjs2(); var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports)); - var import_util_retry = require_dist_cjs31(); + var import_util_retry = require_dist_cjs32(); var getDefaultRetryQuota = /* @__PURE__ */ __name((initialRetryTokens, options) => { const MAX_CAPACITY = initialRetryTokens; const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT; @@ -8522,7 +8781,7 @@ var require_dist_cjs34 = __commonJS({ }); }, "getDefaultRetryQuota"); var defaultDelayDecider = /* @__PURE__ */ __name((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider"); - var import_service_error_classification = require_dist_cjs30(); + var import_service_error_classification = require_dist_cjs31(); var defaultRetryDecider = /* @__PURE__ */ __name((error) => { if (!error) { return false; @@ -8714,7 +8973,7 @@ var require_dist_cjs34 = __commonJS({ clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions); } }), "getOmitRetryHeadersPlugin"); - var import_smithy_client4 = require_dist_cjs33(); + var import_smithy_client4 = require_dist_cjs34(); var import_isStreamingPayload = require_isStreamingPayload(); var retryMiddleware = /* @__PURE__ */ __name((options) => (next, context) => async (args) => { var _a; @@ -9037,7 +9296,7 @@ var init_resolveAwsSdkSigV4AConfig = __esm({ }); // ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js -var require_dist_cjs35 = __commonJS({ +var require_dist_cjs36 = __commonJS({ "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -9597,7 +9856,7 @@ var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config; var init_resolveAwsSdkSigV4Config = __esm({ "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() { init_dist_es(); - import_signature_v4 = __toESM(require_dist_cjs35()); + import_signature_v4 = __toESM(require_dist_cjs36()); resolveAwsSdkSigV4Config = (config) => { let normalizedCreds; if (config.credentials) { @@ -9757,7 +10016,7 @@ var init_coercing_serializers = __esm({ var import_smithy_client, awsExpectUnion; var init_awsExpectUnion = __esm({ "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() { - import_smithy_client = __toESM(require_dist_cjs33()); + import_smithy_client = __toESM(require_dist_cjs34()); awsExpectUnion = (value) => { if (value == null) { return void 0; @@ -9774,7 +10033,7 @@ var init_awsExpectUnion = __esm({ var import_smithy_client2, collectBodyString; var init_common = __esm({ "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() { - import_smithy_client2 = __toESM(require_dist_cjs33()); + import_smithy_client2 = __toESM(require_dist_cjs34()); collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)); } }); @@ -11495,7 +11754,7 @@ var require_fxp = __commonJS({ var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode; var init_parseXmlBody = __esm({ "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() { - import_smithy_client3 = __toESM(require_dist_cjs33()); + import_smithy_client3 = __toESM(require_dist_cjs34()); import_fast_xml_parser = __toESM(require_fxp()); init_common(); parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => { @@ -12282,7 +12541,7 @@ var require_package = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js -var require_dist_cjs36 = __commonJS({ +var require_dist_cjs37 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -12345,10 +12604,262 @@ var require_dist_cjs36 = __commonJS({ } }); -// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js -var require_dist_cjs37 = __commonJS({ - "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) { - var __defProp2 = Object.defineProperty; +// ../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir3 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath3 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir3(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile3 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath3(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile3 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs38 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-node/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir3(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath3(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile3(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir3(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir3(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir3(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile3(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile3(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); + } +}); + +// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js +var require_dist_cjs39 = __commonJS({ + "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; var __getOwnPropNames2 = Object.getOwnPropertyNames; var __hasOwnProp2 = Object.prototype.hasOwnProperty; @@ -12528,7 +13039,7 @@ var require_dist_cjs37 = __commonJS({ __name(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError"); var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError; var import_node_config_provider = require_dist_cjs26(); - var import_url_parser = require_dist_cjs28(); + var import_url_parser = require_dist_cjs29(); var Endpoint = /* @__PURE__ */ ((Endpoint2) => { Endpoint2["IPv4"] = "http://169.254.169.254"; Endpoint2["IPv6"] = "http://[fd00:ec2::254]"; @@ -12793,7 +13304,7 @@ var require_requestHelpers = __commonJS({ exports2.getCredentials = exports2.createGetRequest = void 0; var property_provider_1 = require_dist_cjs24(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); var util_stream_1 = require_dist_cjs22(); function createGetRequest(url2) { return new protocol_http_1.HttpRequest({ @@ -12931,7 +13442,7 @@ Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI }); // ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js -var require_dist_cjs38 = __commonJS({ +var require_dist_cjs40 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); @@ -13121,7 +13632,7 @@ var require_package2 = __commonJS({ }); // ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js -var require_dist_cjs39 = __commonJS({ +var require_dist_cjs41 = __commonJS({ "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -13205,7 +13716,7 @@ var require_dist_cjs39 = __commonJS({ }); // ../../../node_modules/@smithy/hash-node/dist-cjs/index.js -var require_dist_cjs40 = __commonJS({ +var require_dist_cjs42 = __commonJS({ "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -13269,7 +13780,7 @@ var require_dist_cjs40 = __commonJS({ }); // ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js -var require_dist_cjs41 = __commonJS({ +var require_dist_cjs43 = __commonJS({ "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) { var __defProp2 = Object.defineProperty; var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; @@ -13380,8 +13891,8 @@ var require_runtimeConfig_shared = __commonJS({ exports2.getRuntimeConfig = void 0; var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports)); - var smithy_client_1 = require_dist_cjs33(); - var url_parser_1 = require_dist_cjs28(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs29(); var util_base64_1 = require_dist_cjs16(); var util_utf8_1 = require_dist_cjs15(); var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2(); @@ -13419,7 +13930,7 @@ var require_runtimeConfig_shared = __commonJS({ }); // ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js -var require_dist_cjs42 = __commonJS({ +var require_dist_cjs44 = __commonJS({ "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) { var __create2 = Object.create; var __defProp2 = Object.defineProperty; @@ -13517,7 +14028,7 @@ var require_dist_cjs42 = __commonJS({ } if (!process.env[ENV_IMDS_DISABLED]) { try { - const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37())); + const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs39())); const endpoint = await getInstanceMetadataEndpoint(); return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString(); } catch (e) { @@ -13536,18 +14047,18 @@ var require_runtimeConfig = __commonJS({ var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package2()); var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); - var util_user_agent_node_1 = require_dist_cjs39(); + var util_user_agent_node_1 = require_dist_cjs41(); var config_resolver_1 = require_dist_cjs11(); - var hash_node_1 = require_dist_cjs40(); - var middleware_retry_1 = require_dist_cjs34(); + var hash_node_1 = require_dist_cjs42(); + var middleware_retry_1 = require_dist_cjs35(); var node_config_provider_1 = require_dist_cjs26(); var node_http_handler_1 = require_dist_cjs19(); - var util_body_length_node_1 = require_dist_cjs41(); - var util_retry_1 = require_dist_cjs31(); + var util_body_length_node_1 = require_dist_cjs43(); + var util_retry_1 = require_dist_cjs32(); var runtimeConfig_shared_1 = require_runtimeConfig_shared(); - var smithy_client_1 = require_dist_cjs33(); - var util_defaults_mode_node_1 = require_dist_cjs42(); - var smithy_client_2 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs44(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -13579,7 +14090,7 @@ var require_runtimeConfig = __commonJS({ }); // ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js -var require_dist_cjs43 = __commonJS({ +var require_dist_cjs45 = __commonJS({ "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -13677,7 +14188,7 @@ var require_dist_cjs43 = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js -var require_dist_cjs44 = __commonJS({ +var require_dist_cjs46 = __commonJS({ "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -13729,8 +14240,8 @@ var require_dist_cjs44 = __commonJS({ var import_config_resolver = require_dist_cjs11(); var import_core3 = (init_dist_es(), __toCommonJS(dist_es_exports)); var import_middleware_content_length = require_dist_cjs23(); - var import_middleware_endpoint = require_dist_cjs29(); - var import_middleware_retry = require_dist_cjs34(); + var import_middleware_endpoint = require_dist_cjs30(); + var import_middleware_retry = require_dist_cjs35(); var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2(); var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { return { @@ -13747,9 +14258,9 @@ var require_dist_cjs44 = __commonJS({ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } }; var import_runtimeConfig = require_runtimeConfig(); - var import_region_config_resolver = require_dist_cjs43(); + var import_region_config_resolver = require_dist_cjs45(); var import_protocol_http8 = require_dist_cjs2(); - var import_smithy_client4 = require_dist_cjs33(); + var import_smithy_client4 = require_dist_cjs34(); var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { const _httpAuthSchemes = runtimeConfig.httpAuthSchemes; let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider; @@ -14455,8 +14966,8 @@ var require_runtimeConfig_shared2 = __commonJS({ exports2.getRuntimeConfig = void 0; var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports)); - var smithy_client_1 = require_dist_cjs33(); - var url_parser_1 = require_dist_cjs28(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs29(); var util_base64_1 = require_dist_cjs16(); var util_utf8_1 = require_dist_cjs15(); var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3(); @@ -14502,19 +15013,19 @@ var require_runtimeConfig2 = __commonJS({ var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package3()); var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); - var credential_provider_node_1 = require_dist_cjs52(); - var util_user_agent_node_1 = require_dist_cjs39(); + var credential_provider_node_1 = require_dist_cjs58(); + var util_user_agent_node_1 = require_dist_cjs41(); var config_resolver_1 = require_dist_cjs11(); - var hash_node_1 = require_dist_cjs40(); - var middleware_retry_1 = require_dist_cjs34(); + var hash_node_1 = require_dist_cjs42(); + var middleware_retry_1 = require_dist_cjs35(); var node_config_provider_1 = require_dist_cjs26(); var node_http_handler_1 = require_dist_cjs19(); - var util_body_length_node_1 = require_dist_cjs41(); - var util_retry_1 = require_dist_cjs31(); + var util_body_length_node_1 = require_dist_cjs43(); + var util_retry_1 = require_dist_cjs32(); var runtimeConfig_shared_1 = require_runtimeConfig_shared2(); - var smithy_client_1 = require_dist_cjs33(); - var util_defaults_mode_node_1 = require_dist_cjs42(); - var smithy_client_2 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs44(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -14547,7 +15058,7 @@ var require_runtimeConfig2 = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js -var require_dist_cjs45 = __commonJS({ +var require_dist_cjs47 = __commonJS({ "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -14607,8 +15118,8 @@ var require_dist_cjs45 = __commonJS({ var import_config_resolver = require_dist_cjs11(); var import_core3 = (init_dist_es(), __toCommonJS(dist_es_exports)); var import_middleware_content_length = require_dist_cjs23(); - var import_middleware_endpoint = require_dist_cjs29(); - var import_middleware_retry = require_dist_cjs34(); + var import_middleware_endpoint = require_dist_cjs30(); + var import_middleware_retry = require_dist_cjs35(); var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3(); var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { return { @@ -14625,9 +15136,9 @@ var require_dist_cjs45 = __commonJS({ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } }; var import_runtimeConfig = require_runtimeConfig2(); - var import_region_config_resolver = require_dist_cjs43(); + var import_region_config_resolver = require_dist_cjs45(); var import_protocol_http8 = require_dist_cjs2(); - var import_smithy_client4 = require_dist_cjs33(); + var import_smithy_client4 = require_dist_cjs34(); var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { const _httpAuthSchemes = runtimeConfig.httpAuthSchemes; let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider; @@ -15523,15 +16034,267 @@ var require_dist_cjs45 = __commonJS({ } }); -// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js -var require_dist_cjs46 = __commonJS({ - "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) { +// ../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir4 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { "use strict"; - var __create2 = Object.create; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __getProtoOf2 = Object.getPrototypeOf; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath4 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir4(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile4 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath4(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile4 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs48 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir4(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath4(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile4(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir4(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir4(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir4(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile4(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile4(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); + } +}); + +// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js +var require_dist_cjs49 = __commonJS({ + "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) { + "use strict"; + var __create2 = Object.create; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __getProtoOf2 = Object.getPrototypeOf; var __hasOwnProp2 = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); var __export2 = (target, all) => { @@ -15566,7 +16329,7 @@ var require_dist_cjs46 = __commonJS({ var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`; var ssoOidcClientsHash = {}; var getSsoOidcClient = /* @__PURE__ */ __name(async (ssoRegion) => { - const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45())); + const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47())); if (ssoOidcClientsHash[ssoRegion]) { return ssoOidcClientsHash[ssoRegion]; } @@ -15575,7 +16338,7 @@ var require_dist_cjs46 = __commonJS({ return ssoOidcClient; }, "getSsoOidcClient"); var getNewSsoOidcToken = /* @__PURE__ */ __name(async (ssoToken, ssoRegion) => { - const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45())); + const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47())); const ssoOidcClient = await getSsoOidcClient(ssoRegion); return ssoOidcClient.send( new CreateTokenCommand({ @@ -15600,7 +16363,7 @@ var require_dist_cjs46 = __commonJS({ ); } }, "validateTokenKey"); - var import_shared_ini_file_loader = require_dist_cjs25(); + var import_shared_ini_file_loader = require_dist_cjs48(); var import_fs = require("fs"); var { writeFile } = import_fs.promises; var writeSSOTokenToFile = /* @__PURE__ */ __name((id, ssoToken) => { @@ -15677,34 +16440,286 @@ var require_dist_cjs46 = __commonJS({ }); } catch (error) { } - return { - token: newSsoOidcToken.accessToken, - expiration: newTokenExpiration - }; - } catch (error) { - validateTokenExpiry(existingToken); - return existingToken; - } - }, "fromSso"); - var fromStatic = /* @__PURE__ */ __name(({ token, logger }) => async () => { - logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic"); - if (!token || !token.token) { - throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false); + return { + token: newSsoOidcToken.accessToken, + expiration: newTokenExpiration + }; + } catch (error) { + validateTokenExpiry(existingToken); + return existingToken; + } + }, "fromSso"); + var fromStatic = /* @__PURE__ */ __name(({ token, logger }) => async () => { + logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic"); + if (!token || !token.token) { + throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false); + } + return token; + }, "fromStatic"); + var nodeProvider = /* @__PURE__ */ __name((init = {}) => (0, import_property_provider2.memoize)( + (0, import_property_provider2.chain)(fromSso(init), async () => { + throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false); + }), + (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5, + (token) => token.expiration !== void 0 + ), "nodeProvider"); + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir5 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath5 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir5(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile5 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath5(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile5 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs50 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-sso/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir5(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath5(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile5(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir5(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir5(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir5(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile5(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile5(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } } - return token; - }, "fromStatic"); - var nodeProvider = /* @__PURE__ */ __name((init = {}) => (0, import_property_provider2.memoize)( - (0, import_property_provider2.chain)(fromSso(init), async () => { - throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false); - }), - (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5, - (token) => token.expiration !== void 0 - ), "nodeProvider"); + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); } }); // ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js -var require_dist_cjs47 = __commonJS({ +var require_dist_cjs51 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -15737,7 +16752,7 @@ var require_dist_cjs47 = __commonJS({ var init_loadSso = __esm2({ "src/loadSso.ts"() { "use strict"; - import_client_sso = require_dist_cjs44(); + import_client_sso = require_dist_cjs46(); } }); var src_exports = {}; @@ -15748,9 +16763,9 @@ var require_dist_cjs47 = __commonJS({ }); module2.exports = __toCommonJS2(src_exports); var isSsoProfile = /* @__PURE__ */ __name((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile"); - var import_token_providers = require_dist_cjs46(); + var import_token_providers = require_dist_cjs49(); var import_property_provider2 = require_dist_cjs24(); - var import_shared_ini_file_loader = require_dist_cjs25(); + var import_shared_ini_file_loader = require_dist_cjs50(); var SHOULD_FAIL_CREDENTIAL_CHAIN = false; var resolveSSOCredentials = /* @__PURE__ */ __name(async ({ ssoStartUrl, @@ -15914,7 +16929,259 @@ Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.ht profile: profileName }); } - }, "fromSSO"); + }, "fromSSO"); + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir6 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath6 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir6(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile6 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath6(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile6 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs52 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir6(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath6(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile6(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir6(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir6(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir6(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile6(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile6(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); } }); @@ -16199,8 +17466,8 @@ var require_runtimeConfig_shared3 = __commonJS({ exports2.getRuntimeConfig = void 0; var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports)); - var smithy_client_1 = require_dist_cjs33(); - var url_parser_1 = require_dist_cjs28(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs29(); var util_base64_1 = require_dist_cjs16(); var util_utf8_1 = require_dist_cjs15(); var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4(); @@ -16246,20 +17513,20 @@ var require_runtimeConfig3 = __commonJS({ var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package4()); var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); - var credential_provider_node_1 = require_dist_cjs52(); - var util_user_agent_node_1 = require_dist_cjs39(); + var credential_provider_node_1 = require_dist_cjs58(); + var util_user_agent_node_1 = require_dist_cjs41(); var config_resolver_1 = require_dist_cjs11(); var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports)); - var hash_node_1 = require_dist_cjs40(); - var middleware_retry_1 = require_dist_cjs34(); + var hash_node_1 = require_dist_cjs42(); + var middleware_retry_1 = require_dist_cjs35(); var node_config_provider_1 = require_dist_cjs26(); var node_http_handler_1 = require_dist_cjs19(); - var util_body_length_node_1 = require_dist_cjs41(); - var util_retry_1 = require_dist_cjs31(); + var util_body_length_node_1 = require_dist_cjs43(); + var util_retry_1 = require_dist_cjs32(); var runtimeConfig_shared_1 = require_runtimeConfig_shared3(); - var smithy_client_1 = require_dist_cjs33(); - var util_defaults_mode_node_1 = require_dist_cjs42(); - var smithy_client_2 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs44(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -16357,9 +17624,9 @@ var require_runtimeExtensions = __commonJS({ "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolveRuntimeExtensions = void 0; - var region_config_resolver_1 = require_dist_cjs43(); + var region_config_resolver_1 = require_dist_cjs45(); var protocol_http_1 = require_dist_cjs2(); - var smithy_client_1 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration(); var asPartial = (t) => t; var resolveRuntimeExtensions = (runtimeConfig, extensions) => { @@ -16395,9 +17662,9 @@ var require_STSClient = __commonJS({ var config_resolver_1 = require_dist_cjs11(); var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports)); var middleware_content_length_1 = require_dist_cjs23(); - var middleware_endpoint_1 = require_dist_cjs29(); - var middleware_retry_1 = require_dist_cjs34(); - var smithy_client_1 = require_dist_cjs33(); + var middleware_endpoint_1 = require_dist_cjs30(); + var middleware_retry_1 = require_dist_cjs35(); + var smithy_client_1 = require_dist_cjs34(); Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() { return smithy_client_1.Client; } }); @@ -16441,7 +17708,7 @@ var require_STSClient = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js -var require_dist_cjs48 = __commonJS({ +var require_dist_cjs53 = __commonJS({ "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -16498,10 +17765,10 @@ var require_dist_cjs48 = __commonJS({ }); module2.exports = __toCommonJS2(src_exports); __reExport(src_exports, require_STSClient(), module2.exports); - var import_middleware_endpoint = require_dist_cjs29(); + var import_middleware_endpoint = require_dist_cjs30(); var import_middleware_serde2 = require_dist_cjs12(); var import_EndpointParameters = require_EndpointParameters(); - var import_smithy_client4 = require_dist_cjs33(); + var import_smithy_client4 = require_dist_cjs34(); var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException { /** * @internal @@ -17812,8 +19079,260 @@ var require_dist_cjs48 = __commonJS({ } }); +// ../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js +var require_getHomeDir7 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getHomeDir = void 0; + var os_1 = require("os"); + var path_1 = require("path"); + var homeDirCache = {}; + var getHomeDirCacheKey = () => { + if (process && process.geteuid) { + return `${process.geteuid()}`; + } + return "DEFAULT"; + }; + var getHomeDir2 = () => { + const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env; + if (HOME) + return HOME; + if (USERPROFILE) + return USERPROFILE; + if (HOMEPATH) + return `${HOMEDRIVE}${HOMEPATH}`; + const homeDirCacheKey = getHomeDirCacheKey(); + if (!homeDirCache[homeDirCacheKey]) + homeDirCache[homeDirCacheKey] = (0, os_1.homedir)(); + return homeDirCache[homeDirCacheKey]; + }; + exports2.getHomeDir = getHomeDir2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js +var require_getSSOTokenFilepath7 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFilepath = void 0; + var crypto_1 = require("crypto"); + var path_1 = require("path"); + var getHomeDir_1 = require_getHomeDir7(); + var getSSOTokenFilepath2 = (id) => { + const hasher = (0, crypto_1.createHash)("sha1"); + const cacheName = hasher.update(id).digest("hex"); + return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`); + }; + exports2.getSSOTokenFilepath = getSSOTokenFilepath2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js +var require_getSSOTokenFromFile7 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSSOTokenFromFile = void 0; + var fs_1 = require("fs"); + var getSSOTokenFilepath_1 = require_getSSOTokenFilepath7(); + var { readFile } = fs_1.promises; + var getSSOTokenFromFile2 = async (id) => { + const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id); + const ssoTokenText = await readFile(ssoTokenFilepath, "utf8"); + return JSON.parse(ssoTokenText); + }; + exports2.getSSOTokenFromFile = getSSOTokenFromFile2; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js +var require_slurpFile7 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.slurpFile = void 0; + var fs_1 = require("fs"); + var { readFile } = fs_1.promises; + var filePromisesHash = {}; + var slurpFile = (path, options) => { + if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) { + filePromisesHash[path] = readFile(path, "utf8"); + } + return filePromisesHash[path]; + }; + exports2.slurpFile = slurpFile; + } +}); + +// ../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js +var require_dist_cjs54 = __commonJS({ + "../../../node_modules/@aws-sdk/credential-provider-process/node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) { + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __name = (target, value) => __defProp2(target, "name", { value, configurable: true }); + var __export2 = (target, all) => { + for (var name in all) + __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); + } + return to; + }; + var __reExport = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default")); + var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); + var src_exports = {}; + __export2(src_exports, { + CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR, + DEFAULT_PROFILE: () => DEFAULT_PROFILE, + ENV_PROFILE: () => ENV_PROFILE, + getProfileName: () => getProfileName, + loadSharedConfigFiles: () => loadSharedConfigFiles, + loadSsoSessionData: () => loadSsoSessionData, + parseKnownFiles: () => parseKnownFiles + }); + module2.exports = __toCommonJS2(src_exports); + __reExport(src_exports, require_getHomeDir7(), module2.exports); + var ENV_PROFILE = "AWS_PROFILE"; + var DEFAULT_PROFILE = "default"; + var getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName"); + __reExport(src_exports, require_getSSOTokenFilepath7(), module2.exports); + __reExport(src_exports, require_getSSOTokenFromFile7(), module2.exports); + var import_types5 = require_dist_cjs(); + var getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + if (indexOfSeparator === -1) { + return false; + } + return Object.values(import_types5.IniSectionType).includes(key.substring(0, indexOfSeparator)); + }).reduce( + (acc, [key, value]) => { + const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR); + const updatedKey = key.substring(0, indexOfSeparator) === import_types5.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key; + acc[updatedKey] = value; + return acc; + }, + { + // Populate default profile, if present. + ...data.default && { default: data.default } + } + ), "getConfigData"); + var import_path = require("path"); + var import_getHomeDir = require_getHomeDir7(); + var ENV_CONFIG_PATH = "AWS_CONFIG_FILE"; + var getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath"); + var import_getHomeDir2 = require_getHomeDir7(); + var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE"; + var getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath"); + var import_getHomeDir3 = require_getHomeDir7(); + var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/; + var profileNameBlockList = ["__proto__", "profile __proto__"]; + var parseIni = /* @__PURE__ */ __name((iniData) => { + const map = {}; + let currentSection; + let currentSubSection; + for (const iniLine of iniData.split(/\r?\n/)) { + const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim(); + const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]"; + if (isSection) { + currentSection = void 0; + currentSubSection = void 0; + const sectionName = trimmedLine.substring(1, trimmedLine.length - 1); + const matches = prefixKeyRegex.exec(sectionName); + if (matches) { + const [, prefix, , name] = matches; + if (Object.values(import_types5.IniSectionType).includes(prefix)) { + currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR); + } + } else { + currentSection = sectionName; + } + if (profileNameBlockList.includes(sectionName)) { + throw new Error(`Found invalid profile name "${sectionName}"`); + } + } else if (currentSection) { + const indexOfEqualsSign = trimmedLine.indexOf("="); + if (![0, -1].includes(indexOfEqualsSign)) { + const [name, value] = [ + trimmedLine.substring(0, indexOfEqualsSign).trim(), + trimmedLine.substring(indexOfEqualsSign + 1).trim() + ]; + if (value === "") { + currentSubSection = name; + } else { + if (currentSubSection && iniLine.trimStart() === iniLine) { + currentSubSection = void 0; + } + map[currentSection] = map[currentSection] || {}; + const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name; + map[currentSection][key] = value; + } + } + } + } + return map; + }, "parseIni"); + var import_slurpFile = require_slurpFile7(); + var swallowError = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var CONFIG_PREFIX_SEPARATOR = "."; + var loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => { + const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init; + const homeDir = (0, import_getHomeDir3.getHomeDir)(); + const relativeHomeDirPrefix = "~/"; + let resolvedFilepath = filepath; + if (filepath.startsWith(relativeHomeDirPrefix)) { + resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2)); + } + let resolvedConfigFilepath = configFilepath; + if (configFilepath.startsWith(relativeHomeDirPrefix)) { + resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2)); + } + const parsedFiles = await Promise.all([ + (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).then(getConfigData).catch(swallowError), + (0, import_slurpFile.slurpFile)(resolvedFilepath, { + ignoreCache: init.ignoreCache + }).then(parseIni).catch(swallowError) + ]); + return { + configFile: parsedFiles[0], + credentialsFile: parsedFiles[1] + }; + }, "loadSharedConfigFiles"); + var getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types5.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData"); + var import_slurpFile2 = require_slurpFile7(); + var swallowError2 = /* @__PURE__ */ __name(() => ({}), "swallowError"); + var loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData"); + var mergeConfigFiles = /* @__PURE__ */ __name((...files) => { + const merged = {}; + for (const file of files) { + for (const [key, values] of Object.entries(file)) { + if (merged[key] !== void 0) { + Object.assign(merged[key], values); + } else { + merged[key] = values; + } + } + } + return merged; + }, "mergeConfigFiles"); + var parseKnownFiles = /* @__PURE__ */ __name(async (init) => { + const parsedFiles = await loadSharedConfigFiles(init); + return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile); + }, "parseKnownFiles"); + } +}); + // ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js -var require_dist_cjs49 = __commonJS({ +var require_dist_cjs55 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -17839,7 +19358,7 @@ var require_dist_cjs49 = __commonJS({ fromProcess: () => fromProcess }); module2.exports = __toCommonJS2(src_exports); - var import_shared_ini_file_loader = require_dist_cjs25(); + var import_shared_ini_file_loader = require_dist_cjs54(); var import_property_provider2 = require_dist_cjs24(); var import_child_process = require("child_process"); var import_util = require("util"); @@ -17945,7 +19464,7 @@ var require_fromWebToken = __commonJS({ const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init; let { roleAssumerWithWebIdentity } = init; if (!roleAssumerWithWebIdentity) { - const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48())); + const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs53())); roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({ ...init.clientConfig, credentialProviderLogger: init.logger, @@ -18000,7 +19519,7 @@ var require_fromTokenFile = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js -var require_dist_cjs50 = __commonJS({ +var require_dist_cjs56 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -18025,7 +19544,7 @@ var require_dist_cjs50 = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js -var require_dist_cjs51 = __commonJS({ +var require_dist_cjs57 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) { "use strict"; var __create2 = Object.create; @@ -18061,24 +19580,24 @@ var require_dist_cjs51 = __commonJS({ fromIni: () => fromIni }); module2.exports = __toCommonJS2(src_exports); - var import_shared_ini_file_loader = require_dist_cjs25(); + var import_shared_ini_file_loader = require_dist_cjs52(); var import_property_provider2 = require_dist_cjs24(); var resolveCredentialSource = /* @__PURE__ */ __name((credentialSource, profileName, logger) => { const sourceProvidersMap = { EcsContainer: async (options) => { - const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38())); - const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37())); + const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs40())); + const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs39())); logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer"); return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options)); }, Ec2InstanceMetadata: async (options) => { logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata"); - const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37())); + const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs39())); return fromInstanceMetadata(options); }, Environment: async (options) => { logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment"); - const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36())); + const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37())); return fromEnv(options); } }; @@ -18115,7 +19634,7 @@ var require_dist_cjs51 = __commonJS({ (_a = options.logger) == null ? void 0 : _a.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)"); const data = profiles[profileName]; if (!options.roleAssumer) { - const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48())); + const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs53())); options.roleAssumer = getDefaultRoleAssumer( { ...options.clientConfig, @@ -18174,14 +19693,14 @@ var require_dist_cjs51 = __commonJS({ return options.roleAssumer(sourceCreds, params); }, "resolveAssumeRoleCredentials"); var isProcessProfile = /* @__PURE__ */ __name((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile"); - var resolveProcessCredentials = /* @__PURE__ */ __name(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then( + var resolveProcessCredentials = /* @__PURE__ */ __name(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs55())).then( ({ fromProcess }) => fromProcess({ ...options, profile })() ), "resolveProcessCredentials"); var resolveSsoCredentials = /* @__PURE__ */ __name(async (profile, options = {}) => { - const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47())); + const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51())); return fromSSO({ profile, logger: options.logger @@ -18201,7 +19720,7 @@ var require_dist_cjs51 = __commonJS({ }); }, "resolveStaticCredentials"); var isWebIdentityProfile = /* @__PURE__ */ __name((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile"); - var resolveWebIdentityCredentials = /* @__PURE__ */ __name(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then( + var resolveWebIdentityCredentials = /* @__PURE__ */ __name(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs56())).then( ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({ webIdentityTokenFile: profile.web_identity_token_file, roleArn: profile.role_arn, @@ -18246,7 +19765,7 @@ var require_dist_cjs51 = __commonJS({ }); // ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js -var require_dist_cjs52 = __commonJS({ +var require_dist_cjs58 = __commonJS({ "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) { "use strict"; var __create2 = Object.create; @@ -18284,16 +19803,16 @@ var require_dist_cjs52 = __commonJS({ defaultProvider: () => defaultProvider }); module2.exports = __toCommonJS2(src_exports); - var import_credential_provider_env = require_dist_cjs36(); - var import_shared_ini_file_loader = require_dist_cjs25(); + var import_credential_provider_env = require_dist_cjs37(); + var import_shared_ini_file_loader = require_dist_cjs38(); var import_property_provider2 = require_dist_cjs24(); var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED"; var remoteProvider = /* @__PURE__ */ __name(async (init) => { var _a, _b; - const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37())); + const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs39())); if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) { (_a = init.logger) == null ? void 0 : _a.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata"); - const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38())); + const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs40())); return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init)); } if (process.env[ENV_IMDS_DISABLED]) { @@ -18347,25 +19866,25 @@ var require_dist_cjs52 = __commonJS({ { logger: init.logger } ); } - const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47())); + const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51())); return fromSSO(init)(); }, async () => { var _a; (_a = init.logger) == null ? void 0 : _a.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni"); - const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51())); + const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs57())); return fromIni(init)(); }, async () => { var _a; (_a = init.logger) == null ? void 0 : _a.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess"); - const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49())); + const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs55())); return fromProcess(init)(); }, async () => { var _a; (_a = init.logger) == null ? void 0 : _a.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile"); - const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50())); + const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs56())); return fromTokenFile2(init)(); }, async () => { @@ -18449,8 +19968,8 @@ var require_runtimeConfig_shared4 = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRuntimeConfig = void 0; var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); - var smithy_client_1 = require_dist_cjs33(); - var url_parser_1 = require_dist_cjs28(); + var smithy_client_1 = require_dist_cjs34(); + var url_parser_1 = require_dist_cjs29(); var util_base64_1 = require_dist_cjs16(); var util_utf8_1 = require_dist_cjs15(); var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider(); @@ -18491,19 +20010,19 @@ var require_runtimeConfig4 = __commonJS({ var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var package_json_1 = tslib_1.__importDefault(require_package()); var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2)); - var credential_provider_node_1 = require_dist_cjs52(); - var util_user_agent_node_1 = require_dist_cjs39(); + var credential_provider_node_1 = require_dist_cjs58(); + var util_user_agent_node_1 = require_dist_cjs41(); var config_resolver_1 = require_dist_cjs11(); - var hash_node_1 = require_dist_cjs40(); - var middleware_retry_1 = require_dist_cjs34(); + var hash_node_1 = require_dist_cjs42(); + var middleware_retry_1 = require_dist_cjs35(); var node_config_provider_1 = require_dist_cjs26(); var node_http_handler_1 = require_dist_cjs19(); - var util_body_length_node_1 = require_dist_cjs41(); - var util_retry_1 = require_dist_cjs31(); + var util_body_length_node_1 = require_dist_cjs43(); + var util_retry_1 = require_dist_cjs32(); var runtimeConfig_shared_1 = require_runtimeConfig_shared4(); - var smithy_client_1 = require_dist_cjs33(); - var util_defaults_mode_node_1 = require_dist_cjs42(); - var smithy_client_2 = require_dist_cjs33(); + var smithy_client_1 = require_dist_cjs34(); + var util_defaults_mode_node_1 = require_dist_cjs44(); + var smithy_client_2 = require_dist_cjs34(); var getRuntimeConfig = (config) => { (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version); const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config); @@ -18536,7 +20055,7 @@ var require_runtimeConfig4 = __commonJS({ }); // ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js -var require_dist_cjs53 = __commonJS({ +var require_dist_cjs59 = __commonJS({ "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) { "use strict"; var __defProp2 = Object.defineProperty; @@ -18712,8 +20231,8 @@ var require_dist_cjs53 = __commonJS({ var import_config_resolver = require_dist_cjs11(); var import_core3 = (init_dist_es(), __toCommonJS(dist_es_exports)); var import_middleware_content_length = require_dist_cjs23(); - var import_middleware_endpoint = require_dist_cjs29(); - var import_middleware_retry = require_dist_cjs34(); + var import_middleware_endpoint = require_dist_cjs30(); + var import_middleware_retry = require_dist_cjs35(); var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider(); var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { return { @@ -18730,9 +20249,9 @@ var require_dist_cjs53 = __commonJS({ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" } }; var import_runtimeConfig = require_runtimeConfig4(); - var import_region_config_resolver = require_dist_cjs43(); + var import_region_config_resolver = require_dist_cjs45(); var import_protocol_http8 = require_dist_cjs2(); - var import_smithy_client4 = require_dist_cjs33(); + var import_smithy_client4 = require_dist_cjs34(); var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { const _httpAuthSchemes = runtimeConfig.httpAuthSchemes; let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider; @@ -30149,6 +31668,12 @@ var init_api_call = __esm({ init_find_client_constructor(); init_sdk_info(); ApiCall = class { + service; + action; + v3PackageName; + v3Package; + // For testing purposes + client; // For testing purposes constructor(service, action) { this.service = normalizeServiceName(service); @@ -30278,7 +31803,7 @@ var import_helpers_internal = __toESM(require_helpers_internal()); // lib/assertions/providers/lambda-handler/base.ts var https = __toESM(require("https")); var url = __toESM(require("url")); -var import_client_sfn = __toESM(require_dist_cjs53()); +var import_client_sfn = __toESM(require_dist_cjs59()); var CustomResourceHandler = class { constructor(event, context) { this.event = event; diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json index e28e37192192c..fb5813cf51541 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json @@ -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}/6e69f749b55f133855ea1ed1e46826896bbaa6585e2b83b70553b39d17a7489f.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -49,37 +49,19 @@ "/test-efs-permission-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-permission-integ/Vpc/PublicSubnet1/Subnet": [ @@ -121,37 +103,15 @@ "/test-efs-permission-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": true, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } - }, - { - "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addNatGateway": [ - "*" - ] - } + "data": "*" } ], "/test-efs-permission-integ/Vpc/PublicSubnet2/Subnet": [ @@ -178,44 +138,18 @@ "data": "VpcPublicSubnet2DefaultRoute97F91067" } ], - "/test-efs-permission-integ/Vpc/PublicSubnet2/EIP": [ - { - "type": "aws:cdk:logicalId", - "data": "VpcPublicSubnet2EIP3C605A87" - } - ], - "/test-efs-permission-integ/Vpc/PublicSubnet2/NATGateway": [ - { - "type": "aws:cdk:logicalId", - "data": "VpcPublicSubnet2NATGateway9182C01D" - } - ], "/test-efs-permission-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -245,29 +179,15 @@ "/test-efs-permission-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:construct", - "data": { - "availabilityZone": "*", - "vpcId": "*", - "cidrBlock": "*", - "mapPublicIpOnLaunch": false, - "ipv6CidrBlock": "*", - "assignIpv6AddressOnCreation": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": {} + "data": "*" } ], "/test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -339,10 +259,11 @@ "/test-efs-permission-integ/FileSystem": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "removalPolicy": "destroy" - } + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" } ], "/test-efs-permission-integ/FileSystem/Resource": [ @@ -354,42 +275,19 @@ "/test-efs-permission-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*" - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addIngressRule": [ - "*", - {}, - "*", - false - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addIngressRule": [ - "*", - {}, - "*", - false - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addIngressRule": [ - "*", - {}, - "*", - false - ] - } + "data": "*" } ], "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -398,22 +296,22 @@ "data": "FileSystemEfsSecurityGroup212D3ACB" } ], - "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049": [ + "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049": [ { "type": "aws:cdk:logicalId", - "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B22049255111EA" + "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteLambdaSecurityGroup0BB6D82820497CCBD8C9" } ], - "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049": [ + "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadLambdaSecurityGroup619495CD:2049": [ { "type": "aws:cdk:logicalId", - "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegReadInstanceInstanceSecurityGroupD14710ED20494CAE7A73" + "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegReadLambdaSecurityGroup619495CD2049F79DDDAB" } ], - "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049": [ + "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049": [ { "type": "aws:cdk:logicalId", - "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD2049AF74717E" + "data": "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousLambdaSecurityGroup59418B902049D48A0291" } ], "/test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet1": [ @@ -428,534 +326,368 @@ "data": "FileSystemEfsMountTargetPrivateSubnet265F3ED67" } ], - "/test-efs-permission-integ/WriteInstance": [ + "/test-efs-permission-integ/FileSystem/AccessPoint": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "instanceType": "*", - "machineImage": "*", - "ssmSessionPermissions": true, - "init": "*", - "initOptions": { - "timeout": "*" - } - } - }, - { - "type": "aws:cdk:analytics:method", - "data": { - "applyCloudFormationInit": [ - {}, - { - "timeout": "*" - } - ] - } + "data": "*" } ], - "/test-efs-permission-integ/WriteInstance/InstanceSecurityGroup": [ + "/test-efs-permission-integ/FileSystem/AccessPoint/Resource": [ { - "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "allowAllOutbound": true, - "allowAllIpv6Outbound": "*" - } - }, - { - "type": "aws:cdk:analytics:method", - "data": { - "addEgressRule": [ - "*", - {}, - "*", - true - ] - } + "type": "aws:cdk:logicalId", + "data": "FileSystemAccessPointF8178182" } ], - "/test-efs-permission-integ/WriteInstance/InstanceSecurityGroup/Resource": [ + "/test-efs-permission-integ/WriteLambda": [ { - "type": "aws:cdk:logicalId", - "data": "WriteInstanceInstanceSecurityGroupBB94A852" + "type": "aws:cdk:analytics:construct", + "data": "*" } ], - "/test-efs-permission-integ/WriteInstance/InstanceRole": [ + "/test-efs-permission-integ/WriteLambda/ServiceRole": [ { "type": "aws:cdk:analytics:construct", - "data": { - "assumedBy": { - "principalAccount": "*", - "assumeRoleAction": "*" - } - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addManagedPolicy": [ - { - "managedPolicyArn": "*" - } - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addToPrincipalPolicy": [ - {} - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addToPrincipalPolicy": [ - {} - ] - } + "data": "*" } ], - "/test-efs-permission-integ/WriteInstance/InstanceRole/ImportInstanceRole": [ + "/test-efs-permission-integ/WriteLambda/ServiceRole/ImportServiceRole": [ { "type": "aws:cdk:analytics:construct", "data": "*" } ], - "/test-efs-permission-integ/WriteInstance/InstanceRole/Resource": [ + "/test-efs-permission-integ/WriteLambda/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", - "data": "WriteInstanceInstanceRole74D7BFCC" + "data": "WriteLambdaServiceRole903EC6B6" } ], - "/test-efs-permission-integ/WriteInstance/InstanceRole/DefaultPolicy": [ + "/test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy": [ { "type": "aws:cdk:analytics:construct", "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addStatements": [ - {} - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addStatements": [ - {} - ] - } + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" } ], - "/test-efs-permission-integ/WriteInstance/InstanceRole/DefaultPolicy/Resource": [ + "/test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy/Resource": [ { "type": "aws:cdk:logicalId", - "data": "WriteInstanceInstanceRoleDefaultPolicy692CCD00" + "data": "WriteLambdaServiceRoleDefaultPolicyEDE3046D" } ], - "/test-efs-permission-integ/WriteInstance/InstanceProfile": [ + "/test-efs-permission-integ/WriteLambda/SecurityGroup": [ { - "type": "aws:cdk:logicalId", - "data": "WriteInstanceInstanceProfile6EEEF088" + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:warning", + "data": "Ignoring Egress rule since 'allowAllOutbound' is set to true; To add customized rules, set allowAllOutbound=false on the SecurityGroup [ack: @aws-cdk/aws-ec2:ipv4IgnoreEgressRule]" } ], - "/test-efs-permission-integ/WriteInstance/Resource": [ + "/test-efs-permission-integ/WriteLambda/SecurityGroup/Resource": [ { "type": "aws:cdk:logicalId", - "data": "WriteInstance7FF20E8Eb90cd3a29a6c7625" + "data": "WriteLambdaSecurityGroup4DD8D986" } ], - "/test-efs-permission-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + "/test-efs-permission-integ/WriteLambda/Resource": [ { "type": "aws:cdk:logicalId", - "data": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter" + "data": "WriteLambda0E72B4A4" } ], - "/test-efs-permission-integ/ReadInstance": [ + "/test-efs-permission-integ/WriteLambda/LogGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "instanceType": "*", - "machineImage": "*", - "ssmSessionPermissions": true, - "init": "*", - "initOptions": { - "timeout": "*" - } - } - }, - { - "type": "aws:cdk:analytics:method", - "data": { - "applyCloudFormationInit": [ - {}, - { - "timeout": "*" - } - ] - } + "data": "*" } ], - "/test-efs-permission-integ/ReadInstance/InstanceSecurityGroup": [ - { - "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "allowAllOutbound": true, - "allowAllIpv6Outbound": "*" - } - }, + "/test-efs-permission-integ/WriteLambda/LogGroup/Resource": [ { - "type": "aws:cdk:analytics:method", - "data": { - "addEgressRule": [ - "*", - {}, - "*", - true - ] - } + "type": "aws:cdk:logicalId", + "data": "WriteLambdaLogGroupED176471" } ], - "/test-efs-permission-integ/ReadInstance/InstanceSecurityGroup/Resource": [ + "/test-efs-permission-integ/ReadLambda": [ { - "type": "aws:cdk:logicalId", - "data": "ReadInstanceInstanceSecurityGroup4E6DE54D" + "type": "aws:cdk:analytics:construct", + "data": "*" } ], - "/test-efs-permission-integ/ReadInstance/InstanceRole": [ + "/test-efs-permission-integ/ReadLambda/ServiceRole": [ { "type": "aws:cdk:analytics:construct", - "data": { - "assumedBy": { - "principalAccount": "*", - "assumeRoleAction": "*" - } - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addManagedPolicy": [ - { - "managedPolicyArn": "*" - } - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addToPrincipalPolicy": [ - {} - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addToPrincipalPolicy": [ - {} - ] - } + "data": "*" } ], - "/test-efs-permission-integ/ReadInstance/InstanceRole/ImportInstanceRole": [ + "/test-efs-permission-integ/ReadLambda/ServiceRole/ImportServiceRole": [ { "type": "aws:cdk:analytics:construct", "data": "*" } ], - "/test-efs-permission-integ/ReadInstance/InstanceRole/Resource": [ + "/test-efs-permission-integ/ReadLambda/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", - "data": "ReadInstanceInstanceRoleFE151AE8" + "data": "ReadLambdaServiceRole786C9B4A" } ], - "/test-efs-permission-integ/ReadInstance/InstanceRole/DefaultPolicy": [ + "/test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy": [ { "type": "aws:cdk:analytics:construct", "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addStatements": [ - {} - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addStatements": [ - {} - ] - } + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" } ], - "/test-efs-permission-integ/ReadInstance/InstanceRole/DefaultPolicy/Resource": [ + "/test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy/Resource": [ { "type": "aws:cdk:logicalId", - "data": "ReadInstanceInstanceRoleDefaultPolicy54DA36A2" + "data": "ReadLambdaServiceRoleDefaultPolicy6518FF35" } ], - "/test-efs-permission-integ/ReadInstance/InstanceProfile": [ + "/test-efs-permission-integ/ReadLambda/SecurityGroup": [ { - "type": "aws:cdk:logicalId", - "data": "ReadInstanceInstanceProfile8FAC51BA" + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:warning", + "data": "Ignoring Egress rule since 'allowAllOutbound' is set to true; To add customized rules, set allowAllOutbound=false on the SecurityGroup [ack: @aws-cdk/aws-ec2:ipv4IgnoreEgressRule]" } ], - "/test-efs-permission-integ/ReadInstance/Resource": [ + "/test-efs-permission-integ/ReadLambda/SecurityGroup/Resource": [ { "type": "aws:cdk:logicalId", - "data": "ReadInstanceE94183C76867391ec2104698" + "data": "ReadLambdaSecurityGroupC61CE255" } ], - "/test-efs-permission-integ/AnonymousInstance": [ - { - "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "instanceType": "*", - "machineImage": "*", - "ssmSessionPermissions": true, - "init": "*", - "initOptions": { - "timeout": "*" - } - } - }, + "/test-efs-permission-integ/ReadLambda/Resource": [ { - "type": "aws:cdk:analytics:method", - "data": { - "applyCloudFormationInit": [ - {}, - { - "timeout": "*" - } - ] - } + "type": "aws:cdk:logicalId", + "data": "ReadLambda25A29444" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup": [ + "/test-efs-permission-integ/ReadLambda/LogGroup": [ { "type": "aws:cdk:analytics:construct", - "data": { - "vpc": "*", - "allowAllOutbound": true, - "allowAllIpv6Outbound": "*" - } - }, - { - "type": "aws:cdk:analytics:method", - "data": { - "addEgressRule": [ - "*", - {}, - "*", - true - ] - } + "data": "*" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup/Resource": [ + "/test-efs-permission-integ/ReadLambda/LogGroup/Resource": [ { "type": "aws:cdk:logicalId", - "data": "AnonymousInstanceInstanceSecurityGroup648A5675" + "data": "ReadLambdaLogGroupE705D38C" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceRole": [ + "/test-efs-permission-integ/AnonymousLambda": [ { "type": "aws:cdk:analytics:construct", - "data": { - "assumedBy": { - "principalAccount": "*", - "assumeRoleAction": "*" - } - } + "data": "*" + } + ], + "/test-efs-permission-integ/AnonymousLambda/ServiceRole": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addManagedPolicy": [ - { - "managedPolicyArn": "*" - } - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addToPrincipalPolicy": [ - {} - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachInlinePolicy": [ - "*" - ] - } + "data": "*" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceRole/ImportInstanceRole": [ + "/test-efs-permission-integ/AnonymousLambda/ServiceRole/ImportServiceRole": [ { "type": "aws:cdk:analytics:construct", "data": "*" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceRole/Resource": [ + "/test-efs-permission-integ/AnonymousLambda/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", - "data": "AnonymousInstanceInstanceRole174145F6" + "data": "AnonymousLambdaServiceRole53D2562D" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceRole/DefaultPolicy": [ + "/test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy": [ { "type": "aws:cdk:analytics:construct", "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "attachToRole": [ - "*" - ] - } + "data": "*" }, { "type": "aws:cdk:analytics:method", - "data": { - "addStatements": [ - {} - ] - } + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], + "/test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceRole/DefaultPolicy/Resource": [ + "/test-efs-permission-integ/AnonymousLambda/SecurityGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:warning", + "data": "Ignoring Egress rule since 'allowAllOutbound' is set to true; To add customized rules, set allowAllOutbound=false on the SecurityGroup [ack: @aws-cdk/aws-ec2:ipv4IgnoreEgressRule]" + } + ], + "/test-efs-permission-integ/AnonymousLambda/SecurityGroup/Resource": [ { "type": "aws:cdk:logicalId", - "data": "AnonymousInstanceInstanceRoleDefaultPolicy7A752F3D" + "data": "AnonymousLambdaSecurityGroupF33010B2" } ], - "/test-efs-permission-integ/AnonymousInstance/InstanceProfile": [ + "/test-efs-permission-integ/AnonymousLambda/Resource": [ { "type": "aws:cdk:logicalId", - "data": "AnonymousInstanceInstanceProfile5C6B5DC3" + "data": "AnonymousLambda6BEDD8C7" + } + ], + "/test-efs-permission-integ/AnonymousLambda/LogGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" } ], - "/test-efs-permission-integ/AnonymousInstance/Resource": [ + "/test-efs-permission-integ/AnonymousLambda/LogGroup/Resource": [ { "type": "aws:cdk:logicalId", - "data": "AnonymousInstance51D4C7152602e043eee6300d" + "data": "AnonymousLambdaLogGroupE319B132" } ], - "/test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousInstance51D4C7152602e043eee6300d\"}": [ + "/test-efs-permission-integ/Exports/Output{\"Ref\":\"WriteLambda0E72B4A4\"}": [ { "type": "aws:cdk:logicalId", - "data": "ExportsOutputRefAnonymousInstance51D4C7152602e043eee6300d7C50D25E" + "data": "ExportsOutputRefWriteLambda0E72B4A42765E7AF" } ], - "/test-efs-permission-integ/Exports/Output{\"Ref\":\"FileSystem8A8E25C0\"}": [ + "/test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadLambda25A29444\"}": [ { "type": "aws:cdk:logicalId", - "data": "ExportsOutputRefFileSystem8A8E25C0B454ACF3" + "data": "ExportsOutputRefReadLambda25A294445B02A7B5" } ], - "/test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadInstanceE94183C76867391ec2104698\"}": [ + "/test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}": [ { "type": "aws:cdk:logicalId", - "data": "ExportsOutputRefReadInstanceE94183C76867391ec2104698F9816D55" + "data": "ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7" } ], "/test-efs-permission-integ/BootstrapVersion": [ @@ -990,7 +722,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}/cc5b1ca406f6e4d7bdecd9ecc44bbeadbfa5f180cab833c9f16c9433bdd7eb93.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -1007,7 +739,7 @@ "EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets" ], "metadata": { - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default": [ { "type": "aws:cdk:analytics:construct", "data": "*" @@ -1021,10 +753,22 @@ "data": "*" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/Default/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default/Default": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d" + "data": "LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c" + } + ], + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Invoke": [ + { + "type": "aws:cdk:logicalId", + "data": "LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2cInvoke7150CDEA" + } + ], + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/AssertionResults": [ + { + "type": "aws:cdk:logicalId", + "data": "AssertionResultsLambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c" } ], "/EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [ @@ -1039,7 +783,7 @@ "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default": [ { "type": "aws:cdk:analytics:construct", "data": "*" @@ -1053,67 +797,25 @@ "data": "*" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/Default/Default": [ - { - "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/IsCompleteProvider/Invoke": [ - { - "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForIsCompleteProviderInvoke0E3B9656" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/TimeoutProvider/Invoke": [ - { - "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForTimeoutProviderInvokeB2FF1355" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/Role": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default/Default": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitForRoleCB1932A9" + "data": "LambdaInvoke60d18b84c11c66e9414556fc35df6d38" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/Resource": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Invoke": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cefWaitFor25410491" + "data": "LambdaInvoke60d18b84c11c66e9414556fc35df6d38Invoke3518074E" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/AssertionResults": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/AssertionResults": [ { "type": "aws:cdk:logicalId", - "data": "AssertionResultsAwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef" + "data": "AssertionResultsLambdaInvoke60d18b84c11c66e9414556fc35df6d38" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925/Role": [ - { - "type": "aws:cdk:logicalId", - "data": "SingletonFunction76b3e830a873425f8453eddd85c86925Role918961BB" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925/Handler": [ - { - "type": "aws:cdk:logicalId", - "data": "SingletonFunction76b3e830a873425f8453eddd85c86925Handler81461ECE" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a/Role": [ - { - "type": "aws:cdk:logicalId", - "data": "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aRoleB84BD8CE" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a/Handler": [ - { - "type": "aws:cdk:logicalId", - "data": "SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41aHandlerADF3E6EA" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default": [ { "type": "aws:cdk:analytics:construct", "data": "*" @@ -1127,13 +829,25 @@ "data": "*" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/Default/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default/Default": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f" + "data": "LambdaInvokefdb04e42910c7dcf6256870d54fe4a59" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/Default": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Invoke": [ + { + "type": "aws:cdk:logicalId", + "data": "LambdaInvokefdb04e42910c7dcf6256870d54fe4a59InvokeACED3029" + } + ], + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/AssertionResults": [ + { + "type": "aws:cdk:logicalId", + "data": "AssertionResultsLambdaInvokefdb04e42910c7dcf6256870d54fe4a59" + } + ], + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default": [ { "type": "aws:cdk:analytics:construct", "data": "*" @@ -1147,40 +861,22 @@ "data": "*" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/Default/Default": [ - { - "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/IsCompleteProvider/Invoke": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default/Default": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForIsCompleteProviderInvoke0043BB8D" + "data": "LambdaInvoke069b5aed588f50b50dfb3fae8f2be816" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/TimeoutProvider/Invoke": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Invoke": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForTimeoutProviderInvokeABA3643B" + "data": "LambdaInvoke069b5aed588f50b50dfb3fae8f2be816InvokeA9153515" } ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/Role": [ + "/EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/AssertionResults": [ { "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForRoleA472C364" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/Resource": [ - { - "type": "aws:cdk:logicalId", - "data": "AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2WaitForBC48DF7E" - } - ], - "/EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/AssertionResults": [ - { - "type": "aws:cdk:logicalId", - "data": "AssertionResultsAwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2" + "data": "AssertionResultsLambdaInvoke069b5aed588f50b50dfb3fae8f2be816" } ], "/EfsPermissionTest/DefaultTest/DeployAssert/BootstrapVersion": [ @@ -1210,6 +906,7 @@ "module": "aws-cdk-lib", "flags": { "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, "recommendedValue": true, "explanation": "Pass signingProfileName to CfnSigningProfile" }, @@ -1228,6 +925,7 @@ } }, "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, "recommendedValue": true, "explanation": "Disable implicit openListener when custom security groups are provided" }, @@ -1339,7 +1037,7 @@ "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { "userValue": true, "recommendedValue": true, - "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in." + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." }, "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { "userValue": true, @@ -1678,10 +1376,25 @@ "userValue": true, "recommendedValue": true, "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" } } } } }, - "minimumCliVersion": "2.1027.0" + "minimumCliVersion": "2.1033.0" } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json index 61ef092c30d0b..1222f6da57e0d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "6e69f749b55f133855ea1ed1e46826896bbaa6585e2b83b70553b39d17a7489f": { + "e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317": { "displayName": "test-efs-permission-integ Template", "source": { "path": "test-efs-permission-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-1ca62c74": { + "current_account-current_region-630553af": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "6e69f749b55f133855ea1ed1e46826896bbaa6585e2b83b70553b39d17a7489f.json", + "objectKey": "e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317.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-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json index 5b851d13f26b1..fd0010864c7ce 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json @@ -195,42 +195,6 @@ "VpcVPCGWBF912B6E" ] }, - "VpcPublicSubnet2EIP3C605A87": { - "Type": "AWS::EC2::EIP", - "Properties": { - "Domain": "vpc", - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/Vpc/PublicSubnet2" - } - ] - } - }, - "VpcPublicSubnet2NATGateway9182C01D": { - "Type": "AWS::EC2::NatGateway", - "Properties": { - "AllocationId": { - "Fn::GetAtt": [ - "VpcPublicSubnet2EIP3C605A87", - "AllocationId" - ] - }, - "SubnetId": { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - }, - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/Vpc/PublicSubnet2" - } - ] - }, - "DependsOn": [ - "VpcPublicSubnet2DefaultRoute97F91067", - "VpcPublicSubnet2RouteTableAssociationDD5762D8" - ] - }, "VpcPrivateSubnet1Subnet536B997A": { "Type": "AWS::EC2::Subnet", "Properties": { @@ -362,7 +326,7 @@ "Properties": { "DestinationCidrBlock": "0.0.0.0/0", "NatGatewayId": { - "Ref": "VpcPublicSubnet2NATGateway9182C01D" + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" }, "RouteTableId": { "Ref": "VpcPrivateSubnet2RouteTableA678073B" @@ -515,6 +479,7 @@ "Statement": [ { "Action": [ + "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -525,7 +490,22 @@ }, "Effect": "Allow", "Principal": { - "AWS": "*" + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } } } ], @@ -563,10 +543,10 @@ } } }, - "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B22049255111EA": { + "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteLambdaSecurityGroup0BB6D82820497CCBD8C9": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { - "Description": "from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049", + "Description": "from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049", "FromPort": 2049, "GroupId": { "Fn::GetAtt": [ @@ -577,17 +557,17 @@ "IpProtocol": "tcp", "SourceSecurityGroupId": { "Fn::GetAtt": [ - "WriteInstanceInstanceSecurityGroupBB94A852", + "WriteLambdaSecurityGroup4DD8D986", "GroupId" ] }, "ToPort": 2049 } }, - "FileSystemEfsSecurityGroupfromtestefspermissionintegReadInstanceInstanceSecurityGroupD14710ED20494CAE7A73": { + "FileSystemEfsSecurityGroupfromtestefspermissionintegReadLambdaSecurityGroup619495CD2049F79DDDAB": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { - "Description": "from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049", + "Description": "from testefspermissionintegReadLambdaSecurityGroup619495CD:2049", "FromPort": 2049, "GroupId": { "Fn::GetAtt": [ @@ -598,17 +578,17 @@ "IpProtocol": "tcp", "SourceSecurityGroupId": { "Fn::GetAtt": [ - "ReadInstanceInstanceSecurityGroup4E6DE54D", + "ReadLambdaSecurityGroupC61CE255", "GroupId" ] }, "ToPort": 2049 } }, - "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD2049AF74717E": { + "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousLambdaSecurityGroup59418B902049D48A0291": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { - "Description": "from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049", + "Description": "from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049", "FromPort": 2049, "GroupId": { "Fn::GetAtt": [ @@ -619,7 +599,7 @@ "IpProtocol": "tcp", "SourceSecurityGroupId": { "Fn::GetAtt": [ - "AnonymousInstanceInstanceSecurityGroup648A5675", + "AnonymousLambdaSecurityGroupF33010B2", "GroupId" ] }, @@ -664,29 +644,33 @@ } } }, - "WriteInstanceInstanceSecurityGroupBB94A852": { - "Type": "AWS::EC2::SecurityGroup", + "FileSystemAccessPointF8178182": { + "Type": "AWS::EFS::AccessPoint", "Properties": { - "GroupDescription": "test-efs-permission-integ/WriteInstance/InstanceSecurityGroup", - "SecurityGroupEgress": [ - { - "CidrIp": "0.0.0.0/0", - "Description": "Allow all outbound traffic by default", - "IpProtocol": "-1" - } - ], - "Tags": [ + "AccessPointTags": [ { "Key": "Name", - "Value": "test-efs-permission-integ/WriteInstance" + "Value": "test-efs-permission-integ/FileSystem/AccessPoint" } ], - "VpcId": { - "Ref": "Vpc8378EB38" + "FileSystemId": { + "Ref": "FileSystem8A8E25C0" + }, + "PosixUser": { + "Gid": "1000", + "Uid": "1000" + }, + "RootDirectory": { + "CreationInfo": { + "OwnerGid": "1000", + "OwnerUid": "1000", + "Permissions": "755" + }, + "Path": "/lambda" } } }, - "WriteInstanceInstanceRole74D7BFCC": { + "WriteLambdaServiceRole903EC6B6": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { @@ -695,7 +679,7 @@ "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { - "Service": "ec2.amazonaws.com" + "Service": "lambda.amazonaws.com" } } ], @@ -710,32 +694,95 @@ { "Ref": "AWS::Partition" }, - ":iam::aws:policy/AmazonSSMManagedInstanceCore" + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] ] - } - ], - "Tags": [ + }, { - "Key": "Name", - "Value": "test-efs-permission-integ/WriteInstance" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" + ] + ] } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "WriteInstanceInstanceRoleDefaultPolicy692CCD00": { + "WriteLambdaServiceRoleDefaultPolicyEDE3046D": { "Type": "AWS::IAM::Policy", "Properties": { "PolicyDocument": { "Statement": [ { - "Action": [ - "cloudformation:DescribeStackResource", - "cloudformation:SignalResource" - ], + "Action": "elasticfilesystem:ClientMount", + "Condition": { + "StringEquals": { + "elasticfilesystem:AccessPointArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + } + } + }, + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": "elasticfilesystem:ClientWrite", "Effect": "Allow", "Resource": { - "Ref": "AWS::StackId" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":file-system/", + { + "Ref": "FileSystem8A8E25C0" + } + ] + ] } }, { @@ -759,166 +806,148 @@ ], "Version": "2012-10-17" }, - "PolicyName": "WriteInstanceInstanceRoleDefaultPolicy692CCD00", + "PolicyName": "WriteLambdaServiceRoleDefaultPolicyEDE3046D", "Roles": [ { - "Ref": "WriteInstanceInstanceRole74D7BFCC" + "Ref": "WriteLambdaServiceRole903EC6B6" } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "WriteInstanceInstanceProfile6EEEF088": { - "Type": "AWS::IAM::InstanceProfile", + "WriteLambdaSecurityGroup4DD8D986": { + "Type": "AWS::EC2::SecurityGroup", "Properties": { - "Roles": [ + "GroupDescription": "Automatic security group for Lambda Function testefspermissionintegWriteLambdaA7AC4082", + "SecurityGroupEgress": [ { - "Ref": "WriteInstanceInstanceRole74D7BFCC" + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" } - ] - } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "WriteInstance7FF20E8Eb90cd3a29a6c7625": { - "Type": "AWS::EC2::Instance", + "WriteLambda0E72B4A4": { + "Type": "AWS::Lambda::Function", "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" - } - ] - }, - "IamInstanceProfile": { - "Ref": "WriteInstanceInstanceProfile6EEEF088" - }, - "ImageId": { - "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter" + "Code": { + "ZipFile": "\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'w') as f:\n f.write('Integ Test')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n" }, - "InstanceType": "t4g.nano", - "SecurityGroupIds": [ + "FileSystemConfigs": [ { - "Fn::GetAtt": [ - "WriteInstanceInstanceSecurityGroupBB94A852", - "GroupId" - ] + "Arn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + }, + "LocalMountPath": "/mnt/efs" } ], - "SubnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "WriteLambdaServiceRole903EC6B6", + "Arn" + ] }, - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/WriteInstance" - } - ], - "UserData": { - "Fn::Base64": { - "Fn::Join": [ - "", - [ - "#!/bin/bash\n# fingerprint: be8fd20a37905a0b\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource WriteInstance7FF20E8Eb90cd3a29a6c7625 -c default\n /opt/aws/bin/cfn-signal -e $? --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource WriteInstance7FF20E8Eb90cd3a29a6c7625\n cat /var/log/cfn-init.log >&2\n)" + "Runtime": "python3.13", + "Timeout": 30, + "VpcConfig": { + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "WriteLambdaSecurityGroup4DD8D986", + "GroupId" ] - ] - } + } + ], + "SubnetIds": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] } }, "DependsOn": [ "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", "FileSystemEfsMountTargetPrivateSubnet265F3ED67", - "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD2049AF74717E", - "FileSystemEfsSecurityGroupfromtestefspermissionintegReadInstanceInstanceSecurityGroupD14710ED20494CAE7A73", - "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B22049255111EA", - "FileSystemEfsSecurityGroup212D3ACB", - "FileSystem8A8E25C0", - "WriteInstanceInstanceRoleDefaultPolicy692CCD00", - "WriteInstanceInstanceRole74D7BFCC" - ], - "CreationPolicy": { - "ResourceSignal": { - "Count": 1, - "Timeout": "PT10M" - } - }, - "Metadata": { - "AWS::CloudFormation::Init": { - "configSets": { - "default": [ - "config" - ] - }, - "config": { - "commands": { - "000": { - "command": "dnf install -y amazon-efs-utils" - }, - "001": { - "command": "mkdir /mnt/efs" - }, - "002": { - "command": "sleep 5m" - }, - "003": { - "command": { - "Fn::Join": [ - "", - [ - "mount -t efs -o tls,iam ", - { - "Ref": "FileSystem8A8E25C0" - }, - " /mnt/efs" - ] - ] - } - }, - "004": { - "command": "echo 'Integ Test' | tee /mnt/efs/integ-test.txt" - } - } - } - } - } + "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteLambdaSecurityGroup0BB6D82820497CCBD8C9", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56", + "WriteLambdaServiceRoleDefaultPolicyEDE3046D", + "WriteLambdaServiceRole903EC6B6" + ] }, - "ReadInstanceInstanceSecurityGroup4E6DE54D": { - "Type": "AWS::EC2::SecurityGroup", + "WriteLambdaLogGroupED176471": { + "Type": "AWS::Logs::LogGroup", "Properties": { - "GroupDescription": "test-efs-permission-integ/ReadInstance/InstanceSecurityGroup", - "SecurityGroupEgress": [ - { - "CidrIp": "0.0.0.0/0", - "Description": "Allow all outbound traffic by default", - "IpProtocol": "-1" - } - ], - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/ReadInstance" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } + "LogGroupName": { + "Fn::Join": [ + "", + [ + "/aws/lambda/", + { + "Ref": "WriteLambda0E72B4A4" + } + ] + ] + }, + "RetentionInDays": 731 + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ], + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" }, - "ReadInstanceInstanceRoleFE151AE8": { + "ReadLambdaServiceRole786C9B4A": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { @@ -927,7 +956,7 @@ "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { - "Service": "ec2.amazonaws.com" + "Service": "lambda.amazonaws.com" } } ], @@ -942,38 +971,101 @@ { "Ref": "AWS::Partition" }, - ":iam::aws:policy/AmazonSSMManagedInstanceCore" + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] ] - } - ], - "Tags": [ + }, { - "Key": "Name", - "Value": "test-efs-permission-integ/ReadInstance" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" + ] + ] } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "ReadInstanceInstanceRoleDefaultPolicy54DA36A2": { + "ReadLambdaServiceRoleDefaultPolicy6518FF35": { "Type": "AWS::IAM::Policy", "Properties": { "PolicyDocument": { "Statement": [ - { - "Action": [ - "cloudformation:DescribeStackResource", - "cloudformation:SignalResource" - ], - "Effect": "Allow", - "Resource": { - "Ref": "AWS::StackId" - } - }, { "Action": "elasticfilesystem:ClientMount", "Condition": { - "Bool": { + "StringEquals": { + "elasticfilesystem:AccessPointArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + } + } + }, + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": "elasticfilesystem:ClientWrite", + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":file-system/", + { + "Ref": "FileSystem8A8E25C0" + } + ] + ] + } + }, + { + "Action": "elasticfilesystem:ClientMount", + "Condition": { + "Bool": { "elasticfilesystem:AccessedViaMountTarget": "true" } }, @@ -988,163 +1080,149 @@ ], "Version": "2012-10-17" }, - "PolicyName": "ReadInstanceInstanceRoleDefaultPolicy54DA36A2", + "PolicyName": "ReadLambdaServiceRoleDefaultPolicy6518FF35", "Roles": [ { - "Ref": "ReadInstanceInstanceRoleFE151AE8" + "Ref": "ReadLambdaServiceRole786C9B4A" } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "ReadInstanceInstanceProfile8FAC51BA": { - "Type": "AWS::IAM::InstanceProfile", + "ReadLambdaSecurityGroupC61CE255": { + "Type": "AWS::EC2::SecurityGroup", "Properties": { - "Roles": [ + "GroupDescription": "Automatic security group for Lambda Function testefspermissionintegReadLambda591FEE84", + "SecurityGroupEgress": [ { - "Ref": "ReadInstanceInstanceRoleFE151AE8" + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" } - ] - } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "ReadInstanceE94183C76867391ec2104698": { - "Type": "AWS::EC2::Instance", + "ReadLambda25A29444": { + "Type": "AWS::Lambda::Function", "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" - } - ] - }, - "IamInstanceProfile": { - "Ref": "ReadInstanceInstanceProfile8FAC51BA" - }, - "ImageId": { - "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter" + "Code": { + "ZipFile": "\nimport os\nimport json\n\ndef handler(event, context):\n try:\n action = event.get('action', 'read')\n file_path = '/mnt/efs/integ-test.txt'\n \n if action == 'read':\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n elif action == 'write':\n with open(file_path, 'w') as f:\n f.write('Should fail')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except PermissionError as e:\n return {'statusCode': 403, 'body': json.dumps(f'Permission denied: {str(e)}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n" }, - "InstanceType": "t4g.nano", - "SecurityGroupIds": [ + "FileSystemConfigs": [ { - "Fn::GetAtt": [ - "ReadInstanceInstanceSecurityGroup4E6DE54D", - "GroupId" - ] + "Arn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + }, + "LocalMountPath": "/mnt/efs" } ], - "SubnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "ReadLambdaServiceRole786C9B4A", + "Arn" + ] }, - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/ReadInstance" - } - ], - "UserData": { - "Fn::Base64": { - "Fn::Join": [ - "", - [ - "#!/bin/bash\n# fingerprint: 7966a6fe536e3753\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource ReadInstanceE94183C76867391ec2104698 -c default\n /opt/aws/bin/cfn-signal -e $? --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource ReadInstanceE94183C76867391ec2104698\n cat /var/log/cfn-init.log >&2\n)" + "Runtime": "python3.13", + "Timeout": 30, + "VpcConfig": { + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "ReadLambdaSecurityGroupC61CE255", + "GroupId" ] - ] - } + } + ], + "SubnetIds": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] } }, "DependsOn": [ "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", "FileSystemEfsMountTargetPrivateSubnet265F3ED67", - "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD2049AF74717E", - "FileSystemEfsSecurityGroupfromtestefspermissionintegReadInstanceInstanceSecurityGroupD14710ED20494CAE7A73", - "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B22049255111EA", - "FileSystemEfsSecurityGroup212D3ACB", - "FileSystem8A8E25C0", - "ReadInstanceInstanceRoleDefaultPolicy54DA36A2", - "ReadInstanceInstanceRoleFE151AE8" - ], - "CreationPolicy": { - "ResourceSignal": { - "Count": 1, - "Timeout": "PT10M" - } - }, - "Metadata": { - "AWS::CloudFormation::Init": { - "configSets": { - "default": [ - "config" - ] - }, - "config": { - "commands": { - "000": { - "command": "dnf install -y amazon-efs-utils" - }, - "001": { - "command": "mkdir /mnt/efs" - }, - "002": { - "command": "sleep 5m" - }, - "003": { - "command": { - "Fn::Join": [ - "", - [ - "mount -t efs -o tls,iam ", - { - "Ref": "FileSystem8A8E25C0" - }, - " /mnt/efs" - ] - ] - } - } - } - } - } - } + "FileSystemEfsSecurityGroupfromtestefspermissionintegReadLambdaSecurityGroup619495CD2049F79DDDAB", + "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteLambdaSecurityGroup0BB6D82820497CCBD8C9", + "ReadLambdaServiceRoleDefaultPolicy6518FF35", + "ReadLambdaServiceRole786C9B4A", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "AnonymousInstanceInstanceSecurityGroup648A5675": { - "Type": "AWS::EC2::SecurityGroup", + "ReadLambdaLogGroupE705D38C": { + "Type": "AWS::Logs::LogGroup", "Properties": { - "GroupDescription": "test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup", - "SecurityGroupEgress": [ - { - "CidrIp": "0.0.0.0/0", - "Description": "Allow all outbound traffic by default", - "IpProtocol": "-1" - } - ], - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/AnonymousInstance" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } + "LogGroupName": { + "Fn::Join": [ + "", + [ + "/aws/lambda/", + { + "Ref": "ReadLambda25A29444" + } + ] + ] + }, + "RetentionInDays": 731 + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ], + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" }, - "AnonymousInstanceInstanceRole174145F6": { + "AnonymousLambdaServiceRole53D2562D": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { @@ -1153,7 +1231,7 @@ "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { - "Service": "ec2.amazonaws.com" + "Service": "lambda.amazonaws.com" } } ], @@ -1168,188 +1246,277 @@ { "Ref": "AWS::Partition" }, - ":iam::aws:policy/AmazonSSMManagedInstanceCore" + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] ] - } - ], - "Tags": [ + }, { - "Key": "Name", - "Value": "test-efs-permission-integ/AnonymousInstance" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" + ] + ] } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "AnonymousInstanceInstanceRoleDefaultPolicy7A752F3D": { + "AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E": { "Type": "AWS::IAM::Policy", "Properties": { "PolicyDocument": { "Statement": [ { - "Action": [ - "cloudformation:DescribeStackResource", - "cloudformation:SignalResource" - ], + "Action": "elasticfilesystem:ClientMount", + "Condition": { + "StringEquals": { + "elasticfilesystem:AccessPointArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + } + } + }, + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": "elasticfilesystem:ClientWrite", "Effect": "Allow", "Resource": { - "Ref": "AWS::StackId" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":file-system/", + { + "Ref": "FileSystem8A8E25C0" + } + ] + ] } } ], "Version": "2012-10-17" }, - "PolicyName": "AnonymousInstanceInstanceRoleDefaultPolicy7A752F3D", + "PolicyName": "AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E", "Roles": [ { - "Ref": "AnonymousInstanceInstanceRole174145F6" + "Ref": "AnonymousLambdaServiceRole53D2562D" } ] - } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "AnonymousInstanceInstanceProfile5C6B5DC3": { - "Type": "AWS::IAM::InstanceProfile", + "AnonymousLambdaSecurityGroupF33010B2": { + "Type": "AWS::EC2::SecurityGroup", "Properties": { - "Roles": [ + "GroupDescription": "Automatic security group for Lambda Function testefspermissionintegAnonymousLambdaAFF78BE3", + "SecurityGroupEgress": [ { - "Ref": "AnonymousInstanceInstanceRole174145F6" + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" } - ] - } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "AnonymousInstance51D4C7152602e043eee6300d": { - "Type": "AWS::EC2::Instance", + "AnonymousLambda6BEDD8C7": { + "Type": "AWS::Lambda::Function", "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" - } - ] - }, - "IamInstanceProfile": { - "Ref": "AnonymousInstanceInstanceProfile5C6B5DC3" - }, - "ImageId": { - "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter" + "Code": { + "ZipFile": "\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n" }, - "InstanceType": "t4g.nano", - "SecurityGroupIds": [ + "FileSystemConfigs": [ { - "Fn::GetAtt": [ - "AnonymousInstanceInstanceSecurityGroup648A5675", - "GroupId" - ] + "Arn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":elasticfilesystem:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":access-point/", + { + "Ref": "FileSystemAccessPointF8178182" + } + ] + ] + }, + "LocalMountPath": "/mnt/efs" } ], - "SubnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "AnonymousLambdaServiceRole53D2562D", + "Arn" + ] }, - "Tags": [ - { - "Key": "Name", - "Value": "test-efs-permission-integ/AnonymousInstance" - } - ], - "UserData": { - "Fn::Base64": { - "Fn::Join": [ - "", - [ - "#!/bin/bash\n# fingerprint: 0a4aed3288b47274\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource AnonymousInstance51D4C7152602e043eee6300d -c default\n /opt/aws/bin/cfn-signal -e $? --region ", - { - "Ref": "AWS::Region" - }, - " --stack ", - { - "Ref": "AWS::StackName" - }, - " --resource AnonymousInstance51D4C7152602e043eee6300d\n cat /var/log/cfn-init.log >&2\n)" + "Runtime": "python3.13", + "Timeout": 30, + "VpcConfig": { + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "AnonymousLambdaSecurityGroupF33010B2", + "GroupId" ] - ] - } + } + ], + "SubnetIds": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] } }, "DependsOn": [ - "AnonymousInstanceInstanceRoleDefaultPolicy7A752F3D", - "AnonymousInstanceInstanceRole174145F6" - ], - "CreationPolicy": { - "ResourceSignal": { - "Count": 1, - "Timeout": "PT10M" - } - }, - "Metadata": { - "AWS::CloudFormation::Init": { - "configSets": { - "default": [ - "config" - ] - }, - "config": { - "commands": { - "000": { - "command": "dnf install -y amazon-efs-utils" - }, - "001": { - "command": "mkdir /mnt/efs" - }, - "002": { - "command": "sleep 5m" - } - } - } - } - } - } - }, - "Parameters": { - "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter": { - "Type": "AWS::SSM::Parameter::Value", - "Default": "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-arm64" + "AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E", + "AnonymousLambdaServiceRole53D2562D", + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "FileSystemEfsSecurityGroupfromtestefspermissionintegAnonymousLambdaSecurityGroup59418B902049D48A0291", + "FileSystemEfsSecurityGroupfromtestefspermissionintegReadLambdaSecurityGroup619495CD2049F79DDDAB", + "FileSystemEfsSecurityGroupfromtestefspermissionintegWriteLambdaSecurityGroup0BB6D82820497CCBD8C9", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "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]" + "AnonymousLambdaLogGroupE319B132": { + "Type": "AWS::Logs::LogGroup", + "Properties": { + "LogGroupName": { + "Fn::Join": [ + "", + [ + "/aws/lambda/", + { + "Ref": "AnonymousLambda6BEDD8C7" + } + ] + ] + }, + "RetentionInDays": 731 + }, + "DependsOn": [ + "FileSystemEfsMountTargetPrivateSubnet1BB305AF3", + "FileSystemEfsMountTargetPrivateSubnet265F3ED67", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ], + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" } }, "Outputs": { - "ExportsOutputRefAnonymousInstance51D4C7152602e043eee6300d7C50D25E": { + "ExportsOutputRefWriteLambda0E72B4A42765E7AF": { "Value": { - "Ref": "AnonymousInstance51D4C7152602e043eee6300d" + "Ref": "WriteLambda0E72B4A4" }, "Export": { - "Name": "test-efs-permission-integ:ExportsOutputRefAnonymousInstance51D4C7152602e043eee6300d7C50D25E" + "Name": "test-efs-permission-integ:ExportsOutputRefWriteLambda0E72B4A42765E7AF" } }, - "ExportsOutputRefFileSystem8A8E25C0B454ACF3": { + "ExportsOutputRefReadLambda25A294445B02A7B5": { "Value": { - "Ref": "FileSystem8A8E25C0" + "Ref": "ReadLambda25A29444" }, "Export": { - "Name": "test-efs-permission-integ:ExportsOutputRefFileSystem8A8E25C0B454ACF3" + "Name": "test-efs-permission-integ:ExportsOutputRefReadLambda25A294445B02A7B5" } }, - "ExportsOutputRefReadInstanceE94183C76867391ec2104698F9816D55": { + "ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7": { "Value": { - "Ref": "ReadInstanceE94183C76867391ec2104698" + "Ref": "AnonymousLambda6BEDD8C7" }, "Export": { - "Name": "test-efs-permission-integ:ExportsOutputRefReadInstanceE94183C76867391ec2104698F9816D55" + "Name": "test-efs-permission-integ:ExportsOutputRefAnonymousLambda6BEDD8C7FD349EA7" } } }, + "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": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json index c40ea9342d170..0685f1d459420 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-permission-integ":{"id":"test-efs-permission-integ","path":"test-efs-permission-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-permission-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-permission-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-permission-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-permission-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-permission-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}},"EIP":{"id":"EIP","path":"test-efs-permission-integ/Vpc/PublicSubnet2/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-permission-integ/Vpc/PublicSubnet2/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet2EIP3C605A87","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"},"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}]}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-permission-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-permission-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet2NATGateway9182C01D"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-permission-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-permission-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-permission-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.FileSystem","version":"0.0.0","metadata":[{"vpc":"*","removalPolicy":"destroy"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":"*"}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"},{"addIngressRule":["*",{},"*",false]},{"addIngressRule":["*",{},"*",false]},{"addIngressRule":["*",{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049":{"id":"from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegWriteInstanceInstanceSecurityGroup8A71A4B2:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["WriteInstanceInstanceSecurityGroupBB94A852","GroupId"]},"toPort":2049}}},"from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049":{"id":"from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegReadInstanceInstanceSecurityGroupD14710ED:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["ReadInstanceInstanceSecurityGroup4E6DE54D","GroupId"]},"toPort":2049}}},"from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049":{"id":"from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegAnonymousInstanceInstanceSecurityGroup64A7B2BD:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["AnonymousInstanceInstanceSecurityGroup648A5675","GroupId"]},"toPort":2049}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"WriteInstance":{"id":"WriteInstance","path":"test-efs-permission-integ/WriteInstance","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Instance","version":"0.0.0","metadata":[{"vpc":"*","instanceType":"*","machineImage":"*","ssmSessionPermissions":true,"init":"*","initOptions":{"timeout":"*"}},{"applyCloudFormationInit":[{},{"timeout":"*"}]}]},"children":{"InstanceSecurityGroup":{"id":"InstanceSecurityGroup","path":"test-efs-permission-integ/WriteInstance/InstanceSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","allowAllOutbound":true,"allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",true]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteInstance/InstanceSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/WriteInstance/InstanceSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/WriteInstance"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"InstanceRole":{"id":"InstanceRole","path":"test-efs-permission-integ/WriteInstance/InstanceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportInstanceRole":{"id":"ImportInstanceRole","path":"test-efs-permission-integ/WriteInstance/InstanceRole/ImportInstanceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteInstance/InstanceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"ec2.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonSSMManagedInstanceCore"]]}],"tags":[{"key":"Name","value":"test-efs-permission-integ/WriteInstance"}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/WriteInstance/InstanceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteInstance/InstanceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["cloudformation:DescribeStackResource","cloudformation:SignalResource"],"Effect":"Allow","Resource":{"Ref":"AWS::StackId"}},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"WriteInstanceInstanceRoleDefaultPolicy692CCD00","roles":[{"Ref":"WriteInstanceInstanceRole74D7BFCC"}]}}}}}}},"InstanceProfile":{"id":"InstanceProfile","path":"test-efs-permission-integ/WriteInstance/InstanceProfile","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnInstanceProfile","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::InstanceProfile","aws:cdk:cloudformation:props":{"roles":[{"Ref":"WriteInstanceInstanceRole74D7BFCC"}]}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteInstance/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInstance","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Instance","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"iamInstanceProfile":{"Ref":"WriteInstanceInstanceProfile6EEEF088"},"imageId":{"Ref":"SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter"},"instanceType":"t4g.nano","securityGroupIds":[{"Fn::GetAtt":["WriteInstanceInstanceSecurityGroupBB94A852","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"},"tags":[{"key":"Name","value":"test-efs-permission-integ/WriteInstance"}],"userData":{"Fn::Base64":{"Fn::Join":["",["#!/bin/bash\n# fingerprint: be8fd20a37905a0b\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource WriteInstance7FF20E8Eb90cd3a29a6c7625 -c default\n /opt/aws/bin/cfn-signal -e $? --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource WriteInstance7FF20E8Eb90cd3a29a6c7625\n cat /var/log/cfn-init.log >&2\n)"]]}}}}}}},"SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter":{"id":"SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter","path":"test-efs-permission-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118":{"id":"SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118","path":"test-efs-permission-integ/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-arm64:C96584B6-F00A-464E-AD19-53AFF4B05118","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"ReadInstance":{"id":"ReadInstance","path":"test-efs-permission-integ/ReadInstance","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Instance","version":"0.0.0","metadata":[{"vpc":"*","instanceType":"*","machineImage":"*","ssmSessionPermissions":true,"init":"*","initOptions":{"timeout":"*"}},{"applyCloudFormationInit":[{},{"timeout":"*"}]}]},"children":{"InstanceSecurityGroup":{"id":"InstanceSecurityGroup","path":"test-efs-permission-integ/ReadInstance/InstanceSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","allowAllOutbound":true,"allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",true]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadInstance/InstanceSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/ReadInstance/InstanceSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/ReadInstance"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"InstanceRole":{"id":"InstanceRole","path":"test-efs-permission-integ/ReadInstance/InstanceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportInstanceRole":{"id":"ImportInstanceRole","path":"test-efs-permission-integ/ReadInstance/InstanceRole/ImportInstanceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadInstance/InstanceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"ec2.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonSSMManagedInstanceCore"]]}],"tags":[{"key":"Name","value":"test-efs-permission-integ/ReadInstance"}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/ReadInstance/InstanceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadInstance/InstanceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["cloudformation:DescribeStackResource","cloudformation:SignalResource"],"Effect":"Allow","Resource":{"Ref":"AWS::StackId"}},{"Action":"elasticfilesystem:ClientMount","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"ReadInstanceInstanceRoleDefaultPolicy54DA36A2","roles":[{"Ref":"ReadInstanceInstanceRoleFE151AE8"}]}}}}}}},"InstanceProfile":{"id":"InstanceProfile","path":"test-efs-permission-integ/ReadInstance/InstanceProfile","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnInstanceProfile","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::InstanceProfile","aws:cdk:cloudformation:props":{"roles":[{"Ref":"ReadInstanceInstanceRoleFE151AE8"}]}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadInstance/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInstance","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Instance","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"iamInstanceProfile":{"Ref":"ReadInstanceInstanceProfile8FAC51BA"},"imageId":{"Ref":"SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter"},"instanceType":"t4g.nano","securityGroupIds":[{"Fn::GetAtt":["ReadInstanceInstanceSecurityGroup4E6DE54D","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"},"tags":[{"key":"Name","value":"test-efs-permission-integ/ReadInstance"}],"userData":{"Fn::Base64":{"Fn::Join":["",["#!/bin/bash\n# fingerprint: 7966a6fe536e3753\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource ReadInstanceE94183C76867391ec2104698 -c default\n /opt/aws/bin/cfn-signal -e $? --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource ReadInstanceE94183C76867391ec2104698\n cat /var/log/cfn-init.log >&2\n)"]]}}}}}}},"AnonymousInstance":{"id":"AnonymousInstance","path":"test-efs-permission-integ/AnonymousInstance","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Instance","version":"0.0.0","metadata":[{"vpc":"*","instanceType":"*","machineImage":"*","ssmSessionPermissions":true,"init":"*","initOptions":{"timeout":"*"}},{"applyCloudFormationInit":[{},{"timeout":"*"}]}]},"children":{"InstanceSecurityGroup":{"id":"InstanceSecurityGroup","path":"test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","allowAllOutbound":true,"allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",true]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/AnonymousInstance/InstanceSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/AnonymousInstance"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"InstanceRole":{"id":"InstanceRole","path":"test-efs-permission-integ/AnonymousInstance/InstanceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportInstanceRole":{"id":"ImportInstanceRole","path":"test-efs-permission-integ/AnonymousInstance/InstanceRole/ImportInstanceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousInstance/InstanceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"ec2.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonSSMManagedInstanceCore"]]}],"tags":[{"key":"Name","value":"test-efs-permission-integ/AnonymousInstance"}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/AnonymousInstance/InstanceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousInstance/InstanceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["cloudformation:DescribeStackResource","cloudformation:SignalResource"],"Effect":"Allow","Resource":{"Ref":"AWS::StackId"}}],"Version":"2012-10-17"},"policyName":"AnonymousInstanceInstanceRoleDefaultPolicy7A752F3D","roles":[{"Ref":"AnonymousInstanceInstanceRole174145F6"}]}}}}}}},"InstanceProfile":{"id":"InstanceProfile","path":"test-efs-permission-integ/AnonymousInstance/InstanceProfile","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnInstanceProfile","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::InstanceProfile","aws:cdk:cloudformation:props":{"roles":[{"Ref":"AnonymousInstanceInstanceRole174145F6"}]}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousInstance/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInstance","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Instance","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"iamInstanceProfile":{"Ref":"AnonymousInstanceInstanceProfile5C6B5DC3"},"imageId":{"Ref":"SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61arm64C96584B6F00A464EAD1953AFF4B05118Parameter"},"instanceType":"t4g.nano","securityGroupIds":[{"Fn::GetAtt":["AnonymousInstanceInstanceSecurityGroup648A5675","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"},"tags":[{"key":"Name","value":"test-efs-permission-integ/AnonymousInstance"}],"userData":{"Fn::Base64":{"Fn::Join":["",["#!/bin/bash\n# fingerprint: 0a4aed3288b47274\n(\n set +e\n /opt/aws/bin/cfn-init -v --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource AnonymousInstance51D4C7152602e043eee6300d -c default\n /opt/aws/bin/cfn-signal -e $? --region ",{"Ref":"AWS::Region"}," --stack ",{"Ref":"AWS::StackName"}," --resource AnonymousInstance51D4C7152602e043eee6300d\n cat /var/log/cfn-init.log >&2\n)"]]}}}}}}},"Exports":{"id":"Exports","path":"test-efs-permission-integ/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Output{\"Ref\":\"AnonymousInstance51D4C7152602e043eee6300d\"}":{"id":"Output{\"Ref\":\"AnonymousInstance51D4C7152602e043eee6300d\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousInstance51D4C7152602e043eee6300d\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Ref\":\"FileSystem8A8E25C0\"}":{"id":"Output{\"Ref\":\"FileSystem8A8E25C0\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"FileSystem8A8E25C0\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Ref\":\"ReadInstanceE94183C76867391ec2104698\"}":{"id":"Output{\"Ref\":\"ReadInstanceE94183C76867391ec2104698\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadInstanceE94183C76867391ec2104698\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-permission-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-permission-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"EfsPermissionTest":{"id":"EfsPermissionTest","path":"EfsPermissionTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"EfsPermissionTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"EfsPermissionTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d":{"id":"AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AwsApiCall","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand03c1b116df63115fe31278034644bb0d/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef":{"id":"AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AwsApiCall","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"WaitFor":{"id":"WaitFor","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.WaiterStateMachine","version":"0.0.0"},"children":{"IsCompleteProvider":{"id":"IsCompleteProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/IsCompleteProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/IsCompleteProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/IsCompleteProvider/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"TimeoutProvider":{"id":"TimeoutProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/TimeoutProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/TimeoutProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/TimeoutProvider/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Resource":{"id":"Resource","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/WaitFor/Resource","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation404a358eb0bfedeb6ecd7ce5dc6c2cef/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction76b3e830a873425f8453eddd85c86925":{"id":"SingletonFunction76b3e830a873425f8453eddd85c86925","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction76b3e830a873425f8453eddd85c86925/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a":{"id":"SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction5c1898e096fb4e3e95d5f6c67f3ce41a/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f":{"id":"AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AwsApiCall","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMsendCommand1c27023c69a32461de2a0ddfc884d23f/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2":{"id":"AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AwsApiCall","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"WaitFor":{"id":"WaitFor","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.WaiterStateMachine","version":"0.0.0"},"children":{"IsCompleteProvider":{"id":"IsCompleteProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/IsCompleteProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/IsCompleteProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/IsCompleteProvider/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"TimeoutProvider":{"id":"TimeoutProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/TimeoutProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/TimeoutProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/TimeoutProvider/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Resource":{"id":"Resource","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/WaitFor/Resource","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/AwsApiCallSSMgetCommandInvocation8cffc809b96b591acbfcba480a4458a2/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-permission-integ":{"id":"test-efs-permission-integ","path":"test-efs-permission-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-permission-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-permission-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-permission-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-permission-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-permission-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-permission-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-permission-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-permission-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-permission-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-permission-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049":{"id":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]},"toPort":2049}}},"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049":{"id":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]},"toPort":2049}}},"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049":{"id":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]},"toPort":2049}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-permission-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/lambda"},"accessPointTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem/AccessPoint"}]}}}}}}},"WriteLambda":{"id":"WriteLambda","path":"test-efs-permission-integ/WriteLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"WriteLambdaServiceRoleDefaultPolicyEDE3046D","roles":[{"Ref":"WriteLambdaServiceRole903EC6B6"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/WriteLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegWriteLambdaA7AC4082","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'w') as f:\n f.write('Integ Test')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["WriteLambdaServiceRole903EC6B6","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/WriteLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"WriteLambda0E72B4A4"}]]},"retentionInDays":731}}}}}}},"ReadLambda":{"id":"ReadLambda","path":"test-efs-permission-integ/ReadLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":"elasticfilesystem:ClientMount","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"ReadLambdaServiceRoleDefaultPolicy6518FF35","roles":[{"Ref":"ReadLambdaServiceRole786C9B4A"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/ReadLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegReadLambda591FEE84","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n action = event.get('action', 'read')\n file_path = '/mnt/efs/integ-test.txt'\n \n if action == 'read':\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n elif action == 'write':\n with open(file_path, 'w') as f:\n f.write('Should fail')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except PermissionError as e:\n return {'statusCode': 403, 'body': json.dumps(f'Permission denied: {str(e)}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["ReadLambdaServiceRole786C9B4A","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/ReadLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"ReadLambda25A29444"}]]},"retentionInDays":731}}}}}}},"AnonymousLambda":{"id":"AnonymousLambda","path":"test-efs-permission-integ/AnonymousLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}}],"Version":"2012-10-17"},"policyName":"AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E","roles":[{"Ref":"AnonymousLambdaServiceRole53D2562D"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegAnonymousLambdaAFF78BE3","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["AnonymousLambdaServiceRole53D2562D","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/AnonymousLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"AnonymousLambda6BEDD8C7"}]]},"retentionInDays":731}}}}}}},"Exports":{"id":"Exports","path":"test-efs-permission-integ/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Output{\"Ref\":\"WriteLambda0E72B4A4\"}":{"id":"Output{\"Ref\":\"WriteLambda0E72B4A4\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"WriteLambda0E72B4A4\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Output{\"Ref\":\"ReadLambda25A29444\"}":{"id":"Output{\"Ref\":\"ReadLambda25A29444\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadLambda25A29444\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}":{"id":"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-permission-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-permission-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"EfsPermissionTest":{"id":"EfsPermissionTest","path":"EfsPermissionTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"EfsPermissionTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"EfsPermissionTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c":{"id":"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvoke60d18b84c11c66e9414556fc35df6d38":{"id":"LambdaInvoke60d18b84c11c66e9414556fc35df6d38","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59":{"id":"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816":{"id":"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.ts index 51fdbd986df66..37fbda43e39bc 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.ts @@ -1,4 +1,44 @@ +/** + * EFS Permission Integration Test Architecture + * + * AWS-Managed Lambda VPC Customer VPC + * ┌────────────────────┐ ┌─────────────────────────────┐ + * │ │ │ │ + * │ ┌──────────────┐ │ │ │ + * │ │ Write │──┼──────┼──┐ │ + * │ │ Lambda │ │ │ │ │ + * │ │ │ │ │ │ │ + * │ │ ✓ Write │ │ │ │ ┌──────────────┐ │ + * │ │ ✓ Read │ │ │ ├─►│ EFS File │ │ + * │ └──────────────┘ │ │ │ │ System │ │ + * │ grantReadWrite │ │ │ │ │ │ + * │ │ │ │ │ /mnt/efs │ │ + * │ ┌──────────────┐ │ │ │ └──────────────┘ │ + * │ │ Read │──┼──────┼──┤ │ + * │ │ Lambda │ │ │ │ │ + * │ │ │ │ │ │ │ + * │ │ ✓ Read │ │ │ │ │ + * │ │ ✗ Write │ │ │ │ │ + * │ └──────────────┘ │ │ │ │ + * │ grantRead │ │ │ │ + * │ │ │ │ │ + * │ ┌──────────────┐ │ │ │ │ + * │ │ Anonymous │──┼──────┼──X (no IAM perms) │ + * │ │ Lambda │ │ │ │ + * │ │ │ │ │ │ + * │ │ ✗ Access │ │ │ │ + * │ └──────────────┘ │ │ │ + * │ │ │ │ + * └────────────────────┘ └─────────────────────────────┘ + * + * Test validates: + * - WriteLambda: grantReadWrite → can write and read files + * - ReadLambda: grantRead → can read files, write fails with permission denied + * - AnonymousLambda: no grant → access denied + */ + import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as lambda from 'aws-cdk-lib/aws-lambda'; import * as cdk from 'aws-cdk-lib'; import { FileSystem } from 'aws-cdk-lib/aws-efs'; import * as integ from '@aws-cdk/integ-tests-alpha'; @@ -6,92 +46,135 @@ import * as integ from '@aws-cdk/integ-tests-alpha'; const app = new cdk.App(); const stack = new cdk.Stack(app, 'test-efs-permission-integ'); -const vpc = new ec2.Vpc(stack, 'Vpc'); +const vpc = new ec2.Vpc(stack, 'Vpc', { maxAzs: 3, natGateways: 1 }); const fileSystem = new FileSystem(stack, 'FileSystem', { vpc, removalPolicy: cdk.RemovalPolicy.DESTROY, }); -const createInstance = (id: string, initCommands: string[]) => { - const instance = new ec2.Instance(stack, id, { - vpc, - instanceType: ec2.InstanceType.of(ec2.InstanceClass.T4G, ec2.InstanceSize.NANO), - machineImage: ec2.MachineImage.latestAmazonLinux2023({ - cpuType: ec2.AmazonLinuxCpuType.ARM_64, - }), - ssmSessionPermissions: true, - init: ec2.CloudFormationInit.fromConfig( - new ec2.InitConfig(initCommands.map((command) => ec2.InitCommand.shellCommand(command))), - ), - initOptions: { - timeout: cdk.Duration.minutes(10), - }, - }); - fileSystem.connections.allowDefaultPortFrom(instance); - return instance; -}; -const writeInstance = createInstance('WriteInstance', [ - 'dnf install -y amazon-efs-utils', - 'mkdir /mnt/efs', - // https://docs.aws.amazon.com/efs/latest/ug/troubleshooting-efs-mounting.html#mount-fails-propegation - 'sleep 5m', - `mount -t efs -o tls,iam ${fileSystem.fileSystemId} /mnt/efs`, - 'echo \'Integ Test\' | tee /mnt/efs/integ-test.txt', -]); -writeInstance.instance.node.addDependency(fileSystem); -fileSystem.grantReadWrite(writeInstance); - -const readInstance = createInstance('ReadInstance', [ - 'dnf install -y amazon-efs-utils', - 'mkdir /mnt/efs', - 'sleep 5m', - `mount -t efs -o tls,iam ${fileSystem.fileSystemId} /mnt/efs`, -]); -readInstance.instance.node.addDependency(fileSystem); -fileSystem.grantRead(readInstance); - -const anonymousInstance = createInstance('AnonymousInstance', [ - 'dnf install -y amazon-efs-utils', - 'mkdir /mnt/efs', - 'sleep 5m', -]); +const accessPoint = fileSystem.addAccessPoint('AccessPoint', { + path: '/lambda', + createAcl: { + ownerGid: '1000', + ownerUid: '1000', + permissions: '755', + }, + posixUser: { + gid: '1000', + uid: '1000', + }, +}); -const test = new integ.IntegTest(app, 'EfsPermissionTest', { - testCases: [stack], +// Lambda that can write to EFS +const writeLambda = new lambda.Function(stack, 'WriteLambda', { + runtime: lambda.Runtime.determineLatestPythonRuntime(stack), + handler: 'index.handler', + code: lambda.Code.fromInline(` +import os +import json + +def handler(event, context): + try: + file_path = '/mnt/efs/integ-test.txt' + with open(file_path, 'w') as f: + f.write('Integ Test') + return {'statusCode': 200, 'body': json.dumps('Write successful')} + except Exception as e: + return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')} +`), + vpc, + filesystem: lambda.FileSystem.fromEfsAccessPoint(accessPoint, '/mnt/efs'), + timeout: cdk.Duration.seconds(30), }); +fileSystem.grantReadWrite(writeLambda); -const anonymousMountCommand = test.assertions.awsApiCall('SSM', 'sendCommand', { - InstanceIds: [anonymousInstance.instanceId], - DocumentName: 'AWS-RunShellScript', - Parameters: { - commands: [`mount -t efs -o tls,iam ${fileSystem.fileSystemId} /mnt/efs`], - }, +// Lambda that can only read from EFS +const readLambda = new lambda.Function(stack, 'ReadLambda', { + runtime: lambda.Runtime.determineLatestPythonRuntime(stack), + handler: 'index.handler', + code: lambda.Code.fromInline(` +import os +import json + +def handler(event, context): + try: + action = event.get('action', 'read') + file_path = '/mnt/efs/integ-test.txt' + + if action == 'read': + with open(file_path, 'r') as f: + content = f.read() + return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')} + elif action == 'write': + with open(file_path, 'w') as f: + f.write('Should fail') + return {'statusCode': 200, 'body': json.dumps('Write successful')} + except PermissionError as e: + return {'statusCode': 403, 'body': json.dumps(f'Permission denied: {str(e)}')} + except Exception as e: + return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')} +`), + vpc, + filesystem: lambda.FileSystem.fromEfsAccessPoint(accessPoint, '/mnt/efs'), + timeout: cdk.Duration.seconds(30), }); -test.assertions.awsApiCall('SSM', 'getCommandInvocation', { - CommandId: anonymousMountCommand.getAttString('Command.CommandId'), - InstanceId: anonymousInstance.instanceId, -}).expect(integ.ExpectedResult.objectLike({ - StandardErrorContent: "b'mount.nfs4: access denied by server while mounting 127.0.0.1:/'\nfailed to run commands: exit status 32", - Status: 'Failed', -})).waitForAssertions({ - totalTimeout: cdk.Duration.minutes(3), +fileSystem.grantRead(readLambda); + +// Lambda with no EFS permissions +const anonymousLambda = new lambda.Function(stack, 'AnonymousLambda', { + runtime: lambda.Runtime.determineLatestPythonRuntime(stack), + handler: 'index.handler', + code: lambda.Code.fromInline(` +import os +import json + +def handler(event, context): + try: + file_path = '/mnt/efs/integ-test.txt' + with open(file_path, 'r') as f: + content = f.read() + return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')} + except Exception as e: + return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')} +`), + vpc, + filesystem: lambda.FileSystem.fromEfsAccessPoint(accessPoint, '/mnt/efs'), + timeout: cdk.Duration.seconds(30), }); -const readFileCommand = test.assertions.awsApiCall('SSM', 'sendCommand', { - InstanceIds: [readInstance.instanceId], - DocumentName: 'AWS-RunShellScript', - Parameters: { - commands: ['cat /mnt/efs/integ-test.txt'], - }, +const test = new integ.IntegTest(app, 'EfsPermissionTest', { + testCases: [stack], }); -test.assertions.awsApiCall('SSM', 'getCommandInvocation', { - CommandId: readFileCommand.getAttString('Command.CommandId'), - InstanceId: readInstance.instanceId, + +// Test 1: WriteLambda can write to EFS +test.assertions.invokeFunction({ + functionName: writeLambda.functionName, }).expect(integ.ExpectedResult.objectLike({ - StandardOutputContent: 'Integ Test\n', - Status: 'Success', -})).waitForAssertions({ - totalTimeout: cdk.Duration.minutes(3), -}); + Payload: integ.ExpectedResult.stringLikeRegexp('.*Write successful.*'), +})); + +// Test 2: ReadLambda can read from EFS +test.assertions.invokeFunction({ + functionName: readLambda.functionName, + payload: JSON.stringify({ action: 'read' }), +}).expect(integ.ExpectedResult.objectLike({ + Payload: integ.ExpectedResult.stringLikeRegexp('.*Content: Integ Test.*'), +})); + +// Test 3: ReadLambda cannot write to EFS (should get permission denied) +test.assertions.invokeFunction({ + functionName: readLambda.functionName, + payload: JSON.stringify({ action: 'write' }), +}).expect(integ.ExpectedResult.objectLike({ + Payload: integ.ExpectedResult.stringLikeRegexp('.*Permission denied.*'), +})); + +// Test 4: AnonymousLambda cannot access EFS +test.assertions.invokeFunction({ + functionName: anonymousLambda.functionName, +}).expect(integ.ExpectedResult.objectLike({ + Payload: integ.ExpectedResult.stringLikeRegexp('.*Error.*'), +})); + app.synth(); From 0cf401842684d605173dc73b8a5c97b96674fca9 Mon Sep 17 00:00:00 2001 From: Pahud Hsieh Date: Thu, 4 Dec 2025 12:30:24 -0500 Subject: [PATCH 3/3] chore(efs): update integration test snapshots - Update manifest.json files across all EFS integration test snapshots - Regenerate CloudFormation template asset URLs for all test cases - Update tree.json files to reflect current construct tree state - Refresh assets.json files with latest asset configurations - Update EFS filesystem implementation to reflect snapshot changes - Regenerate test snapshots for efs-filesystem-one-zone integration test - Regenerate test snapshots for efs-filesystem-policy integration test - Regenerate test snapshots for efs-filesystem-protection integration test - Regenerate test snapshots for efs-filesystem-replication integration test - Regenerate test snapshots for efs-from-imported-subnet integration test - Regenerate test snapshots for efs-transition integration test - Regenerate test snapshots for efs integration test - Regenerate test snapshots for efs.permission integration test --- .../manifest.json | 102 ++++- .../test-efs-one-zone-integ.assets.json | 6 +- .../test-efs-one-zone-integ.template.json | 2 - .../tree.json | 2 +- .../manifest.json | 102 ++++- .../test-efs-integ.assets.json | 6 +- .../test-efs-integ.template.json | 1 - .../tree.json | 2 +- .../manifest.json | 86 +++- .../test-efs-protection-integ.assets.json | 6 +- .../test-efs-protection-integ.template.json | 1 - .../tree.json | 2 +- .../efsReplication.assets.json | 6 +- .../efsReplication.template.json | 3 - .../manifest.json | 98 ++++- .../tree.json | 2 +- .../efs-from-imported-subnet.assets.json | 6 +- .../efs-from-imported-subnet.template.json | 1 - .../manifest.json | 63 ++- .../tree.json | 2 +- .../manifest.json | 98 ++++- .../test-efs-transition-integ.assets.json | 6 +- .../test-efs-transition-integ.template.json | 1 - .../tree.json | 2 +- .../test/integ.efs.js.snapshot/manifest.json | 113 ++++- .../test-efs-integ.assets.json | 6 +- .../test-efs-integ.template.json | 1 - .../test/integ.efs.js.snapshot/tree.json | 2 +- ...efaultTestDeployAssert4DFC2F97.assets.json | 6 +- ...aultTestDeployAssert4DFC2F97.template.json | 8 +- .../manifest.json | 407 +++++++++++++++--- .../test-efs-permission-integ.assets.json | 6 +- .../test-efs-permission-integ.template.json | 1 - .../tree.json | 2 +- .../aws-efs/lib/efs-file-system.ts | 16 +- .../aws-efs/test/efs-file-system.test.ts | 5 - 36 files changed, 944 insertions(+), 235 deletions(-) diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json index 67286adc3069d..a82ac2dfdc433 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/manifest.json @@ -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}/2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/dd9480cd3dac249c21ad28ae3fd54bf7c24b350a08ac05a9905479123afe42aa.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -49,19 +49,37 @@ "/test-efs-one-zone-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,19 +121,37 @@ "/test-efs-one-zone-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet": [ @@ -157,15 +193,29 @@ "/test-efs-one-zone-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -195,15 +245,29 @@ "/test-efs-one-zone-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -287,7 +351,9 @@ "/test-efs-one-zone-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -317,7 +383,9 @@ "/test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json index 3dec7601c67e9..d585d304a6876 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e": { + "dd9480cd3dac249c21ad28ae3fd54bf7c24b350a08ac05a9905479123afe42aa": { "displayName": "test-efs-one-zone-integ Template", "source": { "path": "test-efs-one-zone-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-64cb0fd0": { + "current_account-current_region-777b47e5": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "2a23f3ce6790ac93d82dc64ada1cc04843db9aa33149c1834247ff3d83ab565e.json", + "objectKey": "dd9480cd3dac249c21ad28ae3fd54bf7c24b350a08ac05a9905479123afe42aa.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-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json index d5d696546fe76..4493ec9f6c445 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/test-efs-one-zone-integ.template.json @@ -523,7 +523,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -622,7 +621,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json index 31f344a5f0eed..4d48634777bce 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-one-zone.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-one-zone-integ":{"id":"test-efs-one-zone-integ","path":"test-efs-one-zone-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-one-zone-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet2EIP3C605A87","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet2NATGateway9182C01D"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-one-zone-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-one-zone-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-one-zone-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-one-zone-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}}}},"FileSystem2":{"id":"FileSystem2","path":"test-efs-one-zone-integ/FileSystem2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-one-zone-integ/FileSystem2/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem2C84D7800"},"securityGroups":[{"Fn::GetAtt":["FileSystem2EfsSecurityGroup2AF8F758","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-one-zone-integ-test":{"id":"test-efs-one-zone-integ-test","path":"test-efs-one-zone-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-one-zone-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-one-zone-integ":{"id":"test-efs-one-zone-integ","path":"test-efs-one-zone-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-one-zone-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}},"EIP":{"id":"EIP","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-one-zone-integ/Vpc/PublicSubnet2/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet2EIP3C605A87","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"},"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PublicSubnet2"}]}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-one-zone-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet2NATGateway9182C01D"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-one-zone-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-one-zone-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-one-zone-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-one-zone-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-one-zone-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-one-zone-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}}}},"FileSystem2":{"id":"FileSystem2","path":"test-efs-one-zone-integ/FileSystem2","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"availabilityZoneName":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-one-zone-integ/FileSystem2/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-one-zone-integ/FileSystem2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-one-zone-integ/FileSystem2/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem2C84D7800"},"securityGroups":[{"Fn::GetAtt":["FileSystem2EfsSecurityGroup2AF8F758","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-one-zone-integ-test":{"id":"test-efs-one-zone-integ-test","path":"test-efs-one-zone-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-one-zone-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-one-zone-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-one-zone-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json index a13b6ad39d515..14bed6b029660 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/manifest.json @@ -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}/41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/b13e48720046fdf739bfc169095ef5bb95c707d50764842c8a2c6bdfaa07c3e1.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,11 @@ "/test-efs-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "maxAzs": "*", + "natGateways": "*", + "restrictDefaultSecurityGroup": false + } } ], "/test-efs-integ/Vpc/Resource": [ @@ -49,19 +53,37 @@ "/test-efs-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,15 +125,29 @@ "/test-efs-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PublicSubnet2/Subnet": [ @@ -141,15 +177,29 @@ "/test-efs-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -179,15 +229,29 @@ "/test-efs-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -241,7 +305,9 @@ "/test-efs-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -265,7 +331,9 @@ "/test-efs-integ/AccessPoint": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "fileSystem": "*" + } } ], "/test-efs-integ/AccessPoint/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json index ed95d122a0314..9b146765350eb 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.assets.json @@ -1,16 +1,16 @@ { "version": "48.0.0", "files": { - "41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c": { + "b13e48720046fdf739bfc169095ef5bb95c707d50764842c8a2c6bdfaa07c3e1": { "displayName": "test-efs-integ Template", "source": { "path": "test-efs-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-7ba0ff9d": { + "current_account-current_region-dd3458d3": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "41903263a28287554b7819cd6c8a48a6e07551b1f5b2ffdf7b29d6cc6012ce7c.json", + "objectKey": "b13e48720046fdf739bfc169095ef5bb95c707d50764842c8a2c6bdfaa07c3e1.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-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json index b469b6dea3535..78f1031c53953 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/test-efs-integ.template.json @@ -422,7 +422,6 @@ }, { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json index 29babb77a810e..c88d8970adad2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-policy.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":"elasticfilesystem:ClientRootAccess","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"rootDirectory":{},"accessPointTags":[{"key":"Name","value":"MyAccessPoint"}]}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystemPolicyTest":{"id":"FileSystemPolicyTest","path":"FileSystemPolicyTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"FileSystemPolicyTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"FileSystemPolicyTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"FileSystemPolicyTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"maxAzs":"*","natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":"elasticfilesystem:ClientRootAccess","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/AccessPoint","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.AccessPoint","version":"0.0.0","metadata":[{"fileSystem":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/AccessPoint/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnAccessPoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"rootDirectory":{},"accessPointTags":[{"key":"Name","value":"MyAccessPoint"}]}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"FileSystemPolicyTest":{"id":"FileSystemPolicyTest","path":"FileSystemPolicyTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"FileSystemPolicyTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"FileSystemPolicyTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"FileSystemPolicyTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"FileSystemPolicyTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json index f4381ad5554f4..cc5d3dd9b1d12 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/manifest.json @@ -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}/9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/831055f8255b649f801e937a075dacea6537d80ada3737875516d01ca19c4586.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,9 @@ "/test-efs-protection-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "natGateways": "*" + } } ], "/test-efs-protection-integ/Vpc/Resource": [ @@ -49,15 +51,29 @@ "/test-efs-protection-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-protection-integ/Vpc/PublicSubnet1/Subnet": [ @@ -87,15 +103,29 @@ "/test-efs-protection-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-protection-integ/Vpc/PublicSubnet2/Subnet": [ @@ -125,11 +155,25 @@ "/test-efs-protection-integ/Vpc/IsolatedSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } } ], "/test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet": [ @@ -153,11 +197,25 @@ "/test-efs-protection-integ/Vpc/IsolatedSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } } ], "/test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet": [ @@ -235,7 +293,9 @@ "/test-efs-protection-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json index 6eb830e9cdf78..27b8bd3e5202b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da": { + "831055f8255b649f801e937a075dacea6537d80ada3737875516d01ca19c4586": { "displayName": "test-efs-protection-integ Template", "source": { "path": "test-efs-protection-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-6c094f36": { + "current_account-current_region-41ad944f": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "9e766f9d8c3dcfcef5810b9f00ad8bd4cbe5940e97c1524a99fa75d6f99df7da.json", + "objectKey": "831055f8255b649f801e937a075dacea6537d80ada3737875516d01ca19c4586.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-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json index fccf1dc1fc8be..3a84dc0935f26 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/test-efs-protection-integ.template.json @@ -419,7 +419,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json index 47748e983534f..eb442fb28f353 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-protection.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-protection-integ":{"id":"test-efs-protection-integ","path":"test-efs-protection-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-protection-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-protection-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-protection-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"test-efs-protection-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-protection-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-protection-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-protection-integ-test":{"id":"test-efs-protection-integ-test","path":"test-efs-protection-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-protection-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-protection-integ":{"id":"test-efs-protection-integ","path":"test-efs-protection-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-protection-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-protection-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-protection-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-protection-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-protection-integ/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"test-efs-protection-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-protection-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-protection-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-protection-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-protection-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-protection-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-protection-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-protection-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"test-efs-protection-integ/FileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-protection-integ-test":{"id":"test-efs-protection-integ-test","path":"test-efs-protection-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-protection-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-protection-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-protection-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json index 06d79bf9c51f9..9bb7218d10c7d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.assets.json @@ -15,16 +15,16 @@ } } }, - "3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e": { + "fda0539df379d22e7110b78dd5f1a4014e9978158aa94a0c6300c2748f1a95dd": { "displayName": "efsReplication Template", "source": { "path": "efsReplication.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-789d4b0c": { + "current_account-current_region-844a4ec1": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e.json", + "objectKey": "fda0539df379d22e7110b78dd5f1a4014e9978158aa94a0c6300c2748f1a95dd.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-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json index d632d09f40b63..fed04cb3404ed 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/efsReplication.template.json @@ -454,7 +454,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -578,7 +577,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], @@ -691,7 +689,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json index 672b3c575eec5..761125fb3cfe3 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/manifest.json @@ -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}/3fb64be322eb72684f2cb4ea09b31cc68e139c39381248c0f65179c11d3a951e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/fda0539df379d22e7110b78dd5f1a4014e9978158aa94a0c6300c2748f1a95dd.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,9 @@ "/efsReplication/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "natGateways": "*" + } } ], "/efsReplication/Vpc/Resource": [ @@ -49,15 +51,29 @@ "/efsReplication/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/efsReplication/Vpc/PublicSubnet1/Subnet": [ @@ -87,15 +103,29 @@ "/efsReplication/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/efsReplication/Vpc/PublicSubnet2/Subnet": [ @@ -125,11 +155,25 @@ "/efsReplication/Vpc/IsolatedSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } } ], "/efsReplication/Vpc/IsolatedSubnet1/Subnet": [ @@ -153,11 +197,25 @@ "/efsReplication/Vpc/IsolatedSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } } ], "/efsReplication/Vpc/IsolatedSubnet2/Subnet": [ @@ -223,7 +281,9 @@ "/efsReplication/Key": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "removalPolicy": "destroy" + } } ], "/efsReplication/Key/Resource": [ @@ -247,7 +307,9 @@ "/efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource": [ @@ -283,7 +345,9 @@ "/efsReplication/destinationFileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/efsReplication/destinationFileSystem/EfsSecurityGroup/Resource": [ @@ -319,7 +383,9 @@ "/efsReplication/existFileSystemReplication/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json index 7989490491f16..0689cbb50d69a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-filesystem-replication.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"efsReplication":{"id":"efsReplication","path":"efsReplication","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"efsReplication/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"efsReplication/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"efsReplication/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"efsReplication/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"efsReplication/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"efsReplication/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efsReplication/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Key":{"id":"Key","path":"efsReplication/Key","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Key/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"oneZoneReplicationFileSystem":{"id":"oneZoneReplicationFileSystem","path":"efsReplication/oneZoneReplicationFileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"kmsKeyId":{"Fn::GetAtt":["Key961B73FD","Arn"]},"region":"us-east-1","availabilityZoneName":"us-east-1a"}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"destinationFileSystem":{"id":"destinationFileSystem","path":"efsReplication/destinationFileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/destinationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/destinationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"existFileSystemReplication":{"id":"existFileSystemReplication","path":"efsReplication/existFileSystemReplication","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"region":{"Ref":"AWS::Region"}}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/existFileSystemReplication/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplication/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplication/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"efsReplicationIntegTest":{"id":"efsReplicationIntegTest","path":"efsReplicationIntegTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efsReplicationIntegTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efsReplicationIntegTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efsReplicationIntegTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"efsReplication":{"id":"efsReplication","path":"efsReplication","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"efsReplication/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"efsReplication/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"efsReplication/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efsReplication/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"IsolatedSubnet1":{"id":"IsolatedSubnet1","path":"efsReplication/Vpc/IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet1RouteTable4771E3E5"},"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}}}},"IsolatedSubnet2":{"id":"IsolatedSubnet2","path":"efsReplication/Vpc/IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"efsReplication/Vpc/IsolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.192.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"Isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efsReplication/Vpc/IsolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc/IsolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efsReplication/Vpc/IsolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcIsolatedSubnet2RouteTable1D30AF7D"},"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"IGW":{"id":"IGW","path":"efsReplication/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efsReplication/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efsReplication/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"efsReplication/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"efsReplication/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Key":{"id":"Key","path":"efsReplication/Key","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.Key","version":"0.0.0","metadata":[{"removalPolicy":"destroy"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/Key/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.CfnKey","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"oneZoneReplicationFileSystem":{"id":"oneZoneReplicationFileSystem","path":"efsReplication/oneZoneReplicationFileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"kmsKeyId":{"Fn::GetAtt":["Key961B73FD","Arn"]},"region":"us-east-1","availabilityZoneName":"us-east-1a"}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/oneZoneReplicationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/oneZoneReplicationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/oneZoneReplicationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"oneZoneReplicationFileSystem0A6BB0D2"},"securityGroups":[{"Fn::GetAtt":["oneZoneReplicationFileSystemEfsSecurityGroupD1C9EA27","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"destinationFileSystem":{"id":"destinationFileSystem","path":"efsReplication/destinationFileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemProtection":{"replicationOverwriteProtection":"DISABLED"},"fileSystemTags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/destinationFileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/destinationFileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/destinationFileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/destinationFileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/destinationFileSystem/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"securityGroups":[{"Fn::GetAtt":["destinationFileSystemEfsSecurityGroupB67C2699","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"existFileSystemReplication":{"id":"existFileSystemReplication","path":"efsReplication/existFileSystemReplication","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"replicationConfiguration":{"destinations":[{"fileSystemId":{"Ref":"destinationFileSystem0FAD62DA"},"region":{"Ref":"AWS::Region"}}]},"fileSystemTags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efsReplication/existFileSystemReplication/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efsReplication/existFileSystemReplication/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efsReplication/existFileSystemReplication"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-IsolatedSubnet1":{"id":"EfsMountTarget-IsolatedSubnet1","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet1SubnetE48C5737"}}}},"EfsMountTarget-IsolatedSubnet2":{"id":"EfsMountTarget-IsolatedSubnet2","path":"efsReplication/existFileSystemReplication/EfsMountTarget-IsolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"existFileSystemReplication3C6768D0"},"securityGroups":[{"Fn::GetAtt":["existFileSystemReplicationEfsSecurityGroup516080B0","GroupId"]}],"subnetId":{"Ref":"VpcIsolatedSubnet2Subnet16364B91"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplication/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplication/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"efsReplicationIntegTest":{"id":"efsReplicationIntegTest","path":"efsReplicationIntegTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efsReplicationIntegTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efsReplicationIntegTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efsReplicationIntegTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efsReplicationIntegTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json index 3ae65edc692e9..47442b72d0515 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.assets.json @@ -1,16 +1,16 @@ { "version": "48.0.0", "files": { - "9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55": { + "27adc31668062f56451f9701f00569579deabb448d3f1a7fd1eef2927f47ff35": { "displayName": "efs-from-imported-subnet Template", "source": { "path": "efs-from-imported-subnet.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-1cde8880": { + "current_account-current_region-d0c196df": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55.json", + "objectKey": "27adc31668062f56451f9701f00569579deabb448d3f1a7fd1eef2927f47ff35.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-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json index 1b8e964ff5bdd..2781cdbfabb8e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/efs-from-imported-subnet.template.json @@ -225,7 +225,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json index 7c9f7b63f91c1..ca56e348f2c07 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/manifest.json @@ -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}/9c80e5ef9145946e8482e698d75475fe4f62e32768e50a64d6e30a27a8439b55.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/27adc31668062f56451f9701f00569579deabb448d3f1a7fd1eef2927f47ff35.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,16 @@ "/efs-from-imported-subnet/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "natGateways": "*", + "restrictDefaultSecurityGroup": false, + "subnetConfiguration": [ + { + "name": "*", + "subnetType": "Public" + } + ] + } } ], "/efs-from-imported-subnet/Vpc/Resource": [ @@ -49,19 +58,37 @@ "/efs-from-imported-subnet/Vpc/testSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/efs-from-imported-subnet/Vpc/testSubnet1/Subnet": [ @@ -103,15 +130,29 @@ "/efs-from-imported-subnet/Vpc/testSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/efs-from-imported-subnet/Vpc/testSubnet2/Subnet": [ @@ -175,7 +216,9 @@ "/efs-from-imported-subnet/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json index 122467996a4e9..f9bd99f7dd86a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-from-imported-subnet.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"efs-from-imported-subnet":{"id":"efs-from-imported-subnet","path":"efs-from-imported-subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"efs-from-imported-subnet/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"testSubnet1":{"id":"testSubnet1","path":"efs-from-imported-subnet/Vpc/testSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"}}}},"EIP":{"id":"EIP","path":"efs-from-imported-subnet/Vpc/testSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"efs-from-imported-subnet/Vpc/testSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpctestSubnet1EIPEE8206FB","AllocationId"]},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"},"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}}}},"testSubnet2":{"id":"testSubnet2","path":"efs-from-imported-subnet/Vpc/testSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"},"subnetId":{"Ref":"VpctestSubnet2Subnet3B2E5192"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"}}}}}},"IGW":{"id":"IGW","path":"efs-from-imported-subnet/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efs-from-imported-subnet/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"FileSystem":{"id":"FileSystem","path":"efs-from-imported-subnet/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-Subnet":{"id":"EfsMountTarget-Subnet","path":"efs-from-imported-subnet/FileSystem/EfsMountTarget-Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"efs-from-imported-subnet-test":{"id":"efs-from-imported-subnet-test","path":"efs-from-imported-subnet-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efs-from-imported-subnet-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efs-from-imported-subnet-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"efs-from-imported-subnet":{"id":"efs-from-imported-subnet","path":"efs-from-imported-subnet","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"efs-from-imported-subnet/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*","restrictDefaultSecurityGroup":false,"subnetConfiguration":[{"name":"*","subnetType":"Public"}]}]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"testSubnet1":{"id":"testSubnet1","path":"efs-from-imported-subnet/Vpc/testSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet1RouteTableF77D2377"}}}},"EIP":{"id":"EIP","path":"efs-from-imported-subnet/Vpc/testSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"efs-from-imported-subnet/Vpc/testSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpctestSubnet1EIPEE8206FB","AllocationId"]},"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"},"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet1"}]}}}}},"testSubnet2":{"id":"testSubnet2","path":"efs-from-imported-subnet/Vpc/testSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Vpc/testSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":true,"tags":[{"key":"aws-cdk:subnet-name","value":"test"},{"key":"aws-cdk:subnet-type","value":"Public"},{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"efs-from-imported-subnet/Vpc/testSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc/testSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"efs-from-imported-subnet/Vpc/testSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"},"subnetId":{"Ref":"VpctestSubnet2Subnet3B2E5192"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"efs-from-imported-subnet/Vpc/testSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpctestSubnet2RouteTable25D207BE"}}}}}},"IGW":{"id":"IGW","path":"efs-from-imported-subnet/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"efs-from-imported-subnet/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"efs-from-imported-subnet/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Subnet":{"id":"Subnet","path":"efs-from-imported-subnet/Subnet","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"FileSystem":{"id":"FileSystem","path":"efs-from-imported-subnet/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"efs-from-imported-subnet/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"efs-from-imported-subnet/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-Subnet":{"id":"EfsMountTarget-Subnet","path":"efs-from-imported-subnet/FileSystem/EfsMountTarget-Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpctestSubnet1Subnet43126774"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"efs-from-imported-subnet-test":{"id":"efs-from-imported-subnet-test","path":"efs-from-imported-subnet-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"efs-from-imported-subnet-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"efs-from-imported-subnet-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"efs-from-imported-subnet-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json index dbd684fd1c637..7481dd00dca2d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/manifest.json @@ -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}/68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/bb518cf58c50a17befbb23053ab0030d0dcdfcca764f1d1fd7fdfd544b16c9e0.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,11 @@ "/test-efs-transition-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "maxAzs": "*", + "natGateways": "*", + "restrictDefaultSecurityGroup": false + } } ], "/test-efs-transition-integ/Vpc/Resource": [ @@ -49,19 +53,37 @@ "/test-efs-transition-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-transition-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,15 +125,29 @@ "/test-efs-transition-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-transition-integ/Vpc/PublicSubnet2/Subnet": [ @@ -141,15 +177,29 @@ "/test-efs-transition-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -179,15 +229,29 @@ "/test-efs-transition-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -241,7 +305,9 @@ "/test-efs-transition-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json index 7b67c0dc0b979..aa7ad051de599 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.assets.json @@ -1,16 +1,16 @@ { "version": "48.0.0", "files": { - "68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f": { + "bb518cf58c50a17befbb23053ab0030d0dcdfcca764f1d1fd7fdfd544b16c9e0": { "displayName": "test-efs-transition-integ Template", "source": { "path": "test-efs-transition-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-c2cfbb53": { + "current_account-current_region-311fcff2": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "68886240486627f295ecdaacef31b84f14a9f39ce075f885fcef1e47f800a41f.json", + "objectKey": "bb518cf58c50a17befbb23053ab0030d0dcdfcca764f1d1fd7fdfd544b16c9e0.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-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json index 7d6e774eecdfe..ab427d7d6495a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/test-efs-transition-integ.template.json @@ -363,7 +363,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json index 7745eeab529ce..0a8e93c9ac6a7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs-transition.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-transition-integ":{"id":"test-efs-transition-integ","path":"test-efs-transition-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-transition-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-transition-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-transition-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-transition-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-transition-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-transition-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-transition-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-transition-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-transition-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-transition-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"lifecyclePolicies":[{"transitionToIa":"AFTER_14_DAYS"},{"transitionToPrimaryStorageClass":"AFTER_1_ACCESS"},{"transitionToArchive":"AFTER_90_DAYS"}],"fileSystemTags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"throughputMode":"elastic"}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-transition-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-transition-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-transition-integ":{"id":"test-efs-transition-integ","path":"test-efs-transition-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-transition-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"maxAzs":"*","natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-transition-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-transition-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-transition-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-transition-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-transition-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-transition-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-transition-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-transition-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-transition-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-transition-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-transition-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"lifecyclePolicies":[{"transitionToIa":"AFTER_14_DAYS"},{"transitionToPrimaryStorageClass":"AFTER_1_ACCESS"},{"transitionToArchive":"AFTER_90_DAYS"}],"fileSystemTags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"throughputMode":"elastic"}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-transition-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-transition-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-transition-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-transition-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-transition-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-transition-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json index 5e94a6b7b651a..50b62e49b6116 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/manifest.json @@ -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}/06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/ed98b6d2edc5886928d902869dccfdcd6aa91cee6cb8954c4f5e58825fee3b25.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,11 @@ "/test-efs-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "maxAzs": "*", + "natGateways": "*", + "restrictDefaultSecurityGroup": false + } } ], "/test-efs-integ/Vpc/Resource": [ @@ -49,19 +53,37 @@ "/test-efs-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,15 +125,29 @@ "/test-efs-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PublicSubnet2/Subnet": [ @@ -141,15 +177,29 @@ "/test-efs-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -179,15 +229,29 @@ "/test-efs-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -245,7 +309,9 @@ "/test-efs-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } } ], "/test-efs-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -269,7 +335,20 @@ "/test-efs-integ/FileSystem/AccessPoint": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "fileSystem": "*", + "createAcl": { + "ownerGid": "*", + "ownerUid": "*", + "permissions": "*" + }, + "path": "*", + "posixUser": { + "gid": "*", + "uid": "*" + }, + "clientToken": "*" + } } ], "/test-efs-integ/FileSystem/AccessPoint/Resource": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json index 5d82bfa6f088a..07083a71d3310 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.assets.json @@ -1,16 +1,16 @@ { "version": "48.0.0", "files": { - "06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874": { + "ed98b6d2edc5886928d902869dccfdcd6aa91cee6cb8954c4f5e58825fee3b25": { "displayName": "test-efs-integ Template", "source": { "path": "test-efs-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-c71b3307": { + "current_account-current_region-aeee1309": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "06bb69a962257467d8bd3c26dd23d698eac6ce2243d699ae83f6f390552e2874.json", + "objectKey": "ed98b6d2edc5886928d902869dccfdcd6aa91cee6cb8954c4f5e58825fee3b25.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-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json index 424af2fe258ee..9186b1ef60f64 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/test-efs-integ.template.json @@ -363,7 +363,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json index 7844f8ce4b1ab..9c243455c4f9f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"clientToken":"client-token","fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/custom-path"},"accessPointTags":[{"key":"Name","value":"test-efs-integ/FileSystem/AccessPoint"}]}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-integ":{"id":"test-efs-integ","path":"test-efs-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"maxAzs":"*","natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.AccessPoint","version":"0.0.0","metadata":[{"fileSystem":"*","createAcl":{"ownerGid":"*","ownerUid":"*","permissions":"*"},"path":"*","posixUser":{"gid":"*","uid":"*"},"clientToken":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnAccessPoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"clientToken":"client-token","fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/custom-path"},"accessPointTags":[{"key":"Name","value":"test-efs-integ/FileSystem/AccessPoint"}]}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"test-efs-integ-test":{"id":"test-efs-integ-test","path":"test-efs-integ-test","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"test-efs-integ-test/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"test-efs-integ-test/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"test-efs-integ-test/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json index 9c81c0d69bb29..410a35dc4f6c5 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.assets.json @@ -14,16 +14,16 @@ } } }, - "7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e": { + "37648e6376d635c9dbf4cd9662cd6fd1d755795fc8a7a41fcabb3c19870d8e92": { "displayName": "EfsPermissionTestDefaultTestDeployAssert4DFC2F97 Template", "source": { "path": "EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-433d30f2": { + "current_account-current_region-d60d60c1": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e.json", + "objectKey": "37648e6376d635c9dbf4cd9662cd6fd1d755795fc8a7a41fcabb3c19870d8e92.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-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json index c04b0b3d733a7..8ce3a365353a3 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/EfsPermissionTestDefaultTestDeployAssert4DFC2F97.template.json @@ -27,7 +27,7 @@ } }, "flattenResponse": "false", - "salt": "1764856235178" + "salt": "1764866615884" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" @@ -287,7 +287,7 @@ "Payload": "\"{\\\"action\\\":\\\"read\\\"}\"" }, "flattenResponse": "false", - "salt": "1764856235179" + "salt": "1764866615885" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" @@ -335,7 +335,7 @@ "Payload": "\"{\\\"action\\\":\\\"write\\\"}\"" }, "flattenResponse": "false", - "salt": "1764856235179" + "salt": "1764866615886" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" @@ -382,7 +382,7 @@ } }, "flattenResponse": "false", - "salt": "1764856235179" + "salt": "1764866615886" }, "UpdateReplacePolicy": "Delete", "DeletionPolicy": "Delete" diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json index fb5813cf51541..4fe435dc96efa 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/manifest.json @@ -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}/e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/7dc54ac692b80bcb0251905eb72c91807bad3e9dac09b3e4c38fdea1c4538663.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -37,7 +37,10 @@ "/test-efs-permission-integ/Vpc": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "maxAzs": "*", + "natGateways": "*" + } } ], "/test-efs-permission-integ/Vpc/Resource": [ @@ -49,19 +52,37 @@ "/test-efs-permission-integ/Vpc/PublicSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addNatGateway": [ + "*" + ] + } } ], "/test-efs-permission-integ/Vpc/PublicSubnet1/Subnet": [ @@ -103,15 +124,29 @@ "/test-efs-permission-integ/Vpc/PublicSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": true, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-permission-integ/Vpc/PublicSubnet2/Subnet": [ @@ -141,15 +176,29 @@ "/test-efs-permission-integ/Vpc/PrivateSubnet1": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet": [ @@ -179,15 +228,29 @@ "/test-efs-permission-integ/Vpc/PrivateSubnet2": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": false, + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": {} } ], "/test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet": [ @@ -275,19 +338,42 @@ "/test-efs-permission-integ/FileSystem/EfsSecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addIngressRule": [ + "*", + {}, + "*", + true + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addIngressRule": [ + "*", + {}, + "*", + true + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addIngressRule": [ + "*", + {}, + "*", + true + ] + } } ], "/test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource": [ @@ -329,7 +415,19 @@ "/test-efs-permission-integ/FileSystem/AccessPoint": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "fileSystem": "*", + "path": "*", + "createAcl": { + "ownerGid": "*", + "ownerUid": "*", + "permissions": "*" + }, + "posixUser": { + "gid": "*", + "uid": "*" + } + } } ], "/test-efs-permission-integ/FileSystem/AccessPoint/Resource": [ @@ -341,33 +439,60 @@ "/test-efs-permission-integ/WriteLambda": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "runtime": "*", + "handler": "*", + "code": "*", + "vpc": "*", + "filesystem": "*", + "timeout": "*" + } } ], "/test-efs-permission-integ/WriteLambda/ServiceRole": [ { - "type": "aws:cdk:analytics:construct", - "data": "*" + "type": "aws:cdk:warning", + "data": "Failed to add construct metadata for node [ServiceRole]. Reason: ValidationError: The result of fromAwsManagedPolicyName can not be used in this API [ack: @aws-cdk/core:addConstructMetadataFailed]" }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } } ], "/test-efs-permission-integ/WriteLambda/ServiceRole/ImportServiceRole": [ @@ -389,23 +514,43 @@ }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } } ], "/test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy/Resource": [ @@ -417,11 +562,23 @@ "/test-efs-permission-integ/WriteLambda/SecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*", + "description": "*", + "allowAllOutbound": "*", + "allowAllIpv6Outbound": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addEgressRule": [ + "*", + {}, + "*", + false + ] + } }, { "type": "aws:cdk:warning", @@ -443,7 +600,9 @@ "/test-efs-permission-integ/WriteLambda/LogGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "logGroupName": "*" + } } ], "/test-efs-permission-integ/WriteLambda/LogGroup/Resource": [ @@ -455,33 +614,60 @@ "/test-efs-permission-integ/ReadLambda": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "runtime": "*", + "handler": "*", + "code": "*", + "vpc": "*", + "filesystem": "*", + "timeout": "*" + } } ], "/test-efs-permission-integ/ReadLambda/ServiceRole": [ { - "type": "aws:cdk:analytics:construct", - "data": "*" + "type": "aws:cdk:warning", + "data": "Failed to add construct metadata for node [ServiceRole]. Reason: ValidationError: The result of fromAwsManagedPolicyName can not be used in this API [ack: @aws-cdk/core:addConstructMetadataFailed]" }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } } ], "/test-efs-permission-integ/ReadLambda/ServiceRole/ImportServiceRole": [ @@ -503,23 +689,43 @@ }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } } ], "/test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy/Resource": [ @@ -531,11 +737,23 @@ "/test-efs-permission-integ/ReadLambda/SecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*", + "description": "*", + "allowAllOutbound": "*", + "allowAllIpv6Outbound": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addEgressRule": [ + "*", + {}, + "*", + false + ] + } }, { "type": "aws:cdk:warning", @@ -557,7 +775,9 @@ "/test-efs-permission-integ/ReadLambda/LogGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "logGroupName": "*" + } } ], "/test-efs-permission-integ/ReadLambda/LogGroup/Resource": [ @@ -569,29 +789,52 @@ "/test-efs-permission-integ/AnonymousLambda": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "runtime": "*", + "handler": "*", + "code": "*", + "vpc": "*", + "filesystem": "*", + "timeout": "*" + } } ], "/test-efs-permission-integ/AnonymousLambda/ServiceRole": [ { - "type": "aws:cdk:analytics:construct", - "data": "*" + "type": "aws:cdk:warning", + "data": "Failed to add construct metadata for node [ServiceRole]. Reason: ValidationError: The result of fromAwsManagedPolicyName can not be used in this API [ack: @aws-cdk/core:addConstructMetadataFailed]" }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachInlinePolicy": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addToPrincipalPolicy": [ + {} + ] + } } ], "/test-efs-permission-integ/AnonymousLambda/ServiceRole/ImportServiceRole": [ @@ -613,19 +856,35 @@ }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "attachToRole": [ + "*" + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addStatements": [ + {} + ] + } } ], "/test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy/Resource": [ @@ -637,11 +896,23 @@ "/test-efs-permission-integ/AnonymousLambda/SecurityGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "vpc": "*", + "description": "*", + "allowAllOutbound": "*", + "allowAllIpv6Outbound": "*" + } }, { "type": "aws:cdk:analytics:method", - "data": "*" + "data": { + "addEgressRule": [ + "*", + {}, + "*", + false + ] + } }, { "type": "aws:cdk:warning", @@ -663,7 +934,9 @@ "/test-efs-permission-integ/AnonymousLambda/LogGroup": [ { "type": "aws:cdk:analytics:construct", - "data": "*" + "data": { + "logGroupName": "*" + } } ], "/test-efs-permission-integ/AnonymousLambda/LogGroup/Resource": [ @@ -722,7 +995,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}/7490035c952c364daa90ba8f3c56f0d18bc1f8d1556eca09d6b1295ad553a91e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/37648e6376d635c9dbf4cd9662cd6fd1d755795fc8a7a41fcabb3c19870d8e92.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json index 1222f6da57e0d..4ccfb6efa1fa9 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.assets.json @@ -15,16 +15,16 @@ } } }, - "e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317": { + "7dc54ac692b80bcb0251905eb72c91807bad3e9dac09b3e4c38fdea1c4538663": { "displayName": "test-efs-permission-integ Template", "source": { "path": "test-efs-permission-integ.template.json", "packaging": "file" }, "destinations": { - "current_account-current_region-630553af": { + "current_account-current_region-c0b118a3": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "e9795ca7ec0c6cd17714006abc71946446bf880fdd817c2ff4b8cea9d390f317.json", + "objectKey": "7dc54ac692b80bcb0251905eb72c91807bad3e9dac09b3e4c38fdea1c4538663.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-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json index fd0010864c7ce..d4a634a6320eb 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/test-efs-permission-integ.template.json @@ -479,7 +479,6 @@ "Statement": [ { "Action": [ - "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite" ], diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json index 0685f1d459420..cb27d9f5e239f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-efs/test/integ.efs.permission.js.snapshot/tree.json @@ -1 +1 @@ -{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"test-efs-permission-integ":{"id":"test-efs-permission-integ","path":"test-efs-permission-integ","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-permission-integ/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-permission-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-permission-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-permission-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-permission-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-permission-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-permission-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-permission-integ/Vpc/IGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-permission-integ/Vpc/VPCGW","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-permission-integ/FileSystem","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049":{"id":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]},"toPort":2049}}},"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049":{"id":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]},"toPort":2049}}},"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049":{"id":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]},"toPort":2049}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-permission-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/lambda"},"accessPointTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem/AccessPoint"}]}}}}}}},"WriteLambda":{"id":"WriteLambda","path":"test-efs-permission-integ/WriteLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"WriteLambdaServiceRoleDefaultPolicyEDE3046D","roles":[{"Ref":"WriteLambdaServiceRole903EC6B6"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/WriteLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegWriteLambdaA7AC4082","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'w') as f:\n f.write('Integ Test')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["WriteLambdaServiceRole903EC6B6","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/WriteLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"WriteLambda0E72B4A4"}]]},"retentionInDays":731}}}}}}},"ReadLambda":{"id":"ReadLambda","path":"test-efs-permission-integ/ReadLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":"elasticfilesystem:ClientMount","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"ReadLambdaServiceRoleDefaultPolicy6518FF35","roles":[{"Ref":"ReadLambdaServiceRole786C9B4A"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/ReadLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegReadLambda591FEE84","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n action = event.get('action', 'read')\n file_path = '/mnt/efs/integ-test.txt'\n \n if action == 'read':\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n elif action == 'write':\n with open(file_path, 'w') as f:\n f.write('Should fail')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except PermissionError as e:\n return {'statusCode': 403, 'body': json.dumps(f'Permission denied: {str(e)}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["ReadLambdaServiceRole786C9B4A","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/ReadLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"ReadLambda25A29444"}]]},"retentionInDays":731}}}}}}},"AnonymousLambda":{"id":"AnonymousLambda","path":"test-efs-permission-integ/AnonymousLambda","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*"]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*","*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}}],"Version":"2012-10-17"},"policyName":"AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E","roles":[{"Ref":"AnonymousLambdaServiceRole53D2562D"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegAnonymousLambdaAFF78BE3","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["AnonymousLambdaServiceRole53D2562D","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/AnonymousLambda/LogGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/LogGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"AnonymousLambda6BEDD8C7"}]]},"retentionInDays":731}}}}}}},"Exports":{"id":"Exports","path":"test-efs-permission-integ/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Output{\"Ref\":\"WriteLambda0E72B4A4\"}":{"id":"Output{\"Ref\":\"WriteLambda0E72B4A4\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"WriteLambda0E72B4A4\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Output{\"Ref\":\"ReadLambda25A29444\"}":{"id":"Output{\"Ref\":\"ReadLambda25A29444\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadLambda25A29444\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}":{"id":"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-permission-integ/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-permission-integ/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"EfsPermissionTest":{"id":"EfsPermissionTest","path":"EfsPermissionTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"EfsPermissionTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"EfsPermissionTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c":{"id":"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvoke60d18b84c11c66e9414556fc35df6d38":{"id":"LambdaInvoke60d18b84c11c66e9414556fc35df6d38","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59":{"id":"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816":{"id":"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Invoke","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/AssertionResults","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"test-efs-permission-integ":{"id":"test-efs-permission-integ","path":"test-efs-permission-integ","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"test-efs-permission-integ/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"maxAzs":"*","natGateways":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"test-efs-permission-integ/Vpc/PublicSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{},{"addNatGateway":["*"]}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet1RouteTable6C95E38E"}}}},"EIP":{"id":"EIP","path":"test-efs-permission-integ/Vpc/PublicSubnet1/EIP","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnEIP","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::EIP","aws:cdk:cloudformation:props":{"domain":"vpc","tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"test-efs-permission-integ/Vpc/PublicSubnet1/NATGateway","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnNatGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::NatGateway","aws:cdk:cloudformation:props":{"allocationId":{"Fn::GetAtt":["VpcPublicSubnet1EIPD7E02669","AllocationId"]},"subnetId":{"Ref":"VpcPublicSubnet1Subnet5C2D37C4"},"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"test-efs-permission-integ/Vpc/PublicSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PublicSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":true,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PublicSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"},"subnetId":{"Ref":"VpcPublicSubnet2Subnet691E08A3"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PublicSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","gatewayId":{"Ref":"VpcIGWD7BA715C"},"routeTableId":{"Ref":"VpcPublicSubnet2RouteTable94F7E489"}}}}}},"PrivateSubnet1":{"id":"PrivateSubnet1","path":"test-efs-permission-integ/Vpc/PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"},"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet1/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet1RouteTableB2C5B500"}}}}}},"PrivateSubnet2":{"id":"PrivateSubnet2","path":"test-efs-permission-integ/Vpc/PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{}]},"children":{"Subnet":{"id":"Subnet","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"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":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"},"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"DefaultRoute":{"id":"DefaultRoute","path":"test-efs-permission-integ/Vpc/PrivateSubnet2/DefaultRoute","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRoute","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Route","aws:cdk:cloudformation:props":{"destinationCidrBlock":"0.0.0.0/0","natGatewayId":{"Ref":"VpcPublicSubnet1NATGateway4D7517AA"},"routeTableId":{"Ref":"VpcPrivateSubnet2RouteTableA678073B"}}}}}},"IGW":{"id":"IGW","path":"test-efs-permission-integ/Vpc/IGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnInternetGateway","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::InternetGateway","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"test-efs-permission-integ/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"test-efs-permission-integ/Vpc/VPCGW","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCGatewayAttachment","aws:cdk:cloudformation:props":{"internetGatewayId":{"Ref":"VpcIGWD7BA715C"},"vpcId":{"Ref":"Vpc8378EB38"}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"test-efs-permission-integ/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"test-efs-permission-integ/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"FileSystem":{"id":"FileSystem","path":"test-efs-permission-integ/FileSystem","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnFileSystem","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::FileSystem","aws:cdk:cloudformation:props":{"encrypted":true,"fileSystemPolicy":{"Statement":[{"Action":["elasticfilesystem:ClientRootAccess","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"},"fileSystemTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}]}}},"EfsSecurityGroup":{"id":"EfsSecurityGroup","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*"},{"addIngressRule":["*",{},"*",true]},{"addIngressRule":["*",{},"*",true]},{"addIngressRule":["*",{},"*",true]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"test-efs-permission-integ/FileSystem/EfsSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"tags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049":{"id":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegWriteLambdaSecurityGroup0BB6D828:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]},"toPort":2049}}},"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049":{"id":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegReadLambdaSecurityGroup619495CD:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]},"toPort":2049}}},"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049":{"id":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","path":"test-efs-permission-integ/FileSystem/EfsSecurityGroup/from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroupIngress","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroupIngress","aws:cdk:cloudformation:props":{"description":"from testefspermissionintegAnonymousLambdaSecurityGroup59418B90:2049","fromPort":2049,"groupId":{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]},"ipProtocol":"tcp","sourceSecurityGroupId":{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]},"toPort":2049}}}}},"EfsMountTarget-PrivateSubnet1":{"id":"EfsMountTarget-PrivateSubnet1","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet1Subnet536B997A"}}}},"EfsMountTarget-PrivateSubnet2":{"id":"EfsMountTarget-PrivateSubnet2","path":"test-efs-permission-integ/FileSystem/EfsMountTarget-PrivateSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnMountTarget","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::MountTarget","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"securityGroups":[{"Fn::GetAtt":["FileSystemEfsSecurityGroup212D3ACB","GroupId"]}],"subnetId":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}}}},"AccessPoint":{"id":"AccessPoint","path":"test-efs-permission-integ/FileSystem/AccessPoint","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.AccessPoint","version":"0.0.0","metadata":[{"fileSystem":"*","path":"*","createAcl":{"ownerGid":"*","ownerUid":"*","permissions":"*"},"posixUser":{"gid":"*","uid":"*"}}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/FileSystem/AccessPoint/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_efs.CfnAccessPoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EFS::AccessPoint","aws:cdk:cloudformation:props":{"fileSystemId":{"Ref":"FileSystem8A8E25C0"},"posixUser":{"uid":"1000","gid":"1000"},"rootDirectory":{"creationInfo":{"ownerGid":"1000","ownerUid":"1000","permissions":"755"},"path":"/lambda"},"accessPointTags":[{"key":"Name","value":"test-efs-permission-integ/FileSystem/AccessPoint"}]}}}}}}},"WriteLambda":{"id":"WriteLambda","path":"test-efs-permission-integ/WriteLambda","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"runtime":"*","handler":"*","code":"*","vpc":"*","filesystem":"*","timeout":"*"}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/WriteLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":["elasticfilesystem:ClientMount","elasticfilesystem:ClientWrite"],"Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"WriteLambdaServiceRoleDefaultPolicyEDE3046D","roles":[{"Ref":"WriteLambdaServiceRole903EC6B6"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/WriteLambda/SecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","description":"*","allowAllOutbound":"*","allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/SecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegWriteLambdaA7AC4082","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'w') as f:\n f.write('Integ Test')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["WriteLambdaServiceRole903EC6B6","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["WriteLambdaSecurityGroup4DD8D986","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/WriteLambda/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0","metadata":[{"logGroupName":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/WriteLambda/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"WriteLambda0E72B4A4"}]]},"retentionInDays":731}}}}}}},"ReadLambda":{"id":"ReadLambda","path":"test-efs-permission-integ/ReadLambda","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"runtime":"*","handler":"*","code":"*","vpc":"*","filesystem":"*","timeout":"*"}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/ReadLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}},{"Action":"elasticfilesystem:ClientMount","Condition":{"Bool":{"elasticfilesystem:AccessedViaMountTarget":"true"}},"Effect":"Allow","Resource":{"Fn::GetAtt":["FileSystem8A8E25C0","Arn"]}}],"Version":"2012-10-17"},"policyName":"ReadLambdaServiceRoleDefaultPolicy6518FF35","roles":[{"Ref":"ReadLambdaServiceRole786C9B4A"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/ReadLambda/SecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","description":"*","allowAllOutbound":"*","allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/SecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegReadLambda591FEE84","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n action = event.get('action', 'read')\n file_path = '/mnt/efs/integ-test.txt'\n \n if action == 'read':\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n elif action == 'write':\n with open(file_path, 'w') as f:\n f.write('Should fail')\n return {'statusCode': 200, 'body': json.dumps('Write successful')}\n except PermissionError as e:\n return {'statusCode': 403, 'body': json.dumps(f'Permission denied: {str(e)}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["ReadLambdaServiceRole786C9B4A","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["ReadLambdaSecurityGroupC61CE255","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/ReadLambda/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0","metadata":[{"logGroupName":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/ReadLambda/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"ReadLambda25A29444"}]]},"retentionInDays":731}}}}}}},"AnonymousLambda":{"id":"AnonymousLambda","path":"test-efs-permission-integ/AnonymousLambda","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"runtime":"*","handler":"*","code":"*","vpc":"*","filesystem":"*","timeout":"*"}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"elasticfilesystem:ClientMount","Condition":{"StringEquals":{"elasticfilesystem:AccessPointArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]}}},"Effect":"Allow","Resource":"*"},{"Action":"elasticfilesystem:ClientWrite","Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":file-system/",{"Ref":"FileSystem8A8E25C0"}]]}}],"Version":"2012-10-17"},"policyName":"AnonymousLambdaServiceRoleDefaultPolicyDBBB8B6E","roles":[{"Ref":"AnonymousLambdaServiceRole53D2562D"}]}}}}}}},"SecurityGroup":{"id":"SecurityGroup","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","description":"*","allowAllOutbound":"*","allowAllIpv6Outbound":"*"},{"addEgressRule":["*",{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/SecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatic security group for Lambda Function testefspermissionintegAnonymousLambdaAFF78BE3","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nimport os\nimport json\n\ndef handler(event, context):\n try:\n file_path = '/mnt/efs/integ-test.txt'\n with open(file_path, 'r') as f:\n content = f.read()\n return {'statusCode': 200, 'body': json.dumps(f'Content: {content}')}\n except Exception as e:\n return {'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}')}\n"},"fileSystemConfigs":[{"arn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":elasticfilesystem:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":access-point/",{"Ref":"FileSystemAccessPointF8178182"}]]},"localMountPath":"/mnt/efs"}],"handler":"index.handler","role":{"Fn::GetAtt":["AnonymousLambdaServiceRole53D2562D","Arn"]},"runtime":"python3.13","timeout":30,"vpcConfig":{"subnetIds":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}],"securityGroupIds":[{"Fn::GetAtt":["AnonymousLambdaSecurityGroupF33010B2","GroupId"]}]}}}},"LogGroup":{"id":"LogGroup","path":"test-efs-permission-integ/AnonymousLambda/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0","metadata":[{"logGroupName":"*"}]},"children":{"Resource":{"id":"Resource","path":"test-efs-permission-integ/AnonymousLambda/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"AnonymousLambda6BEDD8C7"}]]},"retentionInDays":731}}}}}}},"Exports":{"id":"Exports","path":"test-efs-permission-integ/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Output{\"Ref\":\"WriteLambda0E72B4A4\"}":{"id":"Output{\"Ref\":\"WriteLambda0E72B4A4\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"WriteLambda0E72B4A4\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Ref\":\"ReadLambda25A29444\"}":{"id":"Output{\"Ref\":\"ReadLambda25A29444\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"ReadLambda25A29444\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}":{"id":"Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","path":"test-efs-permission-integ/Exports/Output{\"Ref\":\"AnonymousLambda6BEDD8C7\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"test-efs-permission-integ/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"test-efs-permission-integ/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"EfsPermissionTest":{"id":"EfsPermissionTest","path":"EfsPermissionTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"EfsPermissionTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"EfsPermissionTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c":{"id":"LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke1fd03b5e5f77a064c3e1bb1d46575f2c/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"Staging":{"id":"Staging","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"EfsPermissionTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"LambdaInvoke60d18b84c11c66e9414556fc35df6d38":{"id":"LambdaInvoke60d18b84c11c66e9414556fc35df6d38","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke60d18b84c11c66e9414556fc35df6d38/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59":{"id":"LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvokefdb04e42910c7dcf6256870d54fe4a59/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816":{"id":"LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}},"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*"]},"children":{"Default":{"id":"Default","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Invoke":{"id":"Invoke","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"AssertionResults":{"id":"AssertionResults","path":"EfsPermissionTest/DefaultTest/DeployAssert/LambdaInvoke069b5aed588f50b50dfb3fae8f2be816/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"EfsPermissionTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}} \ No newline at end of file diff --git a/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts b/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts index 0e3dc250614f9..695ba696ea429 100644 --- a/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts +++ b/packages/aws-cdk-lib/aws-efs/lib/efs-file-system.ts @@ -819,19 +819,21 @@ export class FileSystem extends FileSystemBase { // Per AWS documentation, when NO file system policy exists, EFS uses its default behavior // which allows anonymous NFS access without IAM authentication. By creating ANY policy, // EFS switches to IAM enforcement mode, which blocks anonymous clients (they have no IAM - // credentials to authenticate). IAM principals with proper identity permissions can still - // access the file system because this ALLOW policy permits their actions. + // credentials to authenticate). // - // We use AccountRootPrincipal to restrict access to IAM principals within this AWS account only. - // This prevents unintended cross-account access while still allowing same-account IAM principals - // to access the file system with proper identity-based permissions. For cross-account access, - // users should explicitly grant access using the grant methods or add specific principal ARNs. + // We use AccountRootPrincipal instead of AnyPrincipal to restrict access to IAM principals + // within this AWS account only. This prevents unintended cross-account access while still + // allowing same-account IAM principals to access the file system when explicitly granted + // via grantRead(), grantReadWrite(), or grantRootAccess() methods. + // + // Note: ClientMount is intentionally NOT included in this resource policy. IAM principals + // must be explicitly granted ClientMount via identity-based permissions (using grant methods) + // to mount the file system. This follows the principle of least privilege. // // See: https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html this.addToResourcePolicy(new iam.PolicyStatement({ principals: [new iam.AccountRootPrincipal()], actions: [ - ClientAction.MOUNT, ClientAction.WRITE, ClientAction.ROOT_ACCESS, ], diff --git a/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts b/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts index e4f805a7c7ed5..3d817fc32af07 100644 --- a/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts +++ b/packages/aws-cdk-lib/aws-efs/test/efs-file-system.test.ts @@ -723,7 +723,6 @@ test('anonymous access is prohibited by default when using GrantRead', () => { AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ - 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -781,7 +780,6 @@ test('anonymous access is prohibited by default when using GrantReadWrite', () = AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ - 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -840,7 +838,6 @@ test('anonymous access is prohibited by default when using GrantRootAccess', () AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ - 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -872,7 +869,6 @@ test('anonymous access is prohibited by the allowAnonymousAccess props even when AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ - 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ], @@ -929,7 +925,6 @@ test('anonymous access is prohibited by the @aws-cdk/aws-efs:denyAnonymousAccess AWS: { 'Fn::Join': [ '', [ 'arn:', { Ref: 'AWS::Partition' }, ':iam::', { Ref: 'AWS::AccountId' }, ':root' ] ] }, }, Action: [ - 'elasticfilesystem:ClientMount', 'elasticfilesystem:ClientWrite', 'elasticfilesystem:ClientRootAccess', ],