diff --git a/packages/@aws-cdk-testing/framework-integ/package.json b/packages/@aws-cdk-testing/framework-integ/package.json index 0e1a1bc9816c1..09c131906598f 100644 --- a/packages/@aws-cdk-testing/framework-integ/package.json +++ b/packages/@aws-cdk-testing/framework-integ/package.json @@ -47,6 +47,7 @@ "@aws-cdk/lambda-layer-kubectl-v31": "^2.1.0", "@aws-cdk/lambda-layer-kubectl-v32": "^2.1.0", "@aws-cdk/lambda-layer-kubectl-v33": "^2.0.0", + "@aws-cdk/lambda-layer-kubectl-v34": "^2.0.0", "@aws-cdk/region-info": "0.0.0", "aws-cdk-lib": "0.0.0", "cdk8s": "2.70.11", diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ-tests-kubernetes-version.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ-tests-kubernetes-version.ts index 253f24193c477..bba70745c59e0 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ-tests-kubernetes-version.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ-tests-kubernetes-version.ts @@ -4,6 +4,7 @@ import { KubectlV30Layer } from '@aws-cdk/lambda-layer-kubectl-v30'; import { KubectlV31Layer } from '@aws-cdk/lambda-layer-kubectl-v31'; import { KubectlV32Layer } from '@aws-cdk/lambda-layer-kubectl-v32'; import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; import { Construct } from 'constructs'; import * as eks from 'aws-cdk-lib/aws-eks'; @@ -17,6 +18,7 @@ const versionMap: { [key: string]: new (scope: Construct, id: string) => lambda. '1.31': KubectlV31Layer, '1.32': KubectlV32Layer, '1.33': KubectlV33Layer, + '1.34': KubectlV34Layer, }; export function getClusterVersionConfig(scope: Construct, version?: eks.KubernetesVersion) { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json index b5e237e7744cc..7936795d30962 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json @@ -1,1437 +1,1346 @@ { - "Resources": { - "AdminRole38563C57": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "AWS": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::", - { - "Ref": "AWS::AccountId" - }, - ":root" - ] - ] + "Resources": { + "AdminRole38563C57": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" } - } } - ], - "Version": "2012-10-17" - } - } - }, - "Vpc8378EB38": { - "Type": "AWS::EC2::VPC", - "Properties": { - "CidrBlock": "10.0.0.0/16", - "EnableDnsHostnames": true, - "EnableDnsSupport": true, - "InstanceTenancy": "default", - "Tags": [ - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" - } - ] - } - }, - "VpcPublicSubnet1Subnet5C2D37C4": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" + }, + "Vpc8378EB38": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" + } + ] } - ] }, - "CidrBlock": "10.0.0.0/18", - "MapPublicIpOnLaunch": true, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Public" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Public" - }, - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet1RouteTable6C95E38E": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet1RouteTableAssociation97140677": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + "VpcPublicSubnet1Subnet5C2D37C4": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "SubnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - } - } - }, - "VpcPublicSubnet1DefaultRoute3DA9E72A": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPublicSubnet1RouteTable6C95E38E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "RouteTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - } - }, - "DependsOn": [ - "VpcVPCGWBF912B6E" - ] - }, - "VpcPublicSubnet1EIPD7E02669": { - "Type": "AWS::EC2::EIP", - "Properties": { - "Domain": "vpc", - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ] - } - }, - "VpcPublicSubnet1NATGateway4D7517AA": { - "Type": "AWS::EC2::NatGateway", - "Properties": { - "AllocationId": { - "Fn::GetAtt": [ - "VpcPublicSubnet1EIPD7E02669", - "AllocationId" - ] + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } }, - "SubnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + } + }, + "DependsOn": ["VpcVPCGWBF912B6E"] }, - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ] - }, - "DependsOn": [ - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1RouteTableAssociation97140677" - ] - }, - "VpcPublicSubnet2Subnet691E08A3": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 1, - { - "Fn::GetAZs": "" + "VpcPublicSubnet1EIPD7E02669": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ] } - ] }, - "CidrBlock": "10.0.64.0/18", - "MapPublicIpOnLaunch": true, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Public" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Public" - }, - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet2RouteTable94F7E489": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet2RouteTableAssociationDD5762D8": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" + "VpcPublicSubnet1NATGateway4D7517AA": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": ["VpcPublicSubnet1EIPD7E02669", "AllocationId"] + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ] + }, + "DependsOn": ["VpcPublicSubnet1DefaultRoute3DA9E72A", "VpcPublicSubnet1RouteTableAssociation97140677"] }, - "SubnetId": { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - } - } - }, - "VpcPublicSubnet2DefaultRoute97F91067": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPublicSubnet2Subnet691E08A3": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "RouteTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - } - }, - "DependsOn": [ - "VpcVPCGWBF912B6E" - ] - }, - "VpcPrivateSubnet1Subnet536B997A": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" + "VpcPublicSubnet2RouteTable94F7E489": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ] }, - "CidrBlock": "10.0.128.0/18", - "MapPublicIpOnLaunch": false, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Private" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Private" - }, - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet1RouteTableB2C5B500": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } }, - "SubnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "VpcPrivateSubnet1DefaultRouteBE02A9ED": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + "VpcPublicSubnet2DefaultRoute97F91067": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + } + }, + "DependsOn": ["VpcVPCGWBF912B6E"] }, - "RouteTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - } - } - }, - "VpcPrivateSubnet2Subnet3788AAA1": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 1, - { - "Fn::GetAZs": "" + "VpcPrivateSubnet1Subnet536B997A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ] }, - "CidrBlock": "10.0.192.0/18", - "MapPublicIpOnLaunch": false, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Private" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Private" - }, - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet2RouteTableA678073B": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "SubnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "VpcPrivateSubnet2DefaultRoute060D2087": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } }, - "RouteTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - } - } - }, - "VpcIGWD7BA715C": { - "Type": "AWS::EC2::InternetGateway", - "Properties": { - "Tags": [ - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" - } - ] - } - }, - "VpcVPCGWBF912B6E": { - "Type": "AWS::EC2::VPCGatewayAttachment", - "Properties": { - "InternetGatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + } + } }, - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "KubectlLayer600207B5": { - "Type": "AWS::Lambda::LayerVersion", - "Properties": { - "Content": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip" + "VpcPrivateSubnet2Subnet3788AAA1": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "Description": "/opt/kubectl/kubectl 1.33.0; /opt/helm/helm 3.18.0", - "LicenseInfo": "Apache-2.0" - } - }, - "ClusterKubectlHandlerRole94549F93": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } + "VpcPrivateSubnet2RouteTableA678073B": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" }, - ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "SubnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } + }, + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" }, - ":iam::aws:policy/AmazonEC2ContainerRegistryPullOnly" - ] - ] - }, - { - "Fn::If": [ - "ClusterHasEcrPublic8EE1114E", - { - "Fn::Join": [ - "", - [ - "arn:", + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + } + } + }, + "VpcIGWD7BA715C": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" - ] - ] - }, - { - "Ref": "AWS::NoValue" - } - ] - } - ] - } - }, - "ClusterKubectlHandlerRoleDefaultPolicyE44083DD": { - "Type": "AWS::IAM::Policy", - "Properties": { - "PolicyDocument": { - "Statement": [ - { - "Action": "eks:DescribeCluster", - "Effect": "Allow", - "Resource": { - "Fn::GetAtt": [ - "Cluster9EE0221C", - "Arn" + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" + } ] - } - }, - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Resource": { - "Fn::GetAtt": [ - "ClusterCreationRole360249B6", - "Arn" - ] - } } - ], - "Version": "2012-10-17" }, - "PolicyName": "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", - "Roles": [ - { - "Ref": "ClusterKubectlHandlerRole94549F93" - } - ] - } - }, - "ClusterRoleFA261979": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "eks.amazonaws.com" - } + "VpcVPCGWBF912B6E": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "KubectlLayer600207B5": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip" }, - ":iam::aws:policy/AmazonEKSClusterPolicy" - ] - ] - } - ] - } - }, - "ClusterControlPlaneSecurityGroupD274242C": { - "Type": "AWS::EC2::SecurityGroup", - "Properties": { - "GroupDescription": "EKS Control Plane Security Group", - "SecurityGroupEgress": [ - { - "CidrIp": "0.0.0.0/0", - "Description": "Allow all outbound traffic by default", - "IpProtocol": "-1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "ClusterCreationRole360249B6": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "AWS": [ - { - "Fn::GetAtt": [ - "ClusterKubectlHandlerRole94549F93", - "Arn" - ] - }, - { - "Fn::GetAtt": [ - "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", - "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn" - ] - }, - { - "Fn::GetAtt": [ - "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", - "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn" - ] - } - ] - } + "Description": "/opt/kubectl/kubectl 1.34.0; /opt/helm/helm 3.19.0", + "LicenseInfo": "Apache-2.0" } - ], - "Version": "2012-10-17" - } - }, - "DependsOn": [ - "VpcIGWD7BA715C", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableB2C5B500", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet1Subnet536B997A", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableA678073B", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56", - "VpcPrivateSubnet2Subnet3788AAA1", - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1EIPD7E02669", - "VpcPublicSubnet1NATGateway4D7517AA", - "VpcPublicSubnet1RouteTable6C95E38E", - "VpcPublicSubnet1RouteTableAssociation97140677", - "VpcPublicSubnet1Subnet5C2D37C4", - "VpcPublicSubnet2DefaultRoute97F91067", - "VpcPublicSubnet2RouteTable94F7E489", - "VpcPublicSubnet2RouteTableAssociationDD5762D8", - "VpcPublicSubnet2Subnet691E08A3", - "Vpc8378EB38", - "VpcVPCGWBF912B6E" - ] - }, - "ClusterCreationRoleDefaultPolicyE8BDFC7B": { - "Type": "AWS::IAM::Policy", - "Properties": { - "PolicyDocument": { - "Statement": [ - { - "Action": "iam:PassRole", - "Effect": "Allow", - "Resource": { - "Fn::GetAtt": [ - "ClusterRoleFA261979", - "Arn" + }, + "ClusterKubectlHandlerRole94549F93": { + "Type": "AWS::IAM::Role", + "Properties": { + "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" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryPullOnly" + ] + ] + }, + { + "Fn::If": [ + "ClusterHasEcrPublic8EE1114E", + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" + ] + ] + }, + { + "Ref": "AWS::NoValue" + } + ] + } ] - } - }, - { - "Action": [ - "eks:CreateCluster", - "eks:CreateFargateProfile", - "eks:DeleteCluster", - "eks:DescribeCluster", - "eks:DescribeUpdate", - "eks:TagResource", - "eks:UntagResource", - "eks:UpdateClusterConfig", - "eks:UpdateClusterVersion" - ], - "Effect": "Allow", - "Resource": "*" - }, - { - "Action": [ - "eks:DeleteFargateProfile", - "eks:DescribeFargateProfile" - ], - "Effect": "Allow", - "Resource": "*" - }, - { - "Action": [ - "ec2:DescribeDhcpOptions", - "ec2:DescribeInstances", - "ec2:DescribeNetworkInterfaces", - "ec2:DescribeRouteTables", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "iam:GetRole", - "iam:listAttachedRolePolicies" - ], - "Effect": "Allow", - "Resource": "*" } - ], - "Version": "2012-10-17" }, - "PolicyName": "ClusterCreationRoleDefaultPolicyE8BDFC7B", - "Roles": [ - { - "Ref": "ClusterCreationRole360249B6" - } - ] - }, - "DependsOn": [ - "VpcIGWD7BA715C", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableB2C5B500", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet1Subnet536B997A", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableA678073B", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56", - "VpcPrivateSubnet2Subnet3788AAA1", - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1EIPD7E02669", - "VpcPublicSubnet1NATGateway4D7517AA", - "VpcPublicSubnet1RouteTable6C95E38E", - "VpcPublicSubnet1RouteTableAssociation97140677", - "VpcPublicSubnet1Subnet5C2D37C4", - "VpcPublicSubnet2DefaultRoute97F91067", - "VpcPublicSubnet2RouteTable94F7E489", - "VpcPublicSubnet2RouteTableAssociationDD5762D8", - "VpcPublicSubnet2Subnet691E08A3", - "Vpc8378EB38", - "VpcVPCGWBF912B6E" - ] - }, - "Cluster9EE0221C": { - "Type": "Custom::AWSCDK-EKS-Cluster", - "Properties": { - "ServiceToken": { - "Fn::GetAtt": [ - "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", - "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn" - ] + "ClusterKubectlHandlerRoleDefaultPolicyE44083DD": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "eks:DescribeCluster", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": ["Cluster9EE0221C", "Arn"] + } + }, + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": ["ClusterCreationRole360249B6", "Arn"] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", + "Roles": [ + { + "Ref": "ClusterKubectlHandlerRole94549F93" + } + ] + } }, - "Config": { - "version": "1.33", - "roleArn": { - "Fn::GetAtt": [ - "ClusterRoleFA261979", - "Arn" - ] - }, - "kubernetesNetworkConfig": { - "ipFamily": "ipv4" - }, - "resourcesVpcConfig": { - "subnetIds": [ - { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - }, - { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - }, - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ], - "securityGroupIds": [ - { - "Fn::GetAtt": [ - "ClusterControlPlaneSecurityGroupD274242C", - "GroupId" + "ClusterRoleFA261979": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "eks.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKSClusterPolicy" + ] + ] + } ] - } - ], - "endpointPublicAccess": true, - "endpointPrivateAccess": true - }, - "accessConfig": {} + } }, - "AssumeRoleArn": { - "Fn::GetAtt": [ - "ClusterCreationRole360249B6", - "Arn" - ] + "ClusterControlPlaneSecurityGroupD274242C": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "EKS Control Plane Security Group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "AttributesRevision": 5 - }, - "DependsOn": [ - "ClusterCreationRoleDefaultPolicyE8BDFC7B", - "ClusterCreationRole360249B6", - "VpcIGWD7BA715C", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableB2C5B500", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet1Subnet536B997A", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableA678073B", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56", - "VpcPrivateSubnet2Subnet3788AAA1", - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1EIPD7E02669", - "VpcPublicSubnet1NATGateway4D7517AA", - "VpcPublicSubnet1RouteTable6C95E38E", - "VpcPublicSubnet1RouteTableAssociation97140677", - "VpcPublicSubnet1Subnet5C2D37C4", - "VpcPublicSubnet2DefaultRoute97F91067", - "VpcPublicSubnet2RouteTable94F7E489", - "VpcPublicSubnet2RouteTableAssociationDD5762D8", - "VpcPublicSubnet2Subnet691E08A3", - "Vpc8378EB38", - "VpcVPCGWBF912B6E" - ], - "UpdateReplacePolicy": "Delete", - "DeletionPolicy": "Delete" - }, - "ClusterKubectlReadyBarrier200052AF": { - "Type": "AWS::SSM::Parameter", - "Properties": { - "Type": "String", - "Value": "aws:cdk:eks:kubectl-ready" - }, - "DependsOn": [ - "ClusterCreationRoleDefaultPolicyE8BDFC7B", - "ClusterCreationRole360249B6", - "Cluster9EE0221C" - ] - }, - "ClusterAwsAuthmanifestFE51F8AE": { - "Type": "Custom::AWSCDK-EKS-KubernetesResource", - "Properties": { - "ServiceToken": { - "Fn::GetAtt": [ - "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B", - "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn" - ] + "ClusterCreationRole360249B6": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": [ + { + "Fn::GetAtt": ["ClusterKubectlHandlerRole94549F93", "Arn"] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn" + ] + }, + { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn" + ] + } + ] + } + } + ], + "Version": "2012-10-17" + } + }, + "DependsOn": [ + "VpcIGWD7BA715C", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableB2C5B500", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet1Subnet536B997A", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableA678073B", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56", + "VpcPrivateSubnet2Subnet3788AAA1", + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1EIPD7E02669", + "VpcPublicSubnet1NATGateway4D7517AA", + "VpcPublicSubnet1RouteTable6C95E38E", + "VpcPublicSubnet1RouteTableAssociation97140677", + "VpcPublicSubnet1Subnet5C2D37C4", + "VpcPublicSubnet2DefaultRoute97F91067", + "VpcPublicSubnet2RouteTable94F7E489", + "VpcPublicSubnet2RouteTableAssociationDD5762D8", + "VpcPublicSubnet2Subnet691E08A3", + "Vpc8378EB38", + "VpcVPCGWBF912B6E" + ] }, - "Manifest": { - "Fn::Join": [ - "", - [ - "[{\"apiVersion\":\"v1\",\"kind\":\"ConfigMap\",\"metadata\":{\"name\":\"aws-auth\",\"namespace\":\"kube-system\",\"labels\":{\"aws.cdk.eks/prune-c8cad89fed7c576b59ba780feb724c02fa7215f2d9\":\"\"}},\"data\":{\"mapRoles\":\"[{\\\"rolearn\\\":\\\"", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] - }, - "\\\",\\\"username\\\":\\\"", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] - }, - "\\\",\\\"groups\\\":[\\\"system:masters\\\"]},{\\\"rolearn\\\":\\\"", - { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", - "Arn" - ] - }, - "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", - { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", - "Arn" - ] - }, - "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", - { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", - "Arn" - ] - }, - "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", - { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", - "Arn" + "ClusterCreationRoleDefaultPolicyE8BDFC7B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "iam:PassRole", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": ["ClusterRoleFA261979", "Arn"] + } + }, + { + "Action": [ + "eks:CreateCluster", + "eks:CreateFargateProfile", + "eks:DeleteCluster", + "eks:DescribeCluster", + "eks:DescribeUpdate", + "eks:TagResource", + "eks:UntagResource", + "eks:UpdateClusterConfig", + "eks:UpdateClusterVersion" + ], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": ["eks:DeleteFargateProfile", "eks:DescribeFargateProfile"], + "Effect": "Allow", + "Resource": "*" + }, + { + "Action": [ + "ec2:DescribeDhcpOptions", + "ec2:DescribeInstances", + "ec2:DescribeNetworkInterfaces", + "ec2:DescribeRouteTables", + "ec2:DescribeSecurityGroups", + "ec2:DescribeSubnets", + "ec2:DescribeVpcs", + "iam:CreateServiceLinkedRole", + "iam:GetRole", + "iam:listAttachedRolePolicies" + ], + "Effect": "Allow", + "Resource": "*" + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "Roles": [ + { + "Ref": "ClusterCreationRole360249B6" + } ] - }, - "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]}]\",\"mapUsers\":\"[]\",\"mapAccounts\":\"[]\"}}]" + }, + "DependsOn": [ + "VpcIGWD7BA715C", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableB2C5B500", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet1Subnet536B997A", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableA678073B", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56", + "VpcPrivateSubnet2Subnet3788AAA1", + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1EIPD7E02669", + "VpcPublicSubnet1NATGateway4D7517AA", + "VpcPublicSubnet1RouteTable6C95E38E", + "VpcPublicSubnet1RouteTableAssociation97140677", + "VpcPublicSubnet1Subnet5C2D37C4", + "VpcPublicSubnet2DefaultRoute97F91067", + "VpcPublicSubnet2RouteTable94F7E489", + "VpcPublicSubnet2RouteTableAssociationDD5762D8", + "VpcPublicSubnet2Subnet691E08A3", + "Vpc8378EB38", + "VpcVPCGWBF912B6E" ] - ] - }, - "ClusterName": { - "Ref": "Cluster9EE0221C" - }, - "RoleArn": { - "Fn::GetAtt": [ - "ClusterCreationRole360249B6", - "Arn" - ] - }, - "PruneLabel": "aws.cdk.eks/prune-c8cad89fed7c576b59ba780feb724c02fa7215f2d9", - "Overwrite": true - }, - "DependsOn": [ - "ClusterKubectlReadyBarrier200052AF" - ], - "UpdateReplacePolicy": "Delete", - "DeletionPolicy": "Delete" - }, - "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } - } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "Cluster9EE0221C": { + "Type": "Custom::AWSCDK-EKS-Cluster", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454", + "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn" + ] }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "Config": { + "version": "1.34", + "roleArn": { + "Fn::GetAtt": ["ClusterRoleFA261979", "Arn"] + }, + "kubernetesNetworkConfig": { + "ipFamily": "ipv4" + }, + "resourcesVpcConfig": { + "subnetIds": [ + { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + }, + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ], + "securityGroupIds": [ + { + "Fn::GetAtt": ["ClusterControlPlaneSecurityGroupD274242C", "GroupId"] + } + ], + "endpointPublicAccess": true, + "endpointPrivateAccess": true + }, + "accessConfig": {} }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "AssumeRoleArn": { + "Fn::GetAtt": ["ClusterCreationRole360249B6", "Arn"] }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664STANDARD8BD0F7AB": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_STANDARD", - "ClusterName": { - "Ref": "Cluster9EE0221C" + "AttributesRevision": 5 + }, + "DependsOn": [ + "ClusterCreationRoleDefaultPolicyE8BDFC7B", + "ClusterCreationRole360249B6", + "VpcIGWD7BA715C", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableB2C5B500", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet1Subnet536B997A", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableA678073B", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56", + "VpcPrivateSubnet2Subnet3788AAA1", + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1EIPD7E02669", + "VpcPublicSubnet1NATGateway4D7517AA", + "VpcPublicSubnet1RouteTable6C95E38E", + "VpcPublicSubnet1RouteTableAssociation97140677", + "VpcPublicSubnet1Subnet5C2D37C4", + "VpcPublicSubnet2DefaultRoute97F91067", + "VpcPublicSubnet2RouteTable94F7E489", + "VpcPublicSubnet2RouteTableAssociationDD5762D8", + "VpcPublicSubnet2Subnet691E08A3", + "Vpc8378EB38", + "VpcVPCGWBF912B6E" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", - "Arn" - ] + "ClusterKubectlReadyBarrier200052AF": { + "Type": "AWS::SSM::Parameter", + "Properties": { + "Type": "String", + "Value": "aws:cdk:eks:kubectl-ready" + }, + "DependsOn": ["ClusterCreationRoleDefaultPolicyE8BDFC7B", "ClusterCreationRole360249B6", "Cluster9EE0221C"] }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 + "ClusterAwsAuthmanifestFE51F8AE": { + "Type": "Custom::AWSCDK-EKS-KubernetesResource", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B", + "Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn" + ] + }, + "Manifest": { + "Fn::Join": [ + "", + [ + "[{\"apiVersion\":\"v1\",\"kind\":\"ConfigMap\",\"metadata\":{\"name\":\"aws-auth\",\"namespace\":\"kube-system\",\"labels\":{\"aws.cdk.eks/prune-c8cad89fed7c576b59ba780feb724c02fa7215f2d9\":\"\"}},\"data\":{\"mapRoles\":\"[{\\\"rolearn\\\":\\\"", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + }, + "\\\",\\\"username\\\":\\\"", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + }, + "\\\",\\\"groups\\\":[\\\"system:masters\\\"]},{\\\"rolearn\\\":\\\"", + { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", "Arn"] + }, + "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", + { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", "Arn"] + }, + "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", + { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", "Arn"] + }, + "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]},{\\\"rolearn\\\":\\\"", + { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", "Arn"] + }, + "\\\",\\\"username\\\":\\\"system:node:{{EC2PrivateDNSName}}\\\",\\\"groups\\\":[\\\"system:bootstrappers\\\",\\\"system:nodes\\\"]}]\",\"mapUsers\":\"[]\",\"mapAccounts\":\"[]\"}}]" + ] + ] + }, + "ClusterName": { + "Ref": "Cluster9EE0221C" + }, + "RoleArn": { + "Fn::GetAtt": ["ClusterCreationRole360249B6", "Arn"] + }, + "PruneLabel": "aws.cdk.eks/prune-c8cad89fed7c576b59ba780feb724c02fa7215f2d9", + "Overwrite": true + }, + "DependsOn": ["ClusterKubectlReadyBarrier200052AF"], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023X8664STANDARD8BD0F7AB": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_STANDARD", + "ClusterName": { + "Ref": "Cluster9EE0221C" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023ARM64STANDARD8E30167E": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_ARM_64_STANDARD", - "ClusterName": { - "Ref": "Cluster9EE0221C" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", - "Arn" - ] - }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023ARM64STANDARD8E30167E": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_ARM_64_STANDARD", + "ClusterName": { + "Ref": "Cluster9EE0221C" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NEURON44201AF9": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_NEURON", - "ClusterName": { - "Ref": "Cluster9EE0221C" + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", - "Arn" - ] + "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] + } }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 + "ClusterNodegroupMNGAL2023X8664NEURON44201AF9": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_NEURON", + "ClusterName": { + "Ref": "Cluster9EE0221C" + }, + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", "Arn"] + }, + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 + }, + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023X8664NVIDIAE1B719F2": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_NVIDIA", + "ClusterName": { + "Ref": "Cluster9EE0221C" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NVIDIAE1B719F2": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_NVIDIA", - "ClusterName": { - "Ref": "Cluster9EE0221C" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", - "Arn" - ] + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 + "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454": { + "Type": "AWS::CloudFormation::Stack", + "Properties": { + "TemplateURL": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/b8167384f64eec02dc5be7e9cdfce6fda006de2c8c80fc78f03b1e4128b5579b.json" + ] + ] + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454": { - "Type": "AWS::CloudFormation::Stack", - "Properties": { - "TemplateURL": { - "Fn::Join": [ - "", - [ - "https://s3.", - { - "Ref": "AWS::Region" - }, - ".", - { - "Ref": "AWS::URLSuffix" - }, - "/", - { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "/b8167384f64eec02dc5be7e9cdfce6fda006de2c8c80fc78f03b1e4128b5579b.json" - ] - ] + "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B": { + "Type": "AWS::CloudFormation::Stack", + "Properties": { + "Parameters": { + "referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref": { + "Ref": "KubectlLayer600207B5" + }, + "referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn": { + "Fn::GetAtt": ["ClusterKubectlHandlerRole94549F93", "Arn"] + }, + "referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + }, + "referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId": { + "Fn::GetAtt": ["Cluster9EE0221C", "ClusterSecurityGroupId"] + } + }, + "TemplateURL": { + "Fn::Join": [ + "", + [ + "https://s3.", + { + "Ref": "AWS::Region" + }, + ".", + { + "Ref": "AWS::URLSuffix" + }, + "/", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/7e23fd5cc5c86e0420e14360a75db6dbd82dd0aa525a6770f573f72c1e2ac9cf.json" + ] + ] + } + }, + "DependsOn": [ + "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", + "ClusterKubectlHandlerRole94549F93", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" } - }, - "UpdateReplacePolicy": "Delete", - "DeletionPolicy": "Delete" }, - "awscdkawseksKubectlProviderNestedStackawscdkawseksKubectlProviderNestedStackResourceA7AEBA6B": { - "Type": "AWS::CloudFormation::Stack", - "Properties": { - "Parameters": { - "referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref": { - "Ref": "KubectlLayer600207B5" - }, - "referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn": { - "Fn::GetAtt": [ - "ClusterKubectlHandlerRole94549F93", - "Arn" - ] - }, - "referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - "referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - }, - "referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId": { - "Fn::GetAtt": [ - "Cluster9EE0221C", - "ClusterSecurityGroupId" - ] - } - }, - "TemplateURL": { - "Fn::Join": [ - "", - [ - "https://s3.", - { - "Ref": "AWS::Region" - }, - ".", - { - "Ref": "AWS::URLSuffix" - }, - "/", - { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "/7e23fd5cc5c86e0420e14360a75db6dbd82dd0aa525a6770f573f72c1e2ac9cf.json" + "Conditions": { + "ClusterHasEcrPublic8EE1114E": { + "Fn::Equals": [ + { + "Ref": "AWS::Partition" + }, + "aws" ] - ] } - }, - "DependsOn": [ - "ClusterKubectlHandlerRoleDefaultPolicyE44083DD", - "ClusterKubectlHandlerRole94549F93", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ], - "UpdateReplacePolicy": "Delete", - "DeletionPolicy": "Delete" - } - }, - "Conditions": { - "ClusterHasEcrPublic8EE1114E": { - "Fn::Equals": [ - { - "Ref": "AWS::Partition" - }, - "aws" - ] - } - }, - "Outputs": { - "ClusterConfigCommand43AAE40F": { - "Value": { - "Fn::Join": [ - "", - [ - "aws eks update-kubeconfig --name ", - { - "Ref": "Cluster9EE0221C" - }, - " --region ", - { - "Ref": "AWS::Region" - }, - " --role-arn ", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] - } - ] - ] - } }, - "ClusterGetTokenCommand06AE992E": { - "Value": { - "Fn::Join": [ - "", - [ - "aws eks get-token --cluster-name ", - { - "Ref": "Cluster9EE0221C" - }, - " --region ", - { - "Ref": "AWS::Region" - }, - " --role-arn ", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] + "Outputs": { + "ClusterConfigCommand43AAE40F": { + "Value": { + "Fn::Join": [ + "", + [ + "aws eks update-kubeconfig --name ", + { + "Ref": "Cluster9EE0221C" + }, + " --region ", + { + "Ref": "AWS::Region" + }, + " --role-arn ", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + } + ] + ] } - ] - ] - } - } - }, - "Parameters": { - "BootstrapVersion": { - "Type": "AWS::SSM::Parameter::Value", - "Default": "/cdk-bootstrap/hnb659fds/version", - "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" - } - }, - "Rules": { - "CheckBootstrapVersion": { - "Assertions": [ - { - "Assert": { - "Fn::Not": [ - { - "Fn::Contains": [ - [ - "1", - "2", - "3", - "4", - "5" - ], - { - "Ref": "BootstrapVersion" - } + }, + "ClusterGetTokenCommand06AE992E": { + "Value": { + "Fn::Join": [ + "", + [ + "aws eks get-token --cluster-name ", + { + "Ref": "Cluster9EE0221C" + }, + " --region ", + { + "Ref": "AWS::Region" + }, + " --role-arn ", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + } + ] ] - } + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + ["1", "2", "3", "4", "5"], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } ] - }, - "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." } - ] } - } -} \ No newline at end of file +} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/tree.json index 074c16963c51b..ab3a984db5cab 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.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":{"aws-cdk-eks-cluster-al2023-nodegroup-test":{"id":"aws-cdk-eks-cluster-al2023-nodegroup-test","path":"aws-cdk-eks-cluster-al2023-nodegroup-test","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"AdminRole":{"id":"AdminRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}}]},"children":{"ImportAdminRole":{"id":"ImportAdminRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole/ImportAdminRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole/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":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"}}}}}},"Vpc":{"id":"Vpc","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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"}}}}}},"KubectlLayer":{"id":"KubectlLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer","constructInfo":{"fqn":"@aws-cdk/lambda-layer-kubectl-v33.KubectlV33Layer","version":"2.0.0","metadata":["*"]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip"},"description":"/opt/kubectl/kubectl 1.33.0; /opt/helm/helm 3.18.0","licenseInfo":"Apache-2.0"}}}}},"Cluster":{"id":"Cluster","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Cluster","version":"0.0.0","metadata":[{"vpc":"*","mastersRole":"*","defaultCapacity":"*","version":"*","kubectlLayer":"*"},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_STANDARD"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_ARM_64_STANDARD"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_NEURON"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_NVIDIA"}]}]},"children":{"KubectlHandlerRole":{"id":"KubectlHandlerRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportKubectlHandlerRole":{"id":"ImportKubectlHandlerRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/ImportKubectlHandlerRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/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"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryPullOnly"]]},{"Fn::If":["ClusterHasEcrPublic8EE1114E",{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly"]]},{"Ref":"AWS::NoValue"}]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/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":"eks:DescribeCluster","Effect":"Allow","Resource":{"Fn::GetAtt":["Cluster9EE0221C","Arn"]}},{"Action":"sts:AssumeRole","Effect":"Allow","Resource":{"Fn::GetAtt":["ClusterCreationRole360249B6","Arn"]}}],"Version":"2012-10-17"},"policyName":"ClusterKubectlHandlerRoleDefaultPolicyE44083DD","roles":[{"Ref":"ClusterKubectlHandlerRole94549F93"}]}}}}}}},"Role":{"id":"Role","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportRole":{"id":"ImportRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role/ImportRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role/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":"eks.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKSClusterPolicy"]]}]}}}}},"ControlPlaneSecurityGroup":{"id":"ControlPlaneSecurityGroup","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ControlPlaneSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","description":"*"}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ControlPlaneSecurityGroup/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":"EKS Control Plane Security Group","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"CreationRole":{"id":"CreationRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"grant":["*","*"]}]},"children":{"ImportCreationRole":{"id":"ImportCreationRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/ImportCreationRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/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":{"AWS":[{"Fn::GetAtt":["ClusterKubectlHandlerRole94549F93","Arn"]},{"Fn::GetAtt":["awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454","Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn"]},{"Fn::GetAtt":["awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454","Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn"]}]}}],"Version":"2012-10-17"}}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/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":"iam:PassRole","Effect":"Allow","Resource":{"Fn::GetAtt":["ClusterRoleFA261979","Arn"]}},{"Action":["eks:CreateCluster","eks:CreateFargateProfile","eks:DeleteCluster","eks:DescribeCluster","eks:DescribeUpdate","eks:TagResource","eks:UntagResource","eks:UpdateClusterConfig","eks:UpdateClusterVersion"],"Effect":"Allow","Resource":"*"},{"Action":["eks:DeleteFargateProfile","eks:DescribeFargateProfile"],"Effect":"Allow","Resource":"*"},{"Action":["ec2:DescribeDhcpOptions","ec2:DescribeInstances","ec2:DescribeNetworkInterfaces","ec2:DescribeRouteTables","ec2:DescribeSecurityGroups","ec2:DescribeSubnets","ec2:DescribeVpcs","iam:CreateServiceLinkedRole","iam:GetRole","iam:listAttachedRolePolicies"],"Effect":"Allow","Resource":"*"}],"Version":"2012-10-17"},"policyName":"ClusterCreationRoleDefaultPolicyE8BDFC7B","roles":[{"Ref":"ClusterCreationRole360249B6"}]}}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*","*","*","*","*","*"]},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"KubectlReadyBarrier":{"id":"KubectlReadyBarrier","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlReadyBarrier","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"ClusterSecurityGroup":{"id":"ClusterSecurityGroup","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ClusterSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"HasEcrPublic":{"id":"HasEcrPublic","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/HasEcrPublic","constructInfo":{"fqn":"aws-cdk-lib.CfnCondition","version":"0.0.0"}},"AwsAuth":{"id":"AwsAuth","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.AwsAuth","version":"0.0.0"},"children":{"manifest":{"id":"manifest","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.KubernetesManifest","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}}}},"ConfigCommand":{"id":"ConfigCommand","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ConfigCommand","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"GetTokenCommand":{"id":"GetTokenCommand","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/GetTokenCommand","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"NodegroupMNG_AL2023_X86_64_STANDARD":{"id":"NodegroupMNG_AL2023_X86_64_STANDARD","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_STANDARD"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_STANDARD","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_ARM_64_STANDARD":{"id":"NodegroupMNG_AL2023_ARM_64_STANDARD","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_ARM_64_STANDARD"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_ARM_64_STANDARD","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_X86_64_NEURON":{"id":"NodegroupMNG_AL2023_X86_64_NEURON","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_NEURON"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_NEURON","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_X86_64_NVIDIA":{"id":"NodegroupMNG_AL2023_X86_64_NVIDIA","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_NVIDIA"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_NVIDIA","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}}}},"@aws-cdk--aws-eks.ClusterResourceProvider":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.NestedStack","version":"0.0.0"},"children":{"NodeProxyAgentLayer":{"id":"NodeProxyAgentLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_node_proxy_agent.NodeProxyAgentLayer","version":"0.0.0","metadata":[{}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"93d96d34e0d3cd20eb082652b91012b131bdc34fcf2bc16eb4170e04772fddb1.zip"},"description":"/opt/nodejs/node_modules/proxy-agent"}}}}},"OnEventHandler":{"id":"OnEventHandler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"description":"*","environment":"*","timeout":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","layers":["*"],"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/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"]]}]}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"cade4507238b95610e5a629416679281cfe0402b01ec588c0c282945725c767c.zip"},"description":"onEvent handler for EKS cluster resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.onEvent","layers":[{"Ref":"NodeProxyAgentLayer924C1971"}],"role":{"Fn::GetAtt":["OnEventHandlerServiceRole15A26729","Arn"]},"runtime":"nodejs22.x","timeout":60}}}}},"IsCompleteHandler":{"id":"IsCompleteHandler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"description":"*","environment":"*","timeout":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","layers":["*"],"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/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"]]}]}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"cade4507238b95610e5a629416679281cfe0402b01ec588c0c282945725c767c.zip"},"description":"isComplete handler for EKS cluster resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.isComplete","layers":[{"Ref":"NodeProxyAgentLayer924C1971"}],"role":{"Fn::GetAtt":["IsCompleteHandlerServiceRole5810CC58","Arn"]},"runtime":"nodejs22.x","timeout":60}}}}},"Provider":{"id":"Provider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.Provider","version":"0.0.0"},"children":{"framework-onEvent":{"id":"framework-onEvent","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]},{"Action":"states:StartExecution","Effect":"Allow","Resource":{"Ref":"Providerwaiterstatemachine5D4A9DF0"}}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133","roles":[{"Ref":"ProviderframeworkonEventServiceRole9FF04296"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},"WAITER_STATE_MACHINE_ARN":{"Ref":"Providerwaiterstatemachine5D4A9DF0"}}},"handler":"framework.onEvent","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonEventServiceRole9FF04296","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"framework-isComplete":{"id":"framework-isComplete","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]}],"Version":"2012-10-17"},"policyName":"ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC","roles":[{"Ref":"ProviderframeworkisCompleteServiceRoleB1087139"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - isComplete (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]}}},"handler":"framework.isComplete","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkisCompleteServiceRoleB1087139","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"framework-onTimeout":{"id":"framework-onTimeout","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F","roles":[{"Ref":"ProviderframeworkonTimeoutServiceRole28643D26"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onTimeout (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]}}},"handler":"framework.onTimeout","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonTimeoutServiceRole28643D26","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"waiter-state-machine":{"id":"waiter-state-machine","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.WaiterStateMachine","version":"0.0.0"},"children":{"Role":{"id":"Role","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportRole":{"id":"ImportRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/ImportRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/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":"states.amazonaws.com"}}],"Version":"2012-10-17"}}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},":*"]]}]}],"Version":"2012-10-17"},"policyName":"ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A","roles":[{"Ref":"ProviderwaiterstatemachineRole0C7159F9"}]}}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_stepfunctions.CfnStateMachine","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::StepFunctions::StateMachine","aws:cdk:cloudformation:props":{"definitionString":{"Fn::Join":["",["{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":60,\"MaxAttempts\":60,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"",{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},"\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"",{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},"\"}}}"]]},"roleArn":{"Fn::GetAtt":["ProviderwaiterstatemachineRole0C7159F9","Arn"]}}}}}}}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource","constructInfo":{"fqn":"aws-cdk-lib.CfnStack","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFormation::Stack","aws:cdk:cloudformation:props":{"templateUrl":{"Fn::Join":["",["https://s3.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/b8167384f64eec02dc5be7e9cdfce6fda006de2c8c80fc78f03b1e4128b5579b.json"]]}}}}}},"@aws-cdk--aws-eks.KubectlProvider":{"id":"@aws-cdk--aws-eks.KubectlProvider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.KubectlProvider","version":"0.0.0"},"children":{"Handler":{"id":"Handler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"timeout":"*","description":"*","memorySize":"*","environment":"*","role":"*","vpc":"*","securityGroups":["*"],"vpcSubnets":{"subnets":["*","*"]},"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]},{"addLayers":["*"]}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"d671460286b61f85906debbcec5341ea4edad148fbc432b0663593611866728e.zip"},"description":"onEvent handler for EKS kubectl resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.handler","layers":[{"Ref":"AwsCliLayerF44AAF94"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref"}],"memorySize":1024,"role":{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn"},"runtime":"python3.13","timeout":900,"vpcConfig":{"subnetIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref"}],"securityGroupIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId"}]}}}}}},"AwsCliLayer":{"id":"AwsCliLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_awscli.AwsCliLayer","version":"0.0.0","metadata":[{}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"c49d356cac773d491c5f7ac148995a1181498a8e289429f8612a7f7e3814f535.zip"},"description":"/opt/awscli/aws"}}}}},"ConditionalPolicyArn":{"id":"ConditionalPolicyArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/ConditionalPolicyArn","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"conditionalPolicy":{"id":"conditionalPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/conditionalPolicy","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"Provider":{"id":"Provider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.Provider","version":"0.0.0"},"children":{"framework-onEvent":{"id":"framework-onEvent","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":{"subnets":["*","*"]},"securityGroups":["*"],"role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"},{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["Handler886CB40B","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["Handler886CB40B","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":{"Fn::GetAtt":["Handler886CB40B","Arn"]}}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133","roles":[{"Ref":"ProviderframeworkonEventServiceRole9FF04296"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["Handler886CB40B","Arn"]}}},"handler":"framework.onEvent","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonEventServiceRole9FF04296","Arn"]},"runtime":"nodejs22.x","timeout":900,"vpcConfig":{"subnetIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref"}],"securityGroupIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId"}]}}}}}}}},"awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}}}},"@aws-cdk--aws-eks.KubectlProvider.NestedStack":{"id":"@aws-cdk--aws-eks.KubectlProvider.NestedStack","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider.NestedStack","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"@aws-cdk--aws-eks.KubectlProvider.NestedStackResource":{"id":"@aws-cdk--aws-eks.KubectlProvider.NestedStackResource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider.NestedStack/@aws-cdk--aws-eks.KubectlProvider.NestedStackResource","constructInfo":{"fqn":"aws-cdk-lib.CfnStack","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFormation::Stack","aws:cdk:cloudformation:props":{"parameters":{"referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref":{"Ref":"KubectlLayer600207B5"},"referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn":{"Fn::GetAtt":["ClusterKubectlHandlerRole94549F93","Arn"]},"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref":{"Ref":"VpcPrivateSubnet1Subnet536B997A"},"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"},"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId":{"Fn::GetAtt":["Cluster9EE0221C","ClusterSecurityGroupId"]}},"templateUrl":{"Fn::Join":["",["https://s3.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/7e23fd5cc5c86e0420e14360a75db6dbd82dd0aa525a6770f573f72c1e2ac9cf.json"]]}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"aws-cdk-eks-cluster-al2023-nodegroup":{"id":"aws-cdk-eks-cluster-al2023-nodegroup","path":"aws-cdk-eks-cluster-al2023-nodegroup","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup/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":"aws-cdk-lib.App","version":"0.0.0"},"children":{"aws-cdk-eks-cluster-al2023-nodegroup-test":{"id":"aws-cdk-eks-cluster-al2023-nodegroup-test","path":"aws-cdk-eks-cluster-al2023-nodegroup-test","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"AdminRole":{"id":"AdminRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}}]},"children":{"ImportAdminRole":{"id":"ImportAdminRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole/ImportAdminRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/AdminRole/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":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}}}],"Version":"2012-10-17"}}}}}},"Vpc":{"id":"Vpc","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0","metadata":[{"natGateways":"*","restrictDefaultSecurityGroup":false}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc"}]}}},"PublicSubnet1":{"id":"PublicSubnet1","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}]}}},"NATGateway":{"id":"NATGateway","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1"}]}}}}},"PublicSubnet2":{"id":"PublicSubnet2","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"kubernetes.io/role/internal-elb","value":"1"},{"key":"Name","value":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc"}]}}},"VPCGW":{"id":"VPCGW","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/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"}}}}}},"KubectlLayer":{"id":"KubectlLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer","constructInfo":{"fqn":"@aws-cdk/lambda-layer-kubectl-v34.KubectlV33Layer","version":"2.0.0","metadata":["*"]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/KubectlLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip"},"description":"/opt/kubectl/kubectl 1.34.0; /opt/helm/helm 3.18.0","licenseInfo":"Apache-2.0"}}}}},"Cluster":{"id":"Cluster","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Cluster","version":"0.0.0","metadata":[{"vpc":"*","mastersRole":"*","defaultCapacity":"*","version":"*","kubectlLayer":"*"},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_STANDARD"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_ARM_64_STANDARD"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_NEURON"}]},{"addNodegroupCapacity":["*",{"amiType":"AL2023_x86_64_NVIDIA"}]}]},"children":{"KubectlHandlerRole":{"id":"KubectlHandlerRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportKubectlHandlerRole":{"id":"ImportKubectlHandlerRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/ImportKubectlHandlerRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/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"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryPullOnly"]]},{"Fn::If":["ClusterHasEcrPublic8EE1114E",{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly"]]},{"Ref":"AWS::NoValue"}]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlHandlerRole/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":"eks:DescribeCluster","Effect":"Allow","Resource":{"Fn::GetAtt":["Cluster9EE0221C","Arn"]}},{"Action":"sts:AssumeRole","Effect":"Allow","Resource":{"Fn::GetAtt":["ClusterCreationRole360249B6","Arn"]}}],"Version":"2012-10-17"},"policyName":"ClusterKubectlHandlerRoleDefaultPolicyE44083DD","roles":[{"Ref":"ClusterKubectlHandlerRole94549F93"}]}}}}}}},"Role":{"id":"Role","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportRole":{"id":"ImportRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role/ImportRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Role/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":"eks.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKSClusterPolicy"]]}]}}}}},"ControlPlaneSecurityGroup":{"id":"ControlPlaneSecurityGroup","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ControlPlaneSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0","metadata":[{"vpc":"*","description":"*"}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ControlPlaneSecurityGroup/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":"EKS Control Plane Security Group","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"CreationRole":{"id":"CreationRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"grant":["*","*"]}]},"children":{"ImportCreationRole":{"id":"ImportCreationRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/ImportCreationRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/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":{"AWS":[{"Fn::GetAtt":["ClusterKubectlHandlerRole94549F93","Arn"]},{"Fn::GetAtt":["awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454","Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn"]},{"Fn::GetAtt":["awscdkawseksClusterResourceProviderNestedStackawscdkawseksClusterResourceProviderNestedStackResource9827C454","Outputs.awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn"]}]}}],"Version":"2012-10-17"}}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/CreationRole/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":"iam:PassRole","Effect":"Allow","Resource":{"Fn::GetAtt":["ClusterRoleFA261979","Arn"]}},{"Action":["eks:CreateCluster","eks:CreateFargateProfile","eks:DeleteCluster","eks:DescribeCluster","eks:DescribeUpdate","eks:TagResource","eks:UntagResource","eks:UpdateClusterConfig","eks:UpdateClusterVersion"],"Effect":"Allow","Resource":"*"},{"Action":["eks:DeleteFargateProfile","eks:DescribeFargateProfile"],"Effect":"Allow","Resource":"*"},{"Action":["ec2:DescribeDhcpOptions","ec2:DescribeInstances","ec2:DescribeNetworkInterfaces","ec2:DescribeRouteTables","ec2:DescribeSecurityGroups","ec2:DescribeSubnets","ec2:DescribeVpcs","iam:CreateServiceLinkedRole","iam:GetRole","iam:listAttachedRolePolicies"],"Effect":"Allow","Resource":"*"}],"Version":"2012-10-17"},"policyName":"ClusterCreationRoleDefaultPolicyE8BDFC7B","roles":[{"Ref":"ClusterCreationRole360249B6"}]}}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*","*","*","*","*","*","*","*"]},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/Resource/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"KubectlReadyBarrier":{"id":"KubectlReadyBarrier","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlReadyBarrier","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"ClusterSecurityGroup":{"id":"ClusterSecurityGroup","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ClusterSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"HasEcrPublic":{"id":"HasEcrPublic","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/HasEcrPublic","constructInfo":{"fqn":"aws-cdk-lib.CfnCondition","version":"0.0.0"}},"AwsAuth":{"id":"AwsAuth","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.AwsAuth","version":"0.0.0"},"children":{"manifest":{"id":"manifest","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.KubernetesManifest","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/AwsAuth/manifest/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}}}},"ConfigCommand":{"id":"ConfigCommand","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/ConfigCommand","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"GetTokenCommand":{"id":"GetTokenCommand","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/GetTokenCommand","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"NodegroupMNG_AL2023_X86_64_STANDARD":{"id":"NodegroupMNG_AL2023_X86_64_STANDARD","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_STANDARD"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_STANDARD/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_STANDARD","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_ARM_64_STANDARD":{"id":"NodegroupMNG_AL2023_ARM_64_STANDARD","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_ARM_64_STANDARD"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_ARM_64_STANDARD/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_ARM_64_STANDARD","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_X86_64_NEURON":{"id":"NodegroupMNG_AL2023_X86_64_NEURON","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_NEURON"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NEURON/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_NEURON","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}},"NodegroupMNG_AL2023_X86_64_NVIDIA":{"id":"NodegroupMNG_AL2023_X86_64_NVIDIA","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.Nodegroup","version":"0.0.0","metadata":[{"cluster":"*","amiType":"AL2023_x86_64_NVIDIA"}]},"children":{"NodeGroupRole":{"id":"NodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]},{"addManagedPolicy":[{"managedPolicyArn":"*"}]}]},"children":{"ImportNodeGroupRole":{"id":"ImportNodeGroupRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole/ImportNodeGroupRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/NodeGroupRole/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/AmazonEKSWorkerNodePolicy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEKS_CNI_Policy"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"]]}]}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/NodegroupMNG_AL2023_X86_64_NVIDIA/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.CfnNodegroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EKS::Nodegroup","aws:cdk:cloudformation:props":{"amiType":"AL2023_x86_64_NVIDIA","clusterName":{"Ref":"Cluster9EE0221C"},"forceUpdateEnabled":true,"nodeRole":{"Fn::GetAtt":["ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C","Arn"]},"scalingConfig":{"desiredSize":2,"maxSize":2,"minSize":1},"subnets":[{"Ref":"VpcPrivateSubnet1Subnet536B997A"},{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"}]}}}}}}},"@aws-cdk--aws-eks.ClusterResourceProvider":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.NestedStack","version":"0.0.0"},"children":{"NodeProxyAgentLayer":{"id":"NodeProxyAgentLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_node_proxy_agent.NodeProxyAgentLayer","version":"0.0.0","metadata":[{}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/NodeProxyAgentLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"93d96d34e0d3cd20eb082652b91012b131bdc34fcf2bc16eb4170e04772fddb1.zip"},"description":"/opt/nodejs/node_modules/proxy-agent"}}}}},"OnEventHandler":{"id":"OnEventHandler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"description":"*","environment":"*","timeout":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","layers":["*"],"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/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"]]}]}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/OnEventHandler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"cade4507238b95610e5a629416679281cfe0402b01ec588c0c282945725c767c.zip"},"description":"onEvent handler for EKS cluster resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.onEvent","layers":[{"Ref":"NodeProxyAgentLayer924C1971"}],"role":{"Fn::GetAtt":["OnEventHandlerServiceRole15A26729","Arn"]},"runtime":"nodejs22.x","timeout":60}}}}},"IsCompleteHandler":{"id":"IsCompleteHandler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"description":"*","environment":"*","timeout":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","layers":["*"],"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/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"]]}]}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/IsCompleteHandler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"cade4507238b95610e5a629416679281cfe0402b01ec588c0c282945725c767c.zip"},"description":"isComplete handler for EKS cluster resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.isComplete","layers":[{"Ref":"NodeProxyAgentLayer924C1971"}],"role":{"Fn::GetAtt":["IsCompleteHandlerServiceRole5810CC58","Arn"]},"runtime":"nodejs22.x","timeout":60}}}}},"Provider":{"id":"Provider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.Provider","version":"0.0.0"},"children":{"framework-onEvent":{"id":"framework-onEvent","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]},{"Action":"states:StartExecution","Effect":"Allow","Resource":{"Ref":"Providerwaiterstatemachine5D4A9DF0"}}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133","roles":[{"Ref":"ProviderframeworkonEventServiceRole9FF04296"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onEvent/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},"WAITER_STATE_MACHINE_ARN":{"Ref":"Providerwaiterstatemachine5D4A9DF0"}}},"handler":"framework.onEvent","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonEventServiceRole9FF04296","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"framework-isComplete":{"id":"framework-isComplete","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]}],"Version":"2012-10-17"},"policyName":"ProviderframeworkisCompleteServiceRoleDefaultPolicy2E7140AC","roles":[{"Ref":"ProviderframeworkisCompleteServiceRoleB1087139"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-isComplete/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - isComplete (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]}}},"handler":"framework.isComplete","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkisCompleteServiceRoleB1087139","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"framework-onTimeout":{"id":"framework-onTimeout","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":"*","securityGroups":"*","role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]},{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]}]}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonTimeoutServiceRoleDefaultPolicy2688969F","roles":[{"Ref":"ProviderframeworkonTimeoutServiceRole28643D26"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/framework-onTimeout/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onTimeout (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["OnEventHandler42BEBAE0","Arn"]},"USER_IS_COMPLETE_FUNCTION_ARN":{"Fn::GetAtt":["IsCompleteHandler7073F4DA","Arn"]}}},"handler":"framework.onTimeout","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonTimeoutServiceRole28643D26","Arn"]},"runtime":"nodejs22.x","timeout":900}}}}},"waiter-state-machine":{"id":"waiter-state-machine","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.WaiterStateMachine","version":"0.0.0"},"children":{"Role":{"id":"Role","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportRole":{"id":"ImportRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/ImportRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/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":"states.amazonaws.com"}}],"Version":"2012-10-17"}}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Role/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},":*"]]},{"Fn::Join":["",[{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},":*"]]}]}],"Version":"2012-10-17"},"policyName":"ProviderwaiterstatemachineRoleDefaultPolicyD3C3DA1A","roles":[{"Ref":"ProviderwaiterstatemachineRole0C7159F9"}]}}}}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/Provider/waiter-state-machine/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_stepfunctions.CfnStateMachine","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::StepFunctions::StateMachine","aws:cdk:cloudformation:props":{"definitionString":{"Fn::Join":["",["{\"StartAt\":\"framework-isComplete-task\",\"States\":{\"framework-isComplete-task\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"States.ALL\"],\"IntervalSeconds\":60,\"MaxAttempts\":60,\"BackoffRate\":1}],\"Catch\":[{\"ErrorEquals\":[\"States.ALL\"],\"Next\":\"framework-onTimeout-task\"}],\"Type\":\"Task\",\"Resource\":\"",{"Fn::GetAtt":["ProviderframeworkisComplete26D7B0CB","Arn"]},"\"},\"framework-onTimeout-task\":{\"End\":true,\"Type\":\"Task\",\"Resource\":\"",{"Fn::GetAtt":["ProviderframeworkonTimeout0B47CA38","Arn"]},"\"}}}"]]},"roleArn":{"Fn::GetAtt":["ProviderwaiterstatemachineRole0C7159F9","Arn"]}}}}}}}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderOnEventHandlerServiceRole52B34D2CArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderIsCompleteHandlerServiceRoleE20DF395Arn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksClusterResourceProviderframeworkonEvent164A6D0CArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource":{"id":"@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStack/@aws-cdk--aws-eks.ClusterResourceProvider.NestedStackResource","constructInfo":{"fqn":"aws-cdk-lib.CfnStack","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFormation::Stack","aws:cdk:cloudformation:props":{"templateUrl":{"Fn::Join":["",["https://s3.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/b8167384f64eec02dc5be7e9cdfce6fda006de2c8c80fc78f03b1e4128b5579b.json"]]}}}}}},"@aws-cdk--aws-eks.KubectlProvider":{"id":"@aws-cdk--aws-eks.KubectlProvider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider","constructInfo":{"fqn":"aws-cdk-lib.aws_eks.KubectlProvider","version":"0.0.0"},"children":{"Handler":{"id":"Handler","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"timeout":"*","description":"*","memorySize":"*","environment":"*","role":"*","vpc":"*","securityGroups":["*"],"vpcSubnets":{"subnets":["*","*"]},"code":"*","handler":"*","runtime":"*"},{"addEnvironment":["*","*"]},{"addLayers":["*"]},{"addLayers":["*"]}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Handler/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"d671460286b61f85906debbcec5341ea4edad148fbc432b0663593611866728e.zip"},"description":"onEvent handler for EKS kubectl resource provider","environment":{"variables":{"AWS_STS_REGIONAL_ENDPOINTS":"regional"}},"handler":"index.handler","layers":[{"Ref":"AwsCliLayerF44AAF94"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref"}],"memorySize":1024,"role":{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn"},"runtime":"python3.13","timeout":900,"vpcConfig":{"subnetIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref"}],"securityGroupIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId"}]}}}}}},"AwsCliLayer":{"id":"AwsCliLayer","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_awscli.AwsCliLayer","version":"0.0.0","metadata":[{}]},"children":{"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/AwsCliLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"c49d356cac773d491c5f7ac148995a1181498a8e289429f8612a7f7e3814f535.zip"},"description":"/opt/awscli/aws"}}}}},"ConditionalPolicyArn":{"id":"ConditionalPolicyArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/ConditionalPolicyArn","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"conditionalPolicy":{"id":"conditionalPolicy","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/conditionalPolicy","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":[]}},"Provider":{"id":"Provider","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider","constructInfo":{"fqn":"aws-cdk-lib.custom_resources.Provider","version":"0.0.0"},"children":{"framework-onEvent":{"id":"framework-onEvent","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0","metadata":[{"code":"*","description":"*","runtime":"*","handler":"*","timeout":"*","loggingFormat":"JSON","applicationLogLevelV2":"FATAL","logGroup":"*","vpc":"*","vpcSubnets":{"subnets":["*","*"]},"securityGroups":["*"],"role":"*","functionName":"*","environmentEncryption":"*"},{"addEnvironment":["*","*"]}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"},{"managedPolicyArn":"*"}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":"lambda:InvokeFunction","Effect":"Allow","Resource":[{"Fn::GetAtt":["Handler886CB40B","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["Handler886CB40B","Arn"]},":*"]]}]},{"Action":"lambda:GetFunction","Effect":"Allow","Resource":{"Fn::GetAtt":["Handler886CB40B","Arn"]}}],"Version":"2012-10-17"},"policyName":"ProviderframeworkonEventServiceRoleDefaultPolicy48CD2133","roles":[{"Ref":"ProviderframeworkonEventServiceRole9FF04296"}]}}}}}}},"Code":{"id":"Code","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider/framework-onEvent/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":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip"},"description":"AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/Provider)","environment":{"variables":{"USER_ON_EVENT_FUNCTION_ARN":{"Fn::GetAtt":["Handler886CB40B","Arn"]}}},"handler":"framework.onEvent","loggingConfig":{"logFormat":"JSON","applicationLogLevel":"FATAL"},"role":{"Fn::GetAtt":["ProviderframeworkonEventServiceRole9FF04296","Arn"]},"runtime":"nodejs22.x","timeout":900,"vpcConfig":{"subnetIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref"},{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref"}],"securityGroupIds":[{"Ref":"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId"}]}}}}}}}},"awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn":{"id":"awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/awscdkeksclusteral2023nodegrouptestawscdkawseksKubectlProviderframeworkonEventF34EE07AArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId":{"id":"reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider/reference-to-awscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}}}},"@aws-cdk--aws-eks.KubectlProvider.NestedStack":{"id":"@aws-cdk--aws-eks.KubectlProvider.NestedStack","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider.NestedStack","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"@aws-cdk--aws-eks.KubectlProvider.NestedStackResource":{"id":"@aws-cdk--aws-eks.KubectlProvider.NestedStackResource","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/@aws-cdk--aws-eks.KubectlProvider.NestedStack/@aws-cdk--aws-eks.KubectlProvider.NestedStackResource","constructInfo":{"fqn":"aws-cdk-lib.CfnStack","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFormation::Stack","aws:cdk:cloudformation:props":{"parameters":{"referencetoawscdkeksclusteral2023nodegrouptestKubectlLayer1E2C08B6Ref":{"Ref":"KubectlLayer600207B5"},"referencetoawscdkeksclusteral2023nodegrouptestClusterKubectlHandlerRoleEBF8BFAEArn":{"Fn::GetAtt":["ClusterKubectlHandlerRole94549F93","Arn"]},"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet1Subnet9541A699Ref":{"Ref":"VpcPrivateSubnet1Subnet536B997A"},"referencetoawscdkeksclusteral2023nodegrouptestVpcPrivateSubnet2Subnet229DFC35Ref":{"Ref":"VpcPrivateSubnet2Subnet3788AAA1"},"referencetoawscdkeksclusteral2023nodegrouptestCluster517CBBE0ClusterSecurityGroupId":{"Fn::GetAtt":["Cluster9EE0221C","ClusterSecurityGroupId"]}},"templateUrl":{"Fn::Join":["",["https://s3.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/7e23fd5cc5c86e0420e14360a75db6dbd82dd0aa525a6770f573f72c1e2ac9cf.json"]]}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup-test/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"aws-cdk-eks-cluster-al2023-nodegroup":{"id":"aws-cdk-eks-cluster-al2023-nodegroup","path":"aws-cdk-eks-cluster-al2023-nodegroup","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"aws-cdk-eks-cluster-al2023-nodegroup/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-eks/test/integ.eks-al2023-nodegroup.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.ts index ae7bd660b3f27..3b4e560768e9d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-eks/test/integ.eks-al2023-nodegroup.ts @@ -27,7 +27,7 @@ class EksClusterStack extends Stack { vpc: this.vpc, mastersRole, defaultCapacity: 0, - ...getClusterVersionConfig(this, eks.KubernetesVersion.V1_33), + ...getClusterVersionConfig(this, eks.KubernetesVersion.V1_34), }); // create nodegroup with AL2023_X86_64_STANDARD diff --git a/packages/@aws-cdk/aws-eks-v2-alpha/lib/cluster.ts b/packages/@aws-cdk/aws-eks-v2-alpha/lib/cluster.ts index 7239953b77a08..3605bee55ac9f 100644 --- a/packages/@aws-cdk/aws-eks-v2-alpha/lib/cluster.ts +++ b/packages/@aws-cdk/aws-eks-v2-alpha/lib/cluster.ts @@ -1,31 +1,42 @@ -import * as fs from 'fs'; -import * as path from 'path'; -import { Construct, Node } from 'constructs'; -import * as YAML from 'yaml'; -import { IAccessPolicy, IAccessEntry, AccessEntry, AccessPolicy, AccessScopeType } from './access-entry'; -import { IAddon, Addon } from './addon'; -import { AlbController, AlbControllerOptions } from './alb-controller'; -import { FargateProfile, FargateProfileOptions } from './fargate-profile'; -import { HelmChart, HelmChartOptions } from './helm-chart'; -import { INSTANCE_TYPES } from './instance-types'; -import { KubernetesManifest, KubernetesManifestOptions } from './k8s-manifest'; -import { KubernetesObjectValue } from './k8s-object-value'; -import { KubernetesPatch } from './k8s-patch'; -import { IKubectlProvider, KubectlProvider, KubectlProviderOptions } from './kubectl-provider'; -import { Nodegroup, NodegroupOptions } from './managed-nodegroup'; -import { OpenIdConnectProvider } from './oidc-provider'; -import { BottleRocketImage } from './private/bottlerocket'; -import { ServiceAccount, ServiceAccountOptions } from './service-account'; -import { renderAmazonLinuxUserData, renderBottlerocketUserData } from './user-data'; -import * as autoscaling from 'aws-cdk-lib/aws-autoscaling'; -import * as ec2 from 'aws-cdk-lib/aws-ec2'; -import * as iam from 'aws-cdk-lib/aws-iam'; -import * as kms from 'aws-cdk-lib/aws-kms'; -import * as ssm from 'aws-cdk-lib/aws-ssm'; -import { Annotations, CfnOutput, CfnResource, IResource, Resource, Tags, Token, Duration, ArnComponents, Stack } from 'aws-cdk-lib/core'; -import { CfnCluster } from 'aws-cdk-lib/aws-eks'; -import { MethodMetadata, addConstructMetadata } from 'aws-cdk-lib/core/lib/metadata-resource'; -import { propertyInjectable } from 'aws-cdk-lib/core/lib/prop-injectable'; +import * as fs from "fs"; +import * as path from "path"; +import { Construct, Node } from "constructs"; +import * as YAML from "yaml"; +import { IAccessPolicy, IAccessEntry, AccessEntry, AccessPolicy, AccessScopeType } from "./access-entry"; +import { IAddon, Addon } from "./addon"; +import { AlbController, AlbControllerOptions } from "./alb-controller"; +import { FargateProfile, FargateProfileOptions } from "./fargate-profile"; +import { HelmChart, HelmChartOptions } from "./helm-chart"; +import { INSTANCE_TYPES } from "./instance-types"; +import { KubernetesManifest, KubernetesManifestOptions } from "./k8s-manifest"; +import { KubernetesObjectValue } from "./k8s-object-value"; +import { KubernetesPatch } from "./k8s-patch"; +import { IKubectlProvider, KubectlProvider, KubectlProviderOptions } from "./kubectl-provider"; +import { Nodegroup, NodegroupOptions } from "./managed-nodegroup"; +import { OpenIdConnectProvider } from "./oidc-provider"; +import { BottleRocketImage } from "./private/bottlerocket"; +import { ServiceAccount, ServiceAccountOptions } from "./service-account"; +import { renderAmazonLinuxUserData, renderBottlerocketUserData } from "./user-data"; +import * as autoscaling from "aws-cdk-lib/aws-autoscaling"; +import * as ec2 from "aws-cdk-lib/aws-ec2"; +import * as iam from "aws-cdk-lib/aws-iam"; +import * as kms from "aws-cdk-lib/aws-kms"; +import * as ssm from "aws-cdk-lib/aws-ssm"; +import { + Annotations, + CfnOutput, + CfnResource, + IResource, + Resource, + Tags, + Token, + Duration, + ArnComponents, + Stack, +} from "aws-cdk-lib/core"; +import { CfnCluster } from "aws-cdk-lib/aws-eks"; +import { MethodMetadata, addConstructMetadata } from "aws-cdk-lib/core/lib/metadata-resource"; +import { propertyInjectable } from "aws-cdk-lib/core/lib/prop-injectable"; // defaults are based on https://eksctl.io const DEFAULT_CAPACITY_COUNT = 2; @@ -426,7 +437,6 @@ export interface ClusterCommonOptions { * Group access configuration together. */ interface EndpointAccessConfig { - /** * Indicates if private access is enabled. */ @@ -443,7 +453,6 @@ interface EndpointAccessConfig { * @default - No restrictions. */ readonly publicCidrs?: string[]; - } /** @@ -488,9 +497,10 @@ export class EndpointAccess { * * @internal */ - public readonly _config: EndpointAccessConfig) { + public readonly _config: EndpointAccessConfig, + ) { if (!_config.publicAccess && _config.publicCidrs && _config.publicCidrs.length > 0) { - throw new Error('CIDR blocks can only be configured when public access is enabled'); + throw new Error("CIDR blocks can only be configured when public access is enabled"); } } @@ -504,7 +514,9 @@ export class EndpointAccess { if (!this._config.privateAccess) { // when private access is disabled, we can't restric public // access since it will render the kubectl provider unusable. - throw new Error('Cannot restric public access to endpoint when private access is disabled. Use PUBLIC_AND_PRIVATE.onlyFrom() instead.'); + throw new Error( + "Cannot restric public access to endpoint when private access is disabled. Use PUBLIC_AND_PRIVATE.onlyFrom() instead.", + ); } return new EndpointAccess({ ...this._config, @@ -538,7 +550,6 @@ export interface ComputeConfig { * @default - generated by the CDK */ readonly nodeRole?: iam.IRole; - } /** @@ -611,7 +622,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV25Layer` from * `@aws-cdk/lambda-layer-kubectl-v25`. */ - public static readonly V1_25 = KubernetesVersion.of('1.25'); + public static readonly V1_25 = KubernetesVersion.of("1.25"); /** * Kubernetes version 1.26 @@ -620,7 +631,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV26Layer` from * `@aws-cdk/lambda-layer-kubectl-v26`. */ - public static readonly V1_26 = KubernetesVersion.of('1.26'); + public static readonly V1_26 = KubernetesVersion.of("1.26"); /** * Kubernetes version 1.27 @@ -629,7 +640,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV27Layer` from * `@aws-cdk/lambda-layer-kubectl-v27`. */ - public static readonly V1_27 = KubernetesVersion.of('1.27'); + public static readonly V1_27 = KubernetesVersion.of("1.27"); /** * Kubernetes version 1.28 @@ -638,7 +649,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV28Layer` from * `@aws-cdk/lambda-layer-kubectl-v28`. */ - public static readonly V1_28 = KubernetesVersion.of('1.28'); + public static readonly V1_28 = KubernetesVersion.of("1.28"); /** * Kubernetes version 1.29 @@ -647,7 +658,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV29Layer` from * `@aws-cdk/lambda-layer-kubectl-v29`. */ - public static readonly V1_29 = KubernetesVersion.of('1.29'); + public static readonly V1_29 = KubernetesVersion.of("1.29"); /** * Kubernetes version 1.30 @@ -656,7 +667,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV30Layer` from * `@aws-cdk/lambda-layer-kubectl-v30`. */ - public static readonly V1_30 = KubernetesVersion.of('1.30'); + public static readonly V1_30 = KubernetesVersion.of("1.30"); /** * Kubernetes version 1.31 @@ -665,7 +676,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV31Layer` from * `@aws-cdk/lambda-layer-kubectl-v31`. */ - public static readonly V1_31 = KubernetesVersion.of('1.31'); + public static readonly V1_31 = KubernetesVersion.of("1.31"); /** * Kubernetes version 1.32 @@ -674,7 +685,7 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV32Layer` from * `@aws-cdk/lambda-layer-kubectl-v32`. */ - public static readonly V1_32 = KubernetesVersion.of('1.32'); + public static readonly V1_32 = KubernetesVersion.of("1.32"); /** * Kubernetes version 1.33 @@ -683,18 +694,29 @@ export class KubernetesVersion { * `kubectlLayer` property with a `KubectlV33Layer` from * `@aws-cdk/lambda-layer-kubectl-v33`. */ - public static readonly V1_33 = KubernetesVersion.of('1.33'); + public static readonly V1_33 = KubernetesVersion.of("1.33"); + + /** + * Kubernetes version 1.34 + * + * When creating a `Cluster` with this version, you need to also specify the + * `kubectlLayer` property with a `KubectlV33Layer` from + * `@aws-cdk/lambda-layer-kubectl-v34`. + */ + public static readonly V1_34 = KubernetesVersion.of("1.34"); /** * Custom cluster version * @param version custom version number */ - public static of(version: string) { return new KubernetesVersion(version); } + public static of(version: string) { + return new KubernetesVersion(version); + } /** * * @param version cluster version number */ - private constructor(public readonly version: string) { } + private constructor(public readonly version: string) {} } // Shared definition with packages/@aws-cdk/custom-resource-handlers/test/aws-eks/compare-log.test.ts @@ -705,23 +727,23 @@ export enum ClusterLoggingTypes { /** * Logs pertaining to API requests to the cluster. */ - API = 'api', + API = "api", /** * Logs pertaining to cluster access via the Kubernetes API. */ - AUDIT = 'audit', + AUDIT = "audit", /** * Logs pertaining to authentication requests into the cluster. */ - AUTHENTICATOR = 'authenticator', + AUTHENTICATOR = "authenticator", /** * Logs pertaining to state of cluster controllers. */ - CONTROLLER_MANAGER = 'controllerManager', + CONTROLLER_MANAGER = "controllerManager", /** * Logs pertaining to scheduling decisions. */ - SCHEDULER = 'scheduler', + SCHEDULER = "scheduler", } /** @@ -731,11 +753,11 @@ export enum IpFamily { /** * Use IPv4 for pods and services in your cluster. */ - IP_V4 = 'ipv4', + IP_V4 = "ipv4", /** * Use IPv6 for pods and services in your cluster. */ - IP_V6 = 'ipv6', + IP_V6 = "ipv6", } abstract class ClusterBase extends Resource implements ICluster { @@ -787,7 +809,7 @@ abstract class ClusterBase extends Resource implements ICluster { const cdk8sChart = chart as any; // see https://github.com/awslabs/cdk8s/blob/master/packages/cdk8s/src/chart.ts#L84 - if (typeof cdk8sChart.toJson !== 'function') { + if (typeof cdk8sChart.toJson !== "function") { throw new Error(`Invalid cdk8s chart. Must contain a 'toJson' method, but found ${typeof cdk8sChart.toJson}`); } @@ -846,28 +868,31 @@ abstract class ClusterBase extends Resource implements ICluster { } if (bootstrapEnabled) { - const userData = options.machineImageType === MachineImageType.BOTTLEROCKET ? - renderBottlerocketUserData(this) : - renderAmazonLinuxUserData(this, autoScalingGroup, options.bootstrapOptions); + const userData = + options.machineImageType === MachineImageType.BOTTLEROCKET + ? renderBottlerocketUserData(this) + : renderAmazonLinuxUserData(this, autoScalingGroup, options.bootstrapOptions); autoScalingGroup.addUserData(...userData); } - autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSWorkerNodePolicy')); - autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKS_CNI_Policy')); - autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEC2ContainerRegistryReadOnly')); + autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEKSWorkerNodePolicy")); + autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEKS_CNI_Policy")); + autoScalingGroup.role.addManagedPolicy( + iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEC2ContainerRegistryReadOnly"), + ); // EKS Required Tags // https://docs.aws.amazon.com/eks/latest/userguide/worker.html - Tags.of(autoScalingGroup).add(`kubernetes.io/cluster/${this.clusterName}`, 'owned', { + Tags.of(autoScalingGroup).add(`kubernetes.io/cluster/${this.clusterName}`, "owned", { applyToLaunchedInstances: true, // exclude security groups to avoid multiple "owned" security groups. // (the cluster security group already has this tag) - excludeResourceTypes: ['AWS::EC2::SecurityGroup'], + excludeResourceTypes: ["AWS::EC2::SecurityGroup"], }); // since we are not mapping the instance role to RBAC, synthesize an // output so it can be pasted into `aws-auth-cm.yaml` - new CfnOutput(autoScalingGroup, 'InstanceRoleARN', { + new CfnOutput(autoScalingGroup, "InstanceRoleARN", { value: autoScalingGroup.role.roleArn, }); @@ -883,7 +908,6 @@ abstract class ClusterBase extends Resource implements ICluster { * Options for fetching a ServiceLoadBalancerAddress. */ export interface ServiceLoadBalancerAddressOptions { - /** * Timeout for waiting on the load balancer address. * @@ -897,7 +921,6 @@ export interface ServiceLoadBalancerAddressOptions { * @default 'default' */ readonly namespace?: string; - } /** @@ -915,7 +938,7 @@ export interface IngressLoadBalancerAddressOptions extends ServiceLoadBalancerAd @propertyInjectable export class Cluster extends ClusterBase { /** Uniquely identifies this class. */ - public static readonly PROPERTY_INJECTION_ID: string = '@aws-cdk.aws-eks-v2-alpha.Cluster'; + public static readonly PROPERTY_INJECTION_ID: string = "@aws-cdk.aws-eks-v2-alpha.Cluster"; /** * Import an existing cluster @@ -1049,7 +1072,7 @@ export class Cluster extends ClusterBase { private readonly version: KubernetesVersion; // TODO: revisit logging format - private readonly logging?: { [key: string]: { [key:string]: any} }; + private readonly logging?: { [key: string]: { [key: string]: any } }; /** * A dummy CloudFormation resource that is used as a wait barrier which @@ -1086,7 +1109,7 @@ export class Cluster extends ClusterBase { addConstructMetadata(this, props); this.prune = props.prune ?? true; - this.vpc = props.vpc || new ec2.Vpc(this, 'DefaultVpc'); + this.vpc = props.vpc || new ec2.Vpc(this, "DefaultVpc"); this.version = props.version; this._kubectlProviderOptions = props.kubectlProviderOptions; @@ -1094,12 +1117,12 @@ export class Cluster extends ClusterBase { this.tagSubnets(); // this is the role used by EKS when interacting with AWS resources - this.role = props.role || new iam.Role(this, 'Role', { - assumedBy: new iam.ServicePrincipal('eks.amazonaws.com'), - managedPolicies: [ - iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSClusterPolicy'), - ], - }); + this.role = + props.role || + new iam.Role(this, "Role", { + assumedBy: new iam.ServicePrincipal("eks.amazonaws.com"), + managedPolicies: [iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEKSClusterPolicy")], + }); // validate all automode relevant configurations const autoModeEnabled = this.isValidAutoModeConfig(props); @@ -1107,10 +1130,12 @@ export class Cluster extends ClusterBase { if (autoModeEnabled) { // attach required managed policy for the cluster role in EKS Auto Mode // see - https://docs.aws.amazon.com/eks/latest/userguide/auto-cluster-iam-role.html - ['AmazonEKSComputePolicy', - 'AmazonEKSBlockStoragePolicy', - 'AmazonEKSLoadBalancingPolicy', - 'AmazonEKSNetworkingPolicy'].forEach((policyName) => { + [ + "AmazonEKSComputePolicy", + "AmazonEKSBlockStoragePolicy", + "AmazonEKSLoadBalancingPolicy", + "AmazonEKSNetworkingPolicy", + ].forEach((policyName) => { this.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName(policyName)); }); @@ -1121,65 +1146,75 @@ export class Cluster extends ClusterBase { this.role.assumeRolePolicy?.addStatements( new iam.PolicyStatement({ effect: iam.Effect.ALLOW, - principals: [new iam.ServicePrincipal('eks.amazonaws.com')], - actions: ['sts:TagSession'], + principals: [new iam.ServicePrincipal("eks.amazonaws.com")], + actions: ["sts:TagSession"], }), ); } } - const securityGroup = props.securityGroup || new ec2.SecurityGroup(this, 'ControlPlaneSecurityGroup', { - vpc: this.vpc, - description: 'EKS Control Plane Security Group', - }); + const securityGroup = + props.securityGroup || + new ec2.SecurityGroup(this, "ControlPlaneSecurityGroup", { + vpc: this.vpc, + description: "EKS Control Plane Security Group", + }); - this.vpcSubnets = props.vpcSubnets ?? [{ subnetType: ec2.SubnetType.PUBLIC }, { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }]; + this.vpcSubnets = props.vpcSubnets ?? [ + { subnetType: ec2.SubnetType.PUBLIC }, + { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }, + ]; - const selectedSubnetIdsPerGroup = this.vpcSubnets.map(s => this.vpc.selectSubnets(s).subnetIds); + const selectedSubnetIdsPerGroup = this.vpcSubnets.map((s) => this.vpc.selectSubnets(s).subnetIds); if (selectedSubnetIdsPerGroup.some(Token.isUnresolved) && selectedSubnetIdsPerGroup.length > 1) { - throw new Error('eks.Cluster: cannot select multiple subnet groups from a VPC imported from list tokens with unknown length. Select only one subnet group, pass a length to Fn.split, or switch to Vpc.fromLookup.'); + throw new Error( + "eks.Cluster: cannot select multiple subnet groups from a VPC imported from list tokens with unknown length. Select only one subnet group, pass a length to Fn.split, or switch to Vpc.fromLookup.", + ); } // Get subnetIds for all selected subnets const subnetIds = Array.from(new Set(flatten(selectedSubnetIdsPerGroup))); - this.logging = props.clusterLogging ? { - clusterLogging: { - enabledTypes: props.clusterLogging.map((type) => ({ type })), - }, - } : undefined; + this.logging = props.clusterLogging + ? { + clusterLogging: { + enabledTypes: props.clusterLogging.map((type) => ({ type })), + }, + } + : undefined; this.endpointAccess = props.endpointAccess ?? EndpointAccess.PUBLIC_AND_PRIVATE; this.ipFamily = props.ipFamily ?? IpFamily.IP_V4; const privateSubnets = this.selectPrivateSubnets().slice(0, 16); const publicAccessDisabled = !this.endpointAccess._config.publicAccess; - const publicAccessRestricted = !publicAccessDisabled - && this.endpointAccess._config.publicCidrs - && this.endpointAccess._config.publicCidrs.length !== 0; + const publicAccessRestricted = + !publicAccessDisabled && + this.endpointAccess._config.publicCidrs && + this.endpointAccess._config.publicCidrs.length !== 0; // validate endpoint access configuration if (privateSubnets.length === 0 && publicAccessDisabled) { // no private subnets and no public access at all, no good. - throw new Error('Vpc must contain private subnets when public endpoint access is disabled'); + throw new Error("Vpc must contain private subnets when public endpoint access is disabled"); } if (privateSubnets.length === 0 && publicAccessRestricted) { // no private subnets and public access is restricted, no good. - throw new Error('Vpc must contain private subnets when public endpoint access is restricted'); + throw new Error("Vpc must contain private subnets when public endpoint access is restricted"); } if (props.serviceIpv4Cidr && props.ipFamily == IpFamily.IP_V6) { - throw new Error('Cannot specify serviceIpv4Cidr with ipFamily equal to IpFamily.IP_V6'); + throw new Error("Cannot specify serviceIpv4Cidr with ipFamily equal to IpFamily.IP_V6"); } - const resource = this._clusterResource = new CfnCluster(this, 'Resource', { + const resource = (this._clusterResource = new CfnCluster(this, "Resource", { name: this.physicalName, roleArn: this.role.roleArn, version: props.version.version, accessConfig: { - authenticationMode: 'API', + authenticationMode: "API", bootstrapClusterCreatorAdminPermissions: props.bootstrapClusterCreatorAdminPermissions, }, computeConfig: { @@ -1187,10 +1222,11 @@ export class Cluster extends ClusterBase { // If the computeConfig enabled flag is set to false when creating a cluster with Auto Mode, // the request must not include values for the nodeRoleArn or nodePools fields. // Also, if nodePools is empty, nodeRoleArn should not be included to prevent deployment failures - nodePools: !autoModeEnabled ? undefined : props.compute?.nodePools ?? ['system', 'general-purpose'], - nodeRoleArn: !autoModeEnabled || (props.compute?.nodePools && props.compute.nodePools.length === 0) ? - undefined : - props.compute?.nodeRole?.roleArn ?? this.addNodePoolRole(`${id}nodePoolRole`).roleArn, + nodePools: !autoModeEnabled ? undefined : (props.compute?.nodePools ?? ["system", "general-purpose"]), + nodeRoleArn: + !autoModeEnabled || (props.compute?.nodePools && props.compute.nodePools.length === 0) + ? undefined + : (props.compute?.nodeRole?.roleArn ?? this.addNodePoolRole(`${id}nodePoolRole`).roleArn), }, storageConfig: { blockStorage: { @@ -1211,17 +1247,21 @@ export class Cluster extends ClusterBase { endpointPublicAccess: this.endpointAccess._config.publicAccess, publicAccessCidrs: this.endpointAccess._config.publicCidrs, }, - ...(props.secretsEncryptionKey ? { - encryptionConfig: [{ - provider: { - keyArn: props.secretsEncryptionKey.keyRef.keyArn, - }, - resources: ['secrets'], - }], - } : {}), - tags: Object.keys(props.tags ?? {}).map(k => ({ key: k, value: props.tags![k] })), + ...(props.secretsEncryptionKey + ? { + encryptionConfig: [ + { + provider: { + keyArn: props.secretsEncryptionKey.keyRef.keyArn, + }, + resources: ["secrets"], + }, + ], + } + : {}), + tags: Object.keys(props.tags ?? {}).map((k) => ({ key: k, value: props.tags![k] })), logging: this.logging, - }); + })); let kubectlSubnets = this._kubectlProviderOptions?.privateSubnets; @@ -1231,7 +1271,9 @@ export class Cluster extends ClusterBase { // validate VPC properties according to: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html if (this.vpc instanceof ec2.Vpc && !(this.vpc.dnsHostnamesEnabled && this.vpc.dnsSupportEnabled)) { - throw new Error('Private endpoint access requires the VPC to have DNS support and DNS hostnames enabled. Use `enableDnsHostnames: true` and `enableDnsSupport: true` when creating the VPC.'); + throw new Error( + "Private endpoint access requires the VPC to have DNS support and DNS hostnames enabled. Use `enableDnsHostnames: true` and `enableDnsSupport: true` when creating the VPC.", + ); } kubectlSubnets = privateSubnets; @@ -1242,11 +1284,11 @@ export class Cluster extends ClusterBase { } // we use an SSM parameter as a barrier because it's free and fast. - this._kubectlReadyBarrier = new CfnResource(this, 'KubectlReadyBarrier', { - type: 'AWS::SSM::Parameter', + this._kubectlReadyBarrier = new CfnResource(this, "KubectlReadyBarrier", { + type: "AWS::SSM::Parameter", properties: { - Type: 'String', - Value: 'aws:cdk:eks:kubectl-ready', + Type: "String", + Value: "aws:cdk:eks:kubectl-ready", }, }); @@ -1261,7 +1303,11 @@ export class Cluster extends ClusterBase { this.clusterSecurityGroupId = resource.attrClusterSecurityGroupId; this.clusterEncryptionConfigKeyArn = resource.attrEncryptionConfigKeyArn; - this.clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterSecurityGroup', this.clusterSecurityGroupId); + this.clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId( + this, + "ClusterSecurityGroup", + this.clusterSecurityGroupId, + ); this.connections = new ec2.Connections({ securityGroups: [this.clusterSecurityGroup, securityGroup], @@ -1274,7 +1320,7 @@ export class Cluster extends ClusterBase { const commonCommandOptions = [`--region ${stack.region}`]; if (props.kubectlProviderOptions) { - this._kubectlProvider = new KubectlProvider(this, 'KubectlProvider', { + this._kubectlProvider = new KubectlProvider(this, "KubectlProvider", { cluster: this, role: this._kubectlProviderOptions?.role, awscliLayer: this._kubectlProviderOptions?.awscliLayer, @@ -1286,14 +1332,14 @@ export class Cluster extends ClusterBase { // give the handler role admin access to the cluster // so it can deploy/query any resource. - this._clusterAdminAccess = this.grantClusterAdmin('ClusterAdminRoleAccess', this._kubectlProvider?.role!.roleArn); + this._clusterAdminAccess = this.grantClusterAdmin("ClusterAdminRoleAccess", this._kubectlProvider?.role!.roleArn); } // do not create a masters role if one is not provided. Trusting the accountRootPrincipal() is too permissive. if (props.mastersRole) { const mastersRole = props.mastersRole; - this.grantAccess('mastersRoleAccess', props.mastersRole.roleArn, [ - AccessPolicy.fromAccessPolicyName('AmazonEKSClusterAdminPolicy', { + this.grantAccess("mastersRoleAccess", props.mastersRole.roleArn, [ + AccessPolicy.fromAccessPolicyName("AmazonEKSClusterAdminPolicy", { accessScopeType: AccessScopeType.CLUSTER, }), ]); @@ -1306,9 +1352,11 @@ export class Cluster extends ClusterBase { } // if any of defaultCapacity* properties are set, we need a default capacity(nodegroup) - if (props.defaultCapacity !== undefined || - props.defaultCapacityType !== undefined || - props.defaultCapacityInstance !== undefined) { + if ( + props.defaultCapacity !== undefined || + props.defaultCapacityType !== undefined || + props.defaultCapacityInstance !== undefined + ) { const minCapacity = props.defaultCapacity ?? DEFAULT_CAPACITY_COUNT; if (minCapacity > 0) { const instanceType = props.defaultCapacityInstance || DEFAULT_CAPACITY_TYPE; @@ -1317,9 +1365,12 @@ export class Cluster extends ClusterBase { // Only create EC2 or Nodegroup capacity if not using AUTOMODE if (capacityType === DefaultCapacityType.EC2) { - this.defaultCapacity = this.addAutoScalingGroupCapacity('DefaultCapacity', { instanceType, minCapacity }); + this.defaultCapacity = this.addAutoScalingGroupCapacity("DefaultCapacity", { instanceType, minCapacity }); } else if (capacityType === DefaultCapacityType.NODEGROUP) { - this.defaultNodegroup = this.addNodegroupCapacity('DefaultCapacity', { instanceTypes: [instanceType], minSize: minCapacity }); + this.defaultNodegroup = this.addNodegroupCapacity("DefaultCapacity", { + instanceTypes: [instanceType], + minSize: minCapacity, + }); } // For AUTOMODE, we don't create any explicit capacity as it's managed by EKS } @@ -1332,9 +1383,9 @@ export class Cluster extends ClusterBase { const outputConfigCommand = (props.outputConfigCommand ?? true) && props.mastersRole; if (outputConfigCommand) { - const postfix = commonCommandOptions.join(' '); - new CfnOutput(this, 'ConfigCommand', { value: `${updateConfigCommandPrefix} ${postfix}` }); - new CfnOutput(this, 'GetTokenCommand', { value: `${getTokenCommandPrefix} ${postfix}` }); + const postfix = commonCommandOptions.join(" "); + new CfnOutput(this, "ConfigCommand", { value: `${updateConfigCommandPrefix} ${postfix}` }); + new CfnOutput(this, "GetTokenCommand", { value: `${getTokenCommandPrefix} ${postfix}` }); } } @@ -1371,7 +1422,7 @@ export class Cluster extends ClusterBase { principal, cluster: this, accessPolicies: [ - AccessPolicy.fromAccessPolicyName('AmazonEKSClusterAdminPolicy', { + AccessPolicy.fromAccessPolicyName("AmazonEKSClusterAdminPolicy", { accessScopeType: AccessScopeType.CLUSTER, }), ], @@ -1390,10 +1441,10 @@ export class Cluster extends ClusterBase { public getServiceLoadBalancerAddress(serviceName: string, options: ServiceLoadBalancerAddressOptions = {}): string { const loadBalancerAddress = new KubernetesObjectValue(this, `${serviceName}LoadBalancerAddress`, { cluster: this, - objectType: 'service', + objectType: "service", objectName: serviceName, objectNamespace: options.namespace, - jsonPath: '.status.loadBalancer.ingress[0].hostname', + jsonPath: ".status.loadBalancer.ingress[0].hostname", timeout: options.timeout, }); @@ -1410,10 +1461,10 @@ export class Cluster extends ClusterBase { public getIngressLoadBalancerAddress(ingressName: string, options: IngressLoadBalancerAddressOptions = {}): string { const loadBalancerAddress = new KubernetesObjectValue(this, `${ingressName}LoadBalancerAddress`, { cluster: this, - objectType: 'ingress', + objectType: "ingress", objectName: ingressName, objectNamespace: options.namespace, - jsonPath: '.status.loadBalancer.ingress[0].hostname', + jsonPath: ".status.loadBalancer.ingress[0].hostname", timeout: options.timeout, }); @@ -1434,20 +1485,21 @@ export class Cluster extends ClusterBase { @MethodMetadata() public addAutoScalingGroupCapacity(id: string, options: AutoScalingGroupCapacityOptions): autoscaling.AutoScalingGroup { if (options.machineImageType === MachineImageType.BOTTLEROCKET && options.bootstrapOptions !== undefined) { - throw new Error('bootstrapOptions is not supported for Bottlerocket'); + throw new Error("bootstrapOptions is not supported for Bottlerocket"); } const asg = new autoscaling.AutoScalingGroup(this, id, { ...options, vpc: this.vpc, - machineImage: options.machineImageType === MachineImageType.BOTTLEROCKET ? - new BottleRocketImage({ - kubernetesVersion: this.version.version, - }) : - new EksOptimizedImage({ - nodeType: nodeTypeForInstanceType(options.instanceType), - cpuArch: cpuArchForInstanceType(options.instanceType), - kubernetesVersion: this.version.version, - }), + machineImage: + options.machineImageType === MachineImageType.BOTTLEROCKET + ? new BottleRocketImage({ + kubernetesVersion: this.version.version, + }) + : new EksOptimizedImage({ + nodeType: nodeTypeForInstanceType(options.instanceType), + cpuArch: cpuArchForInstanceType(options.instanceType), + kubernetesVersion: this.version.version, + }), }); this.connectAutoScalingGroupCapacity(asg, { @@ -1456,8 +1508,10 @@ export class Cluster extends ClusterBase { machineImageType: options.machineImageType, }); - if (nodeTypeForInstanceType(options.instanceType) === NodeType.INFERENTIA || - nodeTypeForInstanceType(options.instanceType) === NodeType.TRAINIUM) { + if ( + nodeTypeForInstanceType(options.instanceType) === NodeType.INFERENTIA || + nodeTypeForInstanceType(options.instanceType) === NodeType.TRAINIUM + ) { this.addNeuronDevicePlugin(); } @@ -1475,11 +1529,9 @@ export class Cluster extends ClusterBase { */ @MethodMetadata() public addNodegroupCapacity(id: string, options?: NodegroupOptions): Nodegroup { - const hasInferentiaOrTrainiumInstanceType = [ - options?.instanceType, - ...options?.instanceTypes ?? [], - ].some(i => i && (nodeTypeForInstanceType(i) === NodeType.INFERENTIA || - nodeTypeForInstanceType(i) === NodeType.TRAINIUM)); + const hasInferentiaOrTrainiumInstanceType = [options?.instanceType, ...(options?.instanceTypes ?? [])].some( + (i) => i && (nodeTypeForInstanceType(i) === NodeType.INFERENTIA || nodeTypeForInstanceType(i) === NodeType.TRAINIUM), + ); if (hasInferentiaOrTrainiumInstanceType) { this.addNeuronDevicePlugin(); @@ -1508,7 +1560,7 @@ export class Cluster extends ClusterBase { */ public get openIdConnectProvider() { if (!this._openIdConnectProvider) { - this._openIdConnectProvider = new OpenIdConnectProvider(this, 'OpenIdConnectProvider', { + this._openIdConnectProvider = new OpenIdConnectProvider(this, "OpenIdConnectProvider", { url: this.clusterOpenIdConnectIssuerUrl, }); } @@ -1531,9 +1583,9 @@ export class Cluster extends ClusterBase { */ public get eksPodIdentityAgent(): IAddon | undefined { if (!this._eksPodIdentityAgent) { - this._eksPodIdentityAgent = new Addon(this, 'EksPodIdentityAgentAddon', { + this._eksPodIdentityAgent = new Addon(this, "EksPodIdentityAgentAddon", { cluster: this, - addonName: 'eks-pod-identity-agent', + addonName: "eks-pod-identity-agent", }); } @@ -1580,27 +1632,32 @@ export class Cluster extends ClusterBase { * */ private isValidAutoModeConfig(props: ClusterProps): boolean { - const autoModeEnabled = props.defaultCapacityType === undefined || props.defaultCapacityType == DefaultCapacityType.AUTOMODE; + const autoModeEnabled = + props.defaultCapacityType === undefined || props.defaultCapacityType == DefaultCapacityType.AUTOMODE; // if using AUTOMODE if (autoModeEnabled) { // When using AUTOMODE, nodePools values are case-sensitive and must be general-purpose and/or system if (props.compute?.nodePools) { - const validNodePools = ['general-purpose', 'system']; - const invalidPools = props.compute.nodePools.filter(pool => !validNodePools.includes(pool)); + const validNodePools = ["general-purpose", "system"]; + const invalidPools = props.compute.nodePools.filter((pool) => !validNodePools.includes(pool)); if (invalidPools.length > 0) { - throw new Error(`Invalid node pool values: ${invalidPools.join(', ')}. Valid values are: ${validNodePools.join(', ')}`); + throw new Error( + `Invalid node pool values: ${invalidPools.join(", ")}. Valid values are: ${validNodePools.join(", ")}`, + ); } } // When using AUTOMODE, defaultCapacity and defaultCapacityInstance cannot be specified if (props.defaultCapacity !== undefined || props.defaultCapacityInstance !== undefined) { - throw new Error('Cannot specify defaultCapacity or defaultCapacityInstance when using Auto Mode. Auto Mode manages compute resources automatically.'); + throw new Error( + "Cannot specify defaultCapacity or defaultCapacityInstance when using Auto Mode. Auto Mode manages compute resources automatically.", + ); } } else { // if NOT using AUTOMODE if (props.compute) { // When not using AUTOMODE, compute must be undefined - throw new Error('Cannot specify compute without using DefaultCapacityType.AUTOMODE'); + throw new Error("Cannot specify compute without using DefaultCapacityType.AUTOMODE"); } } @@ -1609,12 +1666,12 @@ export class Cluster extends ClusterBase { private addNodePoolRole(id: string): iam.Role { const role = new iam.Role(this, id, { - assumedBy: new iam.ServicePrincipal('ec2.amazonaws.com'), + assumedBy: new iam.ServicePrincipal("ec2.amazonaws.com"), // to be able to access the AWSLoadBalancerController managedPolicies: [ // see https://docs.aws.amazon.com/eks/latest/userguide/automode-get-started-cli.html#auto-mode-create-roles - iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSWorkerNodePolicy'), - iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEC2ContainerRegistryReadOnly'), + iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEKSWorkerNodePolicy"), + iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEC2ContainerRegistryReadOnly"), ], }); @@ -1659,8 +1716,8 @@ export class Cluster extends ClusterBase { private selectPrivateSubnets(): ec2.ISubnet[] { const privateSubnets: ec2.ISubnet[] = []; - const vpcPrivateSubnetIds = this.vpc.privateSubnets.map(s => s.subnetId); - const vpcPublicSubnetIds = this.vpc.publicSubnets.map(s => s.subnetId); + const vpcPrivateSubnetIds = this.vpc.privateSubnets.map((s) => s.subnetId); + const vpcPublicSubnetIds = this.vpc.publicSubnets.map((s) => s.subnetId); for (const placement of this.vpcSubnets) { for (const subnet of this.vpc.selectSubnets(placement).subnets) { @@ -1691,9 +1748,9 @@ export class Cluster extends ClusterBase { */ private addNeuronDevicePlugin() { if (!this._neuronDevicePlugin) { - const fileContents = fs.readFileSync(path.join(__dirname, 'addons', 'neuron-device-plugin.yaml'), 'utf8'); + const fileContents = fs.readFileSync(path.join(__dirname, "addons", "neuron-device-plugin.yaml"), "utf8"); const sanitized = YAML.parse(fileContents); - this._neuronDevicePlugin = this.addManifest('NeuronDevicePlugin', sanitized); + this._neuronDevicePlugin = this.addManifest("NeuronDevicePlugin", sanitized); } return this._neuronDevicePlugin; @@ -1713,18 +1770,22 @@ export class Cluster extends ClusterBase { if (!ec2.Subnet.isVpcSubnet(subnet)) { // message (if token): "could not auto-tag public/private subnet with tag..." // message (if not token): "count not auto-tag public/private subnet xxxxx with tag..." - const subnetID = Token.isUnresolved(subnet.subnetId) || Token.isUnresolved([subnet.subnetId]) ? '' : ` ${subnet.subnetId}`; - Annotations.of(this).addWarningV2('@aws-cdk/aws-eks:clusterMustManuallyTagSubnet', `Could not auto-tag ${type} subnet${subnetID} with "${tag}=1", please remember to do this manually`); + const subnetID = + Token.isUnresolved(subnet.subnetId) || Token.isUnresolved([subnet.subnetId]) ? "" : ` ${subnet.subnetId}`; + Annotations.of(this).addWarningV2( + "@aws-cdk/aws-eks:clusterMustManuallyTagSubnet", + `Could not auto-tag ${type} subnet${subnetID} with "${tag}=1", please remember to do this manually`, + ); continue; } - Tags.of(subnet).add(tag, '1'); + Tags.of(subnet).add(tag, "1"); } }; // https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html - tagAllSubnets('private', this.vpc.privateSubnets, 'kubernetes.io/role/internal-elb'); - tagAllSubnets('public', this.vpc.publicSubnets, 'kubernetes.io/role/elb'); + tagAllSubnets("private", this.vpc.privateSubnets, "kubernetes.io/role/internal-elb"); + tagAllSubnets("public", this.vpc.publicSubnets, "kubernetes.io/role/elb"); } /** @@ -1748,17 +1809,17 @@ export class Cluster extends ClusterBase { template: { metadata: { annotations: { - 'eks.amazonaws.com/compute-type': computeType, + "eks.amazonaws.com/compute-type": computeType, }, }, }, }, }); - const k8sPatch = new KubernetesPatch(this, 'CoreDnsComputeTypePatch', { + const k8sPatch = new KubernetesPatch(this, "CoreDnsComputeTypePatch", { cluster: this, - resourceName: 'deployment/coredns', - resourceNamespace: 'kube-system', + resourceName: "deployment/coredns", + resourceNamespace: "kube-system", applyPatch: renderPatch(CoreDnsComputeType.FARGATE), restorePatch: renderPatch(CoreDnsComputeType.EC2), }); @@ -1904,7 +1965,7 @@ export interface AutoScalingGroupOptions { @propertyInjectable class ImportedCluster extends ClusterBase { /** Uniquely identifies this class. */ - public static readonly PROPERTY_INJECTION_ID: string = '@aws-cdk.aws-eks-v2-alpha.ImportedCluster'; + public static readonly PROPERTY_INJECTION_ID: string = "@aws-cdk.aws-eks-v2-alpha.ImportedCluster"; public readonly clusterName: string; public readonly clusterArn: string; public readonly connections = new ec2.Connections(); @@ -1916,7 +1977,11 @@ class ImportedCluster extends ClusterBase { // to null check on an instance of `Cluster`, which will always have this configured. private readonly _clusterSecurityGroup?: ec2.ISecurityGroup; - constructor(scope: Construct, id: string, private readonly props: ClusterAttributes) { + constructor( + scope: Construct, + id: string, + private readonly props: ClusterAttributes, + ) { super(scope, id); // Enhanced CDK Analytics Telemetry addConstructMetadata(this, props); @@ -1934,7 +1999,11 @@ class ImportedCluster extends ClusterBase { } if (props.clusterSecurityGroupId) { - this._clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterSecurityGroup', this.clusterSecurityGroupId); + this._clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId( + this, + "ClusterSecurityGroup", + this.clusterSecurityGroupId, + ); this.connections.addSecurityGroup(this._clusterSecurityGroup); } } @@ -2033,13 +2102,17 @@ export class EksOptimizedImage implements ec2.IMachineImage { this.kubernetesVersion = props.kubernetesVersion ?? LATEST_KUBERNETES_VERSION; // set the SSM parameter name - this.amiParameterName = `/aws/service/eks/optimized-ami/${this.kubernetesVersion}/` - + (this.nodeType === NodeType.STANDARD ? this.cpuArch === CpuArch.X86_64 ? - 'amazon-linux-2/' : 'amazon-linux-2-arm64/' : '') - + (this.nodeType === NodeType.GPU ? 'amazon-linux-2-gpu/' : '') - + (this.nodeType === NodeType.INFERENTIA ? 'amazon-linux-2-gpu/' : '') - + (this.nodeType === NodeType.TRAINIUM ? 'amazon-linux-2-gpu/' : '') - + 'recommended/image_id'; + this.amiParameterName = + `/aws/service/eks/optimized-ami/${this.kubernetesVersion}/` + + (this.nodeType === NodeType.STANDARD + ? this.cpuArch === CpuArch.X86_64 + ? "amazon-linux-2/" + : "amazon-linux-2-arm64/" + : "") + + (this.nodeType === NodeType.GPU ? "amazon-linux-2-gpu/" : "") + + (this.nodeType === NodeType.INFERENTIA ? "amazon-linux-2-gpu/" : "") + + (this.nodeType === NodeType.TRAINIUM ? "amazon-linux-2-gpu/" : "") + + "recommended/image_id"; } /** @@ -2056,7 +2129,7 @@ export class EksOptimizedImage implements ec2.IMachineImage { } // MAINTAINERS: use ./scripts/kube_bump.sh to update LATEST_KUBERNETES_VERSION -const LATEST_KUBERNETES_VERSION = '1.24'; +const LATEST_KUBERNETES_VERSION = "1.24"; /** * Whether the worker nodes should support GPU or just standard instances @@ -2065,22 +2138,22 @@ export enum NodeType { /** * Standard instances */ - STANDARD = 'Standard', + STANDARD = "Standard", /** * GPU instances */ - GPU = 'GPU', + GPU = "GPU", /** * Inferentia instances */ - INFERENTIA = 'INFERENTIA', + INFERENTIA = "INFERENTIA", /** * Trainium instances */ - TRAINIUM = 'TRAINIUM', + TRAINIUM = "TRAINIUM", } /** @@ -2090,12 +2163,12 @@ export enum CpuArch { /** * arm64 CPU type */ - ARM_64 = 'arm64', + ARM_64 = "arm64", /** * x86_64 CPU type */ - X86_64 = 'x86_64', + X86_64 = "x86_64", } /** @@ -2105,12 +2178,12 @@ export enum CoreDnsComputeType { /** * Deploy CoreDNS on EC2 instances. */ - EC2 = 'ec2', + EC2 = "ec2", /** * Deploy CoreDNS on Fargate-managed instances. */ - FARGATE = 'fargate', + FARGATE = "fargate", } /** @@ -2157,10 +2230,13 @@ function nodeTypeForInstanceType(instanceType: ec2.InstanceType) { } function cpuArchForInstanceType(instanceType: ec2.InstanceType) { - return INSTANCE_TYPES.graviton2.includes(instanceType.toString().substring(0, 3)) ? CpuArch.ARM_64 : - INSTANCE_TYPES.graviton3.includes(instanceType.toString().substring(0, 3)) ? CpuArch.ARM_64 : - INSTANCE_TYPES.graviton.includes(instanceType.toString().substring(0, 2)) ? CpuArch.ARM_64 : - CpuArch.X86_64; + return INSTANCE_TYPES.graviton2.includes(instanceType.toString().substring(0, 3)) + ? CpuArch.ARM_64 + : INSTANCE_TYPES.graviton3.includes(instanceType.toString().substring(0, 3)) + ? CpuArch.ARM_64 + : INSTANCE_TYPES.graviton.includes(instanceType.toString().substring(0, 2)) + ? CpuArch.ARM_64 + : CpuArch.X86_64; } function flatten(xss: A[][]): A[] { @@ -2169,8 +2245,8 @@ function flatten(xss: A[][]): A[] { function clusterArnComponents(clusterName: string): ArnComponents { return { - service: 'eks', - resource: 'cluster', + service: "eks", + resource: "cluster", resourceName: clusterName, }; } diff --git a/packages/@aws-cdk/aws-eks-v2-alpha/package.json b/packages/@aws-cdk/aws-eks-v2-alpha/package.json index a10281b073301..a8e9bd9dc0e8a 100644 --- a/packages/@aws-cdk/aws-eks-v2-alpha/package.json +++ b/packages/@aws-cdk/aws-eks-v2-alpha/package.json @@ -94,6 +94,7 @@ "@aws-cdk/lambda-layer-kubectl-v31": "^2.1.0", "@aws-cdk/lambda-layer-kubectl-v32": "^2.1.0", "@aws-cdk/lambda-layer-kubectl-v33": "^2.0.0", + "@aws-cdk/lambda-layer-kubectl-v34": "^2.0.0", "@types/jest": "^29.5.14", "aws-sdk": "^2.1692.0", "aws-cdk-lib": "0.0.0", diff --git a/packages/@aws-cdk/aws-eks-v2-alpha/test/cluster.test.ts b/packages/@aws-cdk/aws-eks-v2-alpha/test/cluster.test.ts index b5055043e05da..de593bbae2f39 100644 --- a/packages/@aws-cdk/aws-eks-v2-alpha/test/cluster.test.ts +++ b/packages/@aws-cdk/aws-eks-v2-alpha/test/cluster.test.ts @@ -3,7 +3,7 @@ import * as path from 'path'; import * as cdk8s from 'cdk8s'; import { Construct } from 'constructs'; import * as YAML from 'yaml'; -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; import { testFixture, testFixtureNoVpc } from './util'; import { Match, Template } from 'aws-cdk-lib/assertions'; import * as asg from 'aws-cdk-lib/aws-autoscaling'; @@ -19,7 +19,7 @@ import { BottleRocketImage } from '../lib/private/bottlerocket'; /* eslint-disable max-len */ -const CLUSTER_VERSION = eks.KubernetesVersion.V1_33; +const CLUSTER_VERSION = eks.KubernetesVersion.V1_34; const commonProps = { version: CLUSTER_VERSION, defaultCapacity: 0, @@ -36,7 +36,7 @@ describe('cluster', () => { version: eks.AlbControllerVersion.V2_4_1, }, kubectlProviderOptions: { - kubectlLayer: new KubectlV33Layer(stack, 'kubectlLayer'), + kubectlLayer: new KubectlV34Layer(stack, 'kubectlLayer'), }, }); diff --git a/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json b/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json index e290c7ed32e95..5163b126df413 100644 --- a/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json +++ b/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.js.snapshot/aws-cdk-eks-cluster-al2023-nodegroup-test.template.json @@ -1,1451 +1,1376 @@ { - "Resources": { - "AdminRole38563C57": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "AWS": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::", - { - "Ref": "AWS::AccountId" - }, - ":root" - ] - ] + "Resources": { + "AdminRole38563C57": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + } + } + ], + "Version": "2012-10-17" } - } } - ], - "Version": "2012-10-17" - } - } - }, - "Vpc8378EB38": { - "Type": "AWS::EC2::VPC", - "Properties": { - "CidrBlock": "10.0.0.0/16", - "EnableDnsHostnames": true, - "EnableDnsSupport": true, - "InstanceTenancy": "default", - "Tags": [ - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" - } - ] - } - }, - "VpcPublicSubnet1Subnet5C2D37C4": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" + }, + "Vpc8378EB38": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" + } + ] } - ] }, - "CidrBlock": "10.0.0.0/18", - "MapPublicIpOnLaunch": true, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Public" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Public" - }, - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet1RouteTable6C95E38E": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet1RouteTableAssociation97140677": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + "VpcPublicSubnet1Subnet5C2D37C4": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "SubnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - } - } - }, - "VpcPublicSubnet1DefaultRoute3DA9E72A": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPublicSubnet1RouteTable6C95E38E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "RouteTableId": { - "Ref": "VpcPublicSubnet1RouteTable6C95E38E" - } - }, - "DependsOn": [ - "VpcVPCGWBF912B6E" - ] - }, - "VpcPublicSubnet1EIPD7E02669": { - "Type": "AWS::EC2::EIP", - "Properties": { - "Domain": "vpc", - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ] - } - }, - "VpcPublicSubnet1NATGateway4D7517AA": { - "Type": "AWS::EC2::NatGateway", - "Properties": { - "AllocationId": { - "Fn::GetAtt": [ - "VpcPublicSubnet1EIPD7E02669", - "AllocationId" - ] + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } }, - "SubnetId": { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + } + }, + "DependsOn": ["VpcVPCGWBF912B6E"] }, - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" - } - ] - }, - "DependsOn": [ - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1RouteTableAssociation97140677" - ] - }, - "VpcPublicSubnet2Subnet691E08A3": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 1, - { - "Fn::GetAZs": "" + "VpcPublicSubnet1EIPD7E02669": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ] } - ] }, - "CidrBlock": "10.0.64.0/18", - "MapPublicIpOnLaunch": true, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Public" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Public" - }, - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet2RouteTable94F7E489": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPublicSubnet2RouteTableAssociationDD5762D8": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" + "VpcPublicSubnet1NATGateway4D7517AA": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "AllocationId": { + "Fn::GetAtt": ["VpcPublicSubnet1EIPD7E02669", "AllocationId"] + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet1" + } + ] + }, + "DependsOn": ["VpcPublicSubnet1DefaultRoute3DA9E72A", "VpcPublicSubnet1RouteTableAssociation97140677"] }, - "SubnetId": { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - } - } - }, - "VpcPublicSubnet2DefaultRoute97F91067": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPublicSubnet2Subnet691E08A3": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.64.0/18", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "RouteTableId": { - "Ref": "VpcPublicSubnet2RouteTable94F7E489" - } - }, - "DependsOn": [ - "VpcVPCGWBF912B6E" - ] - }, - "VpcPrivateSubnet1Subnet536B997A": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 0, - { - "Fn::GetAZs": "" + "VpcPublicSubnet2RouteTable94F7E489": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PublicSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ] }, - "CidrBlock": "10.0.128.0/18", - "MapPublicIpOnLaunch": false, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Private" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Private" - }, - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet1RouteTableB2C5B500": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } }, - "SubnetId": { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - } - } - }, - "VpcPrivateSubnet1DefaultRouteBE02A9ED": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + "VpcPublicSubnet2DefaultRoute97F91067": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + } + }, + "DependsOn": ["VpcVPCGWBF912B6E"] }, - "RouteTableId": { - "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" - } - } - }, - "VpcPrivateSubnet2Subnet3788AAA1": { - "Type": "AWS::EC2::Subnet", - "Properties": { - "AvailabilityZone": { - "Fn::Select": [ - 1, - { - "Fn::GetAZs": "" + "VpcPrivateSubnet1Subnet536B997A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ] }, - "CidrBlock": "10.0.192.0/18", - "MapPublicIpOnLaunch": false, - "Tags": [ - { - "Key": "aws-cdk:subnet-name", - "Value": "Private" - }, - { - "Key": "aws-cdk:subnet-type", - "Value": "Private" - }, - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet2RouteTableA678073B": { - "Type": "AWS::EC2::RouteTable", - "Properties": { - "Tags": [ - { - "Key": "kubernetes.io/role/internal-elb", - "Value": "1" - }, - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { - "Type": "AWS::EC2::SubnetRouteTableAssociation", - "Properties": { - "RouteTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "SubnetId": { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - } - }, - "VpcPrivateSubnet2DefaultRoute060D2087": { - "Type": "AWS::EC2::Route", - "Properties": { - "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": { - "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } }, - "RouteTableId": { - "Ref": "VpcPrivateSubnet2RouteTableA678073B" - } - } - }, - "VpcIGWD7BA715C": { - "Type": "AWS::EC2::InternetGateway", - "Properties": { - "Tags": [ - { - "Key": "Name", - "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" - } - ] - } - }, - "VpcVPCGWBF912B6E": { - "Type": "AWS::EC2::VPCGatewayAttachment", - "Properties": { - "InternetGatewayId": { - "Ref": "VpcIGWD7BA715C" + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + } + } }, - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "kubectlLayer44321E08": { - "Type": "AWS::Lambda::LayerVersion", - "Properties": { - "Content": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip" + "VpcPrivateSubnet2Subnet3788AAA1": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.192.0/18", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } }, - "Description": "/opt/kubectl/kubectl 1.33.0; /opt/helm/helm 3.18.0", - "LicenseInfo": "Apache-2.0" - } - }, - "ClusterRoleFA261979": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "eks.amazonaws.com" - } + "VpcPrivateSubnet2RouteTableA678073B": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "kubernetes.io/role/internal-elb", + "Value": "1" + }, + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc/PrivateSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" }, - ":iam::aws:policy/AmazonEKSClusterPolicy" - ] - ] - } - ] - } - }, - "ClusterControlPlaneSecurityGroupD274242C": { - "Type": "AWS::EC2::SecurityGroup", - "Properties": { - "GroupDescription": "EKS Control Plane Security Group", - "SecurityGroupEgress": [ - { - "CidrIp": "0.0.0.0/0", - "Description": "Allow all outbound traffic by default", - "IpProtocol": "-1" - } - ], - "VpcId": { - "Ref": "Vpc8378EB38" - } - } - }, - "ClusterEB0386A7": { - "Type": "AWS::EKS::Cluster", - "Properties": { - "AccessConfig": { - "AuthenticationMode": "API" - }, - "ComputeConfig": { - "Enabled": false + "SubnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } }, - "KubernetesNetworkConfig": { - "ElasticLoadBalancing": { - "Enabled": false - }, - "IpFamily": "ipv4" + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Type": "AWS::EC2::Route", + "Properties": { + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + }, + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + } + } }, - "ResourcesVpcConfig": { - "EndpointPrivateAccess": true, - "EndpointPublicAccess": true, - "SecurityGroupIds": [ - { - "Fn::GetAtt": [ - "ClusterControlPlaneSecurityGroupD274242C", - "GroupId" - ] + "VpcIGWD7BA715C": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "aws-cdk-eks-cluster-al2023-nodegroup-test/Vpc" + } + ] } - ], - "SubnetIds": [ - { - "Ref": "VpcPublicSubnet1Subnet5C2D37C4" - }, - { - "Ref": "VpcPublicSubnet2Subnet691E08A3" - }, - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + }, + "VpcVPCGWBF912B6E": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "InternetGatewayId": { + "Ref": "VpcIGWD7BA715C" + }, + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ] }, - "RoleArn": { - "Fn::GetAtt": [ - "ClusterRoleFA261979", - "Arn" - ] + "kubectlLayer44321E08": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "e995b7fa13f3d9f946ff291512015444c90346ee68f0067f80037541a4b54d62.zip" + }, + "Description": "/opt/kubectl/kubectl 1.33.0; /opt/helm/helm 3.18.0", + "LicenseInfo": "Apache-2.0" + } }, - "StorageConfig": { - "BlockStorage": { - "Enabled": false - } + "ClusterRoleFA261979": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "eks.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKSClusterPolicy" + ] + ] + } + ] + } }, - "Version": "1.33" - }, - "DependsOn": [ - "VpcIGWD7BA715C", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableB2C5B500", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet1Subnet536B997A", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableA678073B", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56", - "VpcPrivateSubnet2Subnet3788AAA1", - "VpcPublicSubnet1DefaultRoute3DA9E72A", - "VpcPublicSubnet1EIPD7E02669", - "VpcPublicSubnet1NATGateway4D7517AA", - "VpcPublicSubnet1RouteTable6C95E38E", - "VpcPublicSubnet1RouteTableAssociation97140677", - "VpcPublicSubnet1Subnet5C2D37C4", - "VpcPublicSubnet2DefaultRoute97F91067", - "VpcPublicSubnet2RouteTable94F7E489", - "VpcPublicSubnet2RouteTableAssociationDD5762D8", - "VpcPublicSubnet2Subnet691E08A3", - "Vpc8378EB38", - "VpcVPCGWBF912B6E" - ] - }, - "ClusterKubectlReadyBarrier200052AF": { - "Type": "AWS::SSM::Parameter", - "Properties": { - "Type": "String", - "Value": "aws:cdk:eks:kubectl-ready" - }, - "DependsOn": [ - "ClusterEB0386A7" - ] - }, - "ClusterKubectlProviderHandlerServiceRoleB460AA6D": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } + "ClusterControlPlaneSecurityGroupD274242C": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "EKS Control Plane Security Group", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterEB0386A7": { + "Type": "AWS::EKS::Cluster", + "Properties": { + "AccessConfig": { + "AuthenticationMode": "API" }, - ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ComputeConfig": { + "Enabled": false }, - ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "KubernetesNetworkConfig": { + "ElasticLoadBalancing": { + "Enabled": false + }, + "IpFamily": "ipv4" }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] + "ResourcesVpcConfig": { + "EndpointPrivateAccess": true, + "EndpointPublicAccess": true, + "SecurityGroupIds": [ + { + "Fn::GetAtt": ["ClusterControlPlaneSecurityGroupD274242C", "GroupId"] + } + ], + "SubnetIds": [ + { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + }, + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + }, + "RoleArn": { + "Fn::GetAtt": ["ClusterRoleFA261979", "Arn"] + }, + "StorageConfig": { + "BlockStorage": { + "Enabled": false + } + }, + "Version": "1.33" + }, + "DependsOn": [ + "VpcIGWD7BA715C", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableB2C5B500", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet1Subnet536B997A", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableA678073B", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56", + "VpcPrivateSubnet2Subnet3788AAA1", + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1EIPD7E02669", + "VpcPublicSubnet1NATGateway4D7517AA", + "VpcPublicSubnet1RouteTable6C95E38E", + "VpcPublicSubnet1RouteTableAssociation97140677", + "VpcPublicSubnet1Subnet5C2D37C4", + "VpcPublicSubnet2DefaultRoute97F91067", + "VpcPublicSubnet2RouteTable94F7E489", + "VpcPublicSubnet2RouteTableAssociationDD5762D8", + "VpcPublicSubnet2Subnet691E08A3", + "Vpc8378EB38", + "VpcVPCGWBF912B6E" ] - }, - { - "Fn::If": [ - "ClusterKubectlProviderHandlerHasEcrPublic69E09706", - { - "Fn::Join": [ - "", - [ - "arn:", + }, + "ClusterKubectlReadyBarrier200052AF": { + "Type": "AWS::SSM::Parameter", + "Properties": { + "Type": "String", + "Value": "aws:cdk:eks:kubectl-ready" + }, + "DependsOn": ["ClusterEB0386A7"] + }, + "ClusterKubectlProviderHandlerServiceRoleB460AA6D": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ { - "Ref": "AWS::Partition" + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] }, - ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" - ] + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + }, + { + "Fn::If": [ + "ClusterKubectlProviderHandlerHasEcrPublic69E09706", + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly" + ] + ] + }, + { + "Ref": "AWS::NoValue" + } + ] + } ] - }, - { - "Ref": "AWS::NoValue" - } + }, + "DependsOn": [ + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" ] - } - ] - }, - "DependsOn": [ - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198": { - "Type": "AWS::IAM::Policy", - "Properties": { - "PolicyDocument": { - "Statement": [ - { - "Action": "eks:DescribeCluster", - "Effect": "Allow", - "Resource": { - "Fn::GetAtt": [ - "ClusterEB0386A7", - "Arn" - ] - } - } - ], - "Version": "2012-10-17" - }, - "PolicyName": "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198", - "Roles": [ - { - "Ref": "ClusterKubectlProviderHandlerServiceRoleB460AA6D" - } - ] - }, - "DependsOn": [ - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderHandler2E05C68A": { - "Type": "AWS::Lambda::Function", - "Properties": { - "Code": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "379a97e43c3d01fdb08125fcff9c80a976a33da6287e25571deb51e72b5eeda9.zip" }, - "Description": "onEvent handler for EKS kubectl resource provider", - "Environment": { - "Variables": { - "AWS_STS_REGIONAL_ENDPOINTS": "regional" - } - }, - "Handler": "index.handler", - "Layers": [ - { - "Ref": "ClusterKubectlProviderAwsCliLayer24064B0B" - }, - { - "Ref": "kubectlLayer44321E08" - } - ], - "MemorySize": 1024, - "Role": { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandlerServiceRoleB460AA6D", - "Arn" - ] + "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "eks:DescribeCluster", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": ["ClusterEB0386A7", "Arn"] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198", + "Roles": [ + { + "Ref": "ClusterKubectlProviderHandlerServiceRoleB460AA6D" + } + ] + }, + "DependsOn": [ + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "Runtime": "python3.13", - "Timeout": 900, - "VpcConfig": { - "SecurityGroupIds": [ - { - "Fn::GetAtt": [ - "ClusterEB0386A7", - "ClusterSecurityGroupId" - ] - } - ], - "SubnetIds": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" + "ClusterKubectlProviderHandler2E05C68A": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "379a97e43c3d01fdb08125fcff9c80a976a33da6287e25571deb51e72b5eeda9.zip" + }, + "Description": "onEvent handler for EKS kubectl resource provider", + "Environment": { + "Variables": { + "AWS_STS_REGIONAL_ENDPOINTS": "regional" + } + }, + "Handler": "index.handler", + "Layers": [ + { + "Ref": "ClusterKubectlProviderAwsCliLayer24064B0B" + }, + { + "Ref": "kubectlLayer44321E08" + } + ], + "MemorySize": 1024, + "Role": { + "Fn::GetAtt": ["ClusterKubectlProviderHandlerServiceRoleB460AA6D", "Arn"] + }, + "Runtime": "python3.13", + "Timeout": 900, + "VpcConfig": { + "SecurityGroupIds": [ + { + "Fn::GetAtt": ["ClusterEB0386A7", "ClusterSecurityGroupId"] + } + ], + "SubnetIds": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "DependsOn": [ - "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198", - "ClusterKubectlProviderHandlerServiceRoleB460AA6D", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderAwsCliLayer24064B0B": { - "Type": "AWS::Lambda::LayerVersion", - "Properties": { - "Content": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "c49d356cac773d491c5f7ac148995a1181498a8e289429f8612a7f7e3814f535.zip" + "DependsOn": [ + "ClusterKubectlProviderHandlerServiceRoleDefaultPolicy77317198", + "ClusterKubectlProviderHandlerServiceRoleB460AA6D", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "Description": "/opt/awscli/aws" - } - }, - "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "lambda.amazonaws.com" - } + "ClusterKubectlProviderAwsCliLayer24064B0B": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "c49d356cac773d491c5f7ac148995a1181498a8e289429f8612a7f7e3814f535.zip" + }, + "Description": "/opt/awscli/aws" } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" }, - ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" - ] + "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" + ] + ] + } + ] + }, + "DependsOn": [ + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + }, + "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:InvokeFunction", + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": ["ClusterKubectlProviderHandler2E05C68A", "Arn"] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": ["ClusterKubectlProviderHandler2E05C68A", "Arn"] + }, + ":*" + ] + ] + } + ] + } + ], + "Version": "2012-10-17" }, - ":iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole" - ] + "PolicyName": "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629", + "Roles": [ + { + "Ref": "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5" + } + ] + }, + "DependsOn": [ + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" ] - } - ] - }, - "DependsOn": [ - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629": { - "Type": "AWS::IAM::Policy", - "Properties": { - "PolicyDocument": { - "Statement": [ - { - "Action": "lambda:InvokeFunction", - "Effect": "Allow", - "Resource": [ - { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandler2E05C68A", - "Arn" - ] + }, + "ClusterKubectlProviderframeworkonEvent68E0CF80": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip" }, - { - "Fn::Join": [ - "", - [ - { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandler2E05C68A", - "Arn" - ] - }, - ":*" + "Description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlProvider/Provider)", + "Environment": { + "Variables": { + "USER_ON_EVENT_FUNCTION_ARN": { + "Fn::GetAtt": ["ClusterKubectlProviderHandler2E05C68A", "Arn"] + } + } + }, + "Handler": "framework.onEvent", + "LoggingConfig": { + "ApplicationLogLevel": "FATAL", + "LogFormat": "JSON" + }, + "Role": { + "Fn::GetAtt": ["ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5", "Arn"] + }, + "Runtime": "nodejs22.x", + "Timeout": 900, + "VpcConfig": { + "SecurityGroupIds": [ + { + "Fn::GetAtt": ["ClusterEB0386A7", "ClusterSecurityGroupId"] + } + ], + "SubnetIds": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } ] - ] } - ] - } - ], - "Version": "2012-10-17" + }, + "DependsOn": [ + "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629", + "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5", + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "PolicyName": "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629", - "Roles": [ - { - "Ref": "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5" - } - ] - }, - "DependsOn": [ - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderframeworkonEvent68E0CF80": { - "Type": "AWS::Lambda::Function", - "Properties": { - "Code": { - "S3Bucket": { - "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" - }, - "S3Key": "39472b1c2875cf306d4ba429aeccdd34cb49bcf59dbde81f7e6b6cb9deac23a6.zip" + "ClusterKubectlProviderframeworkonEventinlinePolicyAddedToExecutionRole081AD342A": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "lambda:GetFunction", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": ["ClusterKubectlProviderHandler2E05C68A", "Arn"] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ClusterKubectlProviderframeworkonEventinlinePolicyAddedToExecutionRole081AD342A", + "Roles": [ + { + "Ref": "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5" + } + ] + }, + "DependsOn": [ + "VpcPrivateSubnet1DefaultRouteBE02A9ED", + "VpcPrivateSubnet1RouteTableAssociation70C59FA6", + "VpcPrivateSubnet2DefaultRoute060D2087", + "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + ] }, - "Description": "AWS CDK resource provider framework - onEvent (aws-cdk-eks-cluster-al2023-nodegroup-test/Cluster/KubectlProvider/Provider)", - "Environment": { - "Variables": { - "USER_ON_EVENT_FUNCTION_ARN": { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandler2E05C68A", - "Arn" - ] + "ClusterClusterAdminRoleAccessF2BFF759": { + "Type": "AWS::EKS::AccessEntry", + "Properties": { + "AccessPolicies": [ + { + "AccessScope": { + "Type": "cluster" + }, + "PolicyArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy" + ] + ] + } + } + ], + "ClusterName": { + "Ref": "ClusterEB0386A7" + }, + "PrincipalArn": { + "Fn::GetAtt": ["ClusterKubectlProviderHandlerServiceRoleB460AA6D", "Arn"] + } } - } - }, - "Handler": "framework.onEvent", - "LoggingConfig": { - "ApplicationLogLevel": "FATAL", - "LogFormat": "JSON" }, - "Role": { - "Fn::GetAtt": [ - "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5", - "Arn" - ] - }, - "Runtime": "nodejs22.x", - "Timeout": 900, - "VpcConfig": { - "SecurityGroupIds": [ - { - "Fn::GetAtt": [ - "ClusterEB0386A7", - "ClusterSecurityGroupId" - ] - } - ], - "SubnetIds": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "DependsOn": [ - "ClusterKubectlProviderframeworkonEventServiceRoleDefaultPolicyA4F24629", - "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5", - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterKubectlProviderframeworkonEventinlinePolicyAddedToExecutionRole081AD342A": { - "Type": "AWS::IAM::Policy", - "Properties": { - "PolicyDocument": { - "Statement": [ - { - "Action": "lambda:GetFunction", - "Effect": "Allow", - "Resource": { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandler2E05C68A", - "Arn" - ] - } + "ClustermastersRoleAccess698EBA51": { + "Type": "AWS::EKS::AccessEntry", + "Properties": { + "AccessPolicies": [ + { + "AccessScope": { + "Type": "cluster" + }, + "PolicyArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy" + ] + ] + } + } + ], + "ClusterName": { + "Ref": "ClusterEB0386A7" + }, + "PrincipalArn": { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + } } - ], - "Version": "2012-10-17" }, - "PolicyName": "ClusterKubectlProviderframeworkonEventinlinePolicyAddedToExecutionRole081AD342A", - "Roles": [ - { - "Ref": "ClusterKubectlProviderframeworkonEventServiceRoleFD0BA8C5" - } - ] - }, - "DependsOn": [ - "VpcPrivateSubnet1DefaultRouteBE02A9ED", - "VpcPrivateSubnet1RouteTableAssociation70C59FA6", - "VpcPrivateSubnet2DefaultRoute060D2087", - "VpcPrivateSubnet2RouteTableAssociationA89CAD56" - ] - }, - "ClusterClusterAdminRoleAccessF2BFF759": { - "Type": "AWS::EKS::AccessEntry", - "Properties": { - "AccessPolicies": [ - { - "AccessScope": { - "Type": "cluster" - }, - "PolicyArn": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy" + "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } ] - ] } - } - ], - "ClusterName": { - "Ref": "ClusterEB0386A7" }, - "PrincipalArn": { - "Fn::GetAtt": [ - "ClusterKubectlProviderHandlerServiceRoleB460AA6D", - "Arn" - ] - } - } - }, - "ClustermastersRoleAccess698EBA51": { - "Type": "AWS::EKS::AccessEntry", - "Properties": { - "AccessPolicies": [ - { - "AccessScope": { - "Type": "cluster" - }, - "PolicyArn": { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy" + "ClusterNodegroupMNGAL2023X8664STANDARD8BD0F7AB": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_STANDARD", + "ClusterName": { + "Ref": "ClusterEB0386A7" + }, + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", "Arn"] + }, + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 + }, + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } ] - ] } - } - ], - "ClusterName": { - "Ref": "ClusterEB0386A7" }, - "PrincipalArn": { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] - } - } - }, - "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023ARM64STANDARD8E30167E": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_ARM_64_STANDARD", + "ClusterName": { + "Ref": "ClusterEB0386A7" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664STANDARD8BD0F7AB": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_STANDARD", - "ClusterName": { - "Ref": "ClusterEB0386A7" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664STANDARDNodeGroupRole5CB41DCB", - "Arn" - ] - }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 - }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" - }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023ARM64STANDARD8E30167E": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_ARM_64_STANDARD", - "ClusterName": { - "Ref": "ClusterEB0386A7" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023ARM64STANDARDNodeGroupRole40E4A124", - "Arn" - ] - }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 - }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023X8664NEURON44201AF9": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_NEURON", + "ClusterName": { + "Ref": "ClusterEB0386A7" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] - ] - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NEURON44201AF9": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_NEURON", - "ClusterName": { - "Ref": "ClusterEB0386A7" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NEURONNodeGroupRoleC0707AE1", - "Arn" - ] - }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - }, - "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C": { - "Type": "AWS::IAM::Role", - "Properties": { - "AssumeRolePolicyDocument": { - "Statement": [ - { - "Action": "sts:AssumeRole", - "Effect": "Allow", - "Principal": { - "Service": "ec2.amazonaws.com" - } + "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C": { + "Type": "AWS::IAM::Role", + "Properties": { + "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/AmazonEKSWorkerNodePolicy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEKS_CNI_Policy" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" + ] + ] + } + ] } - ], - "Version": "2012-10-17" }, - "ManagedPolicyArns": [ - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ClusterNodegroupMNGAL2023X8664NVIDIAE1B719F2": { + "Type": "AWS::EKS::Nodegroup", + "Properties": { + "AmiType": "AL2023_x86_64_NVIDIA", + "ClusterName": { + "Ref": "ClusterEB0386A7" }, - ":iam::aws:policy/AmazonEKSWorkerNodePolicy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", - { - "Ref": "AWS::Partition" + "ForceUpdateEnabled": true, + "NodeRole": { + "Fn::GetAtt": ["ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", "Arn"] }, - ":iam::aws:policy/AmazonEKS_CNI_Policy" - ] - ] - }, - { - "Fn::Join": [ - "", - [ - "arn:", + "ScalingConfig": { + "DesiredSize": 2, + "MaxSize": 2, + "MinSize": 1 + }, + "Subnets": [ + { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + ] + } + } + }, + "Conditions": { + "ClusterKubectlProviderHandlerHasEcrPublic69E09706": { + "Fn::Equals": [ { - "Ref": "AWS::Partition" + "Ref": "AWS::Partition" }, - ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly" - ] + "aws" ] - } - ] - } + } }, - "ClusterNodegroupMNGAL2023X8664NVIDIAE1B719F2": { - "Type": "AWS::EKS::Nodegroup", - "Properties": { - "AmiType": "AL2023_x86_64_NVIDIA", - "ClusterName": { - "Ref": "ClusterEB0386A7" - }, - "ForceUpdateEnabled": true, - "NodeRole": { - "Fn::GetAtt": [ - "ClusterNodegroupMNGAL2023X8664NVIDIANodeGroupRole611D278C", - "Arn" - ] - }, - "ScalingConfig": { - "DesiredSize": 2, - "MaxSize": 2, - "MinSize": 1 - }, - "Subnets": [ - { - "Ref": "VpcPrivateSubnet1Subnet536B997A" - }, - { - "Ref": "VpcPrivateSubnet2Subnet3788AAA1" - } - ] - } - } - }, - "Conditions": { - "ClusterKubectlProviderHandlerHasEcrPublic69E09706": { - "Fn::Equals": [ - { - "Ref": "AWS::Partition" + "Outputs": { + "ClusterConfigCommand43AAE40F": { + "Value": { + "Fn::Join": [ + "", + [ + "aws eks update-kubeconfig --name ", + { + "Ref": "ClusterEB0386A7" + }, + " --region ", + { + "Ref": "AWS::Region" + }, + " --role-arn ", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + } + ] + ] + } }, - "aws" - ] - } - }, - "Outputs": { - "ClusterConfigCommand43AAE40F": { - "Value": { - "Fn::Join": [ - "", - [ - "aws eks update-kubeconfig --name ", - { - "Ref": "ClusterEB0386A7" - }, - " --region ", - { - "Ref": "AWS::Region" - }, - " --role-arn ", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] + "ClusterGetTokenCommand06AE992E": { + "Value": { + "Fn::Join": [ + "", + [ + "aws eks get-token --cluster-name ", + { + "Ref": "ClusterEB0386A7" + }, + " --region ", + { + "Ref": "AWS::Region" + }, + " --role-arn ", + { + "Fn::GetAtt": ["AdminRole38563C57", "Arn"] + } + ] + ] } - ] - ] - } + } }, - "ClusterGetTokenCommand06AE992E": { - "Value": { - "Fn::Join": [ - "", - [ - "aws eks get-token --cluster-name ", - { - "Ref": "ClusterEB0386A7" - }, - " --region ", - { - "Ref": "AWS::Region" - }, - " --role-arn ", - { - "Fn::GetAtt": [ - "AdminRole38563C57", - "Arn" - ] - } - ] - ] - } - } - }, - "Parameters": { - "BootstrapVersion": { - "Type": "AWS::SSM::Parameter::Value", - "Default": "/cdk-bootstrap/hnb659fds/version", - "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" - } - }, - "Rules": { - "CheckBootstrapVersion": { - "Assertions": [ - { - "Assert": { - "Fn::Not": [ - { - "Fn::Contains": [ - [ - "1", - "2", - "3", - "4", - "5" - ], - { - "Ref": "BootstrapVersion" - } - ] - } + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + ["1", "2", "3", "4", "5"], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } ] - }, - "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." } - ] } - } -} \ No newline at end of file +} diff --git a/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.ts b/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.ts index f65058aa4b2b2..6b32f7bd61a71 100644 --- a/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.ts +++ b/packages/@aws-cdk/aws-eks-v2-alpha/test/integ.eks-al2023-nodegroup.ts @@ -5,7 +5,7 @@ import { App, Stack, StackProps } from 'aws-cdk-lib'; import * as integ from '@aws-cdk/integ-tests-alpha'; import * as eks from '../lib'; import { NodegroupAmiType } from 'aws-cdk-lib/aws-eks'; -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; class EksClusterStack extends Stack { private cluster: eks.Cluster; @@ -28,9 +28,9 @@ class EksClusterStack extends Stack { mastersRole, defaultCapacityType: eks.DefaultCapacityType.NODEGROUP, defaultCapacity: 0, - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, kubectlProviderOptions: { - kubectlLayer: new KubectlV33Layer(this, 'kubectlLayer'), + kubectlLayer: new KubectlV34Layer(this, 'kubectlLayer'), }, }); diff --git a/packages/aws-cdk-lib/aws-eks/README.md b/packages/aws-cdk-lib/aws-eks/README.md index 15a6940ce13d7..9348a6de01914 100644 --- a/packages/aws-cdk-lib/aws-eks/README.md +++ b/packages/aws-cdk-lib/aws-eks/README.md @@ -69,12 +69,12 @@ This example defines an Amazon EKS cluster with the following configuration: * A Kubernetes pod with a container based on the [paulbouwer/hello-kubernetes](https://github.com/paulbouwer/hello-kubernetes) image. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; -// provisioning a cluster +// provisioning a clusterlambda-layer-kubectl-v34 const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); // apply a kubernetes manifest to the cluster @@ -139,11 +139,11 @@ A more detailed breakdown of each is provided further down this README. Creating a new cluster is done using the `Cluster` or `FargateCluster` constructs. The only required properties are the kubernetes `version` and `kubectlLayer`. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -157,12 +157,12 @@ This can happen in one of three situations: This affects the EKS cluster itself, the custom resource that created the cluster, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; import * as core from 'aws-cdk-lib/core'; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), removalPolicy: core.RemovalPolicy.RETAIN, // Keep all resources created by the construct. }); ``` @@ -170,11 +170,11 @@ new eks.Cluster(this, 'HelloEKS', { You can also use `FargateCluster` to provision a cluster that uses only fargate workers. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.FargateCluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -197,13 +197,13 @@ By default, this library will allocate a managed node group with 2 *m5.large* in At cluster instantiation time, you can customize the number of instances and their type: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, defaultCapacity: 5, defaultCapacityInstance: ec2.InstanceType.of(ec2.InstanceClass.M5, ec2.InstanceSize.SMALL), - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -212,12 +212,12 @@ To access the node group that was created on your behalf, you can use `cluster.d Additional customizations are available post instantiation. To apply them, set the default capacity to 0, and use the `cluster.addNodegroupCapacity` method: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, defaultCapacity: 0, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); cluster.addNodegroupCapacity('custom-node-group', { @@ -282,7 +282,7 @@ cluster.addNodegroupCapacity('custom-node-group', { }); ``` -> **NOTE:** If you add instances with the inferentia class (`inf1` or `inf2`) or trainium class (`trn1` or `trn1n`) +> **NOTE:** If you add instances with the inferentia class (`inf1` or `inf2`) or trainium class (`trn1` or `trn1n`) > the [neuron plugin](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/containers/dlc-then-eks-devflow.html) > will be automatically installed in the kubernetes cluster. @@ -293,7 +293,7 @@ Node groups are available with IPv6 configured networks. For custom roles assig > For more details visit [Configuring the Amazon VPC CNI plugin for Kubernetes to use IAM roles for service accounts](https://docs.aws.amazon.com/eks/latest/userguide/cni-iam-role.html#cni-iam-role-create-role) ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const ipv6Management = new iam.PolicyDocument({ statements: [new iam.PolicyStatement({ @@ -319,9 +319,9 @@ const eksClusterNodeGroupRole = new iam.Role(this, 'eksClusterNodeGroupRole', { }); const cluster = new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, defaultCapacity: 0, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); cluster.addNodegroupCapacity('custom-node-group', { @@ -427,18 +427,18 @@ Graviton 3 instance types are supported including `c7g`. ### Update clusters When you rename the cluster name and redeploy the stack, the cluster replacement will be triggered and -the existing one will be deleted after the new one is provisioned. As the cluster resource ARN has been changed, +the existing one will be deleted after the new one is provisioned. As the cluster resource ARN has been changed, the cluster resource handler would not be able to delete the old one as the resource ARN in the IAM policy -has been changed. As a workaround, you need to add a temporary policy to the cluster admin role for +has been changed. As a workaround, you need to add a temporary policy to the cluster admin role for successful replacement. Consider this example if you are renaming the cluster from `foo` to `bar`: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'cluster-to-rename', { clusterName: 'foo', // rename this to 'bar' - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), - version: eks.KubernetesVersion.V1_33, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, }); // allow the cluster admin role to delete the cluster 'foo' @@ -447,7 +447,7 @@ cluster.adminRole.addToPolicy(new iam.PolicyStatement({ 'eks:DeleteCluster', 'eks:DescribeCluster', ], - resources: [ + resources: [ Stack.of(this).formatArn({ service: 'eks', resource: 'cluster', resourceName: 'foo' }), ] })) @@ -491,11 +491,11 @@ To create an EKS cluster that **only** uses Fargate capacity, you can use `Farga The following code defines an Amazon EKS cluster with a default Fargate Profile that matches all pods from the "kube-system" and "default" namespaces. It is also configured to [run CoreDNS on Fargate](https://docs.aws.amazon.com/eks/latest/userguide/fargate-getting-started.html#fargate-gs-coredns). ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.FargateCluster(this, 'MyCluster', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -571,12 +571,12 @@ To disable bootstrapping altogether (i.e. to fully customize user-data), set `bo You can also configure the cluster to use an auto-scaling group as the default capacity: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, defaultCapacityType: eks.DefaultCapacityType.EC2, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -678,12 +678,12 @@ AWS Identity and Access Management (IAM) and native Kubernetes [Role Based Acces You can configure the [cluster endpoint access](https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) by using the `endpointAccess` property: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, endpointAccess: eks.EndpointAccess.PRIVATE, // No access outside of your VPC. - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -703,31 +703,31 @@ From the docs: To deploy the controller on your EKS cluster, configure the `albController` property: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, albController: { version: eks.AlbControllerVersion.V2_8_2, }, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` To provide additional Helm chart values supported by `albController` in CDK, use the `additionalHelmChartValues` property. For example, the following code snippet shows how to set the `enableWafV2` flag: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, albController: { version: eks.AlbControllerVersion.V2_8_2, additionalHelmChartValues: { enableWafv2: false } }, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -764,15 +764,15 @@ if (cluster.albController) { You can specify the VPC of the cluster using the `vpc` and `vpcSubnets` properties: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const vpc: ec2.Vpc; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, vpc, vpcSubnets: [{ subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }], - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -815,11 +815,11 @@ The `ClusterHandler` is a set of Lambda functions (`onEventHandler`, `isComplete You can configure the environment of the Cluster Handler functions by specifying it at cluster instantiation. For example, this can be useful in order to configure an http proxy: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const proxyInstanceSecurityGroup: ec2.SecurityGroup; const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, clusterHandlerEnvironment: { https_proxy: 'http://proxy.myproxy.com', }, @@ -828,7 +828,7 @@ const cluster = new eks.Cluster(this, 'hello-eks', { * Cluster Handler Lambdas so that it can reach the proxy. */ clusterHandlerSecurityGroup: proxyInstanceSecurityGroup, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -837,7 +837,7 @@ const cluster = new eks.Cluster(this, 'hello-eks', { You can optionally choose to configure your cluster to use IPv6 using the [`ipFamily`](https://docs.aws.amazon.com/eks/latest/APIReference/API_KubernetesNetworkConfigRequest.html#AmazonEKS-Type-KubernetesNetworkConfigRequest-ipFamily) definition for your cluster. Note that this will require the underlying subnets to have an associated IPv6 CIDR. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const vpc: ec2.Vpc; function associateSubnetWithV6Cidr(vpc: ec2.Vpc, count: number, subnet: ec2.ISubnet) { @@ -863,11 +863,11 @@ for (let subnet of subnets) { } const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, vpc: vpc, ipFamily: eks.IpFamily.IP_V6, vpcSubnets: [{ subnets: vpc.publicSubnets }], - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -898,14 +898,14 @@ const cluster = eks.Cluster.fromClusterAttributes(this, 'Cluster', { You can configure the environment of this function by specifying it at cluster instantiation. For example, this can be useful in order to configure an http proxy: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, kubectlEnvironment: { 'http_proxy': 'http://proxy.myproxy.com', }, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -918,15 +918,15 @@ the `@aws-cdk/lambda-layer-awscli` and `@aws-cdk/lambda-layer-kubectl` modules. The version of kubectl used must be compatible with the Kubernetes version of the cluster. kubectl is supported within one minor version (older or newer) of Kubernetes (see [Kubernetes version skew policy](https://kubernetes.io/releases/version-skew-policy/#kubectl)). -Depending on which version of kubernetes you're targeting, you will need to use one of +Depending on which version of kubernetes you're targeting, you will need to use one of the `@aws-cdk/lambda-layer-kubectl-vXY` packages. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'hello-eks', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -961,7 +961,7 @@ const cluster1 = new eks.Cluster(this, 'MyCluster', { kubectlLayer: layer, vpc, clusterName: 'cluster-name', - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, }); // or @@ -977,12 +977,12 @@ const cluster2 = eks.Cluster.fromClusterAttributes(this, 'MyCluster', { By default, the kubectl provider is configured with 1024MiB of memory. You can use the `kubectlMemory` option to specify the memory size for the AWS Lambda function: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'MyCluster', { kubectlMemory: Size.gibibytes(4), - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); // or @@ -1019,13 +1019,13 @@ cluster.addAutoScalingGroupCapacity('self-ng-arm', { When you create a cluster, you can specify a `mastersRole`. The `Cluster` construct will associate this role with the `system:masters` [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) group, giving it super-user access to the cluster. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const role: iam.Role; new eks.Cluster(this, 'HelloEKS', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, mastersRole: role, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -1071,26 +1071,26 @@ You can use the `secretsEncryptionKey` to configure which key the cluster will u > This setting can only be specified when the cluster is created and cannot be updated. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const secretsKey = new kms.Key(this, 'SecretsKey'); const cluster = new eks.Cluster(this, 'MyCluster', { secretsEncryptionKey: secretsKey, - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` You can also use a similar configuration for running a cluster built using the FargateCluster construct. ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const secretsKey = new kms.Key(this, 'SecretsKey'); const cluster = new eks.FargateCluster(this, 'MyFargateCluster', { secretsEncryptionKey: secretsKey, - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -1108,11 +1108,11 @@ When you create an Amazon EKS cluster, you can configure it to leverage the [EKS Once you have identified the on-premises node and pod (optional) CIDRs you will use for your hybrid nodes and the workloads running on them, you can specify them during cluster creation using the `remoteNodeNetworks` and `remotePodNetworks` (optional) properties: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'Cluster', { - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'KubectlLayer'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'KubectlLayer'), remoteNodeNetworks: [ { cidrs: ['10.0.0.0/16'], @@ -1165,7 +1165,7 @@ To access the Kubernetes resources from the console, make sure your viewing prin in the `aws-auth` ConfigMap. Some options to consider: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const cluster: eks.Cluster; declare const your_current_role: iam.Role; declare const vpc: ec2.Vpc; @@ -1185,7 +1185,7 @@ your_current_role.addToPolicy(new iam.PolicyStatement({ ```ts // Option 2: create your custom mastersRole with scoped assumeBy arn as the Cluster prop. Switch to this role from the AWS console. -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const vpc: ec2.Vpc; @@ -1195,8 +1195,8 @@ const mastersRole = new iam.Role(this, 'MastersRole', { const cluster = new eks.Cluster(this, 'EksCluster', { vpc, - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'KubectlLayer'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'KubectlLayer'), mastersRole, }); @@ -1240,13 +1240,13 @@ AWS IAM principals from both Amazon EKS access entry APIs and the aws-auth confi To specify the `authenticationMode`: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const vpc: ec2.Vpc; new eks.Cluster(this, 'Cluster', { vpc, - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'KubectlLayer'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'KubectlLayer'), authenticationMode: eks.AuthenticationMode.API_AND_CONFIG_MAP, }); ``` @@ -1259,8 +1259,8 @@ new eks.Cluster(this, 'Cluster', { Read [A deep dive into simplified Amazon EKS access management controls ](https://aws.amazon.com/blogs/containers/a-deep-dive-into-simplified-amazon-eks-access-management-controls/) for more details. -You can disable granting the cluster admin permissions to the cluster creator role on bootstrapping by setting -`bootstrapClusterCreatorAdminPermissions` to false. +You can disable granting the cluster admin permissions to the cluster creator role on bootstrapping by setting +`bootstrapClusterCreatorAdminPermissions` to false. > **Note** - Switching `bootstrapClusterCreatorAdminPermissions` on an existing cluster would cause cluster replacement and should be avoided in production. @@ -1291,7 +1291,7 @@ eks.AccessPolicy.fromAccessPolicyName('AmazonEKSAdminPolicy', { Use `grantAccess()` to grant the AccessPolicy to an IAM principal: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; declare const vpc: ec2.Vpc; const clusterAdminRole = new iam.Role(this, 'ClusterAdminRole', { @@ -1309,8 +1309,8 @@ const eksAdminViewRole = new iam.Role(this, 'EKSAdminViewRole', { const cluster = new eks.Cluster(this, 'Cluster', { vpc, mastersRole: clusterAdminRole, - version: eks.KubernetesVersion.V1_33, - kubectlLayer: new KubectlV33Layer(this, 'KubectlLayer'), + version: eks.KubernetesVersion.V1_34, + kubectlLayer: new KubectlV34Layer(this, 'KubectlLayer'), authenticationMode: eks.AuthenticationMode.API_AND_CONFIG_MAP, }); @@ -1323,7 +1323,7 @@ cluster.grantAccess('clusterAdminAccess', clusterAdminRole.roleArn, [ // EKS Admin role for specified namespaces of this cluster cluster.grantAccess('eksAdminRoleAccess', eksAdminRole.roleArn, [ - eks.AccessPolicy.fromAccessPolicyName('AmazonEKSAdminPolicy', { + eks.AccessPolicy.fromAccessPolicyName('AmazonEKSAdminPolicy', { accessScopeType: eks.AccessScopeType.NAMESPACE, namespaces: ['foo', 'bar'], }), @@ -1341,9 +1341,9 @@ cluster.grantAccess('eksAdminViewRoleAccess', eksAdminViewRole.roleArn, [ ### Migrating from ConfigMap to Access Entry If the cluster is created with the `authenticationMode` property left undefined, -it will default to `CONFIG_MAP`. +it will default to `CONFIG_MAP`. -The update path is: +The update path is: `undefined`(`CONFIG_MAP`) -> `API_AND_CONFIG_MAP` -> `API` @@ -1466,7 +1466,7 @@ Kubernetes applications running on Amazon EKS can obtain AWS IAM credentials. It Kubernetes service account, allowing pods to retrieve temporary AWS credentials without the need to manage IAM roles and policies directly. -By default, `ServiceAccount` creates an `OpenIdConnectProvider` for +By default, `ServiceAccount` creates an `OpenIdConnectProvider` for [IRSA(IAM roles for service accounts)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) if `identityType` is `undefined` or `IdentityType.IRSA`. @@ -1642,12 +1642,12 @@ Pruning is enabled by default but can be disabled through the `prune` option when a cluster is defined: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; new eks.Cluster(this, 'MyCluster', { - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, prune: false, - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` @@ -2050,17 +2050,17 @@ You can enable logging for each one separately using the `clusterLogging` property. For example: ```ts -import { KubectlV33Layer } from '@aws-cdk/lambda-layer-kubectl-v33'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; const cluster = new eks.Cluster(this, 'Cluster', { // ... - version: eks.KubernetesVersion.V1_33, + version: eks.KubernetesVersion.V1_34, clusterLogging: [ eks.ClusterLoggingTypes.API, eks.ClusterLoggingTypes.AUTHENTICATOR, eks.ClusterLoggingTypes.SCHEDULER, ], - kubectlLayer: new KubectlV33Layer(this, 'kubectl'), + kubectlLayer: new KubectlV34Layer(this, 'kubectl'), }); ``` diff --git a/packages/aws-cdk-lib/aws-eks/lib/cluster.ts b/packages/aws-cdk-lib/aws-eks/lib/cluster.ts index ccff6cbff13c9..38befa7843bb1 100644 --- a/packages/aws-cdk-lib/aws-eks/lib/cluster.ts +++ b/packages/aws-cdk-lib/aws-eks/lib/cluster.ts @@ -26,7 +26,7 @@ import * as iam from '../../aws-iam'; import * as kms from '../../aws-kms'; import * as lambda from '../../aws-lambda'; import * as ssm from '../../aws-ssm'; -import { Annotations, CfnOutput, CfnResource, IResource, Resource, Stack, Tags, Token, Duration, Size, ValidationError, UnscopedValidationError, RemovalPolicy, RemovalPolicies } from '../../core'; +import { Annotations,CfnOutput,CfnResource,IResource,Resource,Stack,Tags,Token,Duration,Size,ValidationError,UnscopedValidationError,RemovalPolicy,RemovalPolicies, } from '../../core'; import { addConstructMetadata, MethodMetadata } from '../../core/lib/metadata-resource'; import { propertyInjectable } from '../../core/lib/prop-injectable'; @@ -738,7 +738,6 @@ export interface ClusterOptions extends CommonClusterOptions { * Group access configuration together. */ interface EndpointAccessConfig { - /** * Indicates if private access is enabled. */ @@ -755,7 +754,6 @@ interface EndpointAccessConfig { * @default - No restrictions. */ readonly publicCidrs?: string[]; - } /** @@ -800,7 +798,8 @@ export class EndpointAccess { * * @internal */ - public readonly _config: EndpointAccessConfig) { + public readonly _config: EndpointAccessConfig, + ) { if (!_config.publicAccess && _config.publicCidrs && _config.publicCidrs.length > 0) { throw new UnscopedValidationError('CIDR blocks can only be configured when public access is enabled'); } @@ -816,7 +815,9 @@ export class EndpointAccess { if (!this._config.privateAccess) { // when private access is disabled, we can't restric public // access since it will render the kubectl provider unusable. - throw new UnscopedValidationError('Cannot restric public access to endpoint when private access is disabled. Use PUBLIC_AND_PRIVATE.onlyFrom() instead.'); + throw new UnscopedValidationError( + 'Cannot restric public access to endpoint when private access is disabled. Use PUBLIC_AND_PRIVATE.onlyFrom() instead.', + ); } return new EndpointAccess({ ...this._config, @@ -830,7 +831,6 @@ export class EndpointAccess { * Common configuration props for EKS clusters. */ export interface ClusterProps extends ClusterOptions { - /** * Number of instances to allocate as an initial capacity for this cluster. * Instance type can be configured through `defaultCapacityInstanceType`, @@ -1057,16 +1057,27 @@ export class KubernetesVersion { */ public static readonly V1_33 = KubernetesVersion.of('1.33'); + /** + * Kubernetes version 1.34 + * + * When creating a `Cluster` with this version, you need to also specify the + * `kubectlLayer` property with a `KubectlV33Layer` from + * `@aws-cdk/lambda-layer-kubectl-v34`. + */ + public static readonly V1_34 = KubernetesVersion.of('1.34'); + /** * Custom cluster version * @param version custom version number */ - public static of(version: string) { return new KubernetesVersion(version); } + public static of(version: string) { + return new KubernetesVersion(version); + } /** * * @param version cluster version number */ - private constructor(public readonly version: string) { } + private constructor(public readonly version: string) {} } // Shared definition with packages/@aws-cdk/custom-resource-handlers/test/aws-eks/compare-log.test.ts @@ -1196,7 +1207,10 @@ abstract class ClusterBase extends Resource implements ICluster { // see https://github.com/awslabs/cdk8s/blob/master/packages/cdk8s/src/chart.ts#L84 if (typeof cdk8sChart.toJson !== 'function') { - throw new ValidationError(`Invalid cdk8s chart. Must contain a 'toJson' method, but found ${typeof cdk8sChart.toJson}`, this); + throw new ValidationError( + `Invalid cdk8s chart. Must contain a 'toJson' method, but found ${typeof cdk8sChart.toJson}`, + this, + ); } const manifest = new KubernetesManifest(this, id, { @@ -1282,15 +1296,18 @@ abstract class ClusterBase extends Resource implements ICluster { } if (bootstrapEnabled) { - const userData = options.machineImageType === MachineImageType.BOTTLEROCKET ? - renderBottlerocketUserData(this) : - renderAmazonLinuxUserData(this, autoScalingGroup, options.bootstrapOptions); + const userData = + options.machineImageType === MachineImageType.BOTTLEROCKET + ? renderBottlerocketUserData(this) + : renderAmazonLinuxUserData(this, autoScalingGroup, options.bootstrapOptions); autoScalingGroup.addUserData(...userData); } autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSWorkerNodePolicy')); autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKS_CNI_Policy')); - autoScalingGroup.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEC2ContainerRegistryReadOnly')); + autoScalingGroup.role.addManagedPolicy( + iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEC2ContainerRegistryReadOnly'), + ); // EKS Required Tags // https://docs.aws.amazon.com/eks/latest/userguide/worker.html @@ -1306,17 +1323,17 @@ abstract class ClusterBase extends Resource implements ICluster { let mapRole = options.mapRole ?? true; if (mapRole && !(this instanceof Cluster)) { // do the mapping... - Annotations.of(autoScalingGroup).addWarningV2('@aws-cdk/aws-eks:clusterUnsupportedAutoMappingAwsAutoRole', 'Auto-mapping aws-auth role for imported cluster is not supported, please map role manually'); + Annotations.of(autoScalingGroup).addWarningV2( + '@aws-cdk/aws-eks:clusterUnsupportedAutoMappingAwsAutoRole', + 'Auto-mapping aws-auth role for imported cluster is not supported, please map role manually', + ); mapRole = false; } if (mapRole) { // see https://docs.aws.amazon.com/en_us/eks/latest/userguide/add-user-role.html this.awsAuth.addRoleMapping(autoScalingGroup.role, { username: 'system:node:{{EC2PrivateDNSName}}', - groups: [ - 'system:bootstrappers', - 'system:nodes', - ], + groups: ['system:bootstrappers', 'system:nodes'], }); } else { // since we are not mapping the instance role to RBAC, synthesize an @@ -1344,7 +1361,6 @@ abstract class ClusterBase extends Resource implements ICluster { * Options for fetching a ServiceLoadBalancerAddress. */ export interface ServiceLoadBalancerAddressOptions { - /** * Timeout for waiting on the load balancer address. * @@ -1358,7 +1374,6 @@ export interface ServiceLoadBalancerAddressOptions { * @default 'default' */ readonly namespace?: string; - } /** @@ -1606,7 +1621,7 @@ export class Cluster extends ClusterBase { private readonly version: KubernetesVersion; - private readonly logging?: { [key: string]: [ { [key: string]: any } ] }; + private readonly logging?: { [key: string]: [{ [key: string]: any }] }; /** * A dummy CloudFormation resource that is used as a wait barrier which @@ -1648,44 +1663,56 @@ export class Cluster extends ClusterBase { // since this lambda role needs to be added to the trust policy of the creation role, // we must create it in this scope (instead of the KubectlProvider nested stack) to avoid // a circular dependency. - this.kubectlLambdaRole = props.kubectlLambdaRole ? props.kubectlLambdaRole : new iam.Role(this, 'KubectlHandlerRole', { - assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'), - managedPolicies: [iam.ManagedPolicy.fromAwsManagedPolicyName('service-role/AWSLambdaBasicExecutionRole')], - }); + this.kubectlLambdaRole = props.kubectlLambdaRole + ? props.kubectlLambdaRole + : new iam.Role(this, 'KubectlHandlerRole', { + assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'), + managedPolicies: [iam.ManagedPolicy.fromAwsManagedPolicyName('service-role/AWSLambdaBasicExecutionRole')], + }); this.tagSubnets(); // this is the role used by EKS when interacting with AWS resources - this.role = props.role || new iam.Role(this, 'Role', { - assumedBy: new iam.ServicePrincipal('eks.amazonaws.com'), - managedPolicies: [ - iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSClusterPolicy'), - ], - }); + this.role = + props.role || + new iam.Role(this, 'Role', { + assumedBy: new iam.ServicePrincipal('eks.amazonaws.com'), + managedPolicies: [iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonEKSClusterPolicy')], + }); - const securityGroup = props.securityGroup || new ec2.SecurityGroup(this, 'ControlPlaneSecurityGroup', { - vpc: this.vpc, - description: 'EKS Control Plane Security Group', - }); + const securityGroup = + props.securityGroup || + new ec2.SecurityGroup(this, 'ControlPlaneSecurityGroup', { + vpc: this.vpc, + description: 'EKS Control Plane Security Group', + }); - this.vpcSubnets = props.vpcSubnets ?? [{ subnetType: ec2.SubnetType.PUBLIC }, { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }]; + this.vpcSubnets = props.vpcSubnets ?? [ + { subnetType: ec2.SubnetType.PUBLIC }, + { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }, + ]; - const selectedSubnetIdsPerGroup = this.vpcSubnets.map(s => this.vpc.selectSubnets(s).subnetIds); + const selectedSubnetIdsPerGroup = this.vpcSubnets.map((s) => this.vpc.selectSubnets(s).subnetIds); if (selectedSubnetIdsPerGroup.some(Token.isUnresolved) && selectedSubnetIdsPerGroup.length > 1) { - throw new ValidationError('eks.Cluster: cannot select multiple subnet groups from a VPC imported from list tokens with unknown length. Select only one subnet group, pass a length to Fn.split, or switch to Vpc.fromLookup.', this); + throw new ValidationError( + 'eks.Cluster: cannot select multiple subnet groups from a VPC imported from list tokens with unknown length. Select only one subnet group, pass a length to Fn.split, or switch to Vpc.fromLookup.', + this, + ); } // Get subnetIds for all selected subnets const subnetIds = Array.from(new Set(flatten(selectedSubnetIdsPerGroup))); - this.logging = props.clusterLogging ? { - clusterLogging: [ - { - enabled: true, - types: Object.values(props.clusterLogging), - }, - ], - } : undefined; + this.logging = props.clusterLogging + ? { + clusterLogging: [ + { + enabled: true, + types: Object.values(props.clusterLogging), + }, + ], + } + : undefined; this.endpointAccess = props.endpointAccess ?? EndpointAccess.PUBLIC_AND_PRIVATE; this.kubectlEnvironment = props.kubectlEnvironment; @@ -1698,14 +1725,13 @@ export class Cluster extends ClusterBase { const privateSubnets = this.selectPrivateSubnets().slice(0, 16); const publicAccessDisabled = !this.endpointAccess._config.publicAccess; - const publicAccessRestricted = !publicAccessDisabled - && this.endpointAccess._config.publicCidrs - && this.endpointAccess._config.publicCidrs.length !== 0; + const publicAccessRestricted = + !publicAccessDisabled && + this.endpointAccess._config.publicCidrs && + this.endpointAccess._config.publicCidrs.length !== 0; // Check if any subnet selection is pending lookup - const hasPendingLookup = this.vpcSubnets.some(placement => - this.vpc.selectSubnets(placement).isPendingLookup, - ); + const hasPendingLookup = this.vpcSubnets.some((placement) => this.vpc.selectSubnets(placement).isPendingLookup); // validate endpoint access configuration if (!hasPendingLookup) { @@ -1715,7 +1741,7 @@ export class Cluster extends ClusterBase { } if (privateSubnets.length === 0 && publicAccessRestricted) { - // no private subnets and public access is restricted, no good. + // no private subnets and public access is restricted, no good. throw new ValidationError('Vpc must contain private subnets when public endpoint access is restricted', this); } } @@ -1724,12 +1750,18 @@ export class Cluster extends ClusterBase { if (!hasPendingLookup) { if (placeClusterHandlerInVpc && privateSubnets.length === 0) { - throw new ValidationError('Cannot place cluster handler in the VPC since no private subnets could be selected', this); + throw new ValidationError( + 'Cannot place cluster handler in the VPC since no private subnets could be selected', + this, + ); } } if (props.clusterHandlerSecurityGroup && !placeClusterHandlerInVpc) { - throw new ValidationError('Cannot specify clusterHandlerSecurityGroup without placeClusterHandlerInVpc set to true', this); + throw new ValidationError( + 'Cannot specify clusterHandlerSecurityGroup without placeClusterHandlerInVpc set to true', + this, + ); } if (props.serviceIpv4Cidr && props.ipFamily == IpFamily.IP_V6) { @@ -1745,7 +1777,7 @@ export class Cluster extends ClusterBase { this.authenticationMode = props.authenticationMode; - const resource = this._clusterResource = new ClusterResource(this, 'Resource', { + const resource = (this._clusterResource = new ClusterResource(this, 'Resource', { name: this.physicalName, environment: props.clusterHandlerEnvironment, roleArn: this.role.roleArn, @@ -1754,26 +1786,34 @@ export class Cluster extends ClusterBase { authenticationMode: props.authenticationMode, bootstrapClusterCreatorAdminPermissions: props.bootstrapClusterCreatorAdminPermissions, }, - ...(props.remoteNodeNetworks ? { - remoteNetworkConfig: { - remoteNodeNetworks: props.remoteNodeNetworks, - ...(props.remotePodNetworks ? { - remotePodNetworks: props.remotePodNetworks, - }: {}), - }, - } : {}), + ...(props.remoteNodeNetworks + ? { + remoteNetworkConfig: { + remoteNodeNetworks: props.remoteNodeNetworks, + ...(props.remotePodNetworks + ? { + remotePodNetworks: props.remotePodNetworks, + } + : {}), + }, + } + : {}), resourcesVpcConfig: { securityGroupIds: [securityGroup.securityGroupId], subnetIds, }, - ...(props.secretsEncryptionKey ? { - encryptionConfig: [{ - provider: { - keyArn: props.secretsEncryptionKey.keyRef.keyArn, - }, - resources: ['secrets'], - }], - } : {}), + ...(props.secretsEncryptionKey + ? { + encryptionConfig: [ + { + provider: { + keyArn: props.secretsEncryptionKey.keyRef.keyArn, + }, + resources: ['secrets'], + }, + ], + } + : {}), kubernetesNetworkConfig: { ipFamily: this.ipFamily, serviceIpv4Cidr: props.serviceIpv4Cidr, @@ -1789,7 +1829,7 @@ export class Cluster extends ClusterBase { tags: props.tags, logging: this.logging, bootstrapSelfManagedAddons: props.bootstrapSelfManagedAddons, - }); + })); if (this.endpointAccess._config.privateAccess && privateSubnets.length !== 0) { // when private access is enabled and the vpc has private subnets, lets connect @@ -1797,7 +1837,10 @@ export class Cluster extends ClusterBase { // validate VPC properties according to: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html if (this.vpc instanceof ec2.Vpc && !(this.vpc.dnsHostnamesEnabled && this.vpc.dnsSupportEnabled)) { - throw new ValidationError('Private endpoint access requires the VPC to have DNS support and DNS hostnames enabled. Use `enableDnsHostnames: true` and `enableDnsSupport: true` when creating the VPC.', this); + throw new ValidationError( + 'Private endpoint access requires the VPC to have DNS support and DNS hostnames enabled. Use `enableDnsHostnames: true` and `enableDnsSupport: true` when creating the VPC.', + this, + ); } this.kubectlPrivateSubnets = privateSubnets; @@ -1829,7 +1872,11 @@ export class Cluster extends ClusterBase { this.clusterSecurityGroupId = resource.attrClusterSecurityGroupId; this.clusterEncryptionConfigKeyArn = resource.attrEncryptionConfigKeyArn; - this.clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterSecurityGroup', this.clusterSecurityGroupId); + this.clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId( + this, + 'ClusterSecurityGroup', + this.clusterSecurityGroupId, + ); this.connections = new ec2.Connections({ securityGroups: [this.clusterSecurityGroup, securityGroup], @@ -1840,10 +1887,12 @@ export class Cluster extends ClusterBase { // and configured to allow connections from itself. this.kubectlSecurityGroup = this.clusterSecurityGroup; - this.adminRole.assumeRolePolicy?.addStatements(new iam.PolicyStatement({ - actions: ['sts:AssumeRole'], - principals: [this.kubectlLambdaRole], - })); + this.adminRole.assumeRolePolicy?.addStatements( + new iam.PolicyStatement({ + actions: ['sts:AssumeRole'], + principals: [this.kubectlLambdaRole], + }), + ); // use the cluster creation role to issue kubectl commands against the cluster because when the // cluster is first created, that's the only role that has "system:masters" permissions @@ -1859,8 +1908,11 @@ export class Cluster extends ClusterBase { new CfnOutput(this, 'ClusterName', { value: this.clusterName }); } - const supportAuthenticationApi = (this.authenticationMode === AuthenticationMode.API || - this.authenticationMode === AuthenticationMode.API_AND_CONFIG_MAP) ? true : false; + const supportAuthenticationApi = + this.authenticationMode === AuthenticationMode.API || + this.authenticationMode === AuthenticationMode.API_AND_CONFIG_MAP + ? true + : false; // do not create a masters role if one is not provided. Trusting the accountRootPrincipal() is too permissive. if (props.mastersRole) { @@ -1895,15 +1947,22 @@ export class Cluster extends ClusterBase { const minCapacity = props.defaultCapacity ?? DEFAULT_CAPACITY_COUNT; if (minCapacity > 0) { const instanceType = props.defaultCapacityInstance || DEFAULT_CAPACITY_TYPE; - this.defaultCapacity = props.defaultCapacityType === DefaultCapacityType.EC2 ? - this.addAutoScalingGroupCapacity('DefaultCapacity', { instanceType, minCapacity }) : undefined; - - this.defaultNodegroup = props.defaultCapacityType !== DefaultCapacityType.EC2 ? - this.addNodegroupCapacity('DefaultCapacity', { instanceTypes: [instanceType], minSize: minCapacity }) : undefined; + this.defaultCapacity = + props.defaultCapacityType === DefaultCapacityType.EC2 + ? this.addAutoScalingGroupCapacity('DefaultCapacity', { instanceType, minCapacity }) + : undefined; + + this.defaultNodegroup = + props.defaultCapacityType !== DefaultCapacityType.EC2 + ? this.addNodegroupCapacity('DefaultCapacity', { instanceTypes: [instanceType], minSize: minCapacity }) + : undefined; } if (props.outputConfigCommand && !props.mastersRole) { - Annotations.of(this).addWarningV2('@aws-cdk/aws-eks:clusterMastersroleNotSpecified', '\'outputConfigCommand\' will be ignored as \'mastersRole\' has not been specified.'); + Annotations.of(this).addWarningV2( + '@aws-cdk/aws-eks:clusterMastersroleNotSpecified', + "'outputConfigCommand' will be ignored as 'mastersRole' has not been specified.", + ); } const outputConfigCommand = (props.outputConfigCommand ?? true) && props.mastersRole; @@ -2000,15 +2059,16 @@ export class Cluster extends ClusterBase { const asg = new autoscaling.AutoScalingGroup(this, id, { ...options, vpc: this.vpc, - machineImage: options.machineImageType === MachineImageType.BOTTLEROCKET ? - new BottleRocketImage({ - kubernetesVersion: this.version.version, - }) : - new EksOptimizedImage({ - nodeType: nodeTypeForInstanceType(options.instanceType), - cpuArch: cpuArchForInstanceType(options.instanceType), - kubernetesVersion: this.version.version, - }), + machineImage: + options.machineImageType === MachineImageType.BOTTLEROCKET + ? new BottleRocketImage({ + kubernetesVersion: this.version.version, + }) + : new EksOptimizedImage({ + nodeType: nodeTypeForInstanceType(options.instanceType), + cpuArch: cpuArchForInstanceType(options.instanceType), + kubernetesVersion: this.version.version, + }), }); this.connectAutoScalingGroupCapacity(asg, { @@ -2019,8 +2079,10 @@ export class Cluster extends ClusterBase { spotInterruptHandler: options.spotInterruptHandler, }); - if (nodeTypeForInstanceType(options.instanceType) === NodeType.INFERENTIA || - nodeTypeForInstanceType(options.instanceType) === NodeType.TRAINIUM) { + if ( + nodeTypeForInstanceType(options.instanceType) === NodeType.INFERENTIA || + nodeTypeForInstanceType(options.instanceType) === NodeType.TRAINIUM + ) { this.addNeuronDevicePlugin(); } @@ -2038,11 +2100,9 @@ export class Cluster extends ClusterBase { */ @MethodMetadata() public addNodegroupCapacity(id: string, options?: NodegroupOptions): Nodegroup { - const hasInferentiaOrTrainiumInstanceType = [ - options?.instanceType, - ...options?.instanceTypes ?? [], - ].some(i => i && (nodeTypeForInstanceType(i) === NodeType.INFERENTIA || - nodeTypeForInstanceType(i) === NodeType.TRAINIUM)); + const hasInferentiaOrTrainiumInstanceType = [options?.instanceType, ...(options?.instanceTypes ?? [])].some( + (i) => i && (nodeTypeForInstanceType(i) === NodeType.INFERENTIA || nodeTypeForInstanceType(i) === NodeType.TRAINIUM), + ); if (hasInferentiaOrTrainiumInstanceType) { this.addNeuronDevicePlugin(); @@ -2212,8 +2272,8 @@ export class Cluster extends ClusterBase { private selectPrivateSubnets(): ec2.ISubnet[] { const privateSubnets: ec2.ISubnet[] = []; - const vpcPrivateSubnetIds = this.vpc.privateSubnets.map(s => s.subnetId); - const vpcPublicSubnetIds = this.vpc.publicSubnets.map(s => s.subnetId); + const vpcPrivateSubnetIds = this.vpc.privateSubnets.map((s) => s.subnetId); + const vpcPublicSubnetIds = this.vpc.publicSubnets.map((s) => s.subnetId); for (const placement of this.vpcSubnets) { for (const subnet of this.vpc.selectSubnets(placement).subnets) { @@ -2266,8 +2326,12 @@ export class Cluster extends ClusterBase { if (!ec2.Subnet.isVpcSubnet(subnet)) { // message (if token): "could not auto-tag public/private subnet with tag..." // message (if not token): "count not auto-tag public/private subnet xxxxx with tag..." - const subnetID = Token.isUnresolved(subnet.subnetId) || Token.isUnresolved([subnet.subnetId]) ? '' : ` ${subnet.subnetId}`; - Annotations.of(this).addWarningV2('@aws-cdk/aws-eks:clusterMustManuallyTagSubnet', `Could not auto-tag ${type} subnet${subnetID} with "${tag}=1", please remember to do this manually`); + const subnetID = + Token.isUnresolved(subnet.subnetId) || Token.isUnresolved([subnet.subnetId]) ? '' : ` ${subnet.subnetId}`; + Annotations.of(this).addWarningV2( + '@aws-cdk/aws-eks:clusterMustManuallyTagSubnet', + `Could not auto-tag ${type} subnet${subnetID} with "${tag}=1", please remember to do this manually`, + ); continue; } @@ -2318,14 +2382,19 @@ export class Cluster extends ClusterBase { } private validateRemoteNetworkConfig(props: ClusterProps) { - if (!props.remoteNodeNetworks) { return;} + if (!props.remoteNodeNetworks) { + return; + } // validate that no two CIDRs overlap within the same remote node network props.remoteNodeNetworks.forEach((network, index) => { const { cidrs } = network; if (cidrs.length > 1) { cidrs.forEach((cidr1, j) => { - if (cidrs.slice(j + 1).some(cidr2 => validateCidrPairOverlap(cidr1, cidr2))) { - throw new ValidationError(`CIDR ${cidr1} should not overlap with another CIDR in remote node network #${index + 1}`, this); + if (cidrs.slice(j + 1).some((cidr2) => validateCidrPairOverlap(cidr1, cidr2))) { + throw new ValidationError( + `CIDR ${cidr1} should not overlap with another CIDR in remote node network #${index + 1}`, + this, + ); } }); } @@ -2336,7 +2405,10 @@ export class Cluster extends ClusterBase { props.remoteNodeNetworks!.slice(i + 1).forEach((network2, j) => { const [overlap, remoteNodeCidr1, remoteNodeCidr2] = validateCidrBlocksOverlap(network1.cidrs, network2.cidrs); if (overlap) { - throw new ValidationError(`CIDR block ${remoteNodeCidr1} in remote node network #${i + 1} should not overlap with CIDR block ${remoteNodeCidr2} in remote node network #${i + j + 2}`, this); + throw new ValidationError( + `CIDR block ${remoteNodeCidr1} in remote node network #${i + 1} should not overlap with CIDR block ${remoteNodeCidr2} in remote node network #${i + j + 2}`, + this, + ); } }); }); @@ -2347,8 +2419,11 @@ export class Cluster extends ClusterBase { const { cidrs } = network; if (cidrs.length > 1) { cidrs.forEach((cidr1, j) => { - if (cidrs.slice(j + 1).some(cidr2 => validateCidrPairOverlap(cidr1, cidr2))) { - throw new ValidationError(`CIDR ${cidr1} should not overlap with another CIDR in remote pod network #${index + 1}`, this); + if (cidrs.slice(j + 1).some((cidr2) => validateCidrPairOverlap(cidr1, cidr2))) { + throw new ValidationError( + `CIDR ${cidr1} should not overlap with another CIDR in remote pod network #${index + 1}`, + this, + ); } }); } @@ -2359,7 +2434,10 @@ export class Cluster extends ClusterBase { props.remotePodNetworks!.slice(i + 1).forEach((network2, j) => { const [overlap, remotePodCidr1, remotePodCidr2] = validateCidrBlocksOverlap(network1.cidrs, network2.cidrs); if (overlap) { - throw new ValidationError(`CIDR block ${remotePodCidr1} in remote pod network #${i + 1} should not overlap with CIDR block ${remotePodCidr2} in remote pod network #${i + j + 2}`, this); + throw new ValidationError( + `CIDR block ${remotePodCidr1} in remote pod network #${i + 1} should not overlap with CIDR block ${remotePodCidr2} in remote pod network #${i + j + 2}`, + this, + ); } }); }); @@ -2369,7 +2447,10 @@ export class Cluster extends ClusterBase { for (const podNetwork of props.remotePodNetworks) { const [overlap, remoteNodeCidr, remotePodCidr] = validateCidrBlocksOverlap(nodeNetwork.cidrs, podNetwork.cidrs); if (overlap) { - throw new ValidationError(`Remote node network CIDR block ${remoteNodeCidr} should not overlap with remote pod network CIDR block ${remotePodCidr}`, this); + throw new ValidationError( + `Remote node network CIDR block ${remoteNodeCidr} should not overlap with remote pod network CIDR block ${remotePodCidr}`, + this, + ); } } } @@ -2592,7 +2673,11 @@ class ImportedCluster extends ClusterBase { // to null check on an instance of `Cluster`, which will always have this configured. private readonly _clusterSecurityGroup?: ec2.ISecurityGroup; - constructor(scope: Construct, id: string, private readonly props: ClusterAttributes) { + constructor( + scope: Construct, + id: string, + private readonly props: ClusterAttributes, + ) { super(scope, id); // Enhanced CDK Analytics Telemetry addConstructMetadata(this, props); @@ -2601,14 +2686,22 @@ class ImportedCluster extends ClusterBase { this.clusterArn = this.stack.formatArn(clusterArnComponents(props.clusterName)); this.kubectlRole = props.kubectlRoleArn ? iam.Role.fromRoleArn(this, 'KubectlRole', props.kubectlRoleArn) : undefined; this.kubectlLambdaRole = props.kubectlLambdaRole; - this.kubectlSecurityGroup = props.kubectlSecurityGroupId ? ec2.SecurityGroup.fromSecurityGroupId(this, 'KubectlSecurityGroup', props.kubectlSecurityGroupId) : undefined; + this.kubectlSecurityGroup = props.kubectlSecurityGroupId + ? ec2.SecurityGroup.fromSecurityGroupId(this, 'KubectlSecurityGroup', props.kubectlSecurityGroupId) + : undefined; this.kubectlEnvironment = props.kubectlEnvironment; - this.kubectlPrivateSubnets = props.kubectlPrivateSubnetIds ? props.kubectlPrivateSubnetIds.map((subnetid, index) => ec2.Subnet.fromSubnetId(this, `KubectlSubnet${index}`, subnetid)) : undefined; + this.kubectlPrivateSubnets = props.kubectlPrivateSubnetIds + ? props.kubectlPrivateSubnetIds.map((subnetid, index) => + ec2.Subnet.fromSubnetId(this, `KubectlSubnet${index}`, subnetid), + ) + : undefined; this.kubectlLayer = props.kubectlLayer; this.ipFamily = props.ipFamily; this.awscliLayer = props.awscliLayer; this.kubectlMemory = props.kubectlMemory; - this.clusterHandlerSecurityGroup = props.clusterHandlerSecurityGroupId ? ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterHandlerSecurityGroup', props.clusterHandlerSecurityGroupId) : undefined; + this.clusterHandlerSecurityGroup = props.clusterHandlerSecurityGroupId + ? ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterHandlerSecurityGroup', props.clusterHandlerSecurityGroupId) + : undefined; this.kubectlProvider = props.kubectlProvider; this.onEventLayer = props.onEventLayer; this.prune = props.prune ?? true; @@ -2620,7 +2713,11 @@ class ImportedCluster extends ClusterBase { } if (props.clusterSecurityGroupId) { - this._clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId(this, 'ClusterSecurityGroup', this.clusterSecurityGroupId); + this._clusterSecurityGroup = ec2.SecurityGroup.fromSecurityGroupId( + this, + 'ClusterSecurityGroup', + this.clusterSecurityGroupId, + ); this.connections.addSecurityGroup(this._clusterSecurityGroup); } } @@ -2723,13 +2820,17 @@ export class EksOptimizedImage implements ec2.IMachineImage { this.kubernetesVersion = props.kubernetesVersion ?? LATEST_KUBERNETES_VERSION; // set the SSM parameter name - this.amiParameterName = `/aws/service/eks/optimized-ami/${this.kubernetesVersion}/` - + (this.nodeType === NodeType.STANDARD ? this.cpuArch === CpuArch.X86_64 ? - 'amazon-linux-2/' : 'amazon-linux-2-arm64/' : '') - + (this.nodeType === NodeType.GPU ? 'amazon-linux-2-gpu/' : '') - + (this.nodeType === NodeType.INFERENTIA ? 'amazon-linux-2-gpu/' : '') - + (this.nodeType === NodeType.TRAINIUM ? 'amazon-linux-2-gpu/' : '') - + 'recommended/image_id'; + this.amiParameterName = + `/aws/service/eks/optimized-ami/${this.kubernetesVersion}/` + + (this.nodeType === NodeType.STANDARD + ? this.cpuArch === CpuArch.X86_64 + ? 'amazon-linux-2/' + : 'amazon-linux-2-arm64/' + : '') + + (this.nodeType === NodeType.GPU ? 'amazon-linux-2-gpu/' : '') + + (this.nodeType === NodeType.INFERENTIA ? 'amazon-linux-2-gpu/' : '') + + (this.nodeType === NodeType.TRAINIUM ? 'amazon-linux-2-gpu/' : '') + + 'recommended/image_id'; } /** @@ -2843,10 +2944,13 @@ function nodeTypeForInstanceType(instanceType: ec2.InstanceType) { } function cpuArchForInstanceType(instanceType: ec2.InstanceType) { - return INSTANCE_TYPES.graviton2.includes(instanceType.toString().substring(0, 3)) ? CpuArch.ARM_64 : - INSTANCE_TYPES.graviton3.includes(instanceType.toString().substring(0, 3)) ? CpuArch.ARM_64 : - INSTANCE_TYPES.graviton.includes(instanceType.toString().substring(0, 2)) ? CpuArch.ARM_64 : - CpuArch.X86_64; + return INSTANCE_TYPES.graviton2.includes(instanceType.toString().substring(0, 3)) + ? CpuArch.ARM_64 + : INSTANCE_TYPES.graviton3.includes(instanceType.toString().substring(0, 3)) + ? CpuArch.ARM_64 + : INSTANCE_TYPES.graviton.includes(instanceType.toString().substring(0, 2)) + ? CpuArch.ARM_64 + : CpuArch.X86_64; } function flatten(xss: A[][]): A[] { diff --git a/packages/aws-cdk-lib/aws-eks/test/access-entry.test.ts b/packages/aws-cdk-lib/aws-eks/test/access-entry.test.ts index 4746214e0f87e..124fff0a51881 100644 --- a/packages/aws-cdk-lib/aws-eks/test/access-entry.test.ts +++ b/packages/aws-cdk-lib/aws-eks/test/access-entry.test.ts @@ -1,4 +1,4 @@ -import { KubectlV31Layer } from '@aws-cdk/lambda-layer-kubectl-v31'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; import { Template } from '../../assertions'; import { App, Stack } from '../../core'; import { @@ -17,9 +17,9 @@ describe('AccessEntry', () => { app = new App(); stack = new Stack(app, 'test-stack'); cluster = new Cluster(stack, 'Cluster', { - version: KubernetesVersion.V1_33, + version: KubernetesVersion.V1_34, authenticationMode: AuthenticationMode.API, - kubectlLayer: new KubectlV31Layer(stack, 'KubectlLayer'), + kubectlLayer: new KubectlV34Layer(stack, 'KubectlLayer'), }); mockAccessPolicies = [ diff --git a/packages/aws-cdk-lib/aws-eks/test/addon.test.ts b/packages/aws-cdk-lib/aws-eks/test/addon.test.ts index 1e31db16ef571..d3bea8c898ea9 100644 --- a/packages/aws-cdk-lib/aws-eks/test/addon.test.ts +++ b/packages/aws-cdk-lib/aws-eks/test/addon.test.ts @@ -1,4 +1,4 @@ -import { KubectlV31Layer } from '@aws-cdk/lambda-layer-kubectl-v31'; +import { KubectlV34Layer } from '@aws-cdk/lambda-layer-kubectl-v34'; import { Template } from '../../assertions'; import { App, Stack } from '../../core'; import { Addon, KubernetesVersion, Cluster } from '../lib'; @@ -12,8 +12,8 @@ describe('Addon', () => { app = new App(); stack = new Stack(app, 'Stack'); cluster = new Cluster(stack, 'Cluster', { - kubectlLayer: new KubectlV31Layer(stack, 'KubectlLayer'), - version: KubernetesVersion.V1_33, + kubectlLayer: new KubectlV34Layer(stack, 'KubectlLayer'), + version: KubernetesVersion.V1_34, }); }); diff --git a/packages/aws-cdk-lib/package.json b/packages/aws-cdk-lib/package.json index 4f07b5a25b0a9..5b6378a5c05ea 100644 --- a/packages/aws-cdk-lib/package.json +++ b/packages/aws-cdk-lib/package.json @@ -131,8 +131,8 @@ "mime-types": "^2.1.35" }, "devDependencies": { - "@aws-cdk/lambda-layer-kubectl-v31": "^2.1.0", - "@aws-cdk/aws-service-spec": "^0.1.111", + "@aws-cdk/lambda-layer-kubectl-v34": "^2.0.0", + "@aws-cdk/aws-service-spec": "^0.1.110", "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/custom-resource-handlers": "0.0.0", "@aws-cdk/pkglint": "0.0.0", @@ -536,7 +536,7 @@ }, "jsiiRosetta": { "exampleDependencies": { - "@aws-cdk/lambda-layer-kubectl-v33": "^2.0.0", + "@aws-cdk/lambda-layer-kubectl-v34": "^2.0.0", "cdk8s-plus-25": "^2.7.0", "@aws-cdk/aws-glue-alpha": "^0.0.0" } diff --git a/yarn.lock b/yarn.lock index bff40fd4074e0..d131082876391 100644 --- a/yarn.lock +++ b/yarn.lock @@ -82,16 +82,6 @@ jsonschema "~1.4.1" semver "^7.7.2" -"@aws-cdk/integ-runner@^2.190.2": - version "2.190.2" - resolved "https://registry.npmjs.org/@aws-cdk/integ-runner/-/integ-runner-2.190.2.tgz#4348b86684461ed3c11a9b41d09b0968a47a91be" - integrity sha512-uWY3n/U3KgeJheCmE5Jci2nDhgz/eGxHVvf6QAji+pXFKkIEiAU+aRDuXjG61DdSc2kLi57Jy1rK2KDMOX4Zig== - dependencies: - "@aws-cdk/aws-service-spec" "0.1.92" - aws-cdk "2.1027.0" - optionalDependencies: - fsevents "2.3.2" - "@aws-cdk/lambda-layer-kubectl-v24@^2.0.242": version "2.0.242" resolved "https://registry.npmjs.org/@aws-cdk/lambda-layer-kubectl-v24/-/lambda-layer-kubectl-v24-2.0.242.tgz#4273a5ad7714f933a7eba155eb9280823086db71" @@ -122,6 +112,11 @@ resolved "https://registry.npmjs.org/@aws-cdk/lambda-layer-kubectl-v33/-/lambda-layer-kubectl-v33-2.0.0.tgz#0c521ad987bb3ac597a4b4ebeece8fd2721ca000" integrity sha512-osA3wkwWK2OfpymTcCZKhgaKSca9PQSr+7xi+UevKFRHtMdxHgygC345hdDpCtZlMmX9pKjtFpRUxeRrbGHMEw== +"@aws-cdk/lambda-layer-kubectl-v34@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@aws-cdk/lambda-layer-kubectl-v34/-/lambda-layer-kubectl-v34-2.0.0.tgz#c2694ba861eef980f477a3e93c91fddac936b36d" + integrity sha512-cof6aOHsVtf3xvg/QENnkOdELHDpsq4HDc3NAB5O4c285YsORvP/FFphLS338ZvuYRveI690mQSatg3891lOzQ== + "@aws-cdk/service-spec-importers@^0.0.92": version "0.0.92" resolved "https://registry.npmjs.org/@aws-cdk/service-spec-importers/-/service-spec-importers-0.0.92.tgz#64820a8f8790cc7a048e1605e65586cc2a641121" @@ -138,13 +133,6 @@ glob "^8" sort-json "^2.0.1" -"@aws-cdk/service-spec-types@^0.0.158": - version "0.0.158" - resolved "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.158.tgz#f2caa73cb5383f613dc4d297ce4393db8fad9df9" - integrity sha512-bWloZVh9AbLCJpNtWf4jBx9vMfMX7RW37nlWeidZ3i8emgPHsNQ0ytqR3RQ2RMYs1BRta1prexdd2MOL2Pww9Q== - dependencies: - "@cdklabs/tskb" "^0.0.3" - "@aws-cdk/service-spec-types@^0.0.176": version "0.0.176" resolved "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.176.tgz#8dc1584c9de16921df2dbcacdb3db11660eae2ee" @@ -227,199 +215,6 @@ "@smithy/util-utf8" "^2.0.0" tslib "^2.6.2" -"@aws-sdk/client-account@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-account/-/client-account-3.632.0.tgz#ca4abada7c0a9073a73512af96e19d54c99363f2" - integrity sha512-dnOw27v5Gz1MuIkv/0OKAOSUshYROACIlK94WibWo4mCEKxrc5bW1OeE00p1tcMm9l5Mhl6IYSoUwVaziUhTLA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-acm@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-acm/-/client-acm-3.632.0.tgz#a476d9964a2c06060e14f69e6afb0ba8a227ef54" - integrity sha512-uPsDoJFmFTJXTSJ8Dmi1u901Drss9CXsxRHX+kUp30A92HK4C7LbnmUh0gHaXM4OgFeRbklrGNbqQr6AxRRKBA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-amplify@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-amplify/-/client-amplify-3.632.0.tgz#9960f36c282de8f78e5582c57a7eaba54eccd975" - integrity sha512-ktlje4aC+R1ZgmJzITeGm17YkBEPPPOim+HnHpyu5+W5k55LaQ9q2uHM0wcNrNCu6BwN3jJ2s2+v+z7jT2GQuw== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-cloudwatch-logs@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.632.0.tgz#53355665b04a2131a80bcaba7a3f88ecf6c7c929" - integrity sha512-QrG04Ss2/KDsvGmoBH9QHjaC/wx7Gf9U2F5o8gYbHVU5ZGDW+zMX2Sj/6jjSyZ4qLD4sxK7sRHwK+fYA21OQQA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/eventstream-serde-browser" "^3.0.6" - "@smithy/eventstream-serde-config-resolver" "^3.0.3" - "@smithy/eventstream-serde-node" "^3.0.5" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - uuid "^9.0.1" - "@aws-sdk/client-cloudwatch@3.632.0": version "3.632.0" resolved "https://registry.npmjs.org/@aws-sdk/client-cloudwatch/-/client-cloudwatch-3.632.0.tgz#865a01e2eea926d80caeec7b461c126c5f51b7b5" @@ -469,10 +264,10 @@ "@smithy/util-waiter" "^3.1.2" tslib "^2.6.2" -"@aws-sdk/client-codepipeline@3.632.0": +"@aws-sdk/client-ecr@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-codepipeline/-/client-codepipeline-3.632.0.tgz#c09564b38aea90001767aa3640e4456bdc7a28a0" - integrity sha512-5Cl8W/tG7k/sGmEEst2NY9o9ID2bTvdaPLT0ICpi8Ehq8K17Q79nMKgSzBGvgkQv6lvYxgsdFU3Cv0lkcXw75Q== + resolved "https://registry.npmjs.org/@aws-sdk/client-ecr/-/client-ecr-3.632.0.tgz#cf6d09e55e50c1a864c4b7fb34b9fc24e5b0b8cc" + integrity sha512-J5EvnmMz3JCoQbhNIwSX7H4Ojrwndoh/xd/3rzehSBMSONARfl6RM5tWCxlDDR9cObnL6I503aoCxbP1LRwILw== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" @@ -514,13 +309,13 @@ "@smithy/util-middleware" "^3.0.3" "@smithy/util-retry" "^3.0.3" "@smithy/util-utf8" "^3.0.0" + "@smithy/util-waiter" "^3.1.2" tslib "^2.6.2" - uuid "^9.0.1" -"@aws-sdk/client-cognito-identity-provider@3.632.0": +"@aws-sdk/client-kms@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.632.0.tgz#076e0a62ee24c02d2bebbfef3f33e4ebcd1c2512" - integrity sha512-RP9L/LKu3qwXT6z+eq8tjOb4kpT2JiQYi483pVg85jf1PiIB+aoPA0Dbre7f+b7Wpo3FyPIlFqKuHzqhPWZvfQ== + resolved "https://registry.npmjs.org/@aws-sdk/client-kms/-/client-kms-3.632.0.tgz#c917414a017c83294f6ee27a51a2191dfa6bb1e0" + integrity sha512-uMm1fAIdImaBKwKXnpcD1cpRlTAbLisbRbNJqzJdH+snN0jAkukLNUMUheb0XKaczk7eQrp5w4inlWrRvEmjSA== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" @@ -564,10 +359,10 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/client-cognito-identity@3.632.0": +"@aws-sdk/client-lambda@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.632.0.tgz#9b8b95885e21eecce2593f7a8f45ec5828ddf0be" - integrity sha512-ciPZZ0jxMmXuaKCVdJthWogfqJ/4nb1zCxm7D/XkKcSbANjAiJ+1l+yiu7ZPTLGKKPRQQkPsWUknw5xb/5LxeQ== + resolved "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.632.0.tgz#6e31acb2f4484d61ade5928eba329a1e45f27354" + integrity sha512-vF4KRuHGr6EfW+dssm56S6b+jAa8dKqdWduHNms1TQFah0iOkjc9Dpo4p4j6bobZcuricGko/OZy9ynb1Dwldg== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" @@ -586,6 +381,9 @@ "@aws-sdk/util-user-agent-node" "3.614.0" "@smithy/config-resolver" "^3.0.5" "@smithy/core" "^2.3.2" + "@smithy/eventstream-serde-browser" "^3.0.6" + "@smithy/eventstream-serde-config-resolver" "^3.0.3" + "@smithy/eventstream-serde-node" "^3.0.5" "@smithy/fetch-http-handler" "^3.2.4" "@smithy/hash-node" "^3.0.3" "@smithy/invalid-dependency" "^3.0.3" @@ -608,80 +406,51 @@ "@smithy/util-endpoints" "^2.0.5" "@smithy/util-middleware" "^3.0.3" "@smithy/util-retry" "^3.0.3" + "@smithy/util-stream" "^3.1.3" "@smithy/util-utf8" "^3.0.0" + "@smithy/util-waiter" "^3.1.2" tslib "^2.6.2" -"@aws-sdk/client-cognito-identity@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.876.0.tgz#9184aaaf99e47ef8279afd828241fdcf3c0b42a8" - integrity sha512-oSoTroa0sJ8TIFh/PamqAKBAmPzNvYCbWm7K9OFCOXApCxF7E981Cwd4AbXwLgy/AAMiXfPgCesPZqr0gTQQQQ== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.876.0" - "@aws-sdk/credential-provider-node" "3.876.0" - "@aws-sdk/middleware-host-header" "3.873.0" - "@aws-sdk/middleware-logger" "3.876.0" - "@aws-sdk/middleware-recursion-detection" "3.873.0" - "@aws-sdk/middleware-user-agent" "3.876.0" - "@aws-sdk/region-config-resolver" "3.873.0" - "@aws-sdk/types" "3.862.0" - "@aws-sdk/util-endpoints" "3.873.0" - "@aws-sdk/util-user-agent-browser" "3.873.0" - "@aws-sdk/util-user-agent-node" "3.876.0" - "@smithy/config-resolver" "^4.1.5" - "@smithy/core" "^3.8.0" - "@smithy/fetch-http-handler" "^5.1.1" - "@smithy/hash-node" "^4.0.5" - "@smithy/invalid-dependency" "^4.0.5" - "@smithy/middleware-content-length" "^4.0.5" - "@smithy/middleware-endpoint" "^4.1.18" - "@smithy/middleware-retry" "^4.1.19" - "@smithy/middleware-serde" "^4.0.9" - "@smithy/middleware-stack" "^4.0.5" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/node-http-handler" "^4.1.1" - "@smithy/protocol-http" "^5.1.3" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-body-length-browser" "^4.0.0" - "@smithy/util-body-length-node" "^4.0.0" - "@smithy/util-defaults-mode-browser" "^4.0.26" - "@smithy/util-defaults-mode-node" "^4.0.26" - "@smithy/util-endpoints" "^3.0.7" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-retry" "^4.0.7" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-dynamodb@3.632.0": +"@aws-sdk/client-s3@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.632.0.tgz#c1980d0ec06f8663b795043c5436e94060ac7b80" - integrity sha512-Y7u/B/lyLdLZBrBSXjYZviyck0e3dZLL/Va6HIShNlDG8FyWuArefWr57/bu9Q8smdqpEduldprSRSWI7MPykg== + resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.632.0.tgz#8a22b393f9fd469b1fbd006f60d18d4e039a6846" + integrity sha512-GlhLo/t/E9w3EG3ZhFsSeSM3op2lfhc1LrLMXHFsmH1xIPkjIoxV+aHYIenuF7b/MGgMQDOjf07QeQNXfAr1gg== dependencies: + "@aws-crypto/sha1-browser" "5.2.0" "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" "@aws-sdk/client-sso-oidc" "3.632.0" "@aws-sdk/client-sts" "3.632.0" "@aws-sdk/core" "3.629.0" "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-endpoint-discovery" "3.620.0" + "@aws-sdk/middleware-bucket-endpoint" "3.620.0" + "@aws-sdk/middleware-expect-continue" "3.620.0" + "@aws-sdk/middleware-flexible-checksums" "3.620.0" "@aws-sdk/middleware-host-header" "3.620.0" + "@aws-sdk/middleware-location-constraint" "3.609.0" "@aws-sdk/middleware-logger" "3.609.0" "@aws-sdk/middleware-recursion-detection" "3.620.0" + "@aws-sdk/middleware-sdk-s3" "3.629.0" + "@aws-sdk/middleware-ssec" "3.609.0" "@aws-sdk/middleware-user-agent" "3.632.0" "@aws-sdk/region-config-resolver" "3.614.0" + "@aws-sdk/signature-v4-multi-region" "3.629.0" "@aws-sdk/types" "3.609.0" "@aws-sdk/util-endpoints" "3.632.0" "@aws-sdk/util-user-agent-browser" "3.609.0" "@aws-sdk/util-user-agent-node" "3.614.0" + "@aws-sdk/xml-builder" "3.609.0" "@smithy/config-resolver" "^3.0.5" "@smithy/core" "^2.3.2" + "@smithy/eventstream-serde-browser" "^3.0.6" + "@smithy/eventstream-serde-config-resolver" "^3.0.3" + "@smithy/eventstream-serde-node" "^3.0.5" "@smithy/fetch-http-handler" "^3.2.4" + "@smithy/hash-blob-browser" "^3.1.2" "@smithy/hash-node" "^3.0.3" + "@smithy/hash-stream-node" "^3.1.2" "@smithy/invalid-dependency" "^3.0.3" + "@smithy/md5-js" "^3.0.3" "@smithy/middleware-content-length" "^3.0.5" "@smithy/middleware-endpoint" "^3.1.0" "@smithy/middleware-retry" "^3.0.14" @@ -701,26 +470,23 @@ "@smithy/util-endpoints" "^2.0.5" "@smithy/util-middleware" "^3.0.3" "@smithy/util-retry" "^3.0.3" + "@smithy/util-stream" "^3.1.3" "@smithy/util-utf8" "^3.0.0" "@smithy/util-waiter" "^3.1.2" tslib "^2.6.2" - uuid "^9.0.1" -"@aws-sdk/client-ec2@3.632.0": +"@aws-sdk/client-sso-oidc@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.632.0.tgz#291c496fbef8b1f3e166470e7dffff8911e3e53b" - integrity sha512-hjXIfn5OEISL5rous2G5N3/YgcBMwsKgwKZgrHissJjH/HralJIqQVCjxcE7X6diopgsbX0Lj/EbxkX2eudH/A== + resolved "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.632.0.tgz#38d0b11980f0716c85e63acf2bce0ac1e6ccc9b5" + integrity sha512-Oh1fIWaoZluihOCb/zDEpRTi+6an82fgJz7fyRBugyLhEtDjmvpCQ3oKjzaOhoN+4EvXAm1ZS/ZgpvXBlIRTgw== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" "@aws-sdk/core" "3.629.0" "@aws-sdk/credential-provider-node" "3.632.0" "@aws-sdk/middleware-host-header" "3.620.0" "@aws-sdk/middleware-logger" "3.609.0" "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-sdk-ec2" "3.622.0" "@aws-sdk/middleware-user-agent" "3.632.0" "@aws-sdk/region-config-resolver" "3.614.0" "@aws-sdk/types" "3.609.0" @@ -752,21 +518,16 @@ "@smithy/util-middleware" "^3.0.3" "@smithy/util-retry" "^3.0.3" "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" tslib "^2.6.2" - uuid "^9.0.1" -"@aws-sdk/client-ecr@3.632.0": +"@aws-sdk/client-sso@3.632.0": version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-ecr/-/client-ecr-3.632.0.tgz#cf6d09e55e50c1a864c4b7fb34b9fc24e5b0b8cc" - integrity sha512-J5EvnmMz3JCoQbhNIwSX7H4Ojrwndoh/xd/3rzehSBMSONARfl6RM5tWCxlDDR9cObnL6I503aoCxbP1LRwILw== + resolved "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.632.0.tgz#cc7d7c7578ba34d3689574dc015a0a71b35872e1" + integrity sha512-iYWHiKBz44m3chCFvtvHnvCpL2rALzyr1e6tOZV3dLlOKtQtDUlPy6OtnXDu4y+wyJCniy8ivG3+LAe4klzn1Q== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" "@aws-sdk/middleware-host-header" "3.620.0" "@aws-sdk/middleware-logger" "3.609.0" "@aws-sdk/middleware-recursion-detection" "3.620.0" @@ -798,843 +559,9 @@ "@smithy/util-defaults-mode-browser" "^3.0.14" "@smithy/util-defaults-mode-node" "^3.0.14" "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-ecs@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-ecs/-/client-ecs-3.632.0.tgz#1f346349cfadb88c473ce63a547bfb80d288adc8" - integrity sha512-g1euXlFQ99CScMb9Tn9baGoNxRoeJclm+cDv7jf//F/eZCUCQq7Iah2dlOR2nZkrjpWAY3dvQ3MwVEB1z662Sg== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-eks@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-eks/-/client-eks-3.632.0.tgz#c9dff3f2d59ca1b46ea220937efb93ddc5cc389d" - integrity sha512-ax8XRTThlIYicCOxOZ0zViVpMJrR3XVN9/MtQUtO1thHxFiSdcw74qFXEYsB/rM4FpzWvFIWVx5lMLoBWmb1wQ== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-iam@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-iam/-/client-iam-3.632.0.tgz#43ee70a7957d4b77b68279205b64679146f81363" - integrity sha512-iwivASUliVxCEbT/mu5s03SCyqQKNXbJUpG17ywT4taA2xvLisGRI5iNV3OYT1qDmK9DOLMSJYpeX2GWCijPxw== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-kinesis@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-kinesis/-/client-kinesis-3.632.0.tgz#c22b2e652409626c993d0fd1997a47d1709d7cb0" - integrity sha512-4CVhckeqvpWKATFwKdwysbnaJY9e9+zmJnnH8fQqqfOqijoH2KNkygPCFoiRKwYl+UHl99KDu1Vt8+/3M490Ug== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/eventstream-serde-browser" "^3.0.6" - "@smithy/eventstream-serde-config-resolver" "^3.0.3" - "@smithy/eventstream-serde-node" "^3.0.5" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-kms@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-kms/-/client-kms-3.632.0.tgz#c917414a017c83294f6ee27a51a2191dfa6bb1e0" - integrity sha512-uMm1fAIdImaBKwKXnpcD1cpRlTAbLisbRbNJqzJdH+snN0jAkukLNUMUheb0XKaczk7eQrp5w4inlWrRvEmjSA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-lambda@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.632.0.tgz#6e31acb2f4484d61ade5928eba329a1e45f27354" - integrity sha512-vF4KRuHGr6EfW+dssm56S6b+jAa8dKqdWduHNms1TQFah0iOkjc9Dpo4p4j6bobZcuricGko/OZy9ynb1Dwldg== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/eventstream-serde-browser" "^3.0.6" - "@smithy/eventstream-serde-config-resolver" "^3.0.3" - "@smithy/eventstream-serde-node" "^3.0.5" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-stream" "^3.1.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-rds@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-rds/-/client-rds-3.632.0.tgz#ff8a78b81c8a58930c1f80db77ddfee4efdb5242" - integrity sha512-dKltgfhjPjeRQc3DLQQGFKUpW7Cnr/oyh8iDNP20EPQww6f7rif3KPmShiXBp/PAkYmXeaWqu6MSsoC3PTyMqA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-sdk-rds" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-redshift-data@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-redshift-data/-/client-redshift-data-3.632.0.tgz#0412f25f42eacd8986af3164603c1f8f52a8868b" - integrity sha512-Hphh1/OwlZhIRvrxjFX/6p+tRKlXSc2Uvkv6q/ekkHth9otZg5BUei/vLXzbixQiCKVhay60EYn4ecd/6jPAsA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-redshift@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-redshift/-/client-redshift-3.632.0.tgz#2671660fc7a3108eef97ddd189bb2ecccfef6cf5" - integrity sha512-+3/D4TvIHlFVyFbWey3a2eu1LUAtQFMHMSaKm37b+qWi8lM1ME2nocUC/4n8wKR0XRhHUF5sDFbXZVF0jk2GhA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-route-53@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-route-53/-/client-route-53-3.632.0.tgz#3c6a7eb2bac2701411f8a9b4bf56461d8a03471f" - integrity sha512-BEMRHWxmXBzWlnCuW1rTaqYHUSGPDMpQbZdsC7dCuVcYdIBwKfJrPe1HtvT0+6W/KkDQqxoEgKrl47+Jzl06qw== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-sdk-route53" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@aws-sdk/xml-builder" "3.609.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-s3@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.632.0.tgz#8a22b393f9fd469b1fbd006f60d18d4e039a6846" - integrity sha512-GlhLo/t/E9w3EG3ZhFsSeSM3op2lfhc1LrLMXHFsmH1xIPkjIoxV+aHYIenuF7b/MGgMQDOjf07QeQNXfAr1gg== - dependencies: - "@aws-crypto/sha1-browser" "5.2.0" - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-bucket-endpoint" "3.620.0" - "@aws-sdk/middleware-expect-continue" "3.620.0" - "@aws-sdk/middleware-flexible-checksums" "3.620.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-location-constraint" "3.609.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-sdk-s3" "3.629.0" - "@aws-sdk/middleware-ssec" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/signature-v4-multi-region" "3.629.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@aws-sdk/xml-builder" "3.609.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/eventstream-serde-browser" "^3.0.6" - "@smithy/eventstream-serde-config-resolver" "^3.0.3" - "@smithy/eventstream-serde-node" "^3.0.5" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-blob-browser" "^3.1.2" - "@smithy/hash-node" "^3.0.3" - "@smithy/hash-stream-node" "^3.1.2" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/md5-js" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-stream" "^3.1.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - -"@aws-sdk/client-secrets-manager@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.632.0.tgz#821b28489da90229a8718ba1d7bc3d9a7ba694e1" - integrity sha512-WsQhPHHK1yPfALcP1B7nBSGDzky6vFTUEXnUdfzb5Xy2cT+JTBTS6ChtQGqqOuGHDP/3t/9soqZ+L6rUCYBb/Q== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-sfn@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sfn/-/client-sfn-3.632.0.tgz#6b4fd93ad9adb4619d322dbf73478ff90ff2f971" - integrity sha512-LPaMqALuArGX1Y5N3tHX4lNlZabsqgfGJZjwyLTHawqiGNDMlMqOUg4Dl0e2Ies8yvMjs//YXtMWz26x24cGkQ== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-ssm@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.632.0.tgz#4997995530e40dd45b8883ddd66e20dd4c6a3bf8" - integrity sha512-p9QZguhC6NB6CQTFgLcYhU1yhGF7SN9kDMtFwtFBxTPO/SQJ/PJcEyL40yXPbuPUXFtT/YRhT9mIwQagfkXzAA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" - tslib "^2.6.2" - uuid "^9.0.1" - -"@aws-sdk/client-sso-oidc@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.632.0.tgz#38d0b11980f0716c85e63acf2bce0ac1e6ccc9b5" - integrity sha512-Oh1fIWaoZluihOCb/zDEpRTi+6an82fgJz7fyRBugyLhEtDjmvpCQ3oKjzaOhoN+4EvXAm1ZS/ZgpvXBlIRTgw== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-sso@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.632.0.tgz#cc7d7c7578ba34d3689574dc015a0a71b35872e1" - integrity sha512-iYWHiKBz44m3chCFvtvHnvCpL2rALzyr1e6tOZV3dLlOKtQtDUlPy6OtnXDu4y+wyJCniy8ivG3+LAe4klzn1Q== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.629.0" - "@aws-sdk/middleware-host-header" "3.620.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.620.0" - "@aws-sdk/middleware-user-agent" "3.632.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.632.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.3.2" - "@smithy/fetch-http-handler" "^3.2.4" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.5" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.14" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.14" - "@smithy/util-defaults-mode-node" "^3.0.14" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-sso@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.876.0.tgz#1088a594684aeb469b5986eeef7ca3819baf8cac" - integrity sha512-Vf0PMF7HVpvllrfPODnBZmlz6kT/y2AvOt1RQG3+qD0VrHWzShc5nwgRZ+yyP3xkKVhZsQ3sJapfZTFnjqMOYA== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.876.0" - "@aws-sdk/middleware-host-header" "3.873.0" - "@aws-sdk/middleware-logger" "3.876.0" - "@aws-sdk/middleware-recursion-detection" "3.873.0" - "@aws-sdk/middleware-user-agent" "3.876.0" - "@aws-sdk/region-config-resolver" "3.873.0" - "@aws-sdk/types" "3.862.0" - "@aws-sdk/util-endpoints" "3.873.0" - "@aws-sdk/util-user-agent-browser" "3.873.0" - "@aws-sdk/util-user-agent-node" "3.876.0" - "@smithy/config-resolver" "^4.1.5" - "@smithy/core" "^3.8.0" - "@smithy/fetch-http-handler" "^5.1.1" - "@smithy/hash-node" "^4.0.5" - "@smithy/invalid-dependency" "^4.0.5" - "@smithy/middleware-content-length" "^4.0.5" - "@smithy/middleware-endpoint" "^4.1.18" - "@smithy/middleware-retry" "^4.1.19" - "@smithy/middleware-serde" "^4.0.9" - "@smithy/middleware-stack" "^4.0.5" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/node-http-handler" "^4.1.1" - "@smithy/protocol-http" "^5.1.3" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-body-length-browser" "^4.0.0" - "@smithy/util-body-length-node" "^4.0.0" - "@smithy/util-defaults-mode-browser" "^4.0.26" - "@smithy/util-defaults-mode-node" "^4.0.26" - "@smithy/util-endpoints" "^3.0.7" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-retry" "^4.0.7" - "@smithy/util-utf8" "^4.0.0" + "@smithy/util-middleware" "^3.0.3" + "@smithy/util-retry" "^3.0.3" + "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" "@aws-sdk/client-sts@3.632.0": @@ -1746,49 +673,6 @@ fast-xml-parser "4.4.1" tslib "^2.6.2" -"@aws-sdk/core@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/core/-/core-3.876.0.tgz#8f5c6afac9c9f90e6dd19d5d257db1482e50c233" - integrity sha512-sVFBFkdoPOPyY13NaXO1E/R9O5J6ixzHnnRbqrbXYM2QQgLNPTKIiRtmVEuVoFV9YULg+/aKm7caix8m468y9w== - dependencies: - "@aws-sdk/types" "3.862.0" - "@aws-sdk/xml-builder" "3.873.0" - "@smithy/core" "^3.8.0" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/property-provider" "^4.0.5" - "@smithy/protocol-http" "^5.1.3" - "@smithy/signature-v4" "^5.1.3" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-body-length-browser" "^4.0.0" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-utf8" "^4.0.0" - fast-xml-parser "5.2.5" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-cognito-identity@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.632.0.tgz#f2db006faf4f81aed366b793845d036ac3054e09" - integrity sha512-fr+xCIqMYsUD67vwE/IpboIqHiEYMQMrpPjnvpbbvyjTKspFh0GS7Qn1LVFCd5oNeu1rzAdJei1On2HBOwIiZQ== - dependencies: - "@aws-sdk/client-cognito-identity" "3.632.0" - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-cognito-identity@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.876.0.tgz#2c40a6af34eac4fc0137f9f80a1cba47372f66bb" - integrity sha512-6LlQCVef+DBpBZ3F1g7Fr6uuDCXLK4uf90f6bumZSg4ET/LUoAvIhWIiEZGkZ9jJ441Jnil73kOzwmsb7GkPWQ== - dependencies: - "@aws-sdk/client-cognito-identity" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-env@3.620.1": version "3.620.1" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz#d4692c49a65ebc11dae3f7f8b053fee9268a953c" @@ -1799,17 +683,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-env@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.876.0.tgz#11e4d4964e6e2fb85351e68da3a0cea9ff3036ab" - integrity sha512-cof7lwp2AlrAfRs0pt4W2KMS2VMBvEmpcti1UOFfSJIqkn+cyJliMJ8LHg22GI+kUexjvxdAqSbf3M7OHvEW+w== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-http@3.622.0": version "3.622.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.622.0.tgz#db481fdef859849d07dd5870894f45df2debab3d" @@ -1825,22 +698,6 @@ "@smithy/util-stream" "^3.1.3" tslib "^2.6.2" -"@aws-sdk/credential-provider-http@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.876.0.tgz#da29a773b5b1ee53308978582582d6bfbb490c66" - integrity sha512-wzmef2NBp2+X1l8D4Q8hx1G8oI3+WdvLdPev9VnVpRYZxYGRWVPl++wvCBsCn/ZL0mdWopPkhHA3kFexQhMzvg== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/fetch-http-handler" "^5.1.1" - "@smithy/node-http-handler" "^4.1.1" - "@smithy/property-provider" "^4.0.5" - "@smithy/protocol-http" "^5.1.3" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/util-stream" "^4.2.4" - tslib "^2.6.2" - "@aws-sdk/credential-provider-ini@3.632.0": version "3.632.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.632.0.tgz#55c2aa6e59fb9f19cf4e9c1e4ebf70235de32930" @@ -1858,25 +715,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-ini@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.876.0.tgz#6afb8bf97198f88d1740e922a9abf4b4e1155038" - integrity sha512-JHbW6fqnJsVjGHCyko7B0NVPT1nEAPxkM3CGjUcVGsHgJBkxOLVCMQqTRyHcDdeHR2qeojlLoOHRz97xIHQjYw== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/credential-provider-env" "3.876.0" - "@aws-sdk/credential-provider-http" "3.876.0" - "@aws-sdk/credential-provider-process" "3.876.0" - "@aws-sdk/credential-provider-sso" "3.876.0" - "@aws-sdk/credential-provider-web-identity" "3.876.0" - "@aws-sdk/nested-clients" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/credential-provider-imds" "^4.0.7" - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-node@3.632.0": version "3.632.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.632.0.tgz#33a21d722b620c6a9cc43c38981cba69345e251f" @@ -1895,24 +733,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-node@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.876.0.tgz#1619f84fee068217414ea2fa57c0e327768a9465" - integrity sha512-eHbNt1+Hi43e8ANnwf6toapLSxfMiyGq459y3Uh6i7NBOiWWKEsOVcgOfUC3RCoqeikxovt1tFM2cEElWUIOhg== - dependencies: - "@aws-sdk/credential-provider-env" "3.876.0" - "@aws-sdk/credential-provider-http" "3.876.0" - "@aws-sdk/credential-provider-ini" "3.876.0" - "@aws-sdk/credential-provider-process" "3.876.0" - "@aws-sdk/credential-provider-sso" "3.876.0" - "@aws-sdk/credential-provider-web-identity" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/credential-provider-imds" "^4.0.7" - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-process@3.620.1": version "3.620.1" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz#10387cf85400420bb4bbda9cc56937dcc6d6d0ee" @@ -1924,18 +744,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-process@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.876.0.tgz#4f9760041e0c9f33d816ea7c5d004ef26d80a8f8" - integrity sha512-SMX4OlHvspu3gF4hxe7WAnZFhxpiCye+WlBSVoWfW/i9XNhtrZS1JMr29MK34GlCTk9qO7FlRwds/Z5k7xPpHg== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-sso@3.632.0": version "3.632.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.632.0.tgz#c217b853fd7d00511f3f14accdd3bf27ec4426a6" @@ -1949,20 +757,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-sso@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.876.0.tgz#d4867ebf546c36ca3df7366bbf70ef99b958da9a" - integrity sha512-iP5dz9XqwePbgnh7Bdrq5e1319JpCRKLyomUfHH1XVeXkIHmwIJdmTj1Upeo1J8L/5cLHmhXAN6CTN11bLo8SA== - dependencies: - "@aws-sdk/client-sso" "3.876.0" - "@aws-sdk/core" "3.876.0" - "@aws-sdk/token-providers" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/credential-provider-web-identity@3.621.0": version "3.621.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz#b25878c0a05dad60cd5f91e7e5a31a145c2f14be" @@ -1973,73 +767,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-web-identity@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.876.0.tgz#ece58ac87f7b2eb13176f5f89aafe916562289ef" - integrity sha512-q/XSCP1uae5aB9veM8zcm6Gqu6A4ckX9ZbhHgCzURXVJDwp+nINW1hM9vppMjGw3ND9Ibx/adR+KfTI0TDMzqw== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/nested-clients" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@aws-sdk/credential-providers@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.632.0.tgz#5556914f3ffa6d01e312a2fc6410749bf2d50ac0" - integrity sha512-Q4x2ARdgncZKOJE/NXJHY5s8/YDRugVUR4lBEtibE764w5ezAhI1aMChzAzv4j3WMSDZ29KyxaymHHt2vJED9g== - dependencies: - "@aws-sdk/client-cognito-identity" "3.632.0" - "@aws-sdk/client-sso" "3.632.0" - "@aws-sdk/client-sts" "3.632.0" - "@aws-sdk/credential-provider-cognito-identity" "3.632.0" - "@aws-sdk/credential-provider-env" "3.620.1" - "@aws-sdk/credential-provider-http" "3.622.0" - "@aws-sdk/credential-provider-ini" "3.632.0" - "@aws-sdk/credential-provider-node" "3.632.0" - "@aws-sdk/credential-provider-process" "3.620.1" - "@aws-sdk/credential-provider-sso" "3.632.0" - "@aws-sdk/credential-provider-web-identity" "3.621.0" - "@aws-sdk/types" "3.609.0" - "@smithy/credential-provider-imds" "^3.2.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - -"@aws-sdk/credential-providers@^3.873.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.876.0.tgz#2812958919070f28aa036b1d87df9ea99973e3fd" - integrity sha512-ruCLlBpz+ggJQtdrnnfgjtFUJaHKN2WtNp1tyuV/qDmLk5vMgk2BSyOWLyTsbJC+L+I76w7NADY6VIRe9MiF0Q== - dependencies: - "@aws-sdk/client-cognito-identity" "3.876.0" - "@aws-sdk/core" "3.876.0" - "@aws-sdk/credential-provider-cognito-identity" "3.876.0" - "@aws-sdk/credential-provider-env" "3.876.0" - "@aws-sdk/credential-provider-http" "3.876.0" - "@aws-sdk/credential-provider-ini" "3.876.0" - "@aws-sdk/credential-provider-node" "3.876.0" - "@aws-sdk/credential-provider-process" "3.876.0" - "@aws-sdk/credential-provider-sso" "3.876.0" - "@aws-sdk/credential-provider-web-identity" "3.876.0" - "@aws-sdk/nested-clients" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/config-resolver" "^4.1.5" - "@smithy/core" "^3.8.0" - "@smithy/credential-provider-imds" "^4.0.7" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/property-provider" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@aws-sdk/endpoint-cache@3.572.0": - version "3.572.0" - resolved "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.572.0.tgz#414970b764db207eba4d93228363d61af33ea03b" - integrity sha512-CzuRWMj/xtN9p9eP915nlPmlyniTzke732Ow/M60++gGgB3W+RtZyFftw3TEx+NzNhd1tH54dEcGiWdiNaBz3Q== - dependencies: - mnemonist "0.38.3" - tslib "^2.6.2" - "@aws-sdk/middleware-bucket-endpoint@3.620.0": version "3.620.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz#c5dc0e98b6209a91479cad6c2c74fbc5a3429fab" @@ -2053,18 +780,6 @@ "@smithy/util-config-provider" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/middleware-endpoint-discovery@3.620.0": - version "3.620.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.620.0.tgz#45acd6cf2a77ceaf736f2758274c383838c8584a" - integrity sha512-T6kuydHBF4BPP5CVH53Fze7c2b9rqxWP88XrGtmNMXXdY4sXur1v/itGdS2l3gqRjxKo0LsmjmuQm9zL4vGneQ== - dependencies: - "@aws-sdk/endpoint-cache" "3.572.0" - "@aws-sdk/types" "3.609.0" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - "@aws-sdk/middleware-expect-continue@3.620.0": version "3.620.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz#6a362c0f0696dc6749108a33de9998e0fa6b50ec" @@ -2099,16 +814,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/middleware-host-header@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.873.0.tgz#81e9c2f61674b96337472bcaefd85ce3b7a24f7b" - integrity sha512-KZ/W1uruWtMOs7D5j3KquOxzCnV79KQW9MjJFZM/M0l6KI8J6V3718MXxFHsTjUE4fpdV6SeCNLV1lwGygsjJA== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/middleware-location-constraint@3.609.0": version "3.609.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz#7ed82d71e5ddcd50683ef2bbde10d1cc2492057e" @@ -2127,15 +832,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/middleware-logger@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.876.0.tgz#16ee45f7bcd887badc8f12d80eef9ba18a0ac97c" - integrity sha512-cpWJhOuMSyz9oV25Z/CMHCBTgafDCbv7fHR80nlRrPdPZ8ETNsahwRgltXP1QJJ8r3X/c1kwpOR7tc+RabVzNA== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/middleware-recursion-detection@3.620.0": version "3.620.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz#f8270dfff843fd756be971e5673f89c6a24c6513" @@ -2146,52 +842,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/middleware-recursion-detection@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.873.0.tgz#1f9086542800d355d85332acea7accf1856e408b" - integrity sha512-OtgY8EXOzRdEWR//WfPkA/fXl0+WwE8hq0y9iw2caNyKPtca85dzrrZWnPqyBK/cpImosrpR1iKMYr41XshsCg== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@aws-sdk/middleware-sdk-ec2@3.622.0": - version "3.622.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.622.0.tgz#dc25d26d404344ec0d94e6d897baf849ec9f0718" - integrity sha512-rVShV+eB1vovLuvlzUEFuxZB4yxSMFzyP+VNIoFxtSZh0LWh7+7bNLwp1I9Vq3SxHLMVYQevjm7nkiPM0DG+RQ== - dependencies: - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-format-url" "3.609.0" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/protocol-http" "^4.1.0" - "@smithy/signature-v4" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-sdk-rds@3.620.0": - version "3.620.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-rds/-/middleware-sdk-rds-3.620.0.tgz#6157eab60a7f015dac99f7bf8626dc15bb6f4185" - integrity sha512-pokuq3rMJfn8ZNUIhAKn0c1nQtvClPLzh5h1fOXAeRXmNjp+YPXQ4CIsGRcqDNO8lkUyyfV42WnPCdUZmR9zAA== - dependencies: - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-format-url" "3.609.0" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/protocol-http" "^4.1.0" - "@smithy/signature-v4" "^4.1.0" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-sdk-route53@3.609.0": - version "3.609.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-route53/-/middleware-sdk-route53-3.609.0.tgz#285fcd97c3d479b4f5d09a66bf3cde04465dfd8b" - integrity sha512-lw0WdzAJS8puQeJNeyOeEfRtG2C91yFBj8IXWmwm7r+QqnZtDork0uiZYFt1Br24dOxZiFefxLCehjSoyr8fVQ== - dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - "@aws-sdk/middleware-sdk-s3@3.629.0": version "3.629.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.629.0.tgz#10ad7b8af945f915d31f00cec0198248be95291c" @@ -2232,63 +882,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/middleware-user-agent@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.876.0.tgz#207f62b1e9f141ede0a562fd1f1bf90b948a2089" - integrity sha512-FR+8INfnbNv32QDQ5szxkWX6mB/QgezfNyx8LnAh1ErISZMmEFBxXXir+ZOfuV8vsmal1a6cy9qmnMNDaNnaNQ== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@aws-sdk/util-endpoints" "3.873.0" - "@smithy/core" "^3.8.0" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@aws-sdk/nested-clients@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.876.0.tgz#73919a21b0d71d9b25b3eb2294f62fc812e79f31" - integrity sha512-R4TZrkM2gUElTsotk8mt3y7iLG8TNi1LL1wgVdEEWSLOYTaFyglGdoNBMtEeP7lmXilaTy00AbYF6BakJvSTHg== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.876.0" - "@aws-sdk/middleware-host-header" "3.873.0" - "@aws-sdk/middleware-logger" "3.876.0" - "@aws-sdk/middleware-recursion-detection" "3.873.0" - "@aws-sdk/middleware-user-agent" "3.876.0" - "@aws-sdk/region-config-resolver" "3.873.0" - "@aws-sdk/types" "3.862.0" - "@aws-sdk/util-endpoints" "3.873.0" - "@aws-sdk/util-user-agent-browser" "3.873.0" - "@aws-sdk/util-user-agent-node" "3.876.0" - "@smithy/config-resolver" "^4.1.5" - "@smithy/core" "^3.8.0" - "@smithy/fetch-http-handler" "^5.1.1" - "@smithy/hash-node" "^4.0.5" - "@smithy/invalid-dependency" "^4.0.5" - "@smithy/middleware-content-length" "^4.0.5" - "@smithy/middleware-endpoint" "^4.1.18" - "@smithy/middleware-retry" "^4.1.19" - "@smithy/middleware-serde" "^4.0.9" - "@smithy/middleware-stack" "^4.0.5" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/node-http-handler" "^4.1.1" - "@smithy/protocol-http" "^5.1.3" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-body-length-browser" "^4.0.0" - "@smithy/util-body-length-node" "^4.0.0" - "@smithy/util-defaults-mode-browser" "^4.0.26" - "@smithy/util-defaults-mode-node" "^4.0.26" - "@smithy/util-endpoints" "^3.0.7" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-retry" "^4.0.7" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - "@aws-sdk/region-config-resolver@3.614.0": version "3.614.0" resolved "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz#9cebb31a5bcfea2a41891fff7f28d0164cde179a" @@ -2301,32 +894,6 @@ "@smithy/util-middleware" "^3.0.3" tslib "^2.6.2" -"@aws-sdk/region-config-resolver@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.873.0.tgz#9a5ddf8aa5a068d1c728dda3ef7e5b31561f7419" - integrity sha512-q9sPoef+BBG6PJnc4x60vK/bfVwvRWsPgcoQyIra057S/QGjq5VkjvNk6H8xedf6vnKlXNBwq9BaANBXnldUJg== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/types" "^4.3.2" - "@smithy/util-config-provider" "^4.0.0" - "@smithy/util-middleware" "^4.0.5" - tslib "^2.6.2" - -"@aws-sdk/s3-request-presigner@3.632.0": - version "3.632.0" - resolved "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.632.0.tgz#ee05b0844fafc6c5f8afb17e3d543a2c8c0c73ff" - integrity sha512-gvN37+14lOE9bX8hz2ztJa8W37FgkNQiMTH72Mzmkaw8qeILUkB74nzq9JdRKJxB9QIWeWs7PeUP+8zUapuMrQ== - dependencies: - "@aws-sdk/signature-v4-multi-region" "3.629.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-format-url" "3.609.0" - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.1.12" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - "@aws-sdk/signature-v4-multi-region@3.629.0": version "3.629.0" resolved "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.629.0.tgz#ca75443f3324fd398d228c3cba0f4275e7bb4a3a" @@ -2350,19 +917,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/token-providers@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.876.0.tgz#952d62cfe53c9964bb2a6db687698279fe22fd57" - integrity sha512-iU08kaQbhXnY0CC2TBcr7y/2PqPwZP2CTWX/Rbq0NvhOyteikfh7ASC+bRfLUp0XMSHKvSb+w2dh8a0lvx4oHg== - dependencies: - "@aws-sdk/core" "3.876.0" - "@aws-sdk/nested-clients" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/types@3.609.0": version "3.609.0" resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz#06b39d799c9f197a7b43670243e8e78a3bf7d6a5" @@ -2371,7 +925,7 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/types@3.862.0", "@aws-sdk/types@^3.222.0": +"@aws-sdk/types@^3.222.0": version "3.862.0" resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.862.0.tgz#2f5622e1aa3a5281d4f419f5d2c90f87dd5ff0cf" integrity sha512-Bei+RL0cDxxV+lW2UezLbCYYNeJm6Nzee0TpW0FfyTRBhH9C1XQh4+x+IClriXvgBnRquTMMYsmJfvx8iyLKrg== @@ -2396,27 +950,6 @@ "@smithy/util-endpoints" "^2.0.5" tslib "^2.6.2" -"@aws-sdk/util-endpoints@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.873.0.tgz#11afbcf503bdbcf10c0ed08c81696303b8bb5fb0" - integrity sha512-YByHrhjxYdjKRf/RQygRK1uh0As1FIi9+jXTcIEX/rBgN8mUByczr2u4QXBzw7ZdbdcOBMOkPnLRjNOWW1MkFg== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - "@smithy/util-endpoints" "^3.0.7" - tslib "^2.6.2" - -"@aws-sdk/util-format-url@3.609.0": - version "3.609.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.609.0.tgz#f53907193bb636b52b61c81bbe6d7bd5ddc76c68" - integrity sha512-fuk29BI/oLQlJ7pfm6iJ4gkEpHdavffAALZwXh9eaY1vQ0ip0aKfRTiNudPoJjyyahnz5yJ1HkmlcDitlzsOrQ== - dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/querystring-builder" "^3.0.3" - "@smithy/types" "^3.3.0" - tslib "^2.6.2" - "@aws-sdk/util-locate-window@^3.0.0": version "3.873.0" resolved "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.873.0.tgz#cc10edef3b7aecf365943ec657116d6eb470d9cb" @@ -2434,16 +967,6 @@ bowser "^2.11.0" tslib "^2.6.2" -"@aws-sdk/util-user-agent-browser@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.873.0.tgz#0fcc3c1877ae74aa692cc0b4ad874bc9a6ee1ad6" - integrity sha512-AcRdbK6o19yehEcywI43blIBhOCSo6UgyWcuOJX5CFF8k39xm1ILCjQlRRjchLAxWrm0lU0Q7XV90RiMMFMZtA== - dependencies: - "@aws-sdk/types" "3.862.0" - "@smithy/types" "^4.3.2" - bowser "^2.11.0" - tslib "^2.6.2" - "@aws-sdk/util-user-agent-node@3.614.0": version "3.614.0" resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz#1e3f49a80f841a3f21647baed2adce01aac5beb5" @@ -2454,17 +977,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/util-user-agent-node@3.876.0": - version "3.876.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.876.0.tgz#0300f97d6a67bb451c9bc7d59fc35976ad311189" - integrity sha512-/ZIaeUt60JBdI0mNc7sZ8v3Tuzp8Pbe4gIAYnppGyF4KV8QA+Yu8tp2bGHfkKn150t1uvQ6P/4CwFfoGF34dzg== - dependencies: - "@aws-sdk/middleware-user-agent" "3.876.0" - "@aws-sdk/types" "3.862.0" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@aws-sdk/xml-builder@3.609.0": version "3.609.0" resolved "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz#eeb3d5cde000a23cfeeefe0354b6193440dc7d87" @@ -2473,14 +985,6 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/xml-builder@3.873.0": - version "3.873.0" - resolved "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.873.0.tgz#b5a3acfdeecfc1b7fee8a7773cb2a45590eb5701" - integrity sha512-kLO7k7cGJ6KaHiExSJWojZurF7SnGMDHXRuQunFnEoD0n1yB6Lqy/S/zHiQ7oJnBhPr9q0TW9qFkrsZb1Uc54w== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.27.1": version "7.27.1" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" @@ -2640,7 +1144,7 @@ "@babel/template" "^7.27.2" "@babel/types" "^7.28.2" -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.27.2", "@babel/parser@^7.28.3": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.27.2", "@babel/parser@^7.28.3": version "7.28.3" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz#d2d25b814621bca5fe9d172bc93792547e7a2a71" integrity sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA== @@ -2902,14 +1406,6 @@ resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@cdklabs/cdk-atmosphere-client@^0.0.62": - version "0.0.62" - resolved "https://registry.npmjs.org/@cdklabs/cdk-atmosphere-client/-/cdk-atmosphere-client-0.0.62.tgz#b84825e349d07bb2fdfdcfac0589e0d4b3b43607" - integrity sha512-6/yVkM/RIng9qgr3K2J+Ar1CyXi3j2G9ZnRUGQEhOp6asmaCsyvdnympGSBobsZ3DyR/PdfQKieb4T1uWwicog== - dependencies: - "@aws-sdk/credential-providers" "^3.873.0" - aws4fetch "^1.0.20" - "@cdklabs/eslint-plugin@^1.3.4": version "1.3.4" resolved "https://registry.npmjs.org/@cdklabs/eslint-plugin/-/eslint-plugin-1.3.4.tgz#d145d0174adb52e043111cc7854d58302b091a5b" @@ -3143,11 +1639,6 @@ resolved "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== -"@extra-number/significant-digits@^1.1.1": - version "1.3.9" - resolved "https://registry.npmjs.org/@extra-number/significant-digits/-/significant-digits-1.3.9.tgz#06f3acc4aa688af3ed76bf5f30bca6de9d60883f" - integrity sha512-E5PY/bCwrNqEHh4QS6AQBinLZ+sxM1lT8tsSVYk8VwhWIPp6fCU/BMRVq0V8iJ8LwS3FHmaA4vUzb78s4BIIyA== - "@fastify/busboy@^2.0.0": version "2.1.1" resolved "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" @@ -3276,11 +1767,6 @@ slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/diff-sequences@30.0.1": - version "30.0.1" - resolved "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz#0ededeae4d071f5c8ffe3678d15f3a1be09156be" - integrity sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw== - "@jest/environment@^29.7.0": version "29.7.0" resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" @@ -3291,13 +1777,6 @@ "@types/node" "*" jest-mock "^29.7.0" -"@jest/expect-utils@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.1.2.tgz#88ea18040f707c9fadb6fd9e77568cae5266cee8" - integrity sha512-HXy1qT/bfdjCv7iC336ExbqqYtZvljrV8odNdso7dWK9bSeHtLlvwWWC3YSybSPL03Gg5rug6WLCZAZFH72m0A== - dependencies: - "@jest/get-type" "30.1.0" - "@jest/expect-utils@^29.7.0": version "29.7.0" resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6" @@ -3325,11 +1804,6 @@ jest-mock "^29.7.0" jest-util "^29.7.0" -"@jest/get-type@30.1.0": - version "30.1.0" - resolved "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz#4fcb4dc2ebcf0811be1c04fd1cb79c2dba431cbc" - integrity sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA== - "@jest/globals@^29.7.0": version "29.7.0" resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d" @@ -3340,14 +1814,6 @@ "@jest/types" "^29.6.3" jest-mock "^29.7.0" -"@jest/pattern@30.0.1": - version "30.0.1" - resolved "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.1.tgz#d5304147f49a052900b4b853dedb111d080e199f" - integrity sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA== - dependencies: - "@types/node" "*" - jest-regex-util "30.0.1" - "@jest/reporters@^29.7.0": version "29.7.0" resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7" @@ -3378,13 +1844,6 @@ strip-ansi "^6.0.0" v8-to-istanbul "^9.0.1" -"@jest/schemas@30.0.5": - version "30.0.5" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz#7bdf69fc5a368a5abdb49fd91036c55225846473" - integrity sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA== - dependencies: - "@sinclair/typebox" "^0.34.0" - "@jest/schemas@^29.6.3": version "29.6.3" resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" @@ -3442,19 +1901,6 @@ slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@30.0.5": - version "30.0.5" - resolved "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz#29a33a4c036e3904f1cfd94f6fe77f89d2e1cc05" - integrity sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ== - dependencies: - "@jest/pattern" "30.0.1" - "@jest/schemas" "30.0.5" - "@types/istanbul-lib-coverage" "^2.0.6" - "@types/istanbul-reports" "^3.0.4" - "@types/node" "*" - "@types/yargs" "^17.0.33" - chalk "^4.1.2" - "@jest/types@^29.6.3": version "29.6.3" resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" @@ -4215,32 +2661,13 @@ resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== -"@sinclair/typebox@^0.34.0": - version "0.34.41" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.41.tgz#aa51a6c1946df2c5a11494a2cdb9318e026db16c" - integrity sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g== - -"@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1": - version "1.8.6" - resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" - integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== - dependencies: - type-detect "4.0.8" - -"@sinonjs/commons@^3.0.0", "@sinonjs/commons@^3.0.1": +"@sinonjs/commons@^3.0.0": version "3.0.1" resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== dependencies: type-detect "4.0.8" -"@sinonjs/fake-timers@11.2.2": - version "11.2.2" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz#50063cc3574f4a27bd8453180a04171c85cc9699" - integrity sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw== - dependencies: - "@sinonjs/commons" "^3.0.0" - "@sinonjs/fake-timers@^10.0.2": version "10.3.0" resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" @@ -4248,42 +2675,6 @@ dependencies: "@sinonjs/commons" "^3.0.0" -"@sinonjs/fake-timers@^13.0.1": - version "13.0.5" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz#36b9dbc21ad5546486ea9173d6bea063eb1717d5" - integrity sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw== - dependencies: - "@sinonjs/commons" "^3.0.1" - -"@sinonjs/fake-timers@^6.0.0", "@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== - dependencies: - "@sinonjs/commons" "^1.7.0" - -"@sinonjs/samsam@^5.3.1": - version "5.3.1" - resolved "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.1.tgz#375a45fe6ed4e92fca2fb920e007c48232a6507f" - integrity sha512-1Hc0b1TtyfBu8ixF/tpfSHTVWKwCBLY4QJbkgnE7HcwyvT2xArDxb4K7dMgqRm3szI+LJbzmW/s4xxEhv6hwDg== - dependencies: - "@sinonjs/commons" "^1.6.0" - lodash.get "^4.4.2" - type-detect "^4.0.8" - -"@sinonjs/samsam@^8.0.0": - version "8.0.3" - resolved "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.3.tgz#eb6ffaef421e1e27783cc9b52567de20cb28072d" - integrity sha512-hw6HbX+GyVZzmaYNh82Ecj1vdGZrqVIn/keDTg63IgAwiQPO+xCz99uG6Woqgb4tM0mUiFENKZ4cqd7IX94AXQ== - dependencies: - "@sinonjs/commons" "^3.0.1" - type-detect "^4.1.0" - -"@sinonjs/text-encoding@^0.7.1", "@sinonjs/text-encoding@^0.7.3": - version "0.7.3" - resolved "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.3.tgz#282046f03e886e352b2d5f5da5eb755e01457f3f" - integrity sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA== - "@smithy/abort-controller@^3.1.9": version "3.1.9" resolved "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.9.tgz#47d323f754136a489e972d7fd465d534d72fcbff" @@ -4292,14 +2683,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/abort-controller@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.5.tgz#2872a12d0f11dfdcc4254b39566d5f24ab26a4ab" - integrity sha512-jcrqdTQurIrBbUm4W2YdLVMQDoL0sA9DTxYd2s+R/y+2U9NLOP7Xf/YqfSg1FZhlZIYEnvk2mwbyvIfdLEPo8g== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/chunked-blob-reader-native@^3.0.1": version "3.0.1" resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.1.tgz#39045ed278ee1b6f4c12715c7565678557274c29" @@ -4326,17 +2709,6 @@ "@smithy/util-middleware" "^3.0.11" tslib "^2.6.2" -"@smithy/config-resolver@^4.1.5": - version "4.1.5" - resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.5.tgz#3cb7cde8d13ca64630e5655812bac9ffe8182469" - integrity sha512-viuHMxBAqydkB0AfWwHIdwf/PRH2z5KHGUzqyRtS/Wv+n3IHI993Sk76VCA7dD/+GzgGOmlJDITfPcJC1nIVIw== - dependencies: - "@smithy/node-config-provider" "^4.1.4" - "@smithy/types" "^4.3.2" - "@smithy/util-config-provider" "^4.0.0" - "@smithy/util-middleware" "^4.0.5" - tslib "^2.6.2" - "@smithy/core@^2.3.2", "@smithy/core@^2.5.7": version "2.5.7" resolved "https://registry.npmjs.org/@smithy/core/-/core-2.5.7.tgz#b545649071905f064cb0407102f3b9159246f8d9" @@ -4351,23 +2723,6 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/core@^3.8.0": - version "3.8.0" - resolved "https://registry.npmjs.org/@smithy/core/-/core-3.8.0.tgz#321d03564b753025b92e4476579efcd5c505ab1f" - integrity sha512-EYqsIYJmkR1VhVE9pccnk353xhs+lB6btdutJEtsp7R055haMJp2yE16eSxw8fv+G0WUY6vqxyYOP8kOqawxYQ== - dependencies: - "@smithy/middleware-serde" "^4.0.9" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-body-length-browser" "^4.0.0" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-stream" "^4.2.4" - "@smithy/util-utf8" "^4.0.0" - "@types/uuid" "^9.0.1" - tslib "^2.6.2" - uuid "^9.0.1" - "@smithy/credential-provider-imds@^3.2.0", "@smithy/credential-provider-imds@^3.2.8": version "3.2.8" resolved "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.8.tgz#27ed2747074c86a7d627a98e56f324a65cba88de" @@ -4379,17 +2734,6 @@ "@smithy/url-parser" "^3.0.11" tslib "^2.6.2" -"@smithy/credential-provider-imds@^4.0.7": - version "4.0.7" - resolved "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.7.tgz#d8bb566ffd8d9e556810b83d6e0b01b39036b810" - integrity sha512-dDzrMXA8d8riFNiPvytxn0mNwR4B3h8lgrQ5UjAGu6T9z/kRg/Xncf4tEQHE/+t25sY8IH3CowcmWi+1U5B1Gw== - dependencies: - "@smithy/node-config-provider" "^4.1.4" - "@smithy/property-provider" "^4.0.5" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - tslib "^2.6.2" - "@smithy/eventstream-codec@^3.1.10": version "3.1.10" resolved "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.10.tgz#0c1a3457e7a23b71cd71525ceb668f8569a84dad" @@ -4457,17 +2801,6 @@ "@smithy/util-base64" "^3.0.0" tslib "^2.6.2" -"@smithy/fetch-http-handler@^5.1.1": - version "5.1.1" - resolved "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.1.1.tgz#a444c99bffdf314deb447370429cc3e719f1a866" - integrity sha512-61WjM0PWmZJR+SnmzaKI7t7G0UkkNFboDpzIdzSoy7TByUzlxo18Qlh9s71qug4AY4hlH/CwXdubMtkcNEb/sQ== - dependencies: - "@smithy/protocol-http" "^5.1.3" - "@smithy/querystring-builder" "^4.0.5" - "@smithy/types" "^4.3.2" - "@smithy/util-base64" "^4.0.0" - tslib "^2.6.2" - "@smithy/hash-blob-browser@^3.1.2": version "3.1.10" resolved "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.10.tgz#985e308189c2687a15004152b97506882ffb2b13" @@ -4488,16 +2821,6 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/hash-node@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.5.tgz#16cf8efe42b8b611b1f56f78464b97b27ca6a3ec" - integrity sha512-cv1HHkKhpyRb6ahD8Vcfb2Hgz67vNIXEp2vnhzfxLFGRukLCNEA5QdsorbUEzXma1Rco0u3rx5VTqbM06GcZqQ== - dependencies: - "@smithy/types" "^4.3.2" - "@smithy/util-buffer-from" "^4.0.0" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - "@smithy/hash-stream-node@^3.1.2": version "3.1.10" resolved "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.10.tgz#94716b4556f4ccf2807e605f47bb5b018ed7dfb0" @@ -4515,14 +2838,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/invalid-dependency@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.5.tgz#ed88e209668266b09c4b501f9bd656728b5ece60" - integrity sha512-IVnb78Qtf7EJpoEVo7qJ8BEXQwgC4n3igeJNNKEj/MLYtapnx8A67Zt/J3RXAj2xSO1910zk0LdFiygSemuLow== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/is-array-buffer@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz#f84f0d9f9a36601a9ca9381688bd1b726fd39111" @@ -4537,13 +2852,6 @@ dependencies: tslib "^2.6.2" -"@smithy/is-array-buffer@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.0.0.tgz#55a939029321fec462bcc574890075cd63e94206" - integrity sha512-saYhF8ZZNoJDTvJBEWgeBccCg+yvp1CX+ed12yORU3NilJScfc6gfch2oVb4QgxZrGUx3/ZJlb+c/dJbyupxlw== - dependencies: - tslib "^2.6.2" - "@smithy/md5-js@^3.0.3": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.11.tgz#27e4dab616348ff94aed24dc75e4017c582df40f" @@ -4578,15 +2886,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/middleware-content-length@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.5.tgz#c5d6e47f5a9fbba20433602bec9bffaeeb821ff3" - integrity sha512-l1jlNZoYzoCC7p0zCtBDE5OBXZ95yMKlRlftooE5jPWQn4YBPLgsp+oeHp7iMHaTGoUdFqmHOPa8c9G3gBsRpQ== - dependencies: - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/middleware-endpoint@^3.1.0", "@smithy/middleware-endpoint@^3.2.8": version "3.2.8" resolved "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.2.8.tgz#6ca5de80543ba0f0d40e15dc3f9d0f14d192e06e" @@ -4601,20 +2900,6 @@ "@smithy/util-middleware" "^3.0.11" tslib "^2.6.2" -"@smithy/middleware-endpoint@^4.1.18": - version "4.1.18" - resolved "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.18.tgz#81b2f85e3c72b0f1a2d8776e01b0a2968af62c0a" - integrity sha512-ZhvqcVRPZxnZlokcPaTwb+r+h4yOIOCJmx0v2d1bpVlmP465g3qpVSf7wxcq5zZdu4jb0H4yIMxuPwDJSQc3MQ== - dependencies: - "@smithy/core" "^3.8.0" - "@smithy/middleware-serde" "^4.0.9" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - "@smithy/url-parser" "^4.0.5" - "@smithy/util-middleware" "^4.0.5" - tslib "^2.6.2" - "@smithy/middleware-retry@^3.0.14": version "3.0.34" resolved "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.34.tgz#136c89fc22d70819fdefc51b0d24952cf98883f1" @@ -4630,22 +2915,6 @@ tslib "^2.6.2" uuid "^9.0.1" -"@smithy/middleware-retry@^4.1.19": - version "4.1.19" - resolved "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.19.tgz#19c013c1a548e1185cc1bfabfab3f498667c9e89" - integrity sha512-X58zx/NVECjeuUB6A8HBu4bhx72EoUz+T5jTMIyeNKx2lf+Gs9TmWPNNkH+5QF0COjpInP/xSpJGJ7xEnAklQQ== - dependencies: - "@smithy/node-config-provider" "^4.1.4" - "@smithy/protocol-http" "^5.1.3" - "@smithy/service-error-classification" "^4.0.7" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-retry" "^4.0.7" - "@types/uuid" "^9.0.1" - tslib "^2.6.2" - uuid "^9.0.1" - "@smithy/middleware-serde@^3.0.11", "@smithy/middleware-serde@^3.0.3": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.11.tgz#c7d54e0add4f83e05c6878a011fc664e21022f12" @@ -4654,29 +2923,12 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/middleware-serde@^4.0.9": - version "4.0.9" - resolved "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.9.tgz#71213158bb11c1d632829001ca3f233323fb2a7c" - integrity sha512-uAFFR4dpeoJPGz8x9mhxp+RPjo5wW0QEEIPPPbLXiRRWeCATf/Km3gKIVR5vaP8bN1kgsPhcEeh+IZvUlBv6Xg== - dependencies: - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/middleware-stack@^3.0.11", "@smithy/middleware-stack@^3.0.3": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.11.tgz#453af2096924e4064d9da4e053cfdf65d9a36acc" integrity sha512-1HGo9a6/ikgOMrTrWL/WiN9N8GSVYpuRQO5kjstAq4CvV59bjqnh7TbdXGQ4vxLD3xlSjfBjq5t1SOELePsLnA== dependencies: - "@smithy/types" "^3.7.2" - tslib "^2.6.2" - -"@smithy/middleware-stack@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.5.tgz#577050d4c0afe816f1ea85f335b2ef64f73e4328" - integrity sha512-/yoHDXZPh3ocRVyeWQFvC44u8seu3eYzZRveCMfgMOBcNKnAmOvjbL9+Cp5XKSIi9iYA9PECUuW2teDAk8T+OQ== - dependencies: - "@smithy/types" "^4.3.2" + "@smithy/types" "^3.7.2" tslib "^2.6.2" "@smithy/node-config-provider@^3.1.12", "@smithy/node-config-provider@^3.1.4": @@ -4689,17 +2941,7 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/node-config-provider@^4.1.4": - version "4.1.4" - resolved "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.4.tgz#42f231b7027e5a7ce003fd80180e586fe814944a" - integrity sha512-+UDQV/k42jLEPPHSn39l0Bmc4sB1xtdI9Gd47fzo/0PbXzJ7ylgaOByVjF5EeQIumkepnrJyfx86dPa9p47Y+w== - dependencies: - "@smithy/property-provider" "^4.0.5" - "@smithy/shared-ini-file-loader" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@smithy/node-http-handler@3.3.3", "@smithy/node-http-handler@^3.1.4", "@smithy/node-http-handler@^3.3.3": +"@smithy/node-http-handler@^3.1.4", "@smithy/node-http-handler@^3.3.3": version "3.3.3" resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.3.3.tgz#94dbb3f15342b656ceba2b26e14aa741cace8919" integrity sha512-BrpZOaZ4RCbcJ2igiSNG16S+kgAc65l/2hmxWdmhyoGWHTLlzQzr06PXavJp9OBlPEG/sHlqdxjWmjzV66+BSQ== @@ -4710,17 +2952,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/node-http-handler@^4.1.1": - version "4.1.1" - resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.1.1.tgz#dd806d9e08b6e73125040dd0808ab56d16a178e9" - integrity sha512-RHnlHqFpoVdjSPPiYy/t40Zovf3BBHc2oemgD7VsVTFFZrU5erFFe0n52OANZZ/5sbshgD93sOh5r6I35Xmpaw== - dependencies: - "@smithy/abort-controller" "^4.0.5" - "@smithy/protocol-http" "^5.1.3" - "@smithy/querystring-builder" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/property-provider@^3.1.11", "@smithy/property-provider@^3.1.3": version "3.1.11" resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.11.tgz#161cf1c2a2ada361e417382c57f5ba6fbca8acad" @@ -4729,14 +2960,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/property-provider@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.5.tgz#d3b368b31d5b130f4c30cc0c91f9ebb28d9685fc" - integrity sha512-R/bswf59T/n9ZgfgUICAZoWYKBHcsVDurAGX88zsiUtOTA/xUAPyiT+qkNCPwFn43pZqN84M4MiUsbSGQmgFIQ== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/protocol-http@^4.1.0", "@smithy/protocol-http@^4.1.4", "@smithy/protocol-http@^4.1.8": version "4.1.8" resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.8.tgz#0461758671335f65e8ff3fc0885ab7ed253819c9" @@ -4745,15 +2968,7 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/protocol-http@^5.1.3": - version "5.1.3" - resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.3.tgz#86855b528c0e4cb9fa6fb4ed6ba3cdf5960f88f4" - integrity sha512-fCJd2ZR7D22XhDY0l+92pUag/7je2BztPRQ01gU5bMChcyI0rlly7QFibnYHzcxDvccMjlpM/Q1ev8ceRIb48w== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@smithy/querystring-builder@^3.0.11", "@smithy/querystring-builder@^3.0.3", "@smithy/querystring-builder@^3.0.7": +"@smithy/querystring-builder@^3.0.11", "@smithy/querystring-builder@^3.0.7": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.11.tgz#2ed04adbe725671824c5613d0d6f9376d791a909" integrity sha512-u+5HV/9uJaeLj5XTb6+IEF/dokWWkEqJ0XiaRRogyREmKGUgZnNecLucADLdauWFKUNbQfulHFEZEdjwEBjXRg== @@ -4762,15 +2977,6 @@ "@smithy/util-uri-escape" "^3.0.0" tslib "^2.6.2" -"@smithy/querystring-builder@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.5.tgz#158ae170f8ec2d8af6b84cdaf774205a7dfacf68" - integrity sha512-NJeSCU57piZ56c+/wY+AbAw6rxCCAOZLCIniRE7wqvndqxcKKDOXzwWjrY7wGKEISfhL9gBbAaWWgHsUGedk+A== - dependencies: - "@smithy/types" "^4.3.2" - "@smithy/util-uri-escape" "^4.0.0" - tslib "^2.6.2" - "@smithy/querystring-parser@^3.0.11": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.11.tgz#9d3177ea19ce8462f18d9712b395239e1ca1f969" @@ -4779,14 +2985,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/querystring-parser@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.5.tgz#95706e56aa769f09dc8922d1b19ffaa06946e252" - integrity sha512-6SV7md2CzNG/WUeTjVe6Dj8noH32r4MnUeFKZrnVYsQxpGSIcphAanQMayi8jJLZAWm6pdM9ZXvKCpWOsIGg0w== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/service-error-classification@^3.0.11": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.11.tgz#d3d7fc0aacd2e60d022507367e55c7939e5bcb8a" @@ -4794,13 +2992,6 @@ dependencies: "@smithy/types" "^3.7.2" -"@smithy/service-error-classification@^4.0.7": - version "4.0.7" - resolved "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.7.tgz#24072198a8c110d29677762162a5096e29eb4862" - integrity sha512-XvRHOipqpwNhEjDf2L5gJowZEm5nsxC16pAZOeEcsygdjv9A2jdOh3YoDQvOXBGTsaJk6mNWtzWalOB9976Wlg== - dependencies: - "@smithy/types" "^4.3.2" - "@smithy/shared-ini-file-loader@^3.1.12", "@smithy/shared-ini-file-loader@^3.1.4": version "3.1.12" resolved "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.12.tgz#d98b1b663eb18935ce2cbc79024631d34f54042a" @@ -4809,14 +3000,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/shared-ini-file-loader@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.5.tgz#8d8a493276cd82a7229c755bef8d375256c5ebb9" - integrity sha512-YVVwehRDuehgoXdEL4r1tAAzdaDgaC9EQvhK0lEbfnbrd0bd5+CTQumbdPryX3J2shT7ZqQE+jPW4lmNBAB8JQ== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/signature-v4@^4.1.0": version "4.2.4" resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.4.tgz#3501d3d09fd82768867bfc00a7be4bad62f62f4d" @@ -4831,20 +3014,6 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/signature-v4@^5.1.3": - version "5.1.3" - resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.1.3.tgz#92a4f6e9ce66730eeb0d996cd0478c5cbaf5b3f5" - integrity sha512-mARDSXSEgllNzMw6N+mC+r1AQlEBO3meEAkR/UlfAgnMzJUB3goRBWgip1EAMG99wh36MDqzo86SfIX5Y+VEaw== - dependencies: - "@smithy/is-array-buffer" "^4.0.0" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - "@smithy/util-hex-encoding" "^4.0.0" - "@smithy/util-middleware" "^4.0.5" - "@smithy/util-uri-escape" "^4.0.0" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - "@smithy/smithy-client@^3.1.12", "@smithy/smithy-client@^3.7.0": version "3.7.0" resolved "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.7.0.tgz#8cfaa7b68b7af15e588b96aa14e5dce393f85839" @@ -4858,20 +3027,7 @@ "@smithy/util-stream" "^3.3.4" tslib "^2.6.2" -"@smithy/smithy-client@^4.4.10": - version "4.4.10" - resolved "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.4.10.tgz#c4b49c1d1ff9eb813f88f1e425a5dfac25a03180" - integrity sha512-iW6HjXqN0oPtRS0NK/zzZ4zZeGESIFcxj2FkWed3mcK8jdSdHzvnCKXSjvewESKAgGKAbJRA+OsaqKhkdYRbQQ== - dependencies: - "@smithy/core" "^3.8.0" - "@smithy/middleware-endpoint" "^4.1.18" - "@smithy/middleware-stack" "^4.0.5" - "@smithy/protocol-http" "^5.1.3" - "@smithy/types" "^4.3.2" - "@smithy/util-stream" "^4.2.4" - tslib "^2.6.2" - -"@smithy/types@3.5.0", "@smithy/types@3.7.2", "@smithy/types@^3.3.0", "@smithy/types@^3.5.0", "@smithy/types@^3.7.2", "@smithy/types@^4.3.2": +"@smithy/types@3.5.0", "@smithy/types@^3.3.0", "@smithy/types@^3.5.0", "@smithy/types@^3.7.2", "@smithy/types@^4.3.2": version "3.5.0" resolved "https://registry.npmjs.org/@smithy/types/-/types-3.5.0.tgz#9589e154c50d9c5d00feb7d818112ef8fc285d6e" integrity sha512-QN0twHNfe8mNJdH9unwsCK13GURU7oEAZqkBI+rsvpv1jrmserO+WnLE7jidR9W/1dxwZ0u/CB01mV2Gms/K2Q== @@ -4887,15 +3043,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/url-parser@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.5.tgz#1824a9c108b85322c5a31f345f608d47d06f073a" - integrity sha512-j+733Um7f1/DXjYhCbvNXABV53NyCRRA54C7bNEIxNPs0YjfRxeMKjjgm2jvTYrciZyCjsicHwQ6Q0ylo+NAUw== - dependencies: - "@smithy/querystring-parser" "^4.0.5" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/util-base64@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz#f7a9a82adf34e27a72d0719395713edf0e493017" @@ -4905,15 +3052,6 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/util-base64@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.0.0.tgz#8345f1b837e5f636e5f8470c4d1706ae0c6d0358" - integrity sha512-CvHfCmO2mchox9kjrtzoHkWHxjHZzaFojLc8quxXY7WAAMAg43nuxwv95tATVgQFNDwd4M9S1qFzj40Ul41Kmg== - dependencies: - "@smithy/util-buffer-from" "^4.0.0" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - "@smithy/util-body-length-browser@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz#86ec2f6256310b4845a2f064e2f571c1ca164ded" @@ -4921,13 +3059,6 @@ dependencies: tslib "^2.6.2" -"@smithy/util-body-length-browser@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.0.0.tgz#965d19109a4b1e5fe7a43f813522cce718036ded" - integrity sha512-sNi3DL0/k64/LO3A256M+m3CDdG6V7WKWHdAiBBMUN8S3hK3aMPhwnPik2A/a2ONN+9doY9UxaLfgqsIRg69QA== - dependencies: - tslib "^2.6.2" - "@smithy/util-body-length-node@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz#99a291bae40d8932166907fe981d6a1f54298a6d" @@ -4935,13 +3066,6 @@ dependencies: tslib "^2.6.2" -"@smithy/util-body-length-node@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.0.0.tgz#3db245f6844a9b1e218e30c93305bfe2ffa473b3" - integrity sha512-q0iDP3VsZzqJyje8xJWEJCNIu3lktUGVoSy1KB0UWym2CL1siV3artm+u1DFYTLejpsrdGyCSWBdGNjJzfDPjg== - dependencies: - tslib "^2.6.2" - "@smithy/util-buffer-from@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz#6fc88585165ec73f8681d426d96de5d402021e4b" @@ -4958,14 +3082,6 @@ "@smithy/is-array-buffer" "^3.0.0" tslib "^2.6.2" -"@smithy/util-buffer-from@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-4.0.0.tgz#b23b7deb4f3923e84ef50c8b2c5863d0dbf6c0b9" - integrity sha512-9TOQ7781sZvddgO8nxueKi3+yGvkY35kotA0Y6BWRajAv8jjmigQ1sBwz0UX47pQMYXJPahSKEKYFgt+rXdcug== - dependencies: - "@smithy/is-array-buffer" "^4.0.0" - tslib "^2.6.2" - "@smithy/util-config-provider@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz#62c6b73b22a430e84888a8f8da4b6029dd5b8efe" @@ -4973,13 +3089,6 @@ dependencies: tslib "^2.6.2" -"@smithy/util-config-provider@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.0.0.tgz#e0c7c8124c7fba0b696f78f0bd0ccb060997d45e" - integrity sha512-L1RBVzLyfE8OXH+1hsJ8p+acNUSirQnWQ6/EgpchV88G6zGBTDPdXiiExei6Z1wR2RxYvxY/XLw6AMNCCt8H3w== - dependencies: - tslib "^2.6.2" - "@smithy/util-defaults-mode-browser@^3.0.14": version "3.0.34" resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.34.tgz#885312529599cf24b09335cb20439c838e452f9f" @@ -4991,17 +3100,6 @@ bowser "^2.11.0" tslib "^2.6.2" -"@smithy/util-defaults-mode-browser@^4.0.26": - version "4.0.26" - resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.26.tgz#fc04cd466bbb0d80e41930af8d6a8c33c48490f2" - integrity sha512-xgl75aHIS/3rrGp7iTxQAOELYeyiwBu+eEgAk4xfKwJJ0L8VUjhO2shsDpeil54BOFsqmk5xfdesiewbUY5tKQ== - dependencies: - "@smithy/property-provider" "^4.0.5" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - bowser "^2.11.0" - tslib "^2.6.2" - "@smithy/util-defaults-mode-node@^3.0.14": version "3.0.34" resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.34.tgz#5eb0d97231a34e137980abfb08ea5e3a8f2156f7" @@ -5015,19 +3113,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/util-defaults-mode-node@^4.0.26": - version "4.0.26" - resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.26.tgz#adfee8c54301ec4cbabed58cd604995a81b4a8dc" - integrity sha512-z81yyIkGiLLYVDetKTUeCZQ8x20EEzvQjrqJtb/mXnevLq2+w3XCEWTJ2pMp401b6BkEkHVfXb/cROBpVauLMQ== - dependencies: - "@smithy/config-resolver" "^4.1.5" - "@smithy/credential-provider-imds" "^4.0.7" - "@smithy/node-config-provider" "^4.1.4" - "@smithy/property-provider" "^4.0.5" - "@smithy/smithy-client" "^4.4.10" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/util-endpoints@^2.0.5": version "2.1.7" resolved "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.7.tgz#a088ebfab946a7219dd4763bfced82709894b82d" @@ -5037,15 +3122,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/util-endpoints@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.7.tgz#9d52f2e7e7a1ea4814ae284270a5f1d3930b3773" - integrity sha512-klGBP+RpBp6V5JbrY2C/VKnHXn3d5V2YrifZbmMY8os7M6m8wdYFoO6w/fe5VkP+YVwrEktW3IWYaSQVNZJ8oQ== - dependencies: - "@smithy/node-config-provider" "^4.1.4" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/util-hex-encoding@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz#32938b33d5bf2a15796cd3f178a55b4155c535e6" @@ -5053,13 +3129,6 @@ dependencies: tslib "^2.6.2" -"@smithy/util-hex-encoding@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-4.0.0.tgz#dd449a6452cffb37c5b1807ec2525bb4be551e8d" - integrity sha512-Yk5mLhHtfIgW2W2WQZWSg5kuMZCVbvhFmC7rV4IO2QqnZdbEFPmQnCcGMAX2z/8Qj3B9hYYNjZOhWym+RwhePw== - dependencies: - tslib "^2.6.2" - "@smithy/util-middleware@^3.0.11", "@smithy/util-middleware@^3.0.3": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.11.tgz#2ab5c17266b42c225e62befcffb048afa682b5bf" @@ -5068,14 +3137,6 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/util-middleware@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.5.tgz#405caf2a66e175ce8ca6c747fa1245b3f5386879" - integrity sha512-N40PfqsZHRSsByGB81HhSo+uvMxEHT+9e255S53pfBw/wI6WKDI7Jw9oyu5tJTLwZzV5DsMha3ji8jk9dsHmQQ== - dependencies: - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - "@smithy/util-retry@^3.0.11", "@smithy/util-retry@^3.0.3": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.11.tgz#d267e5ccb290165cee69732547fea17b695a7425" @@ -5085,16 +3146,7 @@ "@smithy/types" "^3.7.2" tslib "^2.6.2" -"@smithy/util-retry@^4.0.7": - version "4.0.7" - resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.7.tgz#3169450193e917da170a87557fcbdfe0faa86779" - integrity sha512-TTO6rt0ppK70alZpkjwy+3nQlTiqNfoXja+qwuAchIEAIoSZW8Qyd76dvBv3I5bCpE38APafG23Y/u270NspiQ== - dependencies: - "@smithy/service-error-classification" "^4.0.7" - "@smithy/types" "^4.3.2" - tslib "^2.6.2" - -"@smithy/util-stream@3.3.4", "@smithy/util-stream@^3.1.3", "@smithy/util-stream@^3.3.4": +"@smithy/util-stream@^3.1.3", "@smithy/util-stream@^3.3.4": version "3.3.4" resolved "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.3.4.tgz#c506ac41310ebcceb0c3f0ba20755e4fe0a90b8d" integrity sha512-SGhGBG/KupieJvJSZp/rfHHka8BFgj56eek9px4pp7lZbOF+fRiVr4U7A3y3zJD8uGhxq32C5D96HxsTC9BckQ== @@ -5108,20 +3160,6 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/util-stream@^4.2.4": - version "4.2.4" - resolved "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.4.tgz#fa9f0e2fd5a8a5adbd013066b475ea8f9d4f900f" - integrity sha512-vSKnvNZX2BXzl0U2RgCLOwWaAP9x/ddd/XobPK02pCbzRm5s55M53uwb1rl/Ts7RXZvdJZerPkA+en2FDghLuQ== - dependencies: - "@smithy/fetch-http-handler" "^5.1.1" - "@smithy/node-http-handler" "^4.1.1" - "@smithy/types" "^4.3.2" - "@smithy/util-base64" "^4.0.0" - "@smithy/util-buffer-from" "^4.0.0" - "@smithy/util-hex-encoding" "^4.0.0" - "@smithy/util-utf8" "^4.0.0" - tslib "^2.6.2" - "@smithy/util-uri-escape@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz#e43358a78bf45d50bb736770077f0f09195b6f54" @@ -5129,13 +3167,6 @@ dependencies: tslib "^2.6.2" -"@smithy/util-uri-escape@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-4.0.0.tgz#a96c160c76f3552458a44d8081fade519d214737" - integrity sha512-77yfbCbQMtgtTylO9itEAdpPXSog3ZxMe09AEhm0dU0NLTalV70ghDZFR+Nfi1C60jnJoh/Re4090/DuZh2Omg== - dependencies: - tslib "^2.6.2" - "@smithy/util-utf8@^2.0.0": version "2.3.0" resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz#dd96d7640363259924a214313c3cf16e7dd329c5" @@ -5152,14 +3183,6 @@ "@smithy/util-buffer-from" "^3.0.0" tslib "^2.6.2" -"@smithy/util-utf8@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.0.0.tgz#09ca2d9965e5849e72e347c130f2a29d5c0c863c" - integrity sha512-b+zebfKCfRdgNJDknHCob3O7FpeYQN6ZG6YLExMcasDHsCXlsXCEuiPZeLnJLpwa5dvPetGlnGCiMHuLwGvFow== - dependencies: - "@smithy/util-buffer-from" "^4.0.0" - tslib "^2.6.2" - "@smithy/util-waiter@^3.1.2": version "3.2.0" resolved "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.2.0.tgz#1e52f870e77d2e5572025f7606053e6ff00df93d" @@ -5234,11 +3257,6 @@ dependencies: tslib "^2.4.0" -"@types/aws-lambda@^8.10.152": - version "8.10.152" - resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.152.tgz#f68424a8175f0a54a2a941e65b76c3f51f3bd89d" - integrity sha512-soT/c2gYBnT5ygwiHPmd9a1bftj462NWVk2tKCc1PYHSIacB2UwbTS2zYG4jzag1mRDuzg/OjtxQjQ2NKRB6Rw== - "@types/babel__core@^7.1.14": version "7.20.5" resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" @@ -5272,25 +3290,6 @@ dependencies: "@babel/types" "^7.3.0" -"@types/chai@^5.2.2": - version "5.2.2" - resolved "https://registry.npmjs.org/@types/chai/-/chai-5.2.2.tgz#6f14cea18180ffc4416bc0fd12be05fdd73bdd6b" - integrity sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg== - dependencies: - "@types/deep-eql" "*" - -"@types/changelog-parser@^2.8.4": - version "2.8.4" - resolved "https://registry.npmjs.org/@types/changelog-parser/-/changelog-parser-2.8.4.tgz#45d70417e742ac3bc6bef3786aa453e1f1d63ecc" - integrity sha512-lCjy5pdZr+PmGMUSnn/z1BPWb3ADiGXjwbKdLa6EnvZ+dY6815Ak65VWstOIq/x3mqEwdvmv+/2ExRElEEcXMw== - -"@types/conventional-commits-parser@3.0.2": - version "3.0.2" - resolved "https://registry.npmjs.org/@types/conventional-commits-parser/-/conventional-commits-parser-3.0.2.tgz#144b208c7344838bb045860fe1ddd10d4ae68f7c" - integrity sha512-1kVPUHFaart1iGRFxKn8WNXYEDVAgMb+DLatgql2dGg9jTGf3bNxWtN//C/tDG3ckOLg4u7SSx+qcn8VjzI5zg== - dependencies: - "@types/node" "*" - "@types/debug@^4.0.0": version "4.1.12" resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" @@ -5298,31 +3297,11 @@ dependencies: "@types/ms" "*" -"@types/deep-eql@*": - version "4.0.2" - resolved "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz#334311971d3a07121e7eb91b684a605e7eea9cbd" - integrity sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw== - "@types/estree@^1.0.6": version "1.0.8" resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== -"@types/fs-extra@^9.0.13": - version "9.0.13" - resolved "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45" - integrity sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA== - dependencies: - "@types/node" "*" - -"@types/glob@^7.2.0": - version "7.2.0" - resolved "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" - integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== - dependencies: - "@types/minimatch" "*" - "@types/node" "*" - "@types/graceful-fs@^4.1.3": version "4.1.9" resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" @@ -5330,7 +3309,7 @@ dependencies: "@types/node" "*" -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1", "@types/istanbul-lib-coverage@^2.0.6": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.6" resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== @@ -5342,26 +3321,13 @@ dependencies: "@types/istanbul-lib-coverage" "*" -"@types/istanbul-reports@^3.0.0", "@types/istanbul-reports@^3.0.4": +"@types/istanbul-reports@^3.0.0": version "3.0.4" resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^29.5.14": - version "29.5.14" - resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz#2b910912fa1d6856cadcd0c1f95af7df1d6049e5" - integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ== - dependencies: - expect "^29.0.0" - pretty-format "^29.0.0" - -"@types/json-schema@^7.0.9": - version "7.0.15" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== - "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -5372,17 +3338,7 @@ resolved "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz#03ab680ab4fa4fbc6cb46ecf987ecad5d8019868" integrity sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ== -"@types/lodash@^4.17.20": - version "4.17.20" - resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz#1ca77361d7363432d29f5e55950d9ec1e1c6ea93" - integrity sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA== - -"@types/mime-types@^2.1.4": - version "2.1.4" - resolved "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz#93a1933e24fed4fb9e4adc5963a63efcbb3317a2" - integrity sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w== - -"@types/minimatch@*", "@types/minimatch@^3.0.3", "@types/minimatch@^5.1.2": +"@types/minimatch@^3.0.3", "@types/minimatch@^5.1.2": version "5.1.2" resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== @@ -5392,26 +3348,11 @@ resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e" integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== -"@types/mock-fs@^4.13.4": - version "4.13.4" - resolved "https://registry.npmjs.org/@types/mock-fs/-/mock-fs-4.13.4.tgz#e73edb4b4889d44d23f1ea02d6eebe50aa30b09a" - integrity sha512-mXmM0o6lULPI8z3XNnQCpL0BGxPwx1Ul1wXYEPBGl4efShyxW2Rln0JOPEWGyZaYZMM6OVXM/15zUuFMY52ljg== - dependencies: - "@types/node" "*" - "@types/ms@*": version "2.1.0" resolved "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz#052aa67a48eccc4309d7f0191b7e41434b90bb78" integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== -"@types/node-fetch@^2.6.13": - version "2.6.13" - resolved "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.13.tgz#e0c9b7b5edbdb1b50ce32c127e85e880872d56ee" - integrity sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw== - dependencies: - "@types/node" "*" - form-data "^4.0.4" - "@types/node@*": version "24.3.0" resolved "https://registry.npmjs.org/@types/node/-/node-24.3.0.tgz#89b09f45cb9a8ee69466f18ee5864e4c3eb84dec" @@ -5426,18 +3367,6 @@ dependencies: undici-types "~5.26.4" -"@types/node@^16": - version "16.18.126" - resolved "https://registry.npmjs.org/@types/node/-/node-16.18.126.tgz#27875faa2926c0f475b39a8bb1e546c0176f8d4b" - integrity sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw== - -"@types/node@^18", "@types/node@^18.11.9": - version "18.19.123" - resolved "https://registry.npmjs.org/@types/node/-/node-18.19.123.tgz#08a3e4f5e0c73b8840c677b7635ce59d5dc1f76d" - integrity sha512-K7DIaHnh0mzVxreCR9qwgNxp3MH9dltPNIEddW9MYUlcKAzm+3grKNSTe2vCJHI1FaLpvpL5JGJrz1UZDKYvDg== - dependencies: - undici-types "~5.26.4" - "@types/normalize-package-data@^2.4.0": version "2.4.4" resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" @@ -5453,29 +3382,7 @@ resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.0.tgz#efcbd41937f9ae7434c714ab698604822d890759" integrity sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw== -"@types/punycode@^2.1.4": - version "2.1.4" - resolved "https://registry.npmjs.org/@types/punycode/-/punycode-2.1.4.tgz#96f8a47f1ee9fb0d0def5557fe80fac532f966fa" - integrity sha512-trzh6NzBnq8yw5e35f8xe8VTYjqM3NE7bohBtvDVf/dtUer3zYTLK1Ka3DG3p7bdtoaOHZucma6FfVKlQ134pQ== - -"@types/semver@^7.7.0": - version "7.7.0" - resolved "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz#64c441bdae033b378b6eef7d0c3d77c329b9378e" - integrity sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA== - -"@types/sinon@^17.0.3": - version "17.0.4" - resolved "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.4.tgz#fd9a3e8e07eea1a3f4a6f82a972c899e5778f369" - integrity sha512-RHnIrhfPO3+tJT0s7cFaXGZvsL4bbR3/k7z3P312qMS4JaS2Tk+KiwiLx1S0rQ56ERj00u1/BtdyVd0FY+Pdew== - dependencies: - "@types/sinonjs__fake-timers" "*" - -"@types/sinonjs__fake-timers@*": - version "8.1.5" - resolved "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz#5fd3592ff10c1e9695d377020c033116cc2889f2" - integrity sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ== - -"@types/stack-utils@^2.0.0", "@types/stack-utils@^2.0.3": +"@types/stack-utils@^2.0.0": version "2.0.3" resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== @@ -5490,24 +3397,12 @@ resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4" integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA== -"@types/uuid@^9.0.1": - version "9.0.8" - resolved "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba" - integrity sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA== - "@types/yargs-parser@*": version "21.0.3" resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== -"@types/yargs@^15.0.19": - version "15.0.19" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.19.tgz#328fb89e46109ecbdb70c295d96ff2f46dfd01b9" - integrity sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA== - dependencies: - "@types/yargs-parser" "*" - -"@types/yargs@^17.0.33", "@types/yargs@^17.0.8": +"@types/yargs@^17.0.8": version "17.0.33" resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== @@ -5573,11 +3468,6 @@ debug "^4.3.4" ts-api-utils "^2.1.0" -"@typescript-eslint/types@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" - integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== - "@typescript-eslint/types@8.42.0", "@typescript-eslint/types@^8.11.0", "@typescript-eslint/types@^8.42.0": version "8.42.0" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz#ae15c09cebda20473772902033328e87372db008" @@ -5599,19 +3489,6 @@ semver "^7.6.0" ts-api-utils "^2.1.0" -"@typescript-eslint/typescript-estree@^4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" - integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== - dependencies: - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/visitor-keys" "4.33.0" - debug "^4.3.1" - globby "^11.0.3" - is-glob "^4.0.1" - semver "^7.3.5" - tsutils "^3.21.0" - "@typescript-eslint/utils@8.42.0", "@typescript-eslint/utils@^6.0.0 || ^7.0.0 || ^8.0.0", "@typescript-eslint/utils@^8.13.0": version "8.42.0" resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.42.0.tgz#95f8e0c697ff2f7da5f72e16135011f878d815c0" @@ -5622,14 +3499,6 @@ "@typescript-eslint/types" "8.42.0" "@typescript-eslint/typescript-estree" "8.42.0" -"@typescript-eslint/visitor-keys@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" - integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== - dependencies: - "@typescript-eslint/types" "4.33.0" - eslint-visitor-keys "^2.0.0" - "@typescript-eslint/visitor-keys@8.42.0": version "8.42.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz#87c6caaa1ac307bc73a87c1fc469f88f0162f27e" @@ -5643,40 +3512,6 @@ resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== -"@vitest/expect@>1.6.0": - version "3.2.4" - resolved "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz#8362124cd811a5ee11c5768207b9df53d34f2433" - integrity sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig== - dependencies: - "@types/chai" "^5.2.2" - "@vitest/spy" "3.2.4" - "@vitest/utils" "3.2.4" - chai "^5.2.0" - tinyrainbow "^2.0.0" - -"@vitest/pretty-format@3.2.4": - version "3.2.4" - resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.4.tgz#3c102f79e82b204a26c7a5921bf47d534919d3b4" - integrity sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA== - dependencies: - tinyrainbow "^2.0.0" - -"@vitest/spy@3.2.4": - version "3.2.4" - resolved "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.4.tgz#cc18f26f40f3f028da6620046881f4e4518c2599" - integrity sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw== - dependencies: - tinyspy "^4.0.3" - -"@vitest/utils@3.2.4": - version "3.2.4" - resolved "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.4.tgz#c0813bc42d99527fb8c5b138c7a88516bca46fea" - integrity sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA== - dependencies: - "@vitest/pretty-format" "3.2.4" - loupe "^3.1.4" - tinyrainbow "^2.0.0" - "@xmldom/xmldom@^0.9.8": version "0.9.8" resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz#1471e82bdff9e8f20ee8bbe60d4ffa8a516e78d8" @@ -5811,7 +3646,7 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" -ansi-styles@^5.0.0, ansi-styles@^5.2.0: +ansi-styles@^5.0.0: version "5.2.0" resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== @@ -5829,16 +3664,6 @@ anymatch@^3.0.3: normalize-path "^3.0.0" picomatch "^2.0.4" -app-module-path@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz#641aa55dfb7d6a6f0a8141c4b9c0aa50b6c24dd5" - integrity sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ== - -app-root-path@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/app-root-path/-/app-root-path-3.1.0.tgz#5971a2fc12ba170369a7a1ef018c71e6e47c2e86" - integrity sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA== - append-transform@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz#99d9d29c7b38391e6f428d28ce136551f0b77e12" @@ -5984,21 +3809,6 @@ arrify@^2.0.1: resolved "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== -assertion-error@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz#f641a196b335690b1070bf00b6e7593fec190bf7" - integrity sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA== - -ast-module-types@^2.7.1: - version "2.7.1" - resolved "https://registry.npmjs.org/ast-module-types/-/ast-module-types-2.7.1.tgz#3f7989ef8dfa1fdb82dfe0ab02bdfc7c77a57dd3" - integrity sha512-Rnnx/4Dus6fn7fTqdeLEAn5vUll5w7/vts0RN608yFa6si/rDOUonlIIiwugHBFWjylHjxm9owoSZn71KwG4gw== - -ast-module-types@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/ast-module-types/-/ast-module-types-3.0.0.tgz#9a6d8a80f438b6b8fe4995699d700297f398bf81" - integrity sha512-CMxMCOCS+4D+DkOQfuZf+vLrSEmY/7xtORwdxs4wtcC1wVgvk2MqFFTwQCFhvWsI4KPU9lcWXPI8DgRiz+xetQ== - ast-types@^0.13.4: version "0.13.4" resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" @@ -6045,31 +3855,6 @@ available-typed-arrays@^1.0.7: dependencies: possible-typed-array-names "^1.0.0" -aws-cdk@2.1027.0: - version "2.1027.0" - resolved "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.1027.0.tgz#a55c61dbad53aec99fbe00f1c3cc82cb3e889235" - integrity sha512-oo2d1o8L1GBmAG4cDzIloEBOkijf1VzpZKJJguAodUCffDDOaAd6zjEbQbedb3SY+Vg+8m9OUOEXzeLMMg3GPQ== - optionalDependencies: - fsevents "2.3.2" - -aws-sdk-client-mock-jest@4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/aws-sdk-client-mock-jest/-/aws-sdk-client-mock-jest-4.1.0.tgz#40a3bdedd8d551cf2a836b77239038c0ca10e25c" - integrity sha512-+g4a5Hp+MmPqqNnvwfLitByggrqf+xSbk1pm6fBYHNcon6+aQjL5iB+3YB6HuGPemY+/mUKN34iP62S14R61bA== - dependencies: - "@vitest/expect" ">1.6.0" - expect ">28.1.3" - tslib "^2.1.0" - -aws-sdk-client-mock@4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/aws-sdk-client-mock/-/aws-sdk-client-mock-4.1.0.tgz#ae1950b2277f8e65f9a039975d79ff9fffab39e3" - integrity sha512-h/tOYTkXEsAcV3//6C1/7U4ifSpKyJvb6auveAepqqNJl6TdZaPFEtKjBQNf8UxQdDP850knB2i/whq4zlsxJw== - dependencies: - "@types/sinon" "^17.0.3" - sinon "^18.0.1" - tslib "^2.1.0" - aws-sdk-js-codemod@^2.4.5: version "2.4.5" resolved "https://registry.npmjs.org/aws-sdk-js-codemod/-/aws-sdk-js-codemod-2.4.5.tgz#71271cde935898dec4edfc9912ed1ad6b0e023e7" @@ -6077,27 +3862,6 @@ aws-sdk-js-codemod@^2.4.5: dependencies: jscodeshift "17.1.1" -aws-sdk@^2.1692.0: - version "2.1692.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1692.0.tgz#9dac5f7bfcc5ab45825cc8591b12753aa7d2902c" - integrity sha512-x511uiJ/57FIsbgUe5csJ13k3uzu25uWQE+XqfBis/sB0SFoiElJWXRkgEAUh0U6n40eT3ay5Ue4oPkRMu1LYw== - dependencies: - buffer "4.9.2" - events "1.1.1" - ieee754 "1.1.13" - jmespath "0.16.0" - querystring "0.2.0" - sax "1.2.1" - url "0.10.3" - util "^0.12.4" - uuid "8.0.0" - xml2js "0.6.2" - -aws4fetch@^1.0.20: - version "1.0.20" - resolved "https://registry.npmjs.org/aws4fetch/-/aws4fetch-1.0.20.tgz#090d6c65e32c6df645dd5e5acf04cc56da575cbe" - integrity sha512-/djoAN709iY65ETD6LKCtyyEI04XIBP5xVvfmNxsEP0uJB5tyaGBztSryRr4HqMStr9R06PisQE7m9zDTXKu6g== - axios@^0.27.2: version "0.27.2" resolved "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972" @@ -6106,15 +3870,6 @@ axios@^0.27.2: follow-redirects "^1.14.9" form-data "^4.0.0" -axios@^1.12.0: - version "1.12.2" - resolved "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz#6c307390136cf7a2278d09cec63b136dfc6e6da7" - integrity sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw== - dependencies: - follow-redirects "^1.15.6" - form-data "^4.0.4" - proxy-from-env "^1.1.0" - axios@^1.8.3: version "1.11.0" resolved "https://registry.npmjs.org/axios/-/axios-1.11.0.tgz#c2ec219e35e414c025b2095e8b8280278478fdb6" @@ -6217,7 +3972,7 @@ balanced-match@^1.0.0: resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.0.2, base64-js@^1.3.1: +base64-js@^1.3.1: version "1.5.1" resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== @@ -6251,11 +4006,6 @@ bl@^4.0.3, bl@^4.1.0: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.5.0: - version "3.7.2" - resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - bowser@^2.11.0: version "2.12.1" resolved "https://registry.npmjs.org/bowser/-/bowser-2.12.1.tgz#f9ad78d7aebc472feb63dd9635e3ce2337e0e2c1" @@ -6312,15 +4062,6 @@ buffer-from@^1.0.0: resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer@4.9.2: - version "4.9.2" - resolved "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - buffer@^5.5.0: version "5.7.1" resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" @@ -6476,17 +4217,6 @@ cdk8s@2.70.11: follow-redirects "^1.15.11" yaml "2.8.1" -chai@^5.2.0: - version "5.3.3" - resolved "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz#dd3da955e270916a4bd3f625f4b919996ada7e06" - integrity sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw== - dependencies: - assertion-error "^2.0.1" - check-error "^2.1.1" - deep-eql "^5.0.1" - loupe "^3.1.0" - pathval "^2.0.0" - chalk@4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" @@ -6563,11 +4293,6 @@ chardet@^2.1.0: resolved "https://registry.npmjs.org/chardet/-/chardet-2.1.0.tgz#1007f441a1ae9f9199a4a67f6e978fb0aa9aa3fe" integrity sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA== -check-error@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc" - integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw== - chownr@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" @@ -6578,12 +4303,12 @@ ci-info@^3.2.0: resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -ci-info@^4.0.0, ci-info@^4.2.0: +ci-info@^4.0.0: version "4.3.0" resolved "https://registry.npmjs.org/ci-info/-/ci-info-4.3.0.tgz#c39b1013f8fdbd28cd78e62318357d02da160cd7" integrity sha512-l+2bNRMiQgcfILUi33labAZYIWlH1kWDp+ecNo5iisRKrbm0xcRyCww71/YU0Fkw0mAFpz9bJayXPjey6vkmaQ== -cjs-module-lexer@^1.0.0, cjs-module-lexer@^1.4.3: +cjs-module-lexer@^1.0.0: version "1.4.3" resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz#0f79731eb8cfe1ec72acd4066efac9d61991b00d" integrity sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q== @@ -6709,7 +4434,7 @@ color-name@1.1.3: resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: +color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== @@ -6768,16 +4493,6 @@ commander@^11.1.0: resolved "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz#62fdce76006a68e5c1ab3314dc92e800eb83d906" integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ== -commander@^2.16.0, commander@^2.20.3, commander@^2.8.1: - version "2.20.3" - resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - commander@^8.3.0: version "8.3.0" resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" @@ -7232,7 +4947,7 @@ dateformat@^3.0.0, dateformat@^3.0.3: resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.4.1: +debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.4.1: version "4.4.1" resolved "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== @@ -7286,11 +5001,6 @@ dedent@^1.0.0: resolved "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz#79d52d6389b1ffa67d2bcef59ba51847a9d503b2" integrity sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA== -deep-eql@^5.0.1: - version "5.0.2" - resolved "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341" - integrity sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q== - deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -7366,11 +5076,6 @@ del@^6.1.1: rimraf "^3.0.2" slash "^3.0.0" -delay@5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" - integrity sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw== - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -7381,17 +5086,6 @@ delegates@^1.0.0: resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -dependency-tree@^8.1.1: - version "8.1.2" - resolved "https://registry.npmjs.org/dependency-tree/-/dependency-tree-8.1.2.tgz#c9e652984f53bd0239bc8a3e50cbd52f05b2e770" - integrity sha512-c4CL1IKxkKng0oT5xrg4uNiiMVFqTGOXqHSFx7XEFdgSsp6nw3AGGruICppzJUrfad/r7GLqt26rmWU4h4j39A== - dependencies: - commander "^2.20.3" - debug "^4.3.1" - filing-cabinet "^3.0.1" - precinct "^8.0.0" - typescript "^3.9.7" - deprecation@^2.0.0, deprecation@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" @@ -7407,104 +5101,20 @@ detect-indent@^5.0.0: resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" integrity sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g== -detect-indent@^6.0.0, detect-indent@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" - integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg== - -detect-newline@^3.0.0, detect-newline@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -detective-amd@^3.1.0: - version "3.1.2" - resolved "https://registry.npmjs.org/detective-amd/-/detective-amd-3.1.2.tgz#bf55eb5291c218b76d6224a3d07932ef13a9a357" - integrity sha512-jffU26dyqJ37JHR/o44La6CxtrDf3Rt9tvd2IbImJYxWKTMdBjctp37qoZ6ZcY80RHg+kzWz4bXn39e4P7cctQ== - dependencies: - ast-module-types "^3.0.0" - escodegen "^2.0.0" - get-amd-module-type "^3.0.0" - node-source-walk "^4.2.0" - -detective-cjs@^3.1.1: - version "3.1.3" - resolved "https://registry.npmjs.org/detective-cjs/-/detective-cjs-3.1.3.tgz#50e107d67b37f459b0ec02966ceb7e20a73f268b" - integrity sha512-ljs7P0Yj9MK64B7G0eNl0ThWSYjhAaSYy+fQcpzaKalYl/UoQBOzOeLCSFEY1qEBhziZ3w7l46KG/nH+s+L7BQ== - dependencies: - ast-module-types "^3.0.0" - node-source-walk "^4.0.0" - -detective-es6@^2.2.0, detective-es6@^2.2.1: - version "2.2.2" - resolved "https://registry.npmjs.org/detective-es6/-/detective-es6-2.2.2.tgz#ee5f880981d9fecae9a694007029a2f6f26d8d28" - integrity sha512-eZUKCUsbHm8xoeoCM0z6JFwvDfJ5Ww5HANo+jPR7AzkFpW9Mun3t/TqIF2jjeWa2TFbAiGaWESykf2OQp3oeMw== - dependencies: - node-source-walk "^4.0.0" - -detective-less@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/detective-less/-/detective-less-1.0.2.tgz#a68af9ca5f69d74b7d0aa190218b211d83b4f7e3" - integrity sha512-Rps1xDkEEBSq3kLdsdnHZL1x2S4NGDcbrjmd4q+PykK5aJwDdP5MBgrJw1Xo+kyUHuv3JEzPqxr+Dj9ryeDRTA== - dependencies: - debug "^4.0.0" - gonzales-pe "^4.2.3" - node-source-walk "^4.0.0" - -detective-postcss@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/detective-postcss/-/detective-postcss-4.0.0.tgz#24e69b465e5fefe7a6afd05f7e894e34595dbf51" - integrity sha512-Fwc/g9VcrowODIAeKRWZfVA/EufxYL7XfuqJQFroBKGikKX83d2G7NFw6kDlSYGG3LNQIyVa+eWv1mqre+v4+A== - dependencies: - debug "^4.1.1" - is-url "^1.2.4" - postcss "^8.1.7" - postcss-values-parser "^2.0.1" - -detective-postcss@^5.0.0: - version "5.1.3" - resolved "https://registry.npmjs.org/detective-postcss/-/detective-postcss-5.1.3.tgz#773314cd017621b7d382be81331eb0c7abbe8cc3" - integrity sha512-Wo7PUpF6wqeT1aRgajdyIdDRjFFJVxlXPRAlT1aankH/RVOgrJuEZFZ4ABxYXdzaRPO5Lkg8rHxsxpLnxdJIYA== - dependencies: - is-url "^1.2.4" - postcss "^8.4.6" - postcss-values-parser "^5.0.0" - -detective-sass@^3.0.1: - version "3.0.2" - resolved "https://registry.npmjs.org/detective-sass/-/detective-sass-3.0.2.tgz#e0f35aac79a4d2f6409c284d95b8f7ecd5973afd" - integrity sha512-DNVYbaSlmti/eztFGSfBw4nZvwsTaVXEQ4NsT/uFckxhJrNRFUh24d76KzoCC3aarvpZP9m8sC2L1XbLej4F7g== - dependencies: - gonzales-pe "^4.3.0" - node-source-walk "^4.0.0" - -detective-scss@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/detective-scss/-/detective-scss-2.0.2.tgz#7d2a642616d44bf677963484fa8754d9558b8235" - integrity sha512-hDWnWh/l0tht/7JQltumpVea/inmkBaanJUcXRB9kEEXVwVUMuZd6z7eusQ6GcBFrfifu3pX/XPyD7StjbAiBg== - dependencies: - gonzales-pe "^4.3.0" - node-source-walk "^4.0.0" +detect-indent@^6.0.0, detect-indent@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== -detective-stylus@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/detective-stylus/-/detective-stylus-1.0.3.tgz#20a702936c9fd7d4203fd7a903314b5dd43ac713" - integrity sha512-4/bfIU5kqjwugymoxLXXLltzQNeQfxGoLm2eIaqtnkWxqbhap9puDVpJPVDx96hnptdERzS5Cy6p9N8/08A69Q== +detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + integrity sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg== -detective-typescript@^7.0.0: - version "7.0.2" - resolved "https://registry.npmjs.org/detective-typescript/-/detective-typescript-7.0.2.tgz#c6e00b4c28764741ef719662250e6b014a5f3c8e" - integrity sha512-unqovnhxzvkCz3m1/W4QW4qGsvXCU06aU2BAm8tkza+xLnp9SOFnob2QsTxUv5PdnQKfDvWcv9YeOeFckWejwA== - dependencies: - "@typescript-eslint/typescript-estree" "^4.33.0" - ast-module-types "^2.7.1" - node-source-walk "^4.2.0" - typescript "^3.9.10" +detect-newline@^3.0.0, detect-newline@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== devlop@^1.0.0: version "1.1.0" @@ -7518,16 +5128,11 @@ diff-sequences@^29.6.3: resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== -diff@^4.0.1, diff@^4.0.2: +diff@^4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== -diff@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" - integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -7578,21 +5183,11 @@ dotenv-expand@~11.0.6: dependencies: dotenv "^16.4.5" -dotenv-json@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/dotenv-json/-/dotenv-json-1.0.0.tgz#fc7f672aafea04bed33818733b9f94662332815c" - integrity sha512-jAssr+6r4nKhKRudQ0HOzMskOFFi9+ubXWwmrSGJFgTvpjyPXCXsCsYbjif6mXp7uxA7xY3/LGaiTQukZzSbOQ== - dotenv@^16.0.1, dotenv@^16.4.5: version "16.6.1" resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz#773f0e69527a8315c7285d5ee73c4459d20a8020" integrity sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow== -dotenv@^8.0.0: - version "8.6.0" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" - integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== - dotenv@~16.4.5: version "16.4.7" resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz#0e20c5b82950140aa99be360a8a5f52335f53c26" @@ -7656,14 +5251,6 @@ end-of-stream@^1.4.1: dependencies: once "^1.4.0" -enhanced-resolve@^5.8.3: - version "5.18.3" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz#9b5f4c5c076b8787c78fe540392ce76a88855b44" - integrity sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww== - dependencies: - graceful-fs "^4.2.4" - tapable "^2.2.0" - enquirer@~2.3.6: version "2.3.6" resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" @@ -7863,7 +5450,7 @@ escape-string-regexp@^4.0.0: resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.0.0, escodegen@^2.1.0: +escodegen@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== @@ -7957,11 +5544,6 @@ eslint-scope@^7.2.2: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: version "3.4.3" resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" @@ -8068,11 +5650,6 @@ eventemitter3@^4.0.4: resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== -events@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== - execa@5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" @@ -8108,19 +5685,7 @@ exit@^0.1.2: resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== -expect@>28.1.3: - version "30.1.2" - resolved "https://registry.npmjs.org/expect/-/expect-30.1.2.tgz#094909c2443f76b9e208fafac4a315aaaf924580" - integrity sha512-xvHszRavo28ejws8FpemjhwswGj4w/BetHIL8cU49u4sGyXDw2+p3YbeDbj6xzlxi6kWTjIRSTJ+9sNXPnF0Zg== - dependencies: - "@jest/expect-utils" "30.1.2" - "@jest/get-type" "30.1.0" - jest-matcher-utils "30.1.2" - jest-message-util "30.1.0" - jest-mock "30.0.5" - jest-util "30.0.5" - -expect@^29.0.0, expect@^29.7.0: +expect@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== @@ -8131,18 +5696,11 @@ expect@^29.0.0, expect@^29.7.0: jest-message-util "^29.7.0" jest-util "^29.7.0" -exponential-backoff@^3.1.1, exponential-backoff@^3.1.2: +exponential-backoff@^3.1.1: version "3.1.2" resolved "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz#a8f26adb96bf78e8cd8ad1037928d5e5c0679d91" integrity sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA== -fast-check@^3.23.2: - version "3.23.2" - resolved "https://registry.npmjs.org/fast-check/-/fast-check-3.23.2.tgz#0129f1eb7e4f500f58e8290edc83c670e4a574a2" - integrity sha512-h5+1OzzfCC3Ef7VbtKdcv7zsstUQwUDlYpUTvjeUsJAssPgLn7QzbboPtL5ro04Mq0rPOsMzl7q5hIbRs2wD1A== - dependencies: - pure-rand "^6.1.0" - fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -8186,13 +5744,6 @@ fast-xml-parser@4.4.1: dependencies: strnum "^1.0.5" -fast-xml-parser@5.2.5: - version "5.2.5" - resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz#4809fdfb1310494e341098c25cb1341a01a9144a" - integrity sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ== - dependencies: - strnum "^2.1.0" - fastq@^1.6.0: version "1.19.1" resolved "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" @@ -8243,25 +5794,6 @@ filelist@^1.0.4: dependencies: minimatch "^5.0.1" -filing-cabinet@^3.0.1: - version "3.3.1" - resolved "https://registry.npmjs.org/filing-cabinet/-/filing-cabinet-3.3.1.tgz#45d87bb273a0e0a7dd6ac6bac9111059186e2e9c" - integrity sha512-renEK4Hh6DUl9Vl22Y3cxBq1yh8oNvbAdXnhih0wVpmea+uyKjC9K4QeRjUaybIiIewdzfum+Fg15ZqJ/GyCaA== - dependencies: - app-module-path "^2.2.0" - commander "^2.20.3" - debug "^4.3.3" - enhanced-resolve "^5.8.3" - is-relative-path "^1.0.2" - module-definition "^3.3.1" - module-lookup-amd "^7.0.1" - resolve "^1.21.0" - resolve-dependency-path "^2.0.0" - sass-lookup "^3.0.0" - stylus-lookup "^3.0.1" - tsconfig-paths "^3.10.1" - typescript "^3.9.7" - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -8336,11 +5868,6 @@ flatted@^3.2.7, flatted@^3.2.9: resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== - flow-parser@0.*: version "0.280.0" resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.280.0.tgz#d19efc98528556597c2d184cf14b4e597c108f67" @@ -8472,11 +5999,6 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - fsevents@^2.3.2: version "2.3.3" resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -8523,14 +6045,6 @@ gensync@^1.0.0-beta.2: resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== -get-amd-module-type@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/get-amd-module-type/-/get-amd-module-type-3.0.2.tgz#46550cee2b8e1fa4c3f2c8a5753c36990aa49ab0" - integrity sha512-PcuKwB8ouJnKuAPn6Hk3UtdfKoUV3zXRqVEvj8XGIXqjWfgd1j7QGdXy5Z9OdQfzVt1Sk29HVe/P+X74ccOuqw== - dependencies: - ast-module-types "^3.0.0" - node-source-walk "^4.2.2" - get-caller-file@^2.0.1, get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -8552,11 +6066,6 @@ get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@ hasown "^2.0.2" math-intrinsics "^1.1.0" -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -8705,7 +6214,7 @@ glob@^10.2.2, glob@^10.3.10: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7, glob@^7.2.0, glob@^7.2.3: +glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.0, glob@^7.2.3: version "7.2.3" resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -8765,7 +6274,7 @@ globalthis@^1.0.4: define-properties "^1.2.1" gopd "^1.0.1" -globby@^11.0.1, globby@^11.0.2, globby@^11.0.3: +globby@^11.0.1, globby@^11.0.2: version "11.1.0" resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -8777,13 +6286,6 @@ globby@^11.0.1, globby@^11.0.2, globby@^11.0.3: merge2 "^1.4.1" slash "^3.0.0" -gonzales-pe@^4.2.3, gonzales-pe@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz#fe9dec5f3c557eead09ff868c65826be54d067b3" - integrity sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ== - dependencies: - minimist "^1.2.5" - gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" @@ -8811,13 +6313,6 @@ graphql@^16.5.0: resolved "https://registry.npmjs.org/graphql/-/graphql-16.11.0.tgz#96d17f66370678027fdf59b2d4c20b4efaa8a633" integrity sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw== -graphviz@0.0.9: - version "0.0.9" - resolved "https://registry.npmjs.org/graphviz/-/graphviz-0.0.9.tgz#0bbf1df588c6a92259282da35323622528c4bbc4" - integrity sha512-SmoY2pOtcikmMCqCSy2NO1YsRfu9OO0wpTlOYW++giGjfX1a6gax/m1Fo8IdUd0/3H15cTOfR1SMKwohj4LKsg== - dependencies: - temp "~0.4.0" - handlebars@^4.7.6, handlebars@^4.7.7, handlebars@^4.7.8: version "4.7.8" resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" @@ -8961,12 +6456,7 @@ iconv-lite@^0.6.2, iconv-lite@^0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ieee754@1.1.13: - version "1.1.13" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== - -ieee754@^1.1.13, ieee754@^1.1.4: +ieee754@^1.1.13: version "1.2.1" resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -9022,11 +6512,6 @@ indent-string@^4.0.0: resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -9040,7 +6525,7 @@ inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@^1.3.2, ini@^1.3.8, ini@~1.3.0: +ini@^1.3.2, ini@^1.3.8: version "1.3.8" resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -9111,14 +6596,6 @@ is-alphanumerical@^2.0.0: is-alphabetical "^2.0.0" is-decimal "^2.0.0" -is-arguments@^1.0.4: - version "1.2.0" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz#ad58c6aecf563b78ef2bf04df540da8f5d7d8e1b" - integrity sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA== - dependencies: - call-bound "^1.0.2" - has-tostringtag "^1.0.2" - is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: version "3.0.5" resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" @@ -9232,7 +6709,7 @@ is-generator-fn@^2.0.0: resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-generator-function@^1.0.10, is-generator-function@^1.0.7: +is-generator-function@^1.0.10: version "1.1.0" resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz#bf3eeda931201394f57b5dba2800f91a238309ca" integrity sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ== @@ -9287,11 +6764,6 @@ is-number@^7.0.0: resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== - is-obj@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" @@ -9339,16 +6811,6 @@ is-regex@^1.2.1: has-tostringtag "^1.0.2" hasown "^2.0.2" -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA== - -is-relative-path@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-relative-path/-/is-relative-path-1.0.2.tgz#091b46a0d67c1ed0fe85f1f8cfdde006bb251d46" - integrity sha512-i1h+y50g+0hRbBD+dbnInl3JlJ702aar58snAeX+MxBAPvzXGej7sYoPMhlnykabt0ZzCJNBEyzMlekuQZN7fA== - is-set@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" @@ -9402,7 +6864,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15, is-typed-array@^1.1.3: +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: version "1.1.15" resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== @@ -9419,16 +6881,6 @@ is-unicode-supported@^0.1.0: resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -is-url-superb@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/is-url-superb/-/is-url-superb-4.0.0.tgz#b54d1d2499bb16792748ac967aa3ecb41a33a8c2" - integrity sha512-GI+WjezhPPcbM+tqE9LnmsY5qqjwHzTvjJ36wxYX5ujNXefSUJ/T17r5bqDV8yLhcgB59KTPNOc9O9cmHTPWsA== - -is-url@^1.2.4: - version "1.2.4" - resolved "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" - integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== - is-weakmap@^2.0.2: version "2.0.2" resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" @@ -9461,21 +6913,16 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== - -isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isarray@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -9678,16 +7125,6 @@ jest-config@^29.7.0: slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-30.1.2.tgz#8ff4217e5b63fef49a5b37462999d8f5299a4eb4" - integrity sha512-4+prq+9J61mOVXCa4Qp8ZjavdxzrWQXrI80GNxP8f4tkI2syPuPrJgdRPZRrfUTRvIoUwcmNLbqEJy9W800+NQ== - dependencies: - "@jest/diff-sequences" "30.0.1" - "@jest/get-type" "30.1.0" - chalk "^4.1.2" - pretty-format "30.0.5" - "jest-diff@>=29.4.3 < 30", jest-diff@^29.4.1, jest-diff@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" @@ -9770,16 +7207,6 @@ jest-leak-detector@^29.7.0: jest-get-type "^29.6.3" pretty-format "^29.7.0" -jest-matcher-utils@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.1.2.tgz#3f1b63949f740025aff740c6c6a1b653ae370fbb" - integrity sha512-7ai16hy4rSbDjvPTuUhuV8nyPBd6EX34HkBsBcBX2lENCuAQ0qKCPb/+lt8OSWUa9WWmGYLy41PrEzkwRwoGZQ== - dependencies: - "@jest/get-type" "30.1.0" - chalk "^4.1.2" - jest-diff "30.1.2" - pretty-format "30.0.5" - jest-matcher-utils@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" @@ -9790,21 +7217,6 @@ jest-matcher-utils@^29.7.0: jest-get-type "^29.6.3" pretty-format "^29.7.0" -jest-message-util@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.1.0.tgz#653a9bb1a33306eddf13455ce0666ba621b767c4" - integrity sha512-HizKDGG98cYkWmaLUHChq4iN+oCENohQLb7Z5guBPumYs+/etonmNFlg1Ps6yN9LTPyZn+M+b/9BbnHx3WTMDg== - dependencies: - "@babel/code-frame" "^7.27.1" - "@jest/types" "30.0.5" - "@types/stack-utils" "^2.0.3" - chalk "^4.1.2" - graceful-fs "^4.2.11" - micromatch "^4.0.8" - pretty-format "30.0.5" - slash "^3.0.0" - stack-utils "^2.0.6" - jest-message-util@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" @@ -9820,15 +7232,6 @@ jest-message-util@^29.7.0: slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz#ef437e89212560dd395198115550085038570bdd" - integrity sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ== - dependencies: - "@jest/types" "30.0.5" - "@types/node" "*" - jest-util "30.0.5" - jest-mock@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" @@ -9843,11 +7246,6 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== -jest-regex-util@30.0.1: - version "30.0.1" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz#f17c1de3958b67dfe485354f5a10093298f2a49b" - integrity sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA== - jest-regex-util@^29.6.3: version "29.6.3" resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" @@ -9957,18 +7355,6 @@ jest-snapshot@^29.7.0: pretty-format "^29.7.0" semver "^7.5.3" -jest-util@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz#035d380c660ad5f1748dff71c4105338e05f8669" - integrity sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g== - dependencies: - "@jest/types" "30.0.5" - "@types/node" "*" - chalk "^4.1.2" - ci-info "^4.2.0" - graceful-fs "^4.2.11" - picomatch "^4.0.2" - jest-util@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" @@ -10017,7 +7403,7 @@ jest-worker@^29.7.0: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^29, jest@^29.7.0: +jest@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613" integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== @@ -10027,11 +7413,6 @@ jest@^29, jest@^29.7.0: import-local "^3.0.2" jest-cli "^29.7.0" -jmespath@0.16.0: - version "0.16.0" - resolved "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076" - integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw== - js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -10320,16 +7701,6 @@ just-diff@^6.0.0: resolved "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz#03b65908543ac0521caf6d8eb85035f7d27ea285" integrity sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA== -just-extend@^4.0.2: - version "4.2.1" - resolved "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz#ef5e589afb61e5d66b24eca749409a8939a8c744" - integrity sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg== - -just-extend@^6.2.0: - version "6.2.0" - resolved "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz#b816abfb3d67ee860482e7401564672558163947" - integrity sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw== - katex@^0.16.0: version "0.16.22" resolved "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz#d2b3d66464b1e6d69e6463b28a86ced5a02c5ccd" @@ -10359,35 +7730,6 @@ kuler@^2.0.0: resolved "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz#e2c570a3800388fb44407e851531c1d670b061b3" integrity sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A== -lambda-event-mock@^1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/lambda-event-mock/-/lambda-event-mock-1.5.0.tgz#9cb1ce2bec4271f918d485fef0a327d194dd120f" - integrity sha512-vx1d+vZqi7FF6B3+mAfHnY/6Tlp6BheL2ta0MJS0cIRB3Rc4I5cviHTkiJxHdE156gXx3ZjlQRJrS4puXvtrhA== - dependencies: - "@extra-number/significant-digits" "^1.1.1" - clone-deep "^4.0.1" - uuid "^3.3.3" - vandium-utils "^1.2.0" - -lambda-leak@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/lambda-leak/-/lambda-leak-2.0.0.tgz#771985d3628487f6e885afae2b54510dcfb2cd7e" - integrity sha512-2c9jwUN3ZLa2GEiOhObbx2BMGQplEUCDHSIkhDtYwUjsTfiV/3jCF6ThIuEXfsvqbUK+0QpZcugIKB8YMbSevQ== - -lambda-tester@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/lambda-tester/-/lambda-tester-4.0.1.tgz#91f0fc1266cdceae09a5ddbbdbc209c214beb98c" - integrity sha512-ft6XHk84B6/dYEzyI3anKoGWz08xQ5allEHiFYDUzaYTymgVK7tiBkCEbuWx+MFvH7OpFNsJXVtjXm0X8iH3Iw== - dependencies: - app-root-path "^3.0.0" - dotenv "^8.0.0" - dotenv-json "^1.0.0" - lambda-event-mock "^1.5.0" - lambda-leak "^2.0.0" - semver "^6.1.1" - uuid "^3.3.3" - vandium-utils "^2.0.0" - lerna@^8.2.4: version "8.2.4" resolved "https://registry.npmjs.org/lerna/-/lerna-8.2.4.tgz#cb902f7772bf159b3612d7f63631e58302cb6fa5" @@ -10585,11 +7927,6 @@ lodash.flattendeep@^4.4.0: resolved "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ== -lodash.get@^4.4.2: - version "4.4.2" - resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== - lodash.ismatch@^4.4.0: version "4.4.0" resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" @@ -10646,11 +7983,6 @@ logform@^2.7.0: safe-stable-stringify "^2.3.1" triple-beam "^1.3.0" -loupe@^3.1.0, loupe@^3.1.4: - version "3.2.1" - resolved "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz#0095cf56dc5b7a9a7c08ff5b1a8796ec8ad17e76" - integrity sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ== - lower-case@^2.0.2: version "2.0.2" resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -10687,34 +8019,6 @@ lru-cache@^7.14.1: resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== -madge@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/madge/-/madge-5.0.2.tgz#d34527af7e96de9625e8069902667c4c5a073ada" - integrity sha512-OeqFIgugINbVqh6keLWePD/N3u1EEYS3O9gCTD+EjcuaJa1TH30jcCxr8CEl3+neS1VM8sDCQSYoln/2li3ceg== - dependencies: - chalk "^4.1.1" - commander "^7.2.0" - commondir "^1.0.1" - debug "^4.3.1" - dependency-tree "^8.1.1" - detective-amd "^3.1.0" - detective-cjs "^3.1.1" - detective-es6 "^2.2.0" - detective-less "^1.0.2" - detective-postcss "^5.0.0" - detective-sass "^3.0.1" - detective-scss "^2.0.1" - detective-stylus "^1.0.0" - detective-typescript "^7.0.0" - graphviz "0.0.9" - ora "^5.4.1" - pluralize "^8.0.0" - precinct "^8.1.0" - pretty-ms "^7.0.1" - rc "^1.2.7" - typescript "^3.9.5" - walkdir "^0.4.1" - make-dir@4.0.0, make-dir@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" @@ -10760,14 +8064,6 @@ make-fetch-happen@^13.0.0, make-fetch-happen@^13.0.1: promise-retry "^2.0.1" ssri "^10.0.0" -make-runnable@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/make-runnable/-/make-runnable-1.4.1.tgz#a230f5bc085468362dc73c9f2391948b26e777ba" - integrity sha512-18F9NyNAPcoAT5a1y5r2bBOEY17Z4fa86WXBfLcSOzNo8/KSCymyViDDlsPJ66xhatwBVfodiXYyOm5Jvz9YFA== - dependencies: - bluebird "^3.5.0" - yargs "^16.2.0" - makeerror@1.0.12: version "1.0.12" resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" @@ -11276,42 +8572,11 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mnemonist@0.38.3: - version "0.38.3" - resolved "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz#35ec79c1c1f4357cfda2fe264659c2775ccd7d9d" - integrity sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw== - dependencies: - obliterator "^1.6.1" - -mock-fs@^4.14.0: - version "4.14.0" - resolved "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz#ce5124d2c601421255985e6e94da80a7357b1b18" - integrity sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw== - modify-values@^1.0.0, modify-values@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -module-definition@^3.3.1: - version "3.4.0" - resolved "https://registry.npmjs.org/module-definition/-/module-definition-3.4.0.tgz#953a3861f65df5e43e80487df98bb35b70614c2b" - integrity sha512-XxJ88R1v458pifaSkPNLUTdSPNVGMP2SXVncVmApGO+gAfrLANiYe6JofymCzVceGOMwQE2xogxBSc8uB7XegA== - dependencies: - ast-module-types "^3.0.0" - node-source-walk "^4.0.0" - -module-lookup-amd@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/module-lookup-amd/-/module-lookup-amd-7.0.1.tgz#d67c1a93f2ff8e38b8774b99a638e9a4395774b2" - integrity sha512-w9mCNlj0S8qviuHzpakaLVc+/7q50jl9a/kmJ/n8bmXQZgDPkQHnPBb8MUOYh3WpAYkXuNc2c+khsozhIp/amQ== - dependencies: - commander "^2.8.1" - debug "^4.1.0" - glob "^7.1.6" - requirejs "^2.3.5" - requirejs-config-file "^4.0.0" - ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" @@ -11338,11 +8603,6 @@ mute-stream@^1.0.0: resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz#e31bd9fe62f0aed23520aa4324ea6671531e013e" integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA== -nanoid@^3.3.11: - version "3.3.11" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" - integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -11363,28 +8623,6 @@ netmask@^2.0.2: resolved "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== -nise@^4.0.4: - version "4.1.0" - resolved "https://registry.npmjs.org/nise/-/nise-4.1.0.tgz#8fb75a26e90b99202fa1e63f448f58efbcdedaf6" - integrity sha512-eQMEmGN/8arp0xsvGoQ+B1qvSkR73B1nWSCh7nOt5neMCtwcQVYQGdzQMhcNscktTsWB54xnlSQFzOAPJD8nXA== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@sinonjs/fake-timers" "^6.0.0" - "@sinonjs/text-encoding" "^0.7.1" - just-extend "^4.0.2" - path-to-regexp "^1.7.0" - -nise@^6.0.0: - version "6.1.1" - resolved "https://registry.npmjs.org/nise/-/nise-6.1.1.tgz#78ea93cc49be122e44cb7c8fdf597b0e8778b64a" - integrity sha512-aMSAzLVY7LyeM60gvBS423nBmIPP+Wy7St7hsb+8/fc1HmeoHJfLO8CKse4u3BtOZvQLJghYPI2i/1WZrEj5/g== - dependencies: - "@sinonjs/commons" "^3.0.1" - "@sinonjs/fake-timers" "^13.0.1" - "@sinonjs/text-encoding" "^0.7.3" - just-extend "^6.2.0" - path-to-regexp "^8.1.0" - no-case@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" @@ -11393,15 +8631,6 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" -nock@^13.5.6: - version "13.5.6" - resolved "https://registry.npmjs.org/nock/-/nock-13.5.6.tgz#5e693ec2300bbf603b61dae6df0225673e6c4997" - integrity sha512-o2zOYiCpzRqSzPj0Zt/dQ/DqZeYoaQ7TUonc/xUPjCGl9WeHpNbxgVvOquXYAaJzI0M9BXV3HTzG0p8IUAbBTQ== - dependencies: - debug "^4.1.0" - json-stringify-safe "^5.0.1" - propagate "^2.0.0" - node-fetch@2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" @@ -11409,7 +8638,7 @@ node-fetch@2.6.7: dependencies: whatwg-url "^5.0.0" -node-fetch@^2.6.7, node-fetch@^2.7.0: +node-fetch@^2.6.7: version "2.7.0" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -11454,13 +8683,6 @@ node-releases@^2.0.19: resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== -node-source-walk@^4.0.0, node-source-walk@^4.2.0, node-source-walk@^4.2.2: - version "4.3.0" - resolved "https://registry.npmjs.org/node-source-walk/-/node-source-walk-4.3.0.tgz#8336b56cfed23ac5180fe98f1e3bb6b11fd5317c" - integrity sha512-8Q1hXew6ETzqKRAs3jjLioSxNfT1cx74ooiF8RlAONwVMcfq+UdzLC2eB5qcPldUxaE5w3ytLkrmV1TGddhZTA== - dependencies: - "@babel/parser" "^7.0.0" - nopt@^7.0.0, nopt@^7.2.1: version "7.2.1" resolved "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz#1cac0eab9b8e97c9093338446eddd40b2c8ca1e7" @@ -11750,11 +8972,6 @@ object.values@^1.2.1: define-properties "^1.2.1" es-object-atoms "^1.0.0" -obliterator@^1.6.1: - version "1.6.1" - resolved "https://registry.npmjs.org/obliterator/-/obliterator-1.6.1.tgz#dea03e8ab821f6c4d96a299e17aef6a3af994ef3" - integrity sha512-9WXswnqINnnhOG/5SLimUlzuU1hFJUc8zkwyD59Sd+dPOMf05PmnYG/d6Q7HZ+KmgkZJa1PxRso6QdM3sTNHig== - once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -12087,11 +9304,6 @@ parse-json@^5.0.0, parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" -parse-ms@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz#348565a753d4391fa524029956b172cb7753097d" - integrity sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA== - parse-path@^7.0.0: version "7.1.0" resolved "https://registry.npmjs.org/parse-path/-/parse-path-7.1.0.tgz#41fb513cb122831807a4c7b29c8727947a09d8c6" @@ -12132,11 +9344,6 @@ path-case@^3.0.4: dot-case "^3.0.4" tslib "^2.0.3" -path-equal@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/path-equal/-/path-equal-1.2.5.tgz#9fcbdd5e5daee448e96f43f3bac06c666b5e982a" - integrity sha512-i73IctDr3F2W+bsOWDyyVm/lqsXO47aY9nsFZUjTT/aljSbkxHxxCoyZ9UUrM8jK0JVod+An+rl48RCsvWM+9g== - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -12178,18 +9385,6 @@ path-scurry@^2.0.0: lru-cache "^11.0.0" minipass "^7.1.2" -path-to-regexp@^1.7.0: - version "1.9.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.9.0.tgz#5dc0753acbf8521ca2e0f137b4578b917b10cf24" - integrity sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g== - dependencies: - isarray "0.0.1" - -path-to-regexp@^8.1.0: - version "8.3.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.3.0.tgz#aa818a6981f99321003a08987d3cec9c3474cd1f" - integrity sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA== - path-type@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -12202,11 +9397,6 @@ path-type@^4.0.0: resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pathval@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz#8855c5a2899af072d6ac05d11e46045ad0dc605d" - integrity sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ== - picocolors@^1.0.1, picocolors@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" @@ -12266,11 +9456,6 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -pluralize@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" - integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== - possible-typed-array-names@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" @@ -12284,67 +9469,12 @@ postcss-selector-parser@^6.0.10: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-values-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-5.0.0.tgz#10c61ac3f488e4de25746b829ea8d8894e9ac3d2" - integrity sha512-2viDDjMMrt21W2izbeiJxl3kFuD/+asgB0CBwPEgSyhCmBnDIa/y+pLaoyX+q3I3DHH0oPPL3cgjVTQvlS1Maw== - dependencies: - color-name "^1.1.4" - is-url-superb "^4.0.0" - quote-unquote "^1.0.0" - -postcss@^8.1.7, postcss@^8.4.6: - version "8.5.6" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" - integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== - dependencies: - nanoid "^3.3.11" - picocolors "^1.1.1" - source-map-js "^1.2.1" - -precinct@^8.0.0, precinct@^8.1.0: - version "8.3.1" - resolved "https://registry.npmjs.org/precinct/-/precinct-8.3.1.tgz#94b99b623df144eed1ce40e0801c86078466f0dc" - integrity sha512-pVppfMWLp2wF68rwHqBIpPBYY8Kd12lDhk8LVQzOwqllifVR15qNFyod43YLyFpurKRZQKnE7E4pofAagDOm2Q== - dependencies: - commander "^2.20.3" - debug "^4.3.3" - detective-amd "^3.1.0" - detective-cjs "^3.1.1" - detective-es6 "^2.2.1" - detective-less "^1.0.2" - detective-postcss "^4.0.0" - detective-sass "^3.0.1" - detective-scss "^2.0.1" - detective-stylus "^1.0.0" - detective-typescript "^7.0.0" - module-definition "^3.3.1" - node-source-walk "^4.2.0" - prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -pretty-format@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz#e001649d472800396c1209684483e18a4d250360" - integrity sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw== - dependencies: - "@jest/schemas" "30.0.5" - ansi-styles "^5.2.0" - react-is "^18.3.1" - -pretty-format@^29.0.0, pretty-format@^29.7.0: +pretty-format@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== @@ -12353,13 +9483,6 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" -pretty-ms@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz#7d903eaab281f7d8e03c66f867e239dc32fb73e8" - integrity sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q== - dependencies: - parse-ms "^2.1.0" - proc-log@^4.0.0, proc-log@^4.1.0, proc-log@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz#b6f461e4026e75fdfe228b265e9f7a00779d7034" @@ -12420,11 +9543,6 @@ promzard@^1.0.0: dependencies: read "^3.0.1" -propagate@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz#40cdedab18085c792334e64f0ac17256d38f9a45" - integrity sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag== - protocols@^2.0.0, protocols@^2.0.1: version "2.0.2" resolved "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz#822e8fcdcb3df5356538b3e91bfd890b067fd0a4" @@ -12449,17 +9567,12 @@ proxy-from-env@^1.1.0: resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== - punycode@^2.1.0, punycode@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== -pure-rand@^6.0.0, pure-rand@^6.1.0: +pure-rand@^6.0.0: version "6.1.0" resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== @@ -12469,11 +9582,6 @@ q@^1.5.1: resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -12484,22 +9592,7 @@ quick-lru@^4.0.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== -quote-unquote@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/quote-unquote/-/quote-unquote-1.0.0.tgz#67a9a77148effeaf81a4d428404a710baaac8a0b" - integrity sha512-twwRO/ilhlG/FIgYeKGFqyHhoEhqgnKVkcmqMKi2r524gz3ZbDTcyFt38E9xjJI2vT+KbRNHVbnJ/e0I25Azwg== - -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-is@^18.0.0, react-is@^18.3.1: +react-is@^18.0.0: version "18.3.1" resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== @@ -12654,19 +9747,6 @@ require-main-filename@^2.0.0: resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== -requirejs-config-file@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/requirejs-config-file/-/requirejs-config-file-4.0.0.tgz#4244da5dd1f59874038cc1091d078d620abb6ebc" - integrity sha512-jnIre8cbWOyvr8a5F2KuqBnY+SDA4NXr/hzEZJG79Mxm2WiFQz2dzhC8ibtPJS7zkmBEl1mxSwp5HhC1W4qpxw== - dependencies: - esprima "^4.0.0" - stringify-object "^3.2.1" - -requirejs@^2.3.5: - version "2.3.7" - resolved "https://registry.npmjs.org/requirejs/-/requirejs-2.3.7.tgz#0b22032e51a967900e0ae9f32762c23a87036bd0" - integrity sha512-DouTG8T1WanGok6Qjg2SXuCMzszOo0eHeH9hDZ5Y4x8Je+9JB38HdTLT4/VA8OaUhBa0JPVHJ0pyBkM1z+pDsw== - resolve-cwd@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" @@ -12674,11 +9754,6 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" -resolve-dependency-path@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/resolve-dependency-path/-/resolve-dependency-path-2.0.0.tgz#11700e340717b865d216c66cabeb4a2a3c696736" - integrity sha512-DIgu+0Dv+6v2XwRaNWnumKu7GPufBBOr5I1gRPJHkvghrfCGOooJODFvgFimX/KRxk9j0whD2MnKHzM1jYvk9w== - resolve-from@5.0.0, resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" @@ -12694,7 +9769,7 @@ resolve.exports@2.0.3, resolve.exports@^2.0.0: resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz#41955e6f1b4013b7586f873749a635dea07ebe3f" integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== -resolve@^1.10.0, resolve@^1.20.0, resolve@^1.21.0, resolve@^1.22.0, resolve@^1.22.4: +resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.4: version "1.22.10" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -12812,7 +9887,7 @@ safe-regex-test@^1.1.0: es-errors "^1.3.0" is-regex "^1.2.1" -safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: +safe-stable-stringify@^2.3.1: version "2.5.0" resolved "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz#4ca2f8e385f2831c432a719b108a3bf7af42a1dd" integrity sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA== @@ -12822,23 +9897,6 @@ safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass-lookup@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/sass-lookup/-/sass-lookup-3.0.0.tgz#3b395fa40569738ce857bc258e04df2617c48cac" - integrity sha512-TTsus8CfFRn1N44bvdEai1no6PqdmDiQUiqW5DlpmtT+tYnIt1tXtDIph5KA1efC+LmioJXSnCtUVpcK9gaKIg== - dependencies: - commander "^2.16.0" - -sax@1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" - integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA== - -sax@>=0.6.0: - version "1.4.1" - resolved "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" - integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== - semver-intersect@^1.5.0: version "1.5.0" resolved "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.5.0.tgz#bb3aa0ea504935410d34cf15f49818d56906bd48" @@ -12851,7 +9909,7 @@ semver-intersect@^1.5.0: resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^6.0.0, semver@^6.1.1, semver@^6.3.0, semver@^6.3.1: +semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== @@ -12999,30 +10057,6 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" -sinon@^18.0.1: - version "18.0.1" - resolved "https://registry.npmjs.org/sinon/-/sinon-18.0.1.tgz#464334cdfea2cddc5eda9a4ea7e2e3f0c7a91c5e" - integrity sha512-a2N2TDY1uGviajJ6r4D1CyRAkzE9NNVlYOV1wX5xQDuAk0ONgzgRl0EjCQuRCPxOwp13ghsMwt9Gdldujs39qw== - dependencies: - "@sinonjs/commons" "^3.0.1" - "@sinonjs/fake-timers" "11.2.2" - "@sinonjs/samsam" "^8.0.0" - diff "^5.2.0" - nise "^6.0.0" - supports-color "^7" - -sinon@^9.2.4: - version "9.2.4" - resolved "https://registry.npmjs.org/sinon/-/sinon-9.2.4.tgz#e55af4d3b174a4443a8762fa8421c2976683752b" - integrity sha512-zljcULZQsJxVra28qIAL6ow1Z9tpattkCTEJR4RBP3TGc00FcttsP5pK284Nas5WjMZU5Yzy3kAIp3B3KRf5Yg== - dependencies: - "@sinonjs/commons" "^1.8.1" - "@sinonjs/fake-timers" "^6.0.1" - "@sinonjs/samsam" "^5.3.1" - diff "^4.0.2" - nise "^4.0.4" - supports-color "^7.1.0" - sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" @@ -13100,11 +10134,6 @@ sort-keys@^4.0.0: dependencies: is-plain-obj "^2.0.0" -source-map-js@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" - integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== - source-map-support@0.5.13: version "0.5.13" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -13208,7 +10237,7 @@ stack-trace@0.0.x: resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== -stack-utils@^2.0.3, stack-utils@^2.0.6: +stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== @@ -13336,15 +10365,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-object@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - stringify-package@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.1.tgz#e5aa3643e7f74d0f28628b72f3dad5cecfc3ba85" @@ -13405,29 +10425,11 @@ strip-json-comments@^3.1.1, strip-json-comments@~3.1.1: resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== - strnum@^1.0.5: version "1.1.2" resolved "https://registry.npmjs.org/strnum/-/strnum-1.1.2.tgz#57bca4fbaa6f271081715dbc9ed7cee5493e28e4" integrity sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA== -strnum@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz#cf2a6e0cf903728b8b2c4b971b7e36b4e82d46ab" - integrity sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw== - -stylus-lookup@^3.0.1: - version "3.0.2" - resolved "https://registry.npmjs.org/stylus-lookup/-/stylus-lookup-3.0.2.tgz#c9eca3ff799691020f30b382260a67355fefdddd" - integrity sha512-oEQGHSjg/AMaWlKe7gqsnYzan8DLcGIHe0dUaFkucZZ14z4zjENRlQMCHT4FNsiWnJf17YN9OvrCfCoi7VvOyg== - dependencies: - commander "^2.8.1" - debug "^4.1.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -13435,7 +10437,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7, supports-color@^7.0.0, supports-color@^7.1.0: +supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -13473,11 +10475,6 @@ table@^6.9.0: string-width "^4.2.3" strip-ansi "^6.0.1" -tapable@^2.2.0: - version "2.2.3" - resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.3.tgz#4b67b635b2d97578a06a2713d2f04800c237e99b" - integrity sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg== - tar-stream@~2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" @@ -13511,11 +10508,6 @@ temp-dir@^2.0.0: resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== -temp@~0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/temp/-/temp-0.4.0.tgz#671ad63d57be0fe9d7294664b3fc400636678a60" - integrity sha512-IsFisGgDKk7qzK9erMIkQe/XwiSUdac7z3wYOsjcLkhPBy3k1SlvLoIh2dAHIlEpgA971CgguMrx9z8fFg7tSA== - tempfile@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/tempfile/-/tempfile-3.0.0.tgz#5376a3492de7c54150d0cc0612c3f00e2cdaf76c" @@ -13597,16 +10589,6 @@ tinyglobby@^0.2.9: fdir "^6.4.4" picomatch "^4.0.2" -tinyrainbow@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz#9509b2162436315e80e3eee0fcce4474d2444294" - integrity sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw== - -tinyspy@^4.0.3: - version "4.0.3" - resolved "https://registry.npmjs.org/tinyspy/-/tinyspy-4.0.3.tgz#d1d0f0602f4c15f1aae083a34d6d0df3363b1b52" - integrity sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A== - tmp@^0.2.3, tmp@~0.2.1: version "0.2.5" resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" @@ -13649,7 +10631,7 @@ ts-api-utils@^2.1.0: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz#595f7094e46eed364c13fd23e75f9513d29baf91" integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== -ts-jest@^29, ts-jest@^29.4.1: +ts-jest@^29.4.1: version "29.4.1" resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.1.tgz#42d33beb74657751d315efb9a871fe99e3b9b519" integrity sha512-SaeUtjfpg9Uqu8IbeDKtdaS0g8lS6FT6OzM3ezrDfErPJPHNDo/Ey+VFGP1bQIDfagYDLyRpd7O15XpG1Es2Uw== @@ -13664,11 +10646,6 @@ ts-jest@^29, ts-jest@^29.4.1: type-fest "^4.41.0" yargs-parser "^21.1.1" -ts-mock-imports@^1.3.17: - version "1.3.17" - resolved "https://registry.npmjs.org/ts-mock-imports/-/ts-mock-imports-1.3.17.tgz#aabc5da7ec811e899530e32c90fba7fa9db10531" - integrity sha512-P2B9AzoA93/DRcSruu/nJIvmK6r3I/Zy3oLKj1PaPrErnYfa4NOCriqQIje/hQb9HK5wD76af35uPpBenUJcFw== - ts-morph@~24.0.0: version "24.0.0" resolved "https://registry.npmjs.org/ts-morph/-/ts-morph-24.0.0.tgz#6249b526ade40cf99c8803e7abdae6c65882e58e" @@ -13677,7 +10654,7 @@ ts-morph@~24.0.0: "@ts-morph/common" "~0.25.0" code-block-writer "^13.0.3" -ts-node@^10.9.1, ts-node@^10.9.2: +ts-node@^10.9.2: version "10.9.2" resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== @@ -13696,7 +10673,7 @@ ts-node@^10.9.1, ts-node@^10.9.2: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -tsconfig-paths@^3.10.1, tsconfig-paths@^3.14.1, tsconfig-paths@^3.15.0: +tsconfig-paths@^3.14.1, tsconfig-paths@^3.15.0: version "3.15.0" resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== @@ -13715,23 +10692,11 @@ tsconfig-paths@^4.1.2: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.6.2: version "2.8.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - tuf-js@^2.2.1: version "2.2.1" resolved "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz#fdd8794b644af1a75c7aaa2b197ddffeb2911b56" @@ -13758,11 +10723,6 @@ type-detect@4.0.8: resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-detect@^4.0.8, type-detect@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz#deb2453e8f08dcae7ae98c626b13dddb0155906c" - integrity sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw== - type-fest@^0.18.0: version "0.18.1" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -13855,31 +10815,12 @@ typedarray@^0.0.6: resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== -typescript-json-schema@^0.65.1: - version "0.65.1" - resolved "https://registry.npmjs.org/typescript-json-schema/-/typescript-json-schema-0.65.1.tgz#24840812f69b220b75d86ed87e220b3b3345db2c" - integrity sha512-tuGH7ff2jPaUYi6as3lHyHcKpSmXIqN7/mu50x3HlYn0EHzLpmt3nplZ7EuhUkO0eqDRc9GqWNkfjgBPIS9kxg== - dependencies: - "@types/json-schema" "^7.0.9" - "@types/node" "^18.11.9" - glob "^7.1.7" - path-equal "^1.2.5" - safe-stable-stringify "^2.2.0" - ts-node "^10.9.1" - typescript "~5.5.0" - yargs "^17.1.1" - "typescript@>=3 < 6": version "5.9.2" resolved "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz#d93450cddec5154a2d5cabe3b8102b83316fb2a6" integrity sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A== -typescript@^3.9.10, typescript@^3.9.5, typescript@^3.9.7: - version "3.9.10" - resolved "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" - integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== - -typescript@~5.5.0, typescript@~5.5.4: +typescript@~5.5.4: version "5.5.4" resolved "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== @@ -13926,11 +10867,6 @@ undici@^5.25.4: dependencies: "@fastify/busboy" "^2.0.0" -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA== - unique-filename@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea" @@ -13994,46 +10930,22 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -url@0.10.3: - version "0.10.3" - resolved "https://registry.npmjs.org/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" - integrity sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ== - dependencies: - punycode "1.3.2" - querystring "0.2.0" - util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util@^0.12.4: - version "0.12.5" - resolved "https://registry.npmjs.org/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" - integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== - dependencies: - inherits "^2.0.3" - is-arguments "^1.0.4" - is-generator-function "^1.0.7" - is-typed-array "^1.1.3" - which-typed-array "^1.1.2" - utility-types@^3.10.0: version "3.11.0" resolved "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz#607c40edb4f258915e901ea7995607fdf319424c" integrity sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw== -uuid@8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" - integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== - uuid@^10.0.0: version "10.0.0" resolved "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== -uuid@^3.3.2, uuid@^3.3.3: +uuid@^3.3.2: version "3.4.0" resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -14082,26 +10994,11 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" -vandium-utils@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/vandium-utils/-/vandium-utils-1.2.0.tgz#44735de4b7641a05de59ebe945f174e582db4f59" - integrity sha512-yxYUDZz4BNo0CW/z5w4mvclitt5zolY7zjW97i6tTE+sU63cxYs1A6Bl9+jtIQa3+0hkeqY87k+7ptRvmeHe3g== - -vandium-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/vandium-utils/-/vandium-utils-2.0.0.tgz#87389bdcb85551aaaba1cc95937ba756589214fa" - integrity sha512-XWbQ/0H03TpYDXk8sLScBEZpE7TbA0CHDL6/Xjt37IBYKLsHUQuBlL44ttAUs9zoBOLFxsW7HehXcuWCNyqOxQ== - walk-up-path@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz#c8d78d5375b4966c717eb17ada73dbd41490e886" integrity sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA== -walkdir@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/walkdir/-/walkdir-0.4.1.tgz#dc119f83f4421df52e3061e514228a2db20afa39" - integrity sha512-3eBwRyEln6E1MSzcxcVpQIhRG8Q1jLvEqRmCZqS3dsfXEDR/AhOF4d+jHg1qvDCpYaVRZjENPQyrVxAkQqxPgQ== - walker@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -14174,7 +11071,7 @@ which-module@^2.0.0: resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== -which-typed-array@^1.1.16, which-typed-array@^1.1.19, which-typed-array@^1.1.2: +which-typed-array@^1.1.16, which-typed-array@^1.1.19: version "1.1.19" resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz#df03842e870b6b88e117524a4b364b6fc689f956" integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== @@ -14358,14 +11255,6 @@ write-pkg@4.0.0, write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -xml2js@0.6.2: - version "0.6.2" - resolved "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz#dd0b630083aa09c161e25a4d0901e2b2a929b499" - integrity sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA== - dependencies: - sax ">=0.6.0" - xmlbuilder "~11.0.0" - xml@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" @@ -14376,11 +11265,6 @@ xmlbuilder@^15.1.1: resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5" integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg== -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== - xtend@~4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -14434,7 +11318,7 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3: resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@17.7.2, yargs@^17.1.1, yargs@^17.3.1, yargs@^17.5.1, yargs@^17.6.2, yargs@^17.7.2: +yargs@17.7.2, yargs@^17.3.1, yargs@^17.5.1, yargs@^17.6.2, yargs@^17.7.2: version "17.7.2" resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==