From 08fb3cdab13e2e2a68ceadb36702a108c429e674 Mon Sep 17 00:00:00 2001 From: Hogan Bobertz Date: Mon, 17 Apr 2023 13:56:58 -0400 Subject: [PATCH] feat(aws-lambda): Add AWS Lambda runtime python3.10 --- .github/workflows/yarn-upgrade.yml | 8 +- CONTRIBUTING.md | 18 +- build.sh | 32 +- buildspec-pr.yaml | 2 +- buildspec.yaml | 2 +- lerna.json | 25 +- nx.json | 60 + package.json | 29 +- packages/@aws-cdk-testing/cli-integ/README.md | 8 +- .../@aws-cdk-testing/cli-integ/package.json | 6 +- .../Standard1.assets.json | 19 + .../Standard1.template.json | 191 + .../Standard2.assets.json | 19 + .../Standard2.template.json | 191 + .../Standard3.assets.json | 19 + .../Standard3.template.json | 191 + .../Standard4.assets.json | 19 + .../Standard4.template.json | 191 + .../Standard5.assets.json | 19 + .../Standard5.template.json | 191 + .../Standard6.assets.json | 19 + .../Standard6.template.json | 191 + .../Standard7.assets.json | 19 + .../Standard7.template.json | 191 + .../cdk.out | 1 + .../integ.json | 18 + ...efaultTestDeployAssertFEF871A7.assets.json | 19 + ...aultTestDeployAssertFEF871A7.template.json | 36 + .../manifest.json | 513 ++ .../tree.json | 1762 ++++++ .../test/integ.project-standard-image.ts | 32 + ...ws-cdk-dynamodb-kinesis-stream.assets.json | 6 +- ...-cdk-dynamodb-kinesis-stream.template.json | 3 - .../cdk.out | 2 +- .../integ.json | 2 +- .../manifest.json | 16 +- .../tree.json | 57 +- .../integ.machine-image.js.snapshot/cdk.out | 1 + .../integ-ec2-machine-image-test.assets.json | 19 + ...integ-ec2-machine-image-test.template.json | 849 +++ .../integ.json | 13 + ...efaultTestDeployAssert24D5C536.assets.json | 19 + ...aultTestDeployAssert24D5C536.template.json | 36 + .../manifest.json | 393 ++ .../integ.machine-image.js.snapshot/tree.json | 1510 +++++ .../test/aws-ec2/test/integ.machine-image.ts | 38 + .../aws-cdk-vpc-nat-instances.assets.json | 6 +- .../aws-cdk-vpc-nat-instances.template.json | 16 +- .../cdk.out | 2 +- .../integ.json | 12 +- ...efaultTestDeployAssert24D5C536.assets.json | 19 + ...aultTestDeployAssert24D5C536.template.json | 36 + .../manifest.json | 169 +- .../tree.json | 214 +- .../aws-ec2/test/integ.nat-instances.lit.ts | 9 +- .../aws-cdk-kinesis-event-target.assets.json | 6 +- ...aws-cdk-kinesis-event-target.template.json | 3 - .../integ.kinesis-stream.js.snapshot/cdk.out | 2 +- .../integ.json | 2 +- .../manifest.json | 16 +- .../tree.json | 69 +- .../cdk.out | 2 +- ...integ-kinesis-stream-dashboard.assets.json | 6 +- ...teg-kinesis-stream-dashboard.template.json | 3 - .../integ.json | 2 +- .../manifest.json | 16 +- .../tree.json | 53 +- .../test/integ.stream.js.snapshot/cdk.out | 2 +- .../integ-kinesis-stream.assets.json | 6 +- .../integ-kinesis-stream.template.json | 3 - .../test/integ.stream.js.snapshot/integ.json | 2 +- .../integ.stream.js.snapshot/manifest.json | 4 +- .../test/integ.stream.js.snapshot/tree.json | 35 +- ...efaultTestDeployAssert8000E9DC.assets.json | 2 +- .../cdk.out | 2 +- .../integ.json | 2 +- ...nt-source-kinesis-at-timestamp.assets.json | 6 +- ...-source-kinesis-at-timestamp.template.json | 3 - .../manifest.json | 4 +- .../tree.json | 55 +- .../test/integ.kinesis.js.snapshot/cdk.out | 2 +- .../test/integ.kinesis.js.snapshot/integ.json | 2 +- .../lambda-event-source-kinesis.assets.json | 6 +- .../lambda-event-source-kinesis.template.json | 3 - .../integ.kinesis.js.snapshot/manifest.json | 4 +- .../test/integ.kinesis.js.snapshot/tree.json | 43 +- .../integ.kinesiswithdlq.js.snapshot/cdk.out | 2 +- .../integ.json | 2 +- ...-event-source-kinesis-with-dlq.assets.json | 6 +- ...vent-source-kinesis-with-dlq.template.json | 3 - .../manifest.json | 4 +- .../tree.json | 53 +- ...-cdk-lambda-runtime-inlinecode.assets.json | 6 +- ...dk-lambda-runtime-inlinecode.template.json | 55 + .../cdk.out | 2 +- .../integ.json | 2 +- .../manifest.json | 52 +- .../tree.json | 243 +- .../test/integ.runtime.inlinecode.ts | 8 + .../kinesis-logsubscription-integ.assets.json | 4 +- ...inesis-logsubscription-integ.template.json | 3 - .../integ.kinesis.js.snapshot/manifest.json | 2 +- .../test/integ.kinesis.js.snapshot/tree.json | 63 +- ...cProduct3B51CF591.v1.product.template.json | 7 + .../@aws-cdk/aws-amplify-alpha/package.json | 2 +- .../aws-apigatewayv2-alpha/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../aws-apprunner-alpha/lib/service.ts | 45 + .../@aws-cdk/aws-apprunner-alpha/package.json | 2 +- packages/@aws-cdk/aws-batch-alpha/README.md | 43 +- .../lib/ecs-container-definition.ts | 4 +- .../@aws-cdk/aws-batch-alpha/lib/job-queue.ts | 4 +- .../@aws-cdk/aws-batch-alpha/package.json | 4 +- .../test/ecs-container-definition.test.ts | 3 +- .../test/eks-container-definition.test.ts | 4 +- .../test/job-definition-base.test.ts | 2 +- .../aws-batch-alpha/test/job-queue.test.ts | 63 +- .../test/managed-compute-environment.test.ts | 6 +- .../unmanaged-compute-environment.test.ts | 2 +- .../@aws-cdk/aws-batch-alpha/test/utils.ts | 30 + .../@aws-cdk/aws-cloud9-alpha/package.json | 2 +- .../@aws-cdk/aws-codestar-alpha/package.json | 2 +- .../package.json | 4 +- .../@aws-cdk/aws-gamelift-alpha/package.json | 4 +- packages/@aws-cdk/aws-glue-alpha/package.json | 4 +- .../aws-iot-actions-alpha/package.json | 4 +- .../cdk.out | 1 + ...efaultTestDeployAssertEF9A9A37.assets.json | 19 + ...aultTestDeployAssertEF9A9A37.template.json | 36 + .../integ.json | 12 + .../manifest.json | 137 + ...namodbv2-put-item-action-stack.assets.json | 19 + ...modbv2-put-item-action-stack.template.json | 139 + .../tree.json | 288 + .../cdk.out | 2 +- .../integ.json | 2 +- .../manifest.json | 16 +- ...st-kinesis-stream-action-stack.assets.json | 6 +- ...-kinesis-stream-action-stack.template.json | 3 - .../tree.json | 65 +- packages/@aws-cdk/aws-iot-alpha/package.json | 4 +- .../aws-iotevents-actions-alpha/package.json | 4 +- .../@aws-cdk/aws-iotevents-alpha/package.json | 4 +- packages/@aws-cdk/aws-ivs-alpha/package.json | 2 +- .../package.json | 4 +- .../aws-kinesisfirehose-alpha/package.json | 2 +- ...-delivery-stream-source-stream.assets.json | 6 +- ...elivery-stream-source-stream.template.json | 3 - .../cdk.out | 2 +- .../integ.json | 2 +- .../manifest.json | 4 +- .../tree.json | 49 +- .../package.json | 4 +- .../@aws-cdk/aws-lambda-go-alpha/package.json | 2 +- .../aws-lambda-python-alpha/package.json | 2 +- .../@aws-cdk/aws-location-alpha/package.json | 2 +- packages/@aws-cdk/aws-msk-alpha/package.json | 4 +- .../test/__snapshots__/cluster.test.js.snap | 644 +-- .../@aws-cdk/aws-neptune-alpha/package.json | 2 +- .../@aws-cdk/aws-redshift-alpha/package.json | 3 +- .../aws-route53resolver-alpha/package.json | 2 +- .../aws-s3objectlambda-alpha/package.json | 4 +- .../@aws-cdk/aws-sagemaker-alpha/package.json | 5 +- .../lib/application.ts | 52 - .../package.json | 2 +- .../test/application.test.ts | 86 - ...catalogappregistry-application.assets.json | 4 +- ...talogappregistry-application.template.json | 55 - .../manifest.json | 47 +- .../integ.application.js.snapshot/tree.json | 115 +- .../test/integ.application.ts | 22 - .../.eslintrc.js | 0 .../.gitignore | 2 +- .../.npmignore | 0 .../LICENSE | 0 .../NOTICE | 0 .../README.md | 0 .../images/endpoint-example.png | Bin .../images/ui-screenshot.png | Bin .../jest.config.js | 0 .../lib/canary.ts | 0 .../lib/code.ts | 0 .../lib/index.ts | 0 .../lib/runtime.ts | 0 .../lib/schedule.ts | 0 .../package.json | 5 +- .../rosetta/default.ts-fixture | 0 .../canaries/nodejs/node_modules/canary.js | 0 .../test/canaries/python/canary.py | 0 .../test/canary.test.ts | 0 .../test/canary.zip | Bin .../test/code.test.ts | 0 .../nodejs/node_modules/canary.js | 0 .../python/canary.py | 0 ...07d10bf5f4747d6dd1516e2780726d9d6fa820.zip | Bin .../canary-one.assets.json | 0 .../canary-one.template.json | 0 .../test/integ.canary.js.snapshot/cdk.out | 0 .../test/integ.canary.js.snapshot/integ.json | 0 .../integ.canary.js.snapshot/manifest.json | 0 .../test/integ.canary.js.snapshot/tree.json | 0 .../test/integ.canary.ts | 0 ...07d10bf5f4747d6dd1516e2780726d9d6fa820.zip | Bin .../canary-vpc.assets.json | 0 .../canary-vpc.template.json | 0 .../test/integ.vpc.js.snapshot/cdk.out | 0 .../test/integ.vpc.js.snapshot/integ.json | 0 .../test/integ.vpc.js.snapshot/manifest.json | 0 .../test/integ.vpc.js.snapshot/tree.json | 0 .../test/integ.vpc.ts | 0 .../test/metric.test.ts | 0 .../test/schedule.test.ts | 0 packages/@aws-cdk/cfnspec/package.json | 4 +- .../spec-source/cfn-docs/cfn-docs.json | 203 +- .../cli-lib-alpha/THIRD_PARTY_LICENSES | 2 +- packages/@aws-cdk/cli-lib-alpha/package.json | 4 +- .../cloud-assembly-schema/package.json | 4 +- .../@aws-cdk/cloudformation-diff/package.json | 6 +- packages/@aws-cdk/cx-api/package.json | 4 +- .../example-construct-library/package.json | 4 +- packages/@aws-cdk/integ-runner/package.json | 4 +- .../@aws-cdk/integ-tests-alpha/package.json | 4 +- packages/@aws-cdk/region-info/package.json | 2 +- packages/aws-cdk-lib/README.md | 88 +- .../test/__snapshots__/render.test.js.snap | 46 +- packages/aws-cdk-lib/aws-apigateway/README.md | 78 +- packages/aws-cdk-lib/aws-appmesh/README.md | 68 +- packages/aws-cdk-lib/aws-backup/README.md | 2 +- .../aws-certificatemanager/README.md | 3 + .../aws-cloudformation/lib/custom-resource.ts | 6 +- packages/aws-cdk-lib/aws-cloudfront/README.md | 5 + packages/aws-cdk-lib/aws-cloudtrail/README.md | 12 +- packages/aws-cdk-lib/aws-cloudwatch/README.md | 24 +- packages/aws-cdk-lib/aws-codebuild/README.md | 4 +- .../aws-cdk-lib/aws-codebuild/lib/project.ts | 2 + .../aws-codebuild/test/project.test.ts | 1 + packages/aws-cdk-lib/aws-codedeploy/README.md | 84 +- .../aws-codepipeline/lib/pipeline.ts | 2 +- packages/aws-cdk-lib/aws-cognito/README.md | 4 +- packages/aws-cdk-lib/aws-config/README.md | 8 +- packages/aws-cdk-lib/aws-dynamodb/README.md | 6 +- packages/aws-cdk-lib/aws-ec2/README.md | 157 +- packages/aws-cdk-lib/aws-ec2/lib/index.ts | 1 + .../lib/machine-image/amazon-linux-2022.ts | 91 + .../lib/machine-image/amazon-linux-2023.ts | 90 + .../lib/machine-image/amazon-linux2.ts | 109 + .../aws-ec2/lib/machine-image/common.ts | 218 + .../aws-ec2/lib/machine-image/index.ts | 5 + .../lib/{ => machine-image}/machine-image.ts | 207 +- .../aws-ec2/lib/machine-image/utils.ts | 9 + packages/aws-cdk-lib/aws-ec2/lib/vpc.ts | 2 +- .../aws-ec2/test/machine-image.test.ts | 109 + .../aws-ecr-assets/lib/image-asset.ts | 13 +- packages/aws-cdk-lib/aws-ecr/README.md | 4 +- .../aws-cdk-lib/aws-ecs-patterns/README.md | 26 +- packages/aws-cdk-lib/aws-ecs/README.md | 34 +- packages/aws-cdk-lib/aws-eks/README.md | 18 +- .../test/cluster-resource-provider.test.ts | 8 + .../test/fargate-resource-provider.test.ts | 10 +- .../aws-elasticloadbalancing/README.md | 10 +- .../README.md | 5 + .../aws-elasticloadbalancingv2/README.md | 11 +- .../aws-cdk-lib/aws-events-targets/README.md | 28 +- .../lib/withRepoAndKinesisStream.ts-fixture | 12 +- packages/aws-cdk-lib/aws-events/README.md | 2 +- packages/aws-cdk-lib/aws-fsx/README.md | 4 +- packages/aws-cdk-lib/aws-iam/README.md | 20 +- packages/aws-cdk-lib/aws-iam/lib/role.ts | 12 +- .../aws-iam/test/precreated-role.test.ts | 84 +- .../aws-cdk-lib/aws-kinesis/lib/stream.ts | 10 +- .../aws-kinesis/test/stream.test.ts | 42 - .../aws-lambda-event-sources/README.md | 6 +- .../test/__snapshots__/bundling.test.js.snap | 6 +- packages/aws-cdk-lib/aws-lambda/README.md | 10 +- .../aws-cdk-lib/aws-lambda/lib/runtime.ts | 9 + packages/aws-cdk-lib/aws-logs/README.md | 2 +- .../test/log-retention-provider.test.ts | 8 + packages/aws-cdk-lib/aws-rds/README.md | 6 +- .../aws-cdk-lib/aws-route53-targets/README.md | 2 +- packages/aws-cdk-lib/aws-route53/README.md | 16 +- packages/aws-cdk-lib/aws-s3/README.md | 27 +- packages/aws-cdk-lib/aws-s3/lib/bucket.ts | 7 +- .../aws-cdk-lib/aws-secretsmanager/README.md | 6 +- .../aws-cdk-lib/aws-servicecatalog/README.md | 140 +- packages/aws-cdk-lib/aws-ses/README.md | 10 +- packages/aws-cdk-lib/aws-sns/README.md | 2 +- packages/aws-cdk-lib/aws-ssm/README.md | 13 +- .../aws-stepfunctions-tasks/README.md | 4 +- .../lib/apigateway/call-rest-api.ts | 2 +- .../test/eval-nodejs-handler.test.ts | 8 + .../aws-cdk-lib/aws-stepfunctions/README.md | 5 +- .../aws-stepfunctions/lib/task-credentials.ts | 2 +- .../lib/assets/docker-image-asset.ts | 8 +- .../lib/cloud-assembly/metadata-schema.ts | 8 +- .../test/__snapshots__/manifest.test.js.snap | 2 +- packages/aws-cdk-lib/core/README.md | 23 +- packages/aws-cdk-lib/core/lib/assets.ts | 8 +- .../core/lib/permissions-boundary.ts | 2 - packages/aws-cdk-lib/core/lib/stack.ts | 9 + packages/aws-cdk-lib/core/lib/tag-manager.ts | 10 +- .../core/lib/validation/validation.ts | 43 +- .../cross-region-ssm-reader-handler.test.ts | 4 + .../cross-region-ssm-writer-handler.test.ts | 9 +- .../core/test/private/tree-metadata.test.ts | 6 +- packages/aws-cdk-lib/core/test/stack.test.ts | 38 +- .../aws-cdk-lib/core/test/staging.test.ts | 4 +- .../core/test/validation/trace.test.ts | 12 +- .../core/test/validation/validation.test.ts | 29 +- .../aws-cdk-lib/custom-resources/README.md | 8 +- .../__snapshots__/cloud-assembly.test.js.snap | 44 +- packages/aws-cdk-lib/package.json | 11 +- .../aws-cdk-lib/pipelines/ORIGINAL_API.md | 4 +- packages/aws-cdk-lib/pipelines/README.md | 26 +- .../lib/blueprint/stack-deployment.ts | 15 +- .../test/blueprint/stack-deployment.test.ts | 2 +- .../__snapshots__/region-info.test.js.snap | 266 +- ...README-custom-resource-provider.ts-fixture | 5 +- .../rosetta/aws_appmesh/default.ts-fixture | 4 +- .../rosetta/aws_batch/default.ts-fixture | 15 - .../aws_certificatemanager/default.ts-fixture | 2 +- .../rosetta/aws_cloudfront/default.ts-fixture | 2 +- .../aws_codedeploy/constructhub.ts-fixture | 20 + .../rosetta/aws_codedeploy/default.ts-fixture | 2 + .../default.ts-fixture | 3 +- .../rosetta/aws_cognito/default.ts-fixture | 1 + .../rosetta/aws_ec2/default.ts-fixture | 3 +- .../rosetta/aws_ecr/default.ts-fixture | 2 +- .../rosetta/aws_ecr_assets/default.ts-fixture | 1 + .../rosetta/aws_eks/cdk8schart.ts-fixture | 2 +- .../default.ts-fixture | 3 +- .../default.ts-fixture | 17 + .../migrate-opensearch.ts-fixture | 5 +- .../rosetta/aws_s3/default.ts-fixture | 4 +- .../aws_servicecatalog/default.ts-fixture | 4 +- .../rosetta/aws_ses/default.ts-fixture | 2 +- .../rosetta/aws_ssm/default.ts-fixture | 2 +- .../custom_resources/default.ts-fixture | 3 +- .../aws-cdk-lib/rosetta/default.ts-fixture | 10 +- .../rosetta/pipelines/default.ts-fixture | 2 +- .../rosetta/validation-plugin.ts-fixture | 21 + packages/aws-cdk-lib/triggers/README.md | 21 +- .../triggers/test/trigger-handler.test.ts | 8 + packages/aws-cdk-migration/package.json | 2 +- packages/aws-cdk/package.json | 6 +- .../test/api/stack-activity-monitor.test.ts | 4 +- packages/aws-cdk/test/usersettings.test.ts | 5 +- packages/awslint/package.json | 4 +- packages/cdk-assets/package.json | 4 +- packages/cdk-cli-wrapper/package.json | 4 +- patches/@lerna+package-graph+4.0.0.patch | 23 - scripts/@aws-cdk/script-tests/package.json | 2 +- scripts/align-version.js | 1 + .../@aws-cdk/cdk-build-tools/bin/cdk-copy.ts | 1 - tools/@aws-cdk/cdk-build-tools/package.json | 6 +- tools/@aws-cdk/cdk-release/package.json | 4 +- tools/@aws-cdk/cfn2ts/package.json | 4 +- tools/@aws-cdk/eslint-plugin/package.json | 4 +- tools/@aws-cdk/node-bundle/.eslintrc.json | 3 +- tools/@aws-cdk/node-bundle/.projen/deps.json | 12 +- tools/@aws-cdk/node-bundle/.projen/tasks.json | 12 +- tools/@aws-cdk/node-bundle/.projenrc.js | 12 + tools/@aws-cdk/node-bundle/package.json | 27 +- tools/@aws-cdk/node-bundle/tsconfig.dev.json | 4 +- tools/@aws-cdk/node-bundle/tsconfig.json | 4 +- tools/@aws-cdk/pkglint/package.json | 4 +- tools/@aws-cdk/prlint/package.json | 4 +- tools/@aws-cdk/yarn-cling/package.json | 4 +- yarn.lock | 5099 ++++++++--------- 369 files changed, 13733 insertions(+), 5113 deletions(-) create mode 100644 nx.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/cdk.out create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integ.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/manifest.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/tree.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.ts create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/cdk.out create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/manifest.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/tree.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.ts create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json create mode 100644 packages/@aws-cdk-testing/framework-integ/test/aws-servicecatalog/test/product-stack-snapshots/integservicecatalogproductProductStackHistory4D520FF1.integservicecatalogproductSNSTopicProduct3B51CF591.v1.product.template.json create mode 100644 packages/@aws-cdk/aws-batch-alpha/test/utils.ts create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/cdk.out create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/integ.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/manifest.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.assets.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.template.json create mode 100644 packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/tree.json rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/.eslintrc.js (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/.gitignore (92%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/.npmignore (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/LICENSE (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/NOTICE (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/README.md (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/images/endpoint-example.png (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/images/ui-screenshot.png (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/jest.config.js (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/lib/canary.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/lib/code.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/lib/index.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/lib/runtime.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/lib/schedule.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/package.json (96%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/rosetta/default.ts-fixture (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/canaries/nodejs/node_modules/canary.js (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/canaries/python/canary.py (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/canary.test.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/canary.zip (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/code.test.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/nodejs/node_modules/canary.js (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/python/canary.py (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/canary-one.assets.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/canary-one.template.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/cdk.out (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/integ.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/manifest.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.js.snapshot/tree.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.canary.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/canary-vpc.assets.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/canary-vpc.template.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/cdk.out (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/integ.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/manifest.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.js.snapshot/tree.json (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/integ.vpc.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/metric.test.ts (100%) rename packages/@aws-cdk/{aws-synthetics => aws-synthetics-alpha}/test/schedule.test.ts (100%) create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2022.ts create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2023.ts create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux2.ts create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/common.ts create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/index.ts rename packages/aws-cdk-lib/aws-ec2/lib/{ => machine-image}/machine-image.ts (88%) create mode 100644 packages/aws-cdk-lib/aws-ec2/lib/machine-image/utils.ts delete mode 100644 packages/aws-cdk-lib/rosetta/aws_batch/default.ts-fixture create mode 100644 packages/aws-cdk-lib/rosetta/aws_codedeploy/constructhub.ts-fixture create mode 100644 packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2_actions/default.ts-fixture create mode 100644 packages/aws-cdk-lib/rosetta/validation-plugin.ts-fixture delete mode 100644 patches/@lerna+package-graph+4.0.0.patch diff --git a/.github/workflows/yarn-upgrade.yml b/.github/workflows/yarn-upgrade.yml index d2d0935d92541..bb593dcf73554 100644 --- a/.github/workflows/yarn-upgrade.yml +++ b/.github/workflows/yarn-upgrade.yml @@ -21,6 +21,8 @@ jobs: uses: actions/setup-node@v3 with: node-version: 14 + env: + NODE_OPTIONS: "--max-old-space-size=8196 --experimental-worker ${NODE_OPTIONS:-}" - name: Locate Yarn cache id: yarn-cache @@ -39,7 +41,9 @@ jobs: run: |- npm -g install lerna npm-check-updates - name: Build Integ Runner - run: lerna run build --scope @aws-cdk/integ-runner --include-dependencies + run: | + export NODE_OPTIONS="--max-old-space-size=8196 --experimental-worker ${NODE_OPTIONS:-}" + npx lerna run build --scope @aws-cdk/integ-runner - name: List Mono-Repo Packages id: list-packages # These need to be ignored from the `ncu` runs! @@ -63,7 +67,7 @@ jobs: (cd $(dirname $pj) && ncu --upgrade --reject='constructs,${{ steps.list-packages.outputs.list }}') done # Upgrade dependencies at an aws-eks integ test docker image - cd packages/@aws-cdk/aws-eks/test/sdk-call-integ-test-docker-app/app/ && ncu --upgrade --reject=',${{ steps.list-packages.outputs.list }}' + cd packages/aws-cdk-lib/aws-eks/test/sdk-call-integ-test-docker-app/app/ && ncu --upgrade --reject=',${{ steps.list-packages.outputs.list }}' # This will ensure the current lockfile is up-to-date with the dependency specifications (necessary for "yarn upgrade" to run) - name: Run "yarn install" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d120808e09b1e..245b74742cbcf 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -99,12 +99,12 @@ Most contributions only require working on a single package, usually `aws-cdk-li time, you can execute the following to build it and it's dependencies. ```console -$ cd packages/aws-cdk-lib -$ ../../scripts/buildup +$ npx lerna run build --scope=aws-cdk-lib ``` -Note: The `buildup` command is resumable. If your build fails, you can fix the issue and run `buildup --resume` to -resume. +Note: `lerna` uses a local cache by default. If your build fails, you can fix +the issue and run the command again and it will not rerun any previously +successful steps. At this point, you can run build and test the `aws-cdk-lib` module by running @@ -121,13 +121,19 @@ However, if you wish to build the entire repository, the following command will ```console cd -scripts/foreach.sh yarn build +npx lerna run build ``` -Note: The `foreach` command is resumable by default; you must supply `-r` or `--reset` to start a new session. You are now ready to start contributing to the CDK. See the [Pull Requests](#pull-requests) section on how to make your changes and submit it as a pull request. +If you want to run a build without using the local cache, provide the +`--skip-nx-cache` flag. + +```console +$ npx lerna run build --skip-nx-cache +``` + ### Pack As called out in the above sections, the AWS CDK uses jsii to produce polyglot targets. This means that each CDK module diff --git a/build.sh b/build.sh index ffde3dcbd76ec..15bd5630490ea 100755 --- a/build.sh +++ b/build.sh @@ -6,6 +6,8 @@ runtarget="build" run_tests="true" check_prereqs="true" check_compat="true" +ci="false" +scope="" while [[ "${1:-}" != "" ]]; do case $1 in -h|--help) @@ -27,6 +29,9 @@ while [[ "${1:-}" != "" ]]; do --skip-compat) check_compat="false" ;; + --ci) + ci=true + ;; *) echo "Unrecognized parameter: $1" exit 1 @@ -48,6 +53,18 @@ fi echo "=============================================================================================" echo "installing..." +version=$(node -p "require('./package.json').version") +# this is super weird. If you run 'npm install' twice +# and it actually performs an install, then +# node-bundle test will fail with "npm ERR! maxAge must be a number". +# This won't happen in most instances because if nothing changes then npm install +# won't perform an install. +# In the pipeline however, npm install is run once when all the versions are '0.0.0' (via ./scripts/bump-candidate.sh) +# and then `align-versions` is run which updates all the versions to +# (for example) `2.74.0-rc.0` and then npm install is run again here. +if [ "$version" != "0.0.0" ]; then + rm -rf node_modules +fi yarn install --frozen-lockfile --network-timeout 1000000 fail() { @@ -72,21 +89,22 @@ node ./scripts/check-yarn-lock.js BUILD_INDICATOR=".BUILD_COMPLETED" rm -rf $BUILD_INDICATOR -# Speed up build by reusing calculated tree hashes -# On dev machine, this speeds up the TypeScript part of the build by ~30%. -export MERKLE_BUILD_CACHE=$(mktemp -d) -trap "rm -rf $MERKLE_BUILD_CACHE" EXIT - if [ "$run_tests" == "true" ]; then - runtarget="$runtarget+test" + runtarget="$runtarget,test" fi # Limit top-level concurrency to available CPUs - 1 to limit CPU load. concurrency=$(node -p 'Math.max(1, require("os").cpus().length - 1)') +flags="" +if [ "$ci" == "true" ]; then + flags="--stream --no-progress --skip-nx-cache" + export FORCE_COLOR=false +fi + echo "=============================================================================================" echo "building..." -time npx lerna run $bail --stream --concurrency=$concurrency $runtarget || fail +time npx lerna run $bail --concurrency=$concurrency $runtarget $flags || fail if [ "$check_compat" == "true" ]; then /bin/bash scripts/check-api-compatibility.sh diff --git a/buildspec-pr.yaml b/buildspec-pr.yaml index 5c76464d6f402..1af8b9de085ec 100644 --- a/buildspec-pr.yaml +++ b/buildspec-pr.yaml @@ -24,7 +24,7 @@ phases: - /bin/bash ./scripts/cache-load.sh build: commands: - - /bin/bash ./build.sh + - /bin/bash ./build.sh --ci # After compilation, run Rosetta (using the cache if available). # This will print errors, and fail the build if there are compilation errors in any packages marked as 'strict'. - /bin/bash ./scripts/run-rosetta.sh diff --git a/buildspec.yaml b/buildspec.yaml index 806a272451627..454e094297deb 100644 --- a/buildspec.yaml +++ b/buildspec.yaml @@ -30,7 +30,7 @@ phases: - codebuild-breakpoint - 'if ${BUMP_CANDIDATE:-false}; then env NODE_OPTIONS="--max-old-space-size=8196 ${NODE_OPTIONS:-}" /bin/bash ./scripts/bump-candidate.sh; fi' - /bin/bash ./scripts/align-version.sh - - /bin/bash ./build.sh + - /bin/bash ./build.sh --ci post_build: commands: # Short-circuit: Don't run pack if the above build failed. diff --git a/lerna.json b/lerna.json index b12a6e27cad78..c69ff3b1b8dd6 100644 --- a/lerna.json +++ b/lerna.json @@ -1,18 +1,29 @@ { - "lerna": "^4.0.0", "npmClient": "yarn", "useWorkspaces": true, "packages": [ - "packages/*", + "packages/aws-cdk-lib", + "packages/cdk-cli-wrapper", + "packages/cdk-assets", + "packages/aws-cdk", + "packages/cdk", "packages/@aws-cdk/*", + "packages/awslint", "packages/@aws-cdk-containers/*", "packages/@aws-cdk-testing/*", "packages/@aws-cdk/*/lambda-packages/*", - "tools/*", - "tools/@aws-cdk/*", - "scripts/@aws-cdk/script-tests", - "packages/individual-packages/*" + "tools/@aws-cdk/cdk-build-tools", + "tools/@aws-cdk/cdk-release", + "tools/@aws-cdk/cfn2ts", + "tools/@aws-cdk/eslint-plugin", + "tools/@aws-cdk/node-bundle", + "tools/@aws-cdk/pkglint", + "tools/@aws-cdk/pkgtools", + "tools/@aws-cdk/prlint", + "tools/@aws-cdk/yarn-cling", + "scripts/@aws-cdk/script-tests" ], "rejectCycles": "true", - "version": "0.0.0" + "version": "0.0.0", + "$schema": "node_modules/lerna/schemas/lerna-schema.json" } diff --git a/nx.json b/nx.json new file mode 100644 index 0000000000000..6d937a97274b2 --- /dev/null +++ b/nx.json @@ -0,0 +1,60 @@ +{ + "extends": "@nrwl/workspace/presets/npm.json", + "workspaceLayout": { }, + "tasksRunnerOptions": { + "default": { + "runner": "@nrwl/workspace/tasks-runners/default", + "options": { + "cacheableOperations": [ + "build", + "test", + "lint", + "package", + "prepare" + ] + } + } + }, + "targetDefaults": { + "build": { + "implicitDependencies": ["aws-cdk-lib"], + "dependsOn": ["^build"], + "inputs": [ + "{projectRoot}/lib/!(*.d|*.generated).ts", + "{projectRoot}/test/!(*.d).ts", + "!{workspaceRoot}/**/tsconfig.json", + "!{workspaceRoot}/**/tsconfig.json", + "!{workspaceRoot}/tsconfig.base.json", + "!{workspaceRoot}/**/tsconfig.tsbuildinfo" + ], + "outputs": [ + "!{projectRoot}/**/*.integ.snapshot/*", + "{projectRoot}/tsconfig.json", + "{projectRoot}/lib/aws-custom-resource/sdk-api-metadata.json", + "{projectRoot}/build-info.json", + "{projectRoot}/lib/**/*.js", + "{projectRoot}/lib/layer.zip", + "{projectRoot}/bin/**/*.js", + "{projectRoot}/lib/**/*.js.map", + "{projectRoot}/lib/**/*.generated.ts", + "{projectRoot}/lib/**/*.d.ts", + "{projectRoot}/test/**/*.d.ts", + "{projectRoot}/test/**/*.js", + "{projectRoot}/.jsii", + "{projectRoot}/spec/*.json", + "{projectRoot}/.warnings.jsii.js" + ] + }, + "test": { + "dependsOn": ["build"] + }, + }, + "affected": { + "defaultBase": "main" + }, + "pluginsConfig": { + "@nrwl/js": { + "analyzeSourceFiles": false + } + } +} diff --git a/package.json b/package.json index 89f1dbfff0c73..2c432112cdebd 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,7 @@ "pack": "./pack.sh", "compat": "./scripts/check-api-compatibility.sh", "bump": "./bump.sh", - "build-all": "tsc -b", - "postinstall": "patch-package --error-on-fail" + "build-all": "tsc -b" }, "devDependencies": { "@types/node": "18.11.19", @@ -28,10 +27,13 @@ "jsii-pacmak": "1.78.1", "jsii-reflect": "1.78.1", "jsii-rosetta": "~5.0.0", - "lerna": "^4.0.0", + "lerna": "^6.6.1", "patch-package": "^6.5.1", "semver": "^6.3.0", "standard-version": "^9.5.0", + "@nrwl/cli": "^15.9.1", + "@nrwl/workspace": "^15.9.1", + "nx": "^15.9.1", "typescript": "~4.9.5" }, "resolutions": { @@ -66,15 +68,26 @@ }, "workspaces": { "packages": [ - "packages/*", + "packages/aws-cdk-lib", + "packages/cdk-cli-wrapper", + "packages/aws-cdk", + "packages/cdk", + "packages/cdk-assets", "packages/@aws-cdk/*", + "packages/awslint", "packages/@aws-cdk-containers/*", "packages/@aws-cdk-testing/*", "packages/@aws-cdk/*/lambda-packages/*", - "tools/*", - "tools/@aws-cdk/*", - "scripts/@aws-cdk/script-tests", - "packages/individual-packages/*" + "tools/@aws-cdk/cdk-build-tools", + "tools/@aws-cdk/cdk-release", + "tools/@aws-cdk/cfn2ts", + "tools/@aws-cdk/eslint-plugin", + "tools/@aws-cdk/node-bundle", + "tools/@aws-cdk/pkglint", + "tools/@aws-cdk/pkgtools", + "tools/@aws-cdk/prlint", + "tools/@aws-cdk/yarn-cling", + "scripts/@aws-cdk/script-tests" ], "nohoist": [ "**/jszip", diff --git a/packages/@aws-cdk-testing/cli-integ/README.md b/packages/@aws-cdk-testing/cli-integ/README.md index 5235052342fd4..5d1f8e17cd62f 100644 --- a/packages/@aws-cdk-testing/cli-integ/README.md +++ b/packages/@aws-cdk-testing/cli-integ/README.md @@ -3,13 +3,7 @@ --- -![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge) - -> The APIs of higher level constructs in this module are experimental and under active development. -> They are subject to non-backward compatible changes or removal in any future version. These are -> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be -> announced in the release notes. This means that while you may use them, you may need to update -> your source code when upgrading to a newer version of this package. +![cdk-constructs: Stable](https://img.shields.io/badge/cdk--constructs-stable-success.svg?style=for-the-badge) --- diff --git a/packages/@aws-cdk-testing/cli-integ/package.json b/packages/@aws-cdk-testing/cli-integ/package.json index 1112571062f33..a4dbc205d2cf2 100644 --- a/packages/@aws-cdk-testing/cli-integ/package.json +++ b/packages/@aws-cdk-testing/cli-integ/package.json @@ -43,7 +43,7 @@ "axios": "^0.27.2", "fs-extra": "^9.1.0", "glob": "^7.2.3", - "jest": "^27.5.1", + "jest": "^29.5.0", "jest-junit": "^14.0.1", "make-runnable": "^1.4.1", "npm": "^8.19.4", @@ -66,8 +66,8 @@ "engines": { "node": ">= 14.15.0" }, - "stability": "experimental", - "maturity": "experimental", + "stability": "stable", + "maturity": "stable", "publishConfig": { "tag": "latest" } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.assets.json new file mode 100644 index 0000000000000..755e822e347e8 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "0765ff416c5e4523ba0bbdb8e53aff6c7d624c5023c3a04e16b3da31551a31c7": { + "source": { + "path": "Standard1.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "0765ff416c5e4523ba0bbdb8e53aff6c7d624c5023c3a04e16b3da31551a31c7.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.template.json new file mode 100644 index 0000000000000..d70df6a0aba6f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard1.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:1.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.assets.json new file mode 100644 index 0000000000000..e79b6d8813ded --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "08a2977eefcf75da71bd1943117cf924fc65c22ec81f9d9e78f6d43939c4238a": { + "source": { + "path": "Standard2.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "08a2977eefcf75da71bd1943117cf924fc65c22ec81f9d9e78f6d43939c4238a.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.template.json new file mode 100644 index 0000000000000..6cce9fdf4abe4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard2.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:2.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.assets.json new file mode 100644 index 0000000000000..c0f8394977bb3 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "569c53ecf3ac6a3689f5dc2237acb0462153cc9981156783f7ce21e9ec7048e4": { + "source": { + "path": "Standard3.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "569c53ecf3ac6a3689f5dc2237acb0462153cc9981156783f7ce21e9ec7048e4.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.template.json new file mode 100644 index 0000000000000..b007106b7c8cc --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard3.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:3.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.assets.json new file mode 100644 index 0000000000000..2aa1669f8b90f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "e87ce0c146ad847f8225b1e7c81d1e79cf334ac4464a24d44f3ce1e0c39ecbe3": { + "source": { + "path": "Standard4.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "e87ce0c146ad847f8225b1e7c81d1e79cf334ac4464a24d44f3ce1e0c39ecbe3.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.template.json new file mode 100644 index 0000000000000..59dc5a3782f2f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard4.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:4.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.assets.json new file mode 100644 index 0000000000000..a3cf9918d2e91 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "0dfcc5c056939442308e0b8e38292b9293b275a0eecf3d382043ac8c953c72ac": { + "source": { + "path": "Standard5.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "0dfcc5c056939442308e0b8e38292b9293b275a0eecf3d382043ac8c953c72ac.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.template.json new file mode 100644 index 0000000000000..426bc1701c31b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard5.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:5.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.assets.json new file mode 100644 index 0000000000000..74bd6a982d957 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "6fd89de9f17a38d22f076e4c10626dfbba0a422eac2dc83e27c6874b7732f707": { + "source": { + "path": "Standard6.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "6fd89de9f17a38d22f076e4c10626dfbba0a422eac2dc83e27c6874b7732f707.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.template.json new file mode 100644 index 0000000000000..28737d87b7740 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard6.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:6.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.assets.json new file mode 100644 index 0000000000000..2fe0ff19c256a --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "6e25bcdafb5594065cd58ae13517e1e8ca7c20492f15aaf01e44cfb603c72c1c": { + "source": { + "path": "Standard7.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "6e25bcdafb5594065cd58ae13517e1e8ca7c20492f15aaf01e44cfb603c72c1c.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.template.json new file mode 100644 index 0000000000000..94514b168a407 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/Standard7.template.json @@ -0,0 +1,191 @@ +{ + "Resources": { + "ProjectRole4CCB274E": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "ProjectRoleDefaultPolicy7F29461B": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "ProjectRoleDefaultPolicy7F29461B", + "Roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "ProjectC78D97AD": { + "Type": "AWS::CodeBuild::Project", + "Properties": { + "Artifacts": { + "Type": "NO_ARTIFACTS" + }, + "Environment": { + "ComputeType": "BUILD_GENERAL1_SMALL", + "Image": "aws/codebuild/standard:7.0", + "ImagePullCredentialsType": "CODEBUILD", + "PrivilegedMode": false, + "Type": "LINUX_CONTAINER" + }, + "ServiceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "Source": { + "BuildSpec": "{\n \"version\": \"0.2\"\n}", + "Type": "NO_SOURCE" + }, + "Cache": { + "Type": "NO_CACHE" + }, + "EncryptionKey": "alias/aws/s3" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/cdk.out new file mode 100644 index 0000000000000..7925065efbcc4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integ.json new file mode 100644 index 0000000000000..c37c4f2beeb1f --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integ.json @@ -0,0 +1,18 @@ +{ + "version": "31.0.0", + "testCases": { + "integ-project-standard-images/DefaultTest": { + "stacks": [ + "Standard1", + "Standard2", + "Standard3", + "Standard4", + "Standard5", + "Standard6", + "Standard7" + ], + "assertionStack": "integ-project-standard-images/DefaultTest/DeployAssert", + "assertionStackName": "integprojectstandardimagesDefaultTestDeployAssertFEF871A7" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets.json new file mode 100644 index 0000000000000..1a3ce5729fa6e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/manifest.json new file mode 100644 index 0000000000000..888cf7d65ce10 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/manifest.json @@ -0,0 +1,513 @@ +{ + "version": "31.0.0", + "artifacts": { + "Standard1.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard1.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard1": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard1.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/0765ff416c5e4523ba0bbdb8e53aff6c7d624c5023c3a04e16b3da31551a31c7.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard1.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard1.assets" + ], + "metadata": { + "/Standard1/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard1/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard1/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard1/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard1/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard1" + }, + "Standard2.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard2.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard2": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard2.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/08a2977eefcf75da71bd1943117cf924fc65c22ec81f9d9e78f6d43939c4238a.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard2.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard2.assets" + ], + "metadata": { + "/Standard2/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard2/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard2/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard2/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard2/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard2" + }, + "Standard3.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard3.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard3": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard3.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/569c53ecf3ac6a3689f5dc2237acb0462153cc9981156783f7ce21e9ec7048e4.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard3.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard3.assets" + ], + "metadata": { + "/Standard3/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard3/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard3/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard3/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard3/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard3" + }, + "Standard4.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard4.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard4": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard4.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e87ce0c146ad847f8225b1e7c81d1e79cf334ac4464a24d44f3ce1e0c39ecbe3.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard4.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard4.assets" + ], + "metadata": { + "/Standard4/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard4/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard4/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard4/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard4/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard4" + }, + "Standard5.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard5.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard5": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard5.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/0dfcc5c056939442308e0b8e38292b9293b275a0eecf3d382043ac8c953c72ac.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard5.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard5.assets" + ], + "metadata": { + "/Standard5/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard5/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard5/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard5/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard5/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard5" + }, + "Standard6.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard6.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard6": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard6.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/6fd89de9f17a38d22f076e4c10626dfbba0a422eac2dc83e27c6874b7732f707.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard6.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard6.assets" + ], + "metadata": { + "/Standard6/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard6/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard6/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard6/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard6/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard6" + }, + "Standard7.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "Standard7.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "Standard7": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "Standard7.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/6e25bcdafb5594065cd58ae13517e1e8ca7c20492f15aaf01e44cfb603c72c1c.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "Standard7.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "Standard7.assets" + ], + "metadata": { + "/Standard7/Project/Role/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRole4CCB274E" + } + ], + "/Standard7/Project/Role/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectRoleDefaultPolicy7F29461B" + } + ], + "/Standard7/Project/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ProjectC78D97AD" + } + ], + "/Standard7/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/Standard7/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "Standard7" + }, + "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "integprojectstandardimagesDefaultTestDeployAssertFEF871A7": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "integprojectstandardimagesDefaultTestDeployAssertFEF871A7.assets" + ], + "metadata": { + "/integ-project-standard-images/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/integ-project-standard-images/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "integ-project-standard-images/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/tree.json new file mode 100644 index 0000000000000..301d8de92cd91 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.js.snapshot/tree.json @@ -0,0 +1,1762 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "Standard1": { + "id": "Standard1", + "path": "Standard1", + "children": { + "Project": { + "id": "Project", + "path": "Standard1/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard1/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard1/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard1/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard1/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard1/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard1/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:1.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard1/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard1/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard2": { + "id": "Standard2", + "path": "Standard2", + "children": { + "Project": { + "id": "Project", + "path": "Standard2/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard2/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard2/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard2/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard2/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard2/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard2/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:2.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard2/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard2/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard3": { + "id": "Standard3", + "path": "Standard3", + "children": { + "Project": { + "id": "Project", + "path": "Standard3/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard3/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard3/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard3/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard3/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard3/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard3/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:3.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard3/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard3/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard4": { + "id": "Standard4", + "path": "Standard4", + "children": { + "Project": { + "id": "Project", + "path": "Standard4/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard4/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard4/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard4/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard4/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard4/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard4/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:4.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard4/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard4/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard5": { + "id": "Standard5", + "path": "Standard5", + "children": { + "Project": { + "id": "Project", + "path": "Standard5/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard5/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard5/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard5/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard5/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard5/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard5/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:5.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard5/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard5/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard6": { + "id": "Standard6", + "path": "Standard6", + "children": { + "Project": { + "id": "Project", + "path": "Standard6/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard6/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard6/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard6/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard6/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard6/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard6/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:6.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard6/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard6/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Standard7": { + "id": "Standard7", + "path": "Standard7", + "children": { + "Project": { + "id": "Project", + "path": "Standard7/Project", + "children": { + "Role": { + "id": "Role", + "path": "Standard7/Project/Role", + "children": { + "ImportRole": { + "id": "ImportRole", + "path": "Standard7/Project/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard7/Project/Role/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "codebuild.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "Standard7/Project/Role/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "Standard7/Project/Role/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": [ + "logs:CreateLogGroup", + "logs:CreateLogStream", + "logs:PutLogEvents" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + }, + ":*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":logs:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":log-group:/aws/codebuild/", + { + "Ref": "ProjectC78D97AD" + } + ] + ] + } + ] + }, + { + "Action": [ + "codebuild:BatchPutCodeCoverages", + "codebuild:BatchPutTestCases", + "codebuild:CreateReport", + "codebuild:CreateReportGroup", + "codebuild:UpdateReport" + ], + "Effect": "Allow", + "Resource": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":codebuild:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":report-group/", + { + "Ref": "ProjectC78D97AD" + }, + "-*" + ] + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "ProjectRoleDefaultPolicy7F29461B", + "roles": [ + { + "Ref": "ProjectRole4CCB274E" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "Standard7/Project/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::CodeBuild::Project", + "aws:cdk:cloudformation:props": { + "artifacts": { + "type": "NO_ARTIFACTS" + }, + "environment": { + "type": "LINUX_CONTAINER", + "image": "aws/codebuild/standard:7.0", + "imagePullCredentialsType": "CODEBUILD", + "privilegedMode": false, + "computeType": "BUILD_GENERAL1_SMALL" + }, + "serviceRole": { + "Fn::GetAtt": [ + "ProjectRole4CCB274E", + "Arn" + ] + }, + "source": { + "type": "NO_SOURCE", + "buildSpec": "{\n \"version\": \"0.2\"\n}" + }, + "cache": { + "type": "NO_CACHE" + }, + "encryptionKey": "alias/aws/s3" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.CfnProject", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_codebuild.Project", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "Standard7/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "Standard7/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "integ-project-standard-images": { + "id": "integ-project-standard-images", + "path": "integ-project-standard-images", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "integ-project-standard-images/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "integ-project-standard-images/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "integ-project-standard-images/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integ-project-standard-images/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integ-project-standard-images/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.ts new file mode 100644 index 0000000000000..544715b66244d --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-codebuild/test/integ.project-standard-image.ts @@ -0,0 +1,32 @@ +import { App, Stack } from 'aws-cdk-lib'; +import { Construct } from 'constructs'; +import { BuildSpec, IBuildImage, LinuxBuildImage, Project } from 'aws-cdk-lib/aws-codebuild'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; + +class ImageTestStack extends Stack { + constructor(scope: Construct, id: string, image: IBuildImage) { + super(scope, id); + new Project(this, 'Project', { + buildSpec: BuildSpec.fromObject({ + version: '0.2', + }), + environment: { + buildImage: image, + }, + }); + } +} + +const app = new App(); + +new IntegTest(app, 'integ-project-standard-images', { + testCases: [ + new ImageTestStack(app, 'Standard1', LinuxBuildImage.STANDARD_1_0), + new ImageTestStack(app, 'Standard2', LinuxBuildImage.STANDARD_2_0), + new ImageTestStack(app, 'Standard3', LinuxBuildImage.STANDARD_3_0), + new ImageTestStack(app, 'Standard4', LinuxBuildImage.STANDARD_4_0), + new ImageTestStack(app, 'Standard5', LinuxBuildImage.STANDARD_5_0), + new ImageTestStack(app, 'Standard6', LinuxBuildImage.STANDARD_6_0), + new ImageTestStack(app, 'Standard7', LinuxBuildImage.STANDARD_7_0), + ], +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.assets.json index 00058a98a23b2..f92d03dc21113 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "31.0.0", "files": { - "96ed71a745135c6cdc305de7c81c1a68f705200d6a27acf0d1f9828e39c3ec6a": { + "5af7ba12267a159dc170dcfafe00ee90f79f94f96c245bfe38593f53d0a41052": { "source": { "path": "aws-cdk-dynamodb-kinesis-stream.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "96ed71a745135c6cdc305de7c81c1a68f705200d6a27acf0d1f9828e39c3ec6a.json", + "objectKey": "5af7ba12267a159dc170dcfafe00ee90f79f94f96c245bfe38593f53d0a41052.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.template.json index 02585c275e499..802ae689be554 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/aws-cdk-dynamodb-kinesis-stream.template.json @@ -16,9 +16,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/cdk.out index 588d7b269d34f..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/integ.json index 987134047a036..010c920cbd447 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "31.0.0", "testCases": { "integ.dynamodb.kinesis-stream": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/manifest.json index f836df08ba35c..b65eb439d1b83 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "aws-cdk-dynamodb-kinesis-stream.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/96ed71a745135c6cdc305de7c81c1a68f705200d6a27acf0d1f9828e39c3ec6a.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/5af7ba12267a159dc170dcfafe00ee90f79f94f96c245bfe38593f53d0a41052.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -71,6 +65,12 @@ ] }, "displayName": "aws-cdk-dynamodb-kinesis-stream" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/tree.json index 86bf95d1ac136..c2215497f1d00 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-dynamodb/test/integ.dynamodb.kinesis-stream.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "aws-cdk-dynamodb-kinesis-stream": { "id": "aws-cdk-dynamodb-kinesis-stream", "path": "aws-cdk-dynamodb-kinesis-stream", @@ -39,20 +31,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -60,8 +49,8 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "aws-cdk-dynamodb-kinesis-stream/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" } }, "Table": { @@ -101,7 +90,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-dynamodb.CfnTable", + "fqn": "aws-cdk-lib.aws_dynamodb.CfnTable", "version": "0.0.0" } }, @@ -109,26 +98,50 @@ "id": "ScalingRole", "path": "aws-cdk-dynamodb-kinesis-stream/Table/ScalingRole", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-dynamodb.Table", + "fqn": "aws-cdk-lib.aws_dynamodb.Table", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-dynamodb-kinesis-stream/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-dynamodb-kinesis-stream/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/cdk.out new file mode 100644 index 0000000000000..7925065efbcc4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.assets.json new file mode 100644 index 0000000000000..8381633003d10 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "09b19c98d056dc3ddd9d9852de04232c8c27cdfbb4aa83797c6f9e1e118068d5": { + "source": { + "path": "integ-ec2-machine-image-test.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "09b19c98d056dc3ddd9d9852de04232c8c27cdfbb4aa83797c6f9e1e118068d5.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.template.json new file mode 100644 index 0000000000000..0a742ab93e8b0 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ-ec2-machine-image-test.template.json @@ -0,0 +1,849 @@ +{ + "Resources": { + "Vpc8378EB38": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc" + } + ] + } + }, + "VpcPublicSubnet1Subnet5C2D37C4": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1a", + "CidrBlock": "10.0.0.0/19", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "VpcPublicSubnet1RouteTable6C95E38E": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } + }, + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + } + }, + "DependsOn": [ + "VpcVPCGWBF912B6E" + ] + }, + "VpcPublicSubnet1EIPD7E02669": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "VpcPublicSubnet1NATGateway4D7517AA": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "SubnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "AllocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet1EIPD7E02669", + "AllocationId" + ] + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + }, + "DependsOn": [ + "VpcPublicSubnet1DefaultRoute3DA9E72A", + "VpcPublicSubnet1RouteTableAssociation97140677" + ] + }, + "VpcPublicSubnet2Subnet691E08A3": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1b", + "CidrBlock": "10.0.32.0/19", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "VpcPublicSubnet2RouteTable94F7E489": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } + }, + "VpcPublicSubnet2DefaultRoute97F91067": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + } + }, + "DependsOn": [ + "VpcVPCGWBF912B6E" + ] + }, + "VpcPublicSubnet2EIP3C605A87": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "VpcPublicSubnet2NATGateway9182C01D": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "SubnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + }, + "AllocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet2EIP3C605A87", + "AllocationId" + ] + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + }, + "DependsOn": [ + "VpcPublicSubnet2DefaultRoute97F91067", + "VpcPublicSubnet2RouteTableAssociationDD5762D8" + ] + }, + "VpcPublicSubnet3SubnetBE12F0B6": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1c", + "CidrBlock": "10.0.64.0/19", + "MapPublicIpOnLaunch": true, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Public" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Public" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "VpcPublicSubnet3RouteTable93458DBB": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "VpcPublicSubnet3RouteTableAssociation1F1EDF02": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet3RouteTable93458DBB" + }, + "SubnetId": { + "Ref": "VpcPublicSubnet3SubnetBE12F0B6" + } + } + }, + "VpcPublicSubnet3DefaultRoute4697774F": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPublicSubnet3RouteTable93458DBB" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": { + "Ref": "VpcIGWD7BA715C" + } + }, + "DependsOn": [ + "VpcVPCGWBF912B6E" + ] + }, + "VpcPublicSubnet3EIP3A666A23": { + "Type": "AWS::EC2::EIP", + "Properties": { + "Domain": "vpc", + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "VpcPublicSubnet3NATGateway7640CD1D": { + "Type": "AWS::EC2::NatGateway", + "Properties": { + "SubnetId": { + "Ref": "VpcPublicSubnet3SubnetBE12F0B6" + }, + "AllocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet3EIP3A666A23", + "AllocationId" + ] + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + }, + "DependsOn": [ + "VpcPublicSubnet3DefaultRoute4697774F", + "VpcPublicSubnet3RouteTableAssociation1F1EDF02" + ] + }, + "VpcPrivateSubnet1Subnet536B997A": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1a", + "CidrBlock": "10.0.96.0/19", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1" + } + ] + } + }, + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1" + } + ] + } + }, + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } + }, + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + } + } + }, + "VpcPrivateSubnet2Subnet3788AAA1": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1b", + "CidrBlock": "10.0.128.0/19", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2" + } + ] + } + }, + "VpcPrivateSubnet2RouteTableA678073B": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2" + } + ] + } + }, + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } + }, + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet2NATGateway9182C01D" + } + } + }, + "VpcPrivateSubnet3SubnetF258B56E": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "AvailabilityZone": "test-region-1c", + "CidrBlock": "10.0.160.0/19", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "Private" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Private" + }, + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3" + } + ] + } + }, + "VpcPrivateSubnet3RouteTableD98824C7": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3" + } + ] + } + }, + "VpcPrivateSubnet3RouteTableAssociation16BDDC43": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet3RouteTableD98824C7" + }, + "SubnetId": { + "Ref": "VpcPrivateSubnet3SubnetF258B56E" + } + } + }, + "VpcPrivateSubnet3DefaultRoute94B74F0D": { + "Type": "AWS::EC2::Route", + "Properties": { + "RouteTableId": { + "Ref": "VpcPrivateSubnet3RouteTableD98824C7" + }, + "DestinationCidrBlock": "0.0.0.0/0", + "NatGatewayId": { + "Ref": "VpcPublicSubnet3NATGateway7640CD1D" + } + } + }, + "VpcIGWD7BA715C": { + "Type": "AWS::EC2::InternetGateway", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/Vpc" + } + ] + } + }, + "VpcVPCGWBF912B6E": { + "Type": "AWS::EC2::VPCGatewayAttachment", + "Properties": { + "VpcId": { + "Ref": "Vpc8378EB38" + }, + "InternetGatewayId": { + "Ref": "VpcIGWD7BA715C" + } + } + }, + "amzn2InstanceSecurityGroup63173C03": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "integ-ec2-machine-image-test/amzn2/InstanceSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/amzn2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "amzn2InstanceRole3F1DBBD2": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/amzn2" + } + ] + } + }, + "amzn2InstanceProfileC501DBD1": { + "Type": "AWS::IAM::InstanceProfile", + "Properties": { + "Roles": [ + { + "Ref": "amzn2InstanceRole3F1DBBD2" + } + ] + } + }, + "amzn25D7FDCED": { + "Type": "AWS::EC2::Instance", + "Properties": { + "AvailabilityZone": "test-region-1a", + "IamInstanceProfile": { + "Ref": "amzn2InstanceProfileC501DBD1" + }, + "ImageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "InstanceType": "t3.nano", + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "amzn2InstanceSecurityGroup63173C03", + "GroupId" + ] + } + ], + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/amzn2" + } + ], + "UserData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "DependsOn": [ + "amzn2InstanceRole3F1DBBD2" + ] + }, + "al2022InstanceSecurityGroupD2B46A06": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "integ-ec2-machine-image-test/al2022/InstanceSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2022" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "al2022InstanceRole6711C818": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2022" + } + ] + } + }, + "al2022InstanceProfileAA7ED3DD": { + "Type": "AWS::IAM::InstanceProfile", + "Properties": { + "Roles": [ + { + "Ref": "al2022InstanceRole6711C818" + } + ] + } + }, + "al20225AC492C0": { + "Type": "AWS::EC2::Instance", + "Properties": { + "AvailabilityZone": "test-region-1a", + "IamInstanceProfile": { + "Ref": "al2022InstanceProfileAA7ED3DD" + }, + "ImageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2022amikernel515x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "InstanceType": "t3.nano", + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "al2022InstanceSecurityGroupD2B46A06", + "GroupId" + ] + } + ], + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2022" + } + ], + "UserData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "DependsOn": [ + "al2022InstanceRole6711C818" + ] + }, + "al2023InstanceSecurityGroupB018A9BC": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "integ-ec2-machine-image-test/al2023/InstanceSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2023" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "al2023InstanceRoleECC2D6DD": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "ec2.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2023" + } + ] + } + }, + "al2023InstanceProfileAB8077E0": { + "Type": "AWS::IAM::InstanceProfile", + "Properties": { + "Roles": [ + { + "Ref": "al2023InstanceRoleECC2D6DD" + } + ] + } + }, + "al20231AC01FE4": { + "Type": "AWS::EC2::Instance", + "Properties": { + "AvailabilityZone": "test-region-1a", + "IamInstanceProfile": { + "Ref": "al2023InstanceProfileAB8077E0" + }, + "ImageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "InstanceType": "t3.nano", + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "al2023InstanceSecurityGroupB018A9BC", + "GroupId" + ] + } + ], + "SubnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "Tags": [ + { + "Key": "Name", + "Value": "integ-ec2-machine-image-test/al2023" + } + ], + "UserData": { + "Fn::Base64": "#!/bin/bash" + } + }, + "DependsOn": [ + "al2023InstanceRoleECC2D6DD" + ] + } + }, + "Parameters": { + "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-gp2" + }, + "SsmParameterValueawsserviceamiamazonlinuxlatestal2022amikernel515x8664C96584B6F00A464EAD1953AFF4B05118Parameter": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-5.15-x86_64" + }, + "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61x8664C96584B6F00A464EAD1953AFF4B05118Parameter": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-x86_64" + }, + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ.json new file mode 100644 index 0000000000000..63242ceb48d4e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integ.json @@ -0,0 +1,13 @@ +{ + "enableLookups": true, + "version": "31.0.0", + "testCases": { + "integ-test/DefaultTest": { + "stacks": [ + "integ-ec2-machine-image-test" + ], + "assertionStack": "integ-test/DefaultTest/DeployAssert", + "assertionStackName": "integtestDefaultTestDeployAssert24D5C536" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json new file mode 100644 index 0000000000000..ecd9f6bd2a455 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "integtestDefaultTestDeployAssert24D5C536.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/manifest.json new file mode 100644 index 0000000000000..ce2fed289c1b9 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/manifest.json @@ -0,0 +1,393 @@ +{ + "version": "31.0.0", + "artifacts": { + "integ-ec2-machine-image-test.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "integ-ec2-machine-image-test.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "integ-ec2-machine-image-test": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "integ-ec2-machine-image-test.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/09b19c98d056dc3ddd9d9852de04232c8c27cdfbb4aa83797c6f9e1e118068d5.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "integ-ec2-machine-image-test.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "integ-ec2-machine-image-test.assets" + ], + "metadata": { + "/integ-ec2-machine-image-test/Vpc/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Vpc8378EB38" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1Subnet5C2D37C4" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1RouteTable6C95E38E" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1RouteTableAssociation97140677" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1DefaultRoute3DA9E72A" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1EIPD7E02669" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet1/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet1NATGateway4D7517AA" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2Subnet691E08A3" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2RouteTable94F7E489" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2RouteTableAssociationDD5762D8" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2DefaultRoute97F91067" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2EIP3C605A87" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet2/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet2NATGateway9182C01D" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3SubnetBE12F0B6" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3RouteTable93458DBB" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3RouteTableAssociation1F1EDF02" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3DefaultRoute4697774F" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/EIP": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3EIP3A666A23" + } + ], + "/integ-ec2-machine-image-test/Vpc/PublicSubnet3/NATGateway": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPublicSubnet3NATGateway7640CD1D" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1Subnet536B997A" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1RouteTableB2C5B500" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1RouteTableAssociation70C59FA6" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet1/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet1DefaultRouteBE02A9ED" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2Subnet3788AAA1" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2RouteTableA678073B" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2RouteTableAssociationA89CAD56" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet2/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet2DefaultRoute060D2087" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet3/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet3SubnetF258B56E" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet3/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet3RouteTableD98824C7" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet3/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet3RouteTableAssociation16BDDC43" + } + ], + "/integ-ec2-machine-image-test/Vpc/PrivateSubnet3/DefaultRoute": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcPrivateSubnet3DefaultRoute94B74F0D" + } + ], + "/integ-ec2-machine-image-test/Vpc/IGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcIGWD7BA715C" + } + ], + "/integ-ec2-machine-image-test/Vpc/VPCGW": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcVPCGWBF912B6E" + } + ], + "/integ-ec2-machine-image-test/amzn2/InstanceSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "amzn2InstanceSecurityGroup63173C03" + } + ], + "/integ-ec2-machine-image-test/amzn2/InstanceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "amzn2InstanceRole3F1DBBD2" + } + ], + "/integ-ec2-machine-image-test/amzn2/InstanceProfile": [ + { + "type": "aws:cdk:logicalId", + "data": "amzn2InstanceProfileC501DBD1" + } + ], + "/integ-ec2-machine-image-test/amzn2/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "amzn25D7FDCED" + } + ], + "/integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + { + "type": "aws:cdk:logicalId", + "data": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + } + ], + "/integ-ec2-machine-image-test/al2022/InstanceSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al2022InstanceSecurityGroupD2B46A06" + } + ], + "/integ-ec2-machine-image-test/al2022/InstanceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al2022InstanceRole6711C818" + } + ], + "/integ-ec2-machine-image-test/al2022/InstanceProfile": [ + { + "type": "aws:cdk:logicalId", + "data": "al2022InstanceProfileAA7ED3DD" + } + ], + "/integ-ec2-machine-image-test/al2022/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al20225AC492C0" + } + ], + "/integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + { + "type": "aws:cdk:logicalId", + "data": "SsmParameterValueawsserviceamiamazonlinuxlatestal2022amikernel515x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + } + ], + "/integ-ec2-machine-image-test/al2023/InstanceSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al2023InstanceSecurityGroupB018A9BC" + } + ], + "/integ-ec2-machine-image-test/al2023/InstanceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al2023InstanceRoleECC2D6DD" + } + ], + "/integ-ec2-machine-image-test/al2023/InstanceProfile": [ + { + "type": "aws:cdk:logicalId", + "data": "al2023InstanceProfileAB8077E0" + } + ], + "/integ-ec2-machine-image-test/al2023/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "al20231AC01FE4" + } + ], + "/integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": [ + { + "type": "aws:cdk:logicalId", + "data": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + } + ], + "/integ-ec2-machine-image-test/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/integ-ec2-machine-image-test/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "integ-ec2-machine-image-test" + }, + "integtestDefaultTestDeployAssert24D5C536.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "integtestDefaultTestDeployAssert24D5C536.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "integtestDefaultTestDeployAssert24D5C536": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "integtestDefaultTestDeployAssert24D5C536.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "integtestDefaultTestDeployAssert24D5C536.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "integtestDefaultTestDeployAssert24D5C536.assets" + ], + "metadata": { + "/integ-test/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "integ-test/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/tree.json new file mode 100644 index 0000000000000..de0c9ba0e7bc9 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.js.snapshot/tree.json @@ -0,0 +1,1510 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "integ-ec2-machine-image-test": { + "id": "integ-ec2-machine-image-test", + "path": "integ-ec2-machine-image-test", + "children": { + "Vpc": { + "id": "Vpc", + "path": "integ-ec2-machine-image-test/Vpc", + "children": { + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/Vpc/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPC", + "aws:cdk:cloudformation:props": { + "cidrBlock": "10.0.0.0/16", + "enableDnsHostnames": true, + "enableDnsSupport": true, + "instanceTenancy": "default", + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", + "version": "0.0.0" + } + }, + "PublicSubnet1": { + "id": "PublicSubnet1", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1a", + "cidrBlock": "10.0.0.0/19", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "subnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet1RouteTable6C95E38E" + }, + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VpcIGWD7BA715C" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet1/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "subnetId": { + "Ref": "VpcPublicSubnet1Subnet5C2D37C4" + }, + "allocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet1EIPD7E02669", + "AllocationId" + ] + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet2": { + "id": "PublicSubnet2", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1b", + "cidrBlock": "10.0.32.0/19", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "subnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet2RouteTable94F7E489" + }, + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VpcIGWD7BA715C" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet2/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "subnetId": { + "Ref": "VpcPublicSubnet2Subnet691E08A3" + }, + "allocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet2EIP3C605A87", + "AllocationId" + ] + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PublicSubnet3": { + "id": "PublicSubnet3", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1c", + "cidrBlock": "10.0.64.0/19", + "mapPublicIpOnLaunch": true, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Public" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Public" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet3RouteTable93458DBB" + }, + "subnetId": { + "Ref": "VpcPublicSubnet3SubnetBE12F0B6" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPublicSubnet3RouteTable93458DBB" + }, + "destinationCidrBlock": "0.0.0.0/0", + "gatewayId": { + "Ref": "VpcIGWD7BA715C" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + }, + "EIP": { + "id": "EIP", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/EIP", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::EIP", + "aws:cdk:cloudformation:props": { + "domain": "vpc", + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnEIP", + "version": "0.0.0" + } + }, + "NATGateway": { + "id": "NATGateway", + "path": "integ-ec2-machine-image-test/Vpc/PublicSubnet3/NATGateway", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::NatGateway", + "aws:cdk:cloudformation:props": { + "subnetId": { + "Ref": "VpcPublicSubnet3SubnetBE12F0B6" + }, + "allocationId": { + "Fn::GetAtt": [ + "VpcPublicSubnet3EIP3A666A23", + "AllocationId" + ] + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PublicSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnNatGateway", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet1": { + "id": "PrivateSubnet1", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1a", + "cidrBlock": "10.0.96.0/19", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "subnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet1/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet1RouteTableB2C5B500" + }, + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VpcPublicSubnet1NATGateway4D7517AA" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet2": { + "id": "PrivateSubnet2", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1b", + "cidrBlock": "10.0.128.0/19", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "subnetId": { + "Ref": "VpcPrivateSubnet2Subnet3788AAA1" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet2/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet2RouteTableA678073B" + }, + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VpcPublicSubnet2NATGateway9182C01D" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "PrivateSubnet3": { + "id": "PrivateSubnet3", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3", + "children": { + "Subnet": { + "id": "Subnet", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3/Subnet", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Subnet", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "availabilityZone": "test-region-1c", + "cidrBlock": "10.0.160.0/19", + "mapPublicIpOnLaunch": false, + "tags": [ + { + "key": "aws-cdk:subnet-name", + "value": "Private" + }, + { + "key": "aws-cdk:subnet-type", + "value": "Private" + }, + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", + "version": "0.0.0" + } + }, + "Acl": { + "id": "Acl", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3/Acl", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "RouteTable": { + "id": "RouteTable", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3/RouteTable", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::RouteTable", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", + "version": "0.0.0" + } + }, + "RouteTableAssociation": { + "id": "RouteTableAssociation", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3/RouteTableAssociation", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SubnetRouteTableAssociation", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet3RouteTableD98824C7" + }, + "subnetId": { + "Ref": "VpcPrivateSubnet3SubnetF258B56E" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", + "version": "0.0.0" + } + }, + "DefaultRoute": { + "id": "DefaultRoute", + "path": "integ-ec2-machine-image-test/Vpc/PrivateSubnet3/DefaultRoute", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Route", + "aws:cdk:cloudformation:props": { + "routeTableId": { + "Ref": "VpcPrivateSubnet3RouteTableD98824C7" + }, + "destinationCidrBlock": "0.0.0.0/0", + "natGatewayId": { + "Ref": "VpcPublicSubnet3NATGateway7640CD1D" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", + "version": "0.0.0" + } + }, + "IGW": { + "id": "IGW", + "path": "integ-ec2-machine-image-test/Vpc/IGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::InternetGateway", + "aws:cdk:cloudformation:props": { + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/Vpc" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", + "version": "0.0.0" + } + }, + "VPCGW": { + "id": "VPCGW", + "path": "integ-ec2-machine-image-test/Vpc/VPCGW", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::VPCGatewayAttachment", + "aws:cdk:cloudformation:props": { + "vpcId": { + "Ref": "Vpc8378EB38" + }, + "internetGatewayId": { + "Ref": "VpcIGWD7BA715C" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "amzn2": { + "id": "amzn2", + "path": "integ-ec2-machine-image-test/amzn2", + "children": { + "InstanceSecurityGroup": { + "id": "InstanceSecurityGroup", + "path": "integ-ec2-machine-image-test/amzn2/InstanceSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/amzn2/InstanceSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "integ-ec2-machine-image-test/amzn2/InstanceSecurityGroup", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/amzn2" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "InstanceRole": { + "id": "InstanceRole", + "path": "integ-ec2-machine-image-test/amzn2/InstanceRole", + "children": { + "ImportInstanceRole": { + "id": "ImportInstanceRole", + "path": "integ-ec2-machine-image-test/amzn2/InstanceRole/ImportInstanceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/amzn2/InstanceRole/Resource", + "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" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/amzn2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "InstanceProfile": { + "id": "InstanceProfile", + "path": "integ-ec2-machine-image-test/amzn2/InstanceProfile", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::InstanceProfile", + "aws:cdk:cloudformation:props": { + "roles": [ + { + "Ref": "amzn2InstanceRole3F1DBBD2" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/amzn2/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Instance", + "aws:cdk:cloudformation:props": { + "availabilityZone": "test-region-1a", + "iamInstanceProfile": { + "Ref": "amzn2InstanceProfileC501DBD1" + }, + "imageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "instanceType": "t3.nano", + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "amzn2InstanceSecurityGroup63173C03", + "GroupId" + ] + } + ], + "subnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/amzn2" + } + ], + "userData": { + "Fn::Base64": "#!/bin/bash" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Instance", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--amzn2-ami-kernel-5.10-hvm-x86_64-gp2:C96584B6-F00A-464E-AD19-53AFF4B05118", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "al2022": { + "id": "al2022", + "path": "integ-ec2-machine-image-test/al2022", + "children": { + "InstanceSecurityGroup": { + "id": "InstanceSecurityGroup", + "path": "integ-ec2-machine-image-test/al2022/InstanceSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2022/InstanceSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "integ-ec2-machine-image-test/al2022/InstanceSecurityGroup", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2022" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "InstanceRole": { + "id": "InstanceRole", + "path": "integ-ec2-machine-image-test/al2022/InstanceRole", + "children": { + "ImportInstanceRole": { + "id": "ImportInstanceRole", + "path": "integ-ec2-machine-image-test/al2022/InstanceRole/ImportInstanceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2022/InstanceRole/Resource", + "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" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2022" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "InstanceProfile": { + "id": "InstanceProfile", + "path": "integ-ec2-machine-image-test/al2022/InstanceProfile", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::InstanceProfile", + "aws:cdk:cloudformation:props": { + "roles": [ + { + "Ref": "al2022InstanceRole6711C818" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2022/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Instance", + "aws:cdk:cloudformation:props": { + "availabilityZone": "test-region-1a", + "iamInstanceProfile": { + "Ref": "al2022InstanceProfileAA7ED3DD" + }, + "imageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2022amikernel515x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "instanceType": "t3.nano", + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "al2022InstanceSecurityGroupD2B46A06", + "GroupId" + ] + } + ], + "subnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2022" + } + ], + "userData": { + "Fn::Base64": "#!/bin/bash" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Instance", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2022-ami-kernel-5.15-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "al2023": { + "id": "al2023", + "path": "integ-ec2-machine-image-test/al2023", + "children": { + "InstanceSecurityGroup": { + "id": "InstanceSecurityGroup", + "path": "integ-ec2-machine-image-test/al2023/InstanceSecurityGroup", + "children": { + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2023/InstanceSecurityGroup/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::SecurityGroup", + "aws:cdk:cloudformation:props": { + "groupDescription": "integ-ec2-machine-image-test/al2023/InstanceSecurityGroup", + "securityGroupEgress": [ + { + "cidrIp": "0.0.0.0/0", + "description": "Allow all outbound traffic by default", + "ipProtocol": "-1" + } + ], + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2023" + } + ], + "vpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", + "version": "0.0.0" + } + }, + "InstanceRole": { + "id": "InstanceRole", + "path": "integ-ec2-machine-image-test/al2023/InstanceRole", + "children": { + "ImportInstanceRole": { + "id": "ImportInstanceRole", + "path": "integ-ec2-machine-image-test/al2023/InstanceRole/ImportInstanceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2023/InstanceRole/Resource", + "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" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2023" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "InstanceProfile": { + "id": "InstanceProfile", + "path": "integ-ec2-machine-image-test/al2023/InstanceProfile", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::InstanceProfile", + "aws:cdk:cloudformation:props": { + "roles": [ + { + "Ref": "al2023InstanceRoleECC2D6DD" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "integ-ec2-machine-image-test/al2023/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::EC2::Instance", + "aws:cdk:cloudformation:props": { + "availabilityZone": "test-region-1a", + "iamInstanceProfile": { + "Ref": "al2023InstanceProfileAB8077E0" + }, + "imageId": { + "Ref": "SsmParameterValueawsserviceamiamazonlinuxlatestal2023amikernel61x8664C96584B6F00A464EAD1953AFF4B05118Parameter" + }, + "instanceType": "t3.nano", + "securityGroupIds": [ + { + "Fn::GetAtt": [ + "al2023InstanceSecurityGroupB018A9BC", + "GroupId" + ] + } + ], + "subnetId": { + "Ref": "VpcPrivateSubnet1Subnet536B997A" + }, + "tags": [ + { + "key": "Name", + "value": "integ-ec2-machine-image-test/al2023" + } + ], + "userData": { + "Fn::Base64": "#!/bin/bash" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.CfnInstance", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_ec2.Instance", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118.Parameter", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118": { + "id": "SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118", + "path": "integ-ec2-machine-image-test/SsmParameterValue:--aws--service--ami-amazon-linux-latest--al2023-ami-kernel-6.1-x86_64:C96584B6-F00A-464E-AD19-53AFF4B05118", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integ-ec2-machine-image-test/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integ-ec2-machine-image-test/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "integ-test": { + "id": "integ-test", + "path": "integ-test", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "integ-test/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "integ-test/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "integ-test/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integ-test/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.ts new file mode 100644 index 0000000000000..b82e0f21617a9 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.machine-image.ts @@ -0,0 +1,38 @@ +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; +import { + Stack, + StackProps, + App, + aws_ec2 as ec2, +} from 'aws-cdk-lib'; +import { Construct } from 'constructs'; + + +export class TestCase extends Stack { + constructor(scope: Construct, id: string, props?: StackProps) { + super(scope, id, props); + const vpc = new ec2.Vpc(this, 'Vpc'); + new ec2.Instance(this, 'amzn2', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO), + machineImage: ec2.MachineImage.latestAmazonLinux2(), + vpc, + }); + new ec2.Instance(this, 'al2022', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), + vpc, + }); + new ec2.Instance(this, 'al2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO), + machineImage: ec2.MachineImage.latestAmazonLinux2023(), + vpc, + }); + } +} + + +const app = new App(); +new IntegTest(app, 'integ-test', { + testCases: [new TestCase(app, 'integ-ec2-machine-image-test')], + enableLookups: true, +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.assets.json index f7c1f6d30e085..f3e54cc2897c2 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "37e0c4dfe9c2afeff7fb5beab5ab205de8e42b55f7c46884d976fe647d43c06b": { + "d28780ff347cb790782f733de5ab866ea07bb7ee12ee3e8876c976146f2073d4": { "source": { "path": "aws-cdk-vpc-nat-instances.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "12345678-test-region": { "bucketName": "cdk-hnb659fds-assets-12345678-test-region", - "objectKey": "37e0c4dfe9c2afeff7fb5beab5ab205de8e42b55f7c46884d976fe647d43c06b.json", + "objectKey": "d28780ff347cb790782f733de5ab866ea07bb7ee12ee3e8876c976146f2073d4.json", "region": "test-region", "assumeRoleArn": "arn:${AWS::Partition}:iam::12345678:role/cdk-hnb659fds-file-publishing-role-12345678-test-region" } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.template.json index f14c8a4543b87..14b65608a0332 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/aws-cdk-vpc-nat-instances.template.json @@ -21,7 +21,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1a", + "AvailabilityZone": "dummy1a", "CidrBlock": "10.0.0.0/19", "MapPublicIpOnLaunch": true, "Tags": [ @@ -93,7 +93,7 @@ "MyVpcPublicSubnet1NatInstance8E94E5F7": { "Type": "AWS::EC2::Instance", "Properties": { - "AvailabilityZone": "test-region-1a", + "AvailabilityZone": "dummy1a", "IamInstanceProfile": { "Ref": "MyVpcPublicSubnet1NatInstanceInstanceProfile2FD934CB" }, @@ -131,7 +131,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1b", + "AvailabilityZone": "dummy1b", "CidrBlock": "10.0.32.0/19", "MapPublicIpOnLaunch": true, "Tags": [ @@ -203,7 +203,7 @@ "MyVpcPublicSubnet2NatInstance04BCE4E3": { "Type": "AWS::EC2::Instance", "Properties": { - "AvailabilityZone": "test-region-1b", + "AvailabilityZone": "dummy1b", "IamInstanceProfile": { "Ref": "MyVpcPublicSubnet2NatInstanceInstanceProfile5AB09EF6" }, @@ -241,7 +241,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1c", + "AvailabilityZone": "dummy1c", "CidrBlock": "10.0.64.0/19", "MapPublicIpOnLaunch": true, "Tags": [ @@ -306,7 +306,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1a", + "AvailabilityZone": "dummy1a", "CidrBlock": "10.0.96.0/19", "MapPublicIpOnLaunch": false, "Tags": [ @@ -368,7 +368,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1b", + "AvailabilityZone": "dummy1b", "CidrBlock": "10.0.128.0/19", "MapPublicIpOnLaunch": false, "Tags": [ @@ -430,7 +430,7 @@ "VpcId": { "Ref": "MyVpcF9F0CA6F" }, - "AvailabilityZone": "test-region-1c", + "AvailabilityZone": "dummy1c", "CidrBlock": "10.0.160.0/19", "MapPublicIpOnLaunch": false, "Tags": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/cdk.out index 588d7b269d34f..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integ.json index 95024e95e3468..5044b34c9e84e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integ.json @@ -1,14 +1,12 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { - "integ.nat-instances.lit": { + "integ-test/DefaultTest": { "stacks": [ "aws-cdk-vpc-nat-instances" ], - "diffAssets": false, - "stackUpdateWorkflow": true + "assertionStack": "integ-test/DefaultTest/DeployAssert", + "assertionStackName": "integtestDefaultTestDeployAssert24D5C536" } - }, - "synthContext": {}, - "enableLookups": true + } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json new file mode 100644 index 0000000000000..ecd9f6bd2a455 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "integtestDefaultTestDeployAssert24D5C536.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/integtestDefaultTestDeployAssert24D5C536.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/manifest.json index a1a08c87aa11f..ebf17c667143b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "aws-cdk-vpc-nat-instances.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::12345678:role/cdk-hnb659fds-deploy-role-12345678-test-region", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::12345678:role/cdk-hnb659fds-cfn-exec-role-12345678-test-region", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-12345678-test-region/37e0c4dfe9c2afeff7fb5beab5ab205de8e42b55f7c46884d976fe647d43c06b.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-12345678-test-region/d28780ff347cb790782f733de5ab866ea07bb7ee12ee3e8876c976146f2073d4.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -48,7 +42,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet1SubnetF6608456" + "data": "MyVpcPublicSubnet1SubnetF6608456", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/RouteTable": [ @@ -60,7 +57,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet1RouteTableAssociation2ECEE1CB" + "data": "MyVpcPublicSubnet1RouteTableAssociation2ECEE1CB", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/DefaultRoute": [ @@ -78,13 +78,19 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/NatInstance/Resource": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet1NatInstance8E94E5F7" + "data": "MyVpcPublicSubnet1NatInstance8E94E5F7", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet2Subnet492B6BFB" + "data": "MyVpcPublicSubnet2Subnet492B6BFB", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/RouteTable": [ @@ -96,7 +102,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet2RouteTableAssociation227DE78D" + "data": "MyVpcPublicSubnet2RouteTableAssociation227DE78D", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/DefaultRoute": [ @@ -114,13 +123,19 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/NatInstance/Resource": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet2NatInstance04BCE4E3" + "data": "MyVpcPublicSubnet2NatInstance04BCE4E3", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet3/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet3Subnet57EEE236" + "data": "MyVpcPublicSubnet3Subnet57EEE236", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet3/RouteTable": [ @@ -132,7 +147,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet3/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPublicSubnet3RouteTableAssociation5C27DDA4" + "data": "MyVpcPublicSubnet3RouteTableAssociation5C27DDA4", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet3/DefaultRoute": [ @@ -144,7 +162,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet1/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet1Subnet5057CF7E" + "data": "MyVpcPrivateSubnet1Subnet5057CF7E", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet1/RouteTable": [ @@ -156,7 +177,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet1/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet1RouteTableAssociation56D38C7E" + "data": "MyVpcPrivateSubnet1RouteTableAssociation56D38C7E", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet1/DefaultRoute": [ @@ -168,7 +192,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet2/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet2Subnet0040C983" + "data": "MyVpcPrivateSubnet2Subnet0040C983", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet2/RouteTable": [ @@ -180,7 +207,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet2/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet2RouteTableAssociation86A610DA" + "data": "MyVpcPrivateSubnet2RouteTableAssociation86A610DA", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet2/DefaultRoute": [ @@ -192,7 +222,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet3/Subnet": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet3Subnet772D6AD7" + "data": "MyVpcPrivateSubnet3Subnet772D6AD7", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet3/RouteTable": [ @@ -204,7 +237,10 @@ "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet3/RouteTableAssociation": [ { "type": "aws:cdk:logicalId", - "data": "MyVpcPrivateSubnet3RouteTableAssociationD951741C" + "data": "MyVpcPrivateSubnet3RouteTableAssociationD951741C", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_REPLACE" + ] } ], "/aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet3/DefaultRoute": [ @@ -251,6 +287,93 @@ ] }, "displayName": "aws-cdk-vpc-nat-instances" + }, + "integtestDefaultTestDeployAssert24D5C536.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "integtestDefaultTestDeployAssert24D5C536.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "integtestDefaultTestDeployAssert24D5C536": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "integtestDefaultTestDeployAssert24D5C536.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "integtestDefaultTestDeployAssert24D5C536.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "integtestDefaultTestDeployAssert24D5C536.assets" + ], + "metadata": { + "/integ-test/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "integ-test/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + }, + "missing": [ + { + "key": "availability-zones:account=12345678:region=test-region", + "provider": "availability-zones", + "props": { + "account": "12345678", + "region": "test-region", + "lookupRoleArn": "arn:${AWS::Partition}:iam::12345678:role/cdk-hnb659fds-lookup-role-12345678-test-region" + } + }, + { + "key": "ami:account=12345678:filters.image-type.0=machine:filters.name.0=amzn-ami-vpc-nat-*:filters.state.0=available:owners.0=amazon:region=test-region", + "provider": "ami", + "props": { + "account": "12345678", + "region": "test-region", + "owners": [ + "amazon" + ], + "filters": { + "name": [ + "amzn-ami-vpc-nat-*" + ], + "state": [ + "available" + ], + "image-type": [ + "machine" + ] + }, + "lookupRoleArn": "arn:${AWS::Partition}:iam::12345678:role/cdk-hnb659fds-lookup-role-12345678-test-region" + } } - } + ] } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/tree.json index ea670127af80c..2b4bf9e31f796 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.123" - } - }, "aws-cdk-vpc-nat-instances": { "id": "aws-cdk-vpc-nat-instances", "path": "aws-cdk-vpc-nat-instances", @@ -39,7 +31,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnVPC", + "fqn": "aws-cdk-lib.aws_ec2.CfnVPC", "version": "0.0.0" } }, @@ -56,7 +48,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1a", + "availabilityZone": "dummy1a", "cidrBlock": "10.0.0.0/19", "mapPublicIpOnLaunch": true, "tags": [ @@ -76,7 +68,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -84,7 +76,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet1/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -106,7 +98,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -125,7 +117,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -145,7 +137,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } }, @@ -167,7 +159,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnInstanceProfile", + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", "version": "0.0.0" } }, @@ -177,7 +169,7 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Instance", "aws:cdk:cloudformation:props": { - "availabilityZone": "test-region-1a", + "availabilityZone": "dummy1a", "iamInstanceProfile": { "Ref": "MyVpcPublicSubnet1NatInstanceInstanceProfile2FD934CB" }, @@ -207,19 +199,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnInstance", + "fqn": "aws-cdk-lib.aws_ec2.CfnInstance", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.Instance", + "fqn": "aws-cdk-lib.aws_ec2.Instance", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PublicSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", "version": "0.0.0" } }, @@ -236,7 +228,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1b", + "availabilityZone": "dummy1b", "cidrBlock": "10.0.32.0/19", "mapPublicIpOnLaunch": true, "tags": [ @@ -256,7 +248,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -264,7 +256,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet2/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -286,7 +278,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -305,7 +297,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -325,7 +317,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } }, @@ -347,7 +339,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnInstanceProfile", + "fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile", "version": "0.0.0" } }, @@ -357,7 +349,7 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::EC2::Instance", "aws:cdk:cloudformation:props": { - "availabilityZone": "test-region-1b", + "availabilityZone": "dummy1b", "iamInstanceProfile": { "Ref": "MyVpcPublicSubnet2NatInstanceInstanceProfile5AB09EF6" }, @@ -387,19 +379,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnInstance", + "fqn": "aws-cdk-lib.aws_ec2.CfnInstance", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.Instance", + "fqn": "aws-cdk-lib.aws_ec2.Instance", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PublicSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", "version": "0.0.0" } }, @@ -416,7 +408,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1c", + "availabilityZone": "dummy1c", "cidrBlock": "10.0.64.0/19", "mapPublicIpOnLaunch": true, "tags": [ @@ -436,7 +428,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -444,7 +436,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PublicSubnet3/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -466,7 +458,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -485,7 +477,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -505,13 +497,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PublicSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PublicSubnet", "version": "0.0.0" } }, @@ -528,7 +520,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1a", + "availabilityZone": "dummy1a", "cidrBlock": "10.0.96.0/19", "mapPublicIpOnLaunch": false, "tags": [ @@ -548,7 +540,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -556,7 +548,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet1/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -578,7 +570,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -597,7 +589,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -617,13 +609,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PrivateSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", "version": "0.0.0" } }, @@ -640,7 +632,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1b", + "availabilityZone": "dummy1b", "cidrBlock": "10.0.128.0/19", "mapPublicIpOnLaunch": false, "tags": [ @@ -660,7 +652,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -668,7 +660,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet2/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -690,7 +682,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -709,7 +701,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -729,13 +721,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PrivateSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", "version": "0.0.0" } }, @@ -752,7 +744,7 @@ "vpcId": { "Ref": "MyVpcF9F0CA6F" }, - "availabilityZone": "test-region-1c", + "availabilityZone": "dummy1c", "cidrBlock": "10.0.160.0/19", "mapPublicIpOnLaunch": false, "tags": [ @@ -772,7 +764,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnet", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnet", "version": "0.0.0" } }, @@ -780,7 +772,7 @@ "id": "Acl", "path": "aws-cdk-vpc-nat-instances/MyVpc/PrivateSubnet3/Acl", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -802,7 +794,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRouteTable", + "fqn": "aws-cdk-lib.aws_ec2.CfnRouteTable", "version": "0.0.0" } }, @@ -821,7 +813,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSubnetRouteTableAssociation", + "fqn": "aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation", "version": "0.0.0" } }, @@ -841,13 +833,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnRoute", + "fqn": "aws-cdk-lib.aws_ec2.CfnRoute", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.PrivateSubnet", + "fqn": "aws-cdk-lib.aws_ec2.PrivateSubnet", "version": "0.0.0" } }, @@ -866,7 +858,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnInternetGateway", + "fqn": "aws-cdk-lib.aws_ec2.CfnInternetGateway", "version": "0.0.0" } }, @@ -885,7 +877,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnVPCGatewayAttachment", + "fqn": "aws-cdk-lib.aws_ec2.CfnVPCGatewayAttachment", "version": "0.0.0" } }, @@ -926,13 +918,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.CfnSecurityGroup", + "fqn": "aws-cdk-lib.aws_ec2.CfnSecurityGroup", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.SecurityGroup", + "fqn": "aws-cdk-lib.aws_ec2.SecurityGroup", "version": "0.0.0" } }, @@ -940,6 +932,14 @@ "id": "NatRole", "path": "aws-cdk-vpc-nat-instances/MyVpc/NatRole", "children": { + "ImportNatRole": { + "id": "ImportNatRole", + "path": "aws-cdk-vpc-nat-instances/MyVpc/NatRole/ImportNatRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-vpc-nat-instances/MyVpc/NatRole/Resource", @@ -967,31 +967,109 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ec2.Vpc", + "fqn": "aws-cdk-lib.aws_ec2.Vpc", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-vpc-nat-instances/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-vpc-nat-instances/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } + }, + "integ-test": { + "id": "integ-test", + "path": "integ-test", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "integ-test/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "integ-test/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "integ-test/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integ-test/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integ-test/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.ts index 8efd9c74f2412..d6976f76feb60 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-ec2/test/integ.nat-instances.lit.ts @@ -1,6 +1,6 @@ -/// !cdk-integ pragma:enable-lookups import * as cdk from 'aws-cdk-lib'; import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import { IntegTest } from '@aws-cdk/integ-tests-alpha'; class NatInstanceStack extends cdk.Stack { constructor(scope: cdk.App, id: string, props?: cdk.StackProps) { @@ -26,10 +26,13 @@ class NatInstanceStack extends cdk.Stack { } const app = new cdk.App(); -new NatInstanceStack(app, 'aws-cdk-vpc-nat-instances', { +const testCase = new NatInstanceStack(app, 'aws-cdk-vpc-nat-instances', { env: { account: process.env.CDK_INTEG_ACCOUNT || process.env.CDK_DEFAULT_ACCOUNT, region: process.env.CDK_INTEG_REGION || process.env.CDK_DEFAULT_REGION, }, }); -app.synth(); + +new IntegTest(app, 'integ-test', { + testCases: [testCase], +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.assets.json index 5ec06f8f144d9..6523eb072e130 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "31.0.0", "files": { - "9c3c35264f83a7dd2a6f065a425f3ec72b52a57950b28c17accccb128d213615": { + "48fa462be9d7ff000bc7bc73c88ccd663ed424829ffb9f081daac83a046c316e": { "source": { "path": "aws-cdk-kinesis-event-target.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "9c3c35264f83a7dd2a6f065a425f3ec72b52a57950b28c17accccb128d213615.json", + "objectKey": "48fa462be9d7ff000bc7bc73c88ccd663ed424829ffb9f081daac83a046c316e.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.template.json index 08c5a259b0237..7d115532dfc33 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/aws-cdk-kinesis-event-target.template.json @@ -16,9 +16,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/cdk.out index 588d7b269d34f..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/integ.json index 314a98bfc9371..347c443604d89 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "31.0.0", "testCases": { "integ.kinesis-stream": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/manifest.json index 227a0d7f97609..2e2462613fb84 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "aws-cdk-kinesis-event-target.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/9c3c35264f83a7dd2a6f065a425f3ec72b52a57950b28c17accccb128d213615.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/48fa462be9d7ff000bc7bc73c88ccd663ed424829ffb9f081daac83a046c316e.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -83,6 +77,12 @@ ] }, "displayName": "aws-cdk-kinesis-event-target" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/tree.json index c02f5c5caaf4d..b78dcc8f87f36 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-events-targets/test/kinesis/integ.kinesis-stream.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "aws-cdk-kinesis-event-target": { "id": "aws-cdk-kinesis-event-target", "path": "aws-cdk-kinesis-event-target", @@ -39,14 +31,11 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } }, @@ -54,6 +43,14 @@ "id": "EventsRole", "path": "aws-cdk-kinesis-event-target/MyStream/EventsRole", "children": { + "ImportEventsRole": { + "id": "ImportEventsRole", + "path": "aws-cdk-kinesis-event-target/MyStream/EventsRole/ImportEventsRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-kinesis-event-target/MyStream/EventsRole/Resource", @@ -75,7 +72,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -116,25 +113,25 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -142,8 +139,8 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "aws-cdk-kinesis-event-target/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" } }, "EveryMinute": { @@ -181,26 +178,50 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-events.CfnRule", + "fqn": "aws-cdk-lib.aws_events.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-events.Rule", + "fqn": "aws-cdk-lib.aws_events.Rule", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-kinesis-event-target/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-kinesis-event-target/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/cdk.out index 588d7b269d34f..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.assets.json index 420c1abd4c9b0..63a66fc969f1a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "31.0.0", "files": { - "a5185074b295d81e70c51647660966504bfece498ea2a089f90fff6baaaff5c3": { + "73caf7840b0aa456be74c211b26d03fc0aa23d95b113e7a3353dedc9b89ef469": { "source": { "path": "integ-kinesis-stream-dashboard.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "a5185074b295d81e70c51647660966504bfece498ea2a089f90fff6baaaff5c3.json", + "objectKey": "73caf7840b0aa456be74c211b26d03fc0aa23d95b113e7a3353dedc9b89ef469.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.template.json index 106b7d66809c0..f48fb0f7e174c 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ-kinesis-stream-dashboard.template.json @@ -16,9 +16,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ.json index a4d4c44f0eee5..5e316b97bdf3e 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "31.0.0", "testCases": { "integ.stream-dashboard": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/manifest.json index ed26984a1e3c6..9e4c9dca74454 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "integ-kinesis-stream-dashboard.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/a5185074b295d81e70c51647660966504bfece498ea2a089f90fff6baaaff5c3.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/73caf7840b0aa456be74c211b26d03fc0aa23d95b113e7a3353dedc9b89ef469.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -71,6 +65,12 @@ ] }, "displayName": "integ-kinesis-stream-dashboard" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/tree.json index ce21ae6dc1a42..92e83c78eaad4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream-dashboard.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "integ-kinesis-stream-dashboard": { "id": "integ-kinesis-stream-dashboard", "path": "integ-kinesis-stream-dashboard", @@ -39,20 +31,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -60,8 +49,8 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "integ-kinesis-stream-dashboard/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" } }, "StreamDashboard": { @@ -233,26 +222,50 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-cloudwatch.CfnDashboard", + "fqn": "aws-cdk-lib.aws_cloudwatch.CfnDashboard", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-cloudwatch.Dashboard", + "fqn": "aws-cdk-lib.aws_cloudwatch.Dashboard", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "integ-kinesis-stream-dashboard/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "integ-kinesis-stream-dashboard/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.assets.json index fd7acc7dd92f4..1d2cef48ccd56 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "7e1b7553b1023955c746737c40526eec80647a61c7c3d6e5b414a50d72ef99f5": { + "302e9f00ea4e7bfea03274da1590f4ae5aee1052e40f0b74222f3e38c6f32a05": { "source": { "path": "integ-kinesis-stream.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "7e1b7553b1023955c746737c40526eec80647a61c7c3d6e5b414a50d72ef99f5.json", + "objectKey": "302e9f00ea4e7bfea03274da1590f4ae5aee1052e40f0b74222f3e38c6f32a05.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.template.json index 33645ba693a8b..2b902df37408f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ-kinesis-stream.template.json @@ -85,9 +85,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ.json index 1ff308f5f128b..52cd4cdb9ae55 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "integ.stream": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/manifest.json index 11b43fc005cf8..cdbe909caff4d 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { "integ-kinesis-stream.assets": { "type": "cdk:asset-manifest", @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/7e1b7553b1023955c746737c40526eec80647a61c7c3d6e5b414a50d72ef99f5.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/302e9f00ea4e7bfea03274da1590f4ae5aee1052e40f0b74222f3e38c6f32a05.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/tree.json index 64afcdf2ad6e1..081578e76494f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-kinesis/test/integ.stream.js.snapshot/tree.json @@ -12,6 +12,14 @@ "id": "UserRole", "path": "integ-kinesis-stream/UserRole", "children": { + "ImportUserRole": { + "id": "ImportUserRole", + "path": "integ-kinesis-stream/UserRole/ImportUserRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "integ-kinesis-stream/UserRole/Resource", @@ -48,7 +56,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -97,19 +105,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -136,20 +144,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -157,7 +162,7 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "integ-kinesis-stream/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", "version": "0.0.0" } }, @@ -165,7 +170,7 @@ "id": "BootstrapVersion", "path": "integ-kinesis-stream/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -173,13 +178,13 @@ "id": "CheckBootstrapVersion", "path": "integ-kinesis-stream/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -188,12 +193,12 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.140" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/AtTimestampDefaultTestDeployAssert8000E9DC.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/AtTimestampDefaultTestDeployAssert8000E9DC.assets.json index a43d4766c2e04..a83815ce59e43 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/AtTimestampDefaultTestDeployAssert8000E9DC.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/AtTimestampDefaultTestDeployAssert8000E9DC.assets.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { "source": { diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/integ.json index 2a30bd0adf916..6bcd53fc9aebf 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "AtTimestamp/DefaultTest": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.assets.json index a59813007c467..c9648836c45c0 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "fbcc195635fd8f1904f29d439573540020d8140bbc21d9a9d07071986b13cd44": { + "58ae302fc33c5a79345d09f90ab700fed9b215209c9c32d27071c667f532b697": { "source": { "path": "lambda-event-source-kinesis-at-timestamp.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "fbcc195635fd8f1904f29d439573540020d8140bbc21d9a9d07071986b13cd44.json", + "objectKey": "58ae302fc33c5a79345d09f90ab700fed9b215209c9c32d27071c667f532b697.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.template.json index a78ce87858d93..44fc7931402b8 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/lambda-event-source-kinesis-at-timestamp.template.json @@ -119,9 +119,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/manifest.json index 41e0ea81d75ee..ec865a4bc613a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { "lambda-event-source-kinesis-at-timestamp.assets": { "type": "cdk:asset-manifest", @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/fbcc195635fd8f1904f29d439573540020d8140bbc21d9a9d07071986b13cd44.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/58ae302fc33c5a79345d09f90ab700fed9b215209c9c32d27071c667f532b697.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/tree.json index cbc9d08c401cc..5622c744757ab 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis-at-timestamp.js.snapshot/tree.json @@ -16,6 +16,14 @@ "id": "ServiceRole", "path": "lambda-event-source-kinesis-at-timestamp/F/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "lambda-event-source-kinesis-at-timestamp/F/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "lambda-event-source-kinesis-at-timestamp/F/ServiceRole/Resource", @@ -51,7 +59,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -98,19 +106,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -134,7 +142,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } }, @@ -163,19 +171,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnEventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.CfnEventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.EventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.EventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -202,20 +210,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -223,7 +228,7 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "lambda-event-source-kinesis-at-timestamp/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", "version": "0.0.0" } }, @@ -231,7 +236,7 @@ "id": "BootstrapVersion", "path": "lambda-event-source-kinesis-at-timestamp/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -239,13 +244,13 @@ "id": "CheckBootstrapVersion", "path": "lambda-event-source-kinesis-at-timestamp/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -262,7 +267,7 @@ "path": "AtTimestamp/DefaultTest/Default", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.140" + "version": "10.1.270" } }, "DeployAssert": { @@ -273,7 +278,7 @@ "id": "BootstrapVersion", "path": "AtTimestamp/DefaultTest/DeployAssert/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -281,25 +286,25 @@ "id": "CheckBootstrapVersion", "path": "AtTimestamp/DefaultTest/DeployAssert/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/integ-tests.IntegTestCase", + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/integ-tests.IntegTest", + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", "version": "0.0.0" } }, @@ -308,12 +313,12 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.140" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/integ.json index 17dfcaeb304a4..b5b1a6297ce3b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "integ.kinesis": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.assets.json index becdeccbf7935..0da5246313c0f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "d4be170ce7489ed2588b961de1415c6865669e8ce4b665b63e796a57edc109fc": { + "95e2148d1ebc26fd910572145857d4425136c06c8c3eccf43e585af4a0e73db7": { "source": { "path": "lambda-event-source-kinesis.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "d4be170ce7489ed2588b961de1415c6865669e8ce4b665b63e796a57edc109fc.json", + "objectKey": "95e2148d1ebc26fd910572145857d4425136c06c8c3eccf43e585af4a0e73db7.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.template.json index 1daaaff8cc349..65bab762e2aca 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/lambda-event-source-kinesis.template.json @@ -119,9 +119,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/manifest.json index 658599a9aeedc..ffa307d8ac971 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { "lambda-event-source-kinesis.assets": { "type": "cdk:asset-manifest", @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/d4be170ce7489ed2588b961de1415c6865669e8ce4b665b63e796a57edc109fc.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/95e2148d1ebc26fd910572145857d4425136c06c8c3eccf43e585af4a0e73db7.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/tree.json index 62d8dd4bfd322..b0ee4b1a0344b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesis.js.snapshot/tree.json @@ -16,6 +16,14 @@ "id": "ServiceRole", "path": "lambda-event-source-kinesis/F/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "lambda-event-source-kinesis/F/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "lambda-event-source-kinesis/F/ServiceRole/Resource", @@ -51,7 +59,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -98,19 +106,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -134,7 +142,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } }, @@ -163,19 +171,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnEventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.CfnEventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.EventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.EventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -202,20 +210,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -223,7 +228,7 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "lambda-event-source-kinesis/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", "version": "0.0.0" } }, @@ -231,7 +236,7 @@ "id": "BootstrapVersion", "path": "lambda-event-source-kinesis/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -239,13 +244,13 @@ "id": "CheckBootstrapVersion", "path": "lambda-event-source-kinesis/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -254,12 +259,12 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.140" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/integ.json index 0b7808c48d205..bafb867cbe4ad 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "integ.kinesiswithdlq": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.assets.json index fd0f139f9bb63..be36ebf40bc70 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "ad96c327150eac53c00d71cfcce5ea9c8801cd70675257e720c66ac36214094e": { + "94572ad05c6b6f78045f55d9e925354ca62691bdea9914d0e824eb8845381b6f": { "source": { "path": "lambda-event-source-kinesis-with-dlq.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "ad96c327150eac53c00d71cfcce5ea9c8801cd70675257e720c66ac36214094e.json", + "objectKey": "94572ad05c6b6f78045f55d9e925354ca62691bdea9914d0e824eb8845381b6f.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.template.json index 03a3e8940a0cf..9868fd85e0504 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/lambda-event-source-kinesis-with-dlq.template.json @@ -143,9 +143,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/manifest.json index 77aaa936f44b1..b23177d6da9a7 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { "lambda-event-source-kinesis-with-dlq.assets": { "type": "cdk:asset-manifest", @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/ad96c327150eac53c00d71cfcce5ea9c8801cd70675257e720c66ac36214094e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/94572ad05c6b6f78045f55d9e925354ca62691bdea9914d0e824eb8845381b6f.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/tree.json index c509cd76eea8f..49c0448531d5c 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda-event-sources/test/integ.kinesiswithdlq.js.snapshot/tree.json @@ -16,6 +16,14 @@ "id": "ServiceRole", "path": "lambda-event-source-kinesis-with-dlq/F/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "lambda-event-source-kinesis-with-dlq/F/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "lambda-event-source-kinesis-with-dlq/F/ServiceRole/Resource", @@ -51,7 +59,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -112,19 +120,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -148,7 +156,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } }, @@ -187,19 +195,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnEventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.CfnEventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.EventSourceMapping", + "fqn": "aws-cdk-lib.aws_lambda.EventSourceMapping", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -207,7 +215,7 @@ "id": "FunctionArn", "path": "lambda-event-source-kinesis-with-dlq/FunctionArn", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -234,20 +242,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -255,7 +260,7 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "lambda-event-source-kinesis-with-dlq/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", "version": "0.0.0" } }, @@ -263,7 +268,7 @@ "id": "InputKinesisStreamName", "path": "lambda-event-source-kinesis-with-dlq/InputKinesisStreamName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -279,13 +284,13 @@ "aws:cdk:cloudformation:props": {} }, "constructInfo": { - "fqn": "@aws-cdk/aws-sqs.CfnQueue", + "fqn": "aws-cdk-lib.aws_sqs.CfnQueue", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-sqs.Queue", + "fqn": "aws-cdk-lib.aws_sqs.Queue", "version": "0.0.0" } }, @@ -293,7 +298,7 @@ "id": "DlqSqsQueueUrl", "path": "lambda-event-source-kinesis-with-dlq/DlqSqsQueueUrl", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -301,7 +306,7 @@ "id": "BootstrapVersion", "path": "lambda-event-source-kinesis-with-dlq/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -309,13 +314,13 @@ "id": "CheckBootstrapVersion", "path": "lambda-event-source-kinesis-with-dlq/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -324,12 +329,12 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.140" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.assets.json index 0d4e64170a959..7597e8e33a542 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "cf7620e382e2aa15559aba9e2cdca5e3f155cb9f1faca27986aeed5f01ffca07": { + "e662217761cf2ba05977dbcac8535cc2b9b3175c8d3c799d31fd5ef6b0c08ac6": { "source": { "path": "aws-cdk-lambda-runtime-inlinecode.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "cf7620e382e2aa15559aba9e2cdca5e3f155cb9f1faca27986aeed5f01ffca07.json", + "objectKey": "e662217761cf2ba05977dbcac8535cc2b9b3175c8d3c799d31fd5ef6b0c08ac6.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.template.json index 5077f97076b5b..e1f43849b372b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/aws-cdk-lambda-runtime-inlinecode.template.json @@ -150,6 +150,56 @@ "PYTHON39ServiceRole53E964DF" ] }, + "PYTHON310ServiceRole65985CC8": { + "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" + ] + ] + } + ] + } + }, + "PYTHON310431C418B": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "ZipFile": "def handler(event, context):\n return \"success\"" + }, + "Role": { + "Fn::GetAtt": [ + "PYTHON310ServiceRole65985CC8", + "Arn" + ] + }, + "Handler": "index.handler", + "Runtime": "python3.10" + }, + "DependsOn": [ + "PYTHON310ServiceRole65985CC8" + ] + }, "NODEJS14XServiceRole4523ECDB": { "Type": "AWS::IAM::Role", "Properties": { @@ -317,6 +367,11 @@ "Ref": "PYTHON39143BF976" } }, + "PYTHON310functionName": { + "Value": { + "Ref": "PYTHON310431C418B" + } + }, "NODEJS14XfunctionName": { "Value": { "Ref": "NODEJS14X930214A3" diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/cdk.out +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/integ.json index ad37086546838..4354a1a993301 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/integ.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "integ.runtime.inlinecode": { "stacks": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/manifest.json index 531f50a3f5022..7bcc74b60c1e1 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "aws-cdk-lambda-runtime-inlinecode.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/cf7620e382e2aa15559aba9e2cdca5e3f155cb9f1faca27986aeed5f01ffca07.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/e662217761cf2ba05977dbcac8535cc2b9b3175c8d3c799d31fd5ef6b0c08ac6.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -93,6 +87,24 @@ "data": "PYTHON39functionName" } ], + "/aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "PYTHON310ServiceRole65985CC8" + } + ], + "/aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "PYTHON310431C418B" + } + ], + "/aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10-functionName": [ + { + "type": "aws:cdk:logicalId", + "data": "PYTHON310functionName" + } + ], "/aws-cdk-lambda-runtime-inlinecode/NODEJS_14_X/ServiceRole/Resource": [ { "type": "aws:cdk:logicalId", @@ -158,27 +170,15 @@ "type": "aws:cdk:logicalId", "data": "CheckBootstrapVersion" } - ], - "NODEJS12XServiceRole59E71436": [ - { - "type": "aws:cdk:logicalId", - "data": "NODEJS12XServiceRole59E71436", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" - ] - } - ], - "NODEJS12X8B8075A4": [ - { - "type": "aws:cdk:logicalId", - "data": "NODEJS12X8B8075A4", - "trace": [ - "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" - ] - } ] }, "displayName": "aws-cdk-lambda-runtime-inlinecode" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/tree.json index df243842f5958..df061cdb0f61b 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.102" - } - }, "aws-cdk-lambda-runtime-inlinecode": { "id": "aws-cdk-lambda-runtime-inlinecode", "path": "aws-cdk-lambda-runtime-inlinecode", @@ -24,6 +16,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_7/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_7/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_7/ServiceRole/Resource", @@ -59,13 +59,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -89,13 +89,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -103,7 +103,7 @@ "id": "PYTHON_3_7-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_7-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -115,6 +115,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_8/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_8/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_8/ServiceRole/Resource", @@ -150,13 +158,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -180,13 +188,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -194,7 +202,7 @@ "id": "PYTHON_3_8-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_8-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -206,6 +214,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_9/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_9/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_9/ServiceRole/Resource", @@ -241,13 +257,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -271,13 +287,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -285,7 +301,106 @@ "id": "PYTHON_3_9-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_9-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "PYTHON_3_10": { + "id": "PYTHON_3_10", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10", + "children": { + "ServiceRole": { + "id": "ServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/ServiceRole", + "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/ServiceRole/Resource", + "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" + ] + ] + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::Lambda::Function", + "aws:cdk:cloudformation:props": { + "code": { + "zipFile": "def handler(event, context):\n return \"success\"" + }, + "role": { + "Fn::GetAtt": [ + "PYTHON310ServiceRole65985CC8", + "Arn" + ] + }, + "handler": "index.handler", + "runtime": "python3.10" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_lambda.Function", + "version": "0.0.0" + } + }, + "PYTHON_3_10-functionName": { + "id": "PYTHON_3_10-functionName", + "path": "aws-cdk-lambda-runtime-inlinecode/PYTHON_3_10-functionName", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -297,6 +412,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_14_X/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_14_X/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_14_X/ServiceRole/Resource", @@ -332,13 +455,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -362,13 +485,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -376,7 +499,7 @@ "id": "NODEJS_14_X-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_14_X-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -388,6 +511,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_16_X/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_16_X/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_16_X/ServiceRole/Resource", @@ -423,13 +554,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -453,13 +584,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -467,7 +598,7 @@ "id": "NODEJS_16_X-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_16_X-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", "version": "0.0.0" } }, @@ -479,6 +610,14 @@ "id": "ServiceRole", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_18_X/ServiceRole", "children": { + "ImportServiceRole": { + "id": "ImportServiceRole", + "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_18_X/ServiceRole/ImportServiceRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_18_X/ServiceRole/Resource", @@ -514,13 +653,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -544,13 +683,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.CfnFunction", + "fqn": "aws-cdk-lib.aws_lambda.CfnFunction", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-lambda.Function", + "fqn": "aws-cdk-lib.aws_lambda.Function", "version": "0.0.0" } }, @@ -558,19 +697,43 @@ "id": "NODEJS_18_X-functionName", "path": "aws-cdk-lambda-runtime-inlinecode/NODEJS_18_X-functionName", "constructInfo": { - "fqn": "@aws-cdk/core.CfnOutput", + "fqn": "aws-cdk-lib.CfnOutput", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "aws-cdk-lambda-runtime-inlinecode/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "aws-cdk-lambda-runtime-inlinecode/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.ts index 9afd54138773b..2191a8860a673 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.ts +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.runtime.inlinecode.ts @@ -36,6 +36,14 @@ const python39 = new Function(stack, 'PYTHON_3_9', { }); new CfnOutput(stack, 'PYTHON_3_9-functionName', { value: python39.functionName }); +const python310 = new Function(stack, 'PYTHON_3_10', { + code: new InlineCode('def handler(event, context):\n return "success"'), + handler: 'index.handler', + runtime: Runtime.PYTHON_3_10, +}); +new CfnOutput(stack, 'PYTHON_3_10-functionName', { value: python310.functionName }); + + const node14xfn = new Function(stack, 'NODEJS_14_X', { code: new InlineCode('exports.handler = async function(event) { return "success" }'), handler: 'index.handler', diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.assets.json index c53c3ac54ecd4..f025bd1db0d08 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.assets.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.assets.json @@ -1,7 +1,7 @@ { "version": "31.0.0", "files": { - "c32b075cf703af59a0711e440bc11930c01e91f7de8d901334778493c7c28263": { + "efceebbbcc092c93099cfaca90900ecfff8e9bfcacb36ee0f61c69d9485ab5c1": { "source": { "path": "kinesis-logsubscription-integ.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "c32b075cf703af59a0711e440bc11930c01e91f7de8d901334778493c7c28263.json", + "objectKey": "efceebbbcc092c93099cfaca90900ecfff8e9bfcacb36ee0f61c69d9485ab5c1.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.template.json index de82f351fe366..f4de79b90ad0a 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.template.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/kinesis-logsubscription-integ.template.json @@ -16,9 +16,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/manifest.json index 01786008857ec..2bd6a87e270bd 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/manifest.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/manifest.json @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/c32b075cf703af59a0711e440bc11930c01e91f7de8d901334778493c7c28263.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/efceebbbcc092c93099cfaca90900ecfff8e9bfcacb36ee0f61c69d9485ab5c1.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/tree.json index 6740ac10e14db..0dff001c99c1f 100644 --- a/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/tree.json +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-logs-destinations/test/integ.kinesis.js.snapshot/tree.json @@ -31,20 +31,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -52,8 +49,8 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "kinesis-logsubscription-integ/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" } }, "LogGroup": { @@ -70,13 +67,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-logs.CfnLogGroup", + "fqn": "aws-cdk-lib.aws_logs.CfnLogGroup", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-logs.LogGroup", + "fqn": "aws-cdk-lib.aws_logs.LogGroup", "version": "0.0.0" } }, @@ -92,8 +89,8 @@ "id": "ImportCloudWatchLogsCanPutRecords", "path": "kinesis-logsubscription-integ/Subscription/CloudWatchLogsCanPutRecords/ImportCloudWatchLogsCanPutRecords", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" } }, "Resource": { @@ -117,7 +114,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -169,19 +166,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -210,13 +207,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-logs.CfnSubscriptionFilter", + "fqn": "aws-cdk-lib.aws_logs.CfnSubscriptionFilter", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-logs.SubscriptionFilter", + "fqn": "aws-cdk-lib.aws_logs.SubscriptionFilter", "version": "0.0.0" } }, @@ -224,22 +221,22 @@ "id": "BootstrapVersion", "path": "kinesis-logsubscription-integ/BootstrapVersion", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "kinesis-logsubscription-integ/CheckBootstrapVersion", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" } }, "KinesisInteg": { @@ -266,33 +263,33 @@ "id": "BootstrapVersion", "path": "KinesisInteg/DefaultTest/DeployAssert/BootstrapVersion", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "KinesisInteg/DefaultTest/DeployAssert/CheckBootstrapVersion", "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/integ-tests.IntegTestCase", + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/integ-tests.IntegTest", + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", "version": "0.0.0" } }, @@ -306,8 +303,8 @@ } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.270" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-servicecatalog/test/product-stack-snapshots/integservicecatalogproductProductStackHistory4D520FF1.integservicecatalogproductSNSTopicProduct3B51CF591.v1.product.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-servicecatalog/test/product-stack-snapshots/integservicecatalogproductProductStackHistory4D520FF1.integservicecatalogproductSNSTopicProduct3B51CF591.v1.product.template.json new file mode 100644 index 0000000000000..2f2f4704a22ad --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-servicecatalog/test/product-stack-snapshots/integservicecatalogproductProductStackHistory4D520FF1.integservicecatalogproductSNSTopicProduct3B51CF591.v1.product.template.json @@ -0,0 +1,7 @@ +{ + "Resources": { + "TopicProductD757E287": { + "Type": "AWS::SNS::Topic" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/package.json b/packages/@aws-cdk/aws-amplify-alpha/package.json index 73ec1ce63efb9..cb2d9f340a1fc 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/package.json +++ b/packages/@aws-cdk/aws-amplify-alpha/package.json @@ -87,7 +87,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-sdk": "^2.1329.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" diff --git a/packages/@aws-cdk/aws-apigatewayv2-alpha/package.json b/packages/@aws-cdk/aws-apigatewayv2-alpha/package.json index eeb30377831a7..bba43315a52bb 100644 --- a/packages/@aws-cdk/aws-apigatewayv2-alpha/package.json +++ b/packages/@aws-cdk/aws-apigatewayv2-alpha/package.json @@ -90,7 +90,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-apigatewayv2-authorizers-alpha/package.json b/packages/@aws-cdk/aws-apigatewayv2-authorizers-alpha/package.json index 2ed41e613e7f4..96786544b9700 100644 --- a/packages/@aws-cdk/aws-apigatewayv2-authorizers-alpha/package.json +++ b/packages/@aws-cdk/aws-apigatewayv2-authorizers-alpha/package.json @@ -87,7 +87,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", "@types/aws-lambda": "^8.10.111", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/aws-apigatewayv2-integrations-alpha": "0.0.0", diff --git a/packages/@aws-cdk/aws-apigatewayv2-integrations-alpha/package.json b/packages/@aws-cdk/aws-apigatewayv2-integrations-alpha/package.json index 8be5536883a92..00e7cb86974c3 100644 --- a/packages/@aws-cdk/aws-apigatewayv2-integrations-alpha/package.json +++ b/packages/@aws-cdk/aws-apigatewayv2-integrations-alpha/package.json @@ -85,7 +85,7 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0", diff --git a/packages/@aws-cdk/aws-apprunner-alpha/lib/service.ts b/packages/@aws-cdk/aws-apprunner-alpha/lib/service.ts index 83751d07213d1..1f5d3679508f7 100644 --- a/packages/@aws-cdk/aws-apprunner-alpha/lib/service.ts +++ b/packages/@aws-cdk/aws-apprunner-alpha/lib/service.ts @@ -29,6 +29,16 @@ export enum ImageRepositoryType { * */ export class Cpu { + /** + * 0.25 vCPU + */ + public static readonly QUARTER_VCPU = Cpu.of('0.25 vCPU'); + + /** + * 0.5 vCPU + */ + public static readonly HALF_VCPU = Cpu.of('0.5 vCPU'); + /** * 1 vCPU */ @@ -39,6 +49,11 @@ export class Cpu { */ public static readonly TWO_VCPU = Cpu.of('2 vCPU') + /** + * 4 vCPU + */ + public static readonly FOUR_VCPU = Cpu.of('4 vCPU') + /** * Custom CPU unit * @@ -60,6 +75,16 @@ export class Cpu { * The amount of memory reserved for each instance of your App Runner service. */ export class Memory { + /** + * 0.5 GB(for 0.25 vCPU) + */ + public static readonly HALF_GB = Memory.of('0.5 GB') + + /** + * 1 GB(for 0.25 or 0.5 vCPU) + */ + public static readonly ONE_GB = Memory.of('1 GB') + /** * 2 GB(for 1 vCPU) */ @@ -75,6 +100,26 @@ export class Memory { */ public static readonly FOUR_GB = Memory.of('4 GB') + /** + * 6 GB(for 2 vCPU) + */ + public static readonly SIX_GB = Memory.of('6 GB') + + /** + * 8 GB(for 4 vCPU) + */ + public static readonly EIGHT_GB = Memory.of('8 GB') + + /** + * 10 GB(for 4 vCPU) + */ + public static readonly TEN_GB = Memory.of('10 GB') + + /** + * 12 GB(for 4 vCPU) + */ + public static readonly TWELVE_GB = Memory.of('12 GB') + /** * Custom Memory unit * diff --git a/packages/@aws-cdk/aws-apprunner-alpha/package.json b/packages/@aws-cdk/aws-apprunner-alpha/package.json index 30b895aed0c30..b62539da28e62 100644 --- a/packages/@aws-cdk/aws-apprunner-alpha/package.json +++ b/packages/@aws-cdk/aws-apprunner-alpha/package.json @@ -89,7 +89,7 @@ "aws-cdk-lib": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" }, diff --git a/packages/@aws-cdk/aws-batch-alpha/README.md b/packages/@aws-cdk/aws-batch-alpha/README.md index 6358d5b39ffea..806befb9edad4 100644 --- a/packages/@aws-cdk/aws-batch-alpha/README.md +++ b/packages/@aws-cdk/aws-batch-alpha/README.md @@ -250,7 +250,7 @@ For example, if there are two shares defined as follows: The weight factors share the following relationship: ```math -AvCpus / A_weight = BvCpus / B_weight +A_{vCpus} / A_{Weight} = B_{vCpus} / B_{Weight} ``` where `BvCpus` is the number of vCPUs allocated to jobs with share identifier `'B'`, and `B_weight` is the weight factor of `B`. @@ -259,18 +259,33 @@ The total number of vCpus allocated to a share is equal to the amount of jobs in Let's say that each A job needs 32 VCpus (`A_requirement` = 32) and each B job needs 64 vCpus (`B_requirement` = 64): ```math -A_vCpus = A_jobs * A_requirement -B_vCpus = B_jobs * B_requirement +A_{vCpus} = A_{Jobs} * A_{Requirement} +``` + +```math +B_{vCpus} = B_{Jobs} * B_{Requirement} ``` We have: ```math -A_vCpus / A_weight = B_vCpus / B_weight -A_jobs * A_requirement / A_weight = B_jobs * B_requirement / B_weight -A_jobs * 32 / 1 = B_jobs * 64 / 1 -A_jobs * 32 = B_jobs * 64 -A_jobs = B_jobs * 2 +A_{vCpus} / A_{Weight} = B_{vCpus} / B_{Weight} +``` + +```math +A_{Jobs} * A_{Requirement} / A_{Weight} = B_{Jobs} * B_{Requirement} / B_{Weight} +``` + +```math +A_{Jobs} * 32 / 1 = B_{Jobs} * 64 / 1 +``` + +```math +A_{Jobs} * 32 = B_{Jobs} * 64 +``` + +```math +A_{Jobs} = B_{Jobs} * 2 ``` Thus the scheduler will schedule two `'A'` jobs for each `'B'` job. @@ -301,7 +316,7 @@ For example, a `shareDecay` of 5 minutes in the above example means that at any will be scheduled for each `'B'` job, but only for the past 5 minutes. If `'B'` jobs run longer than 5 minutes, then the scheduler is allowed to put more than two `'A'` jobs for each `'B'` job, because the usage of those long-running `'B'` jobs will no longer be considered after 5 minutes. `shareDecay` linearly decreases the usage of -long running jobs for calculation purposes. eg if share decay is 60 seconds, +long running jobs for calculation purposes. For example if share decay is 60 seconds, then jobs that run for 30 seconds have their usage considered to be only 50% of what it actually is, but after a whole minute the scheduler pretends they don't exist for fairness calculations. @@ -320,14 +335,14 @@ maximum vCPU capacity that should be reserved for shares that are *not in the qu The actual reserved percentage is defined by Batch as: ```math - (computeReservation/100)^ActiveFairShares + (\frac{computeReservation}{100}) ^ {ActiveFairShares} ``` where `ActiveFairShares` is the number of shares for which there exists at least one job in the queue with a unique share identifier. This is best illustrated with an example. -Suppose there three shares with share identifiers `A`, `B` and `C` respectively +Suppose there are three shares with share identifiers `A`, `B` and `C` respectively and we specify the `computeReservation` to be 75%. The queue is currently empty, and no other shares exist. @@ -350,7 +365,7 @@ so the percentage reserved is still 56.25% Now a `C` job enters the queue. The number of active fair shares is now 3, so (75/100)^3 = .421875 = 42.1875% of the maximum vCpus are reserved for all shares that do not have the identifier `A`, `B`, or `C`. -If these are no other shares that your jobs can specify, this means that 42.1875% of your capacity will never be used! +If there are no other shares that your jobs can specify, this means that 42.1875% of your capacity will never be used! Now, `A`, `B`, and `C` can only consume 100% - 42.1875% = 57.8125% of the maximum vCpus. Note that the this percentage is **not** split between `A`, `B`, and `C`. @@ -425,8 +440,8 @@ they must all match for the action to be taken; the conditions are ANDed togethe ### Running single-container ECS workflows -Batch can jobs on ECS or EKS. ECS jobs can defined as single container or multinode. -This examples creates a `JobDefinition` that runs a single container with ECS: +Batch can run jobs on ECS or EKS. ECS jobs can be defined as single container or multinode. +This example creates a `JobDefinition` that runs a single container with ECS: ```ts import * as cdk from 'aws-cdk-lib'; diff --git a/packages/@aws-cdk/aws-batch-alpha/lib/ecs-container-definition.ts b/packages/@aws-cdk/aws-batch-alpha/lib/ecs-container-definition.ts index 8bcaba1eef1ac..fb6124569828e 100644 --- a/packages/@aws-cdk/aws-batch-alpha/lib/ecs-container-definition.ts +++ b/packages/@aws-cdk/aws-batch-alpha/lib/ecs-container-definition.ts @@ -309,6 +309,8 @@ export interface IEcsContainerDefinition extends IConstruct { /** * The role that the container can assume. * + * @default - no jobRole + * * @see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html */ readonly jobRole?: iam.IRole; @@ -414,7 +416,7 @@ export interface EcsContainerDefinitionProps { * * @see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html * - * @default - a role will be created + * @default - no job role */ readonly jobRole?: iam.IRole; diff --git a/packages/@aws-cdk/aws-batch-alpha/lib/job-queue.ts b/packages/@aws-cdk/aws-batch-alpha/lib/job-queue.ts index 5e3ccf8fb1f23..7b99e60fbda79 100644 --- a/packages/@aws-cdk/aws-batch-alpha/lib/job-queue.ts +++ b/packages/@aws-cdk/aws-batch-alpha/lib/job-queue.ts @@ -198,7 +198,7 @@ export class JobQueue extends Resource implements IJobQueue { resource: 'job-queue', resourceName: this.physicalName, }); - this.jobQueueName = this.getResourceNameAttribute(resource.ref); + this.jobQueueName = Stack.of(this).splitArn(this.jobQueueArn, ArnFormat.SLASH_RESOURCE_NAME).resourceName!; this.node.addValidation({ validate: () => validateOrderedComputeEnvironments(this.computeEnvironments) }); } @@ -221,5 +221,5 @@ function validateOrderedComputeEnvironments(computeEnvironments: OrderedComputeE seenOrders.push(ce.order); } - return []; + return seenOrders.length === 0 ? ['This JobQueue does not link any ComputeEnvironments'] : []; } diff --git a/packages/@aws-cdk/aws-batch-alpha/package.json b/packages/@aws-cdk/aws-batch-alpha/package.json index 5f922c55e535a..6d8adfa0094af 100644 --- a/packages/@aws-cdk/aws-batch-alpha/package.json +++ b/packages/@aws-cdk/aws-batch-alpha/package.json @@ -85,8 +85,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-batch-alpha/test/ecs-container-definition.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/ecs-container-definition.test.ts index d3852a4a739d8..3861117ead57a 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/ecs-container-definition.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/ecs-container-definition.test.ts @@ -8,10 +8,9 @@ import { ArnPrincipal, Role } from 'aws-cdk-lib/aws-iam'; import * as logs from 'aws-cdk-lib/aws-logs'; import { Secret } from 'aws-cdk-lib/aws-secretsmanager'; import { Size, Stack } from 'aws-cdk-lib'; -import { capitalizePropertyNames } from 'aws-cdk-lib/core/lib/util'; import { EcsContainerDefinitionProps, EcsEc2ContainerDefinition, EcsFargateContainerDefinition, EcsJobDefinition, EcsVolume, IEcsEc2ContainerDefinition, LinuxParameters, UlimitName } from '../lib'; import { CfnJobDefinitionProps } from 'aws-cdk-lib/aws-batch'; - +import { capitalizePropertyNames } from './utils'; // GIVEN const defaultContainerProps: EcsContainerDefinitionProps = { diff --git a/packages/@aws-cdk/aws-batch-alpha/test/eks-container-definition.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/eks-container-definition.test.ts index 8f6d16f90c035..06fa26ec26436 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/eks-container-definition.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/eks-container-definition.test.ts @@ -1,7 +1,7 @@ import { Template } from 'aws-cdk-lib/assertions'; import * as ecs from 'aws-cdk-lib/aws-ecs'; import { Size, Stack } from 'aws-cdk-lib'; -import { capitalizePropertyNames } from 'aws-cdk-lib/core/lib/util'; +import { capitalizePropertyNames } from './utils'; import { EksContainerDefinitionProps, EksContainerDefinition, EksJobDefinition, ImagePullPolicy, EksVolume, EmptyDirMediumType } from '../lib'; import { CfnJobDefinitionProps } from 'aws-cdk-lib/aws-batch'; @@ -681,4 +681,4 @@ describe('eks container', () => { }, }); }); -}); \ No newline at end of file +}); diff --git a/packages/@aws-cdk/aws-batch-alpha/test/job-definition-base.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/job-definition-base.test.ts index a5f8fc5119ad5..0662f8d5ab6ed 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/job-definition-base.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/job-definition-base.test.ts @@ -2,7 +2,7 @@ import { Template } from 'aws-cdk-lib/assertions'; import { InstanceClass, InstanceSize, InstanceType } from 'aws-cdk-lib/aws-ec2'; import * as ecs from 'aws-cdk-lib/aws-ecs'; import { /*Aws,*/ Duration, Size, Stack } from 'aws-cdk-lib'; -import { capitalizePropertyNames } from 'aws-cdk-lib/core/lib/util'; +import { capitalizePropertyNames } from './utils'; import * as batch from '../lib'; import { CfnJobDefinitionProps } from 'aws-cdk-lib/aws-batch'; diff --git a/packages/@aws-cdk/aws-batch-alpha/test/job-queue.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/job-queue.test.ts index 9d7b3060478c3..497f513d0277d 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/job-queue.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/job-queue.test.ts @@ -1,5 +1,5 @@ import { Template } from 'aws-cdk-lib/assertions'; -import { Stack } from 'aws-cdk-lib'; +import { DefaultTokenResolver, Stack, StringConcat, Tokenization } from 'aws-cdk-lib'; import * as ec2 from 'aws-cdk-lib/aws-ec2'; import { FairshareSchedulingPolicy, JobQueue, ManagedEc2EcsComputeEnvironment } from '../lib'; @@ -87,6 +87,55 @@ test('JobQueue respects name', () => { }); }); +test('JobQueue name is parsed from arn', () => { + // GIVEN + const stack = new Stack(); + const vpc = new ec2.Vpc(stack, 'vpc'); + + // WHEN + const queue = new JobQueue(stack, 'joBBQ', { + computeEnvironments: [{ + computeEnvironment: new ManagedEc2EcsComputeEnvironment(stack, 'CE', { + vpc, + }), + order: 1, + }], + priority: 10, + jobQueueName: 'JoBBQ', + }); + + // THEN + expect(Tokenization.resolve(queue.jobQueueName, { + scope: stack, + resolver: new DefaultTokenResolver(new StringConcat()), + })).toEqual({ + 'Fn::Select': [ + 1, + { + 'Fn::Split': [ + '/', + { + 'Fn::Select': [ + 5, + { + 'Fn::Split': [ + ':', + { + 'Fn::GetAtt': [ + 'joBBQ74605869', + 'JobQueueArn', + ], + }, + ], + }, + ], + }, + ], + }, + ], + }); +}); + test('JobQueue respects schedulingPolicy', () => { // GIVEN const stack = new Stack(); @@ -199,3 +248,15 @@ test('JobQueue throws when the same order is assigned to multiple ComputeEnviron Template.fromStack(stack); }).toThrow(/assigns the same order to different ComputeEnvironments/); }); + +test('JobQueue throws when there are no linked ComputeEnvironments', () => { + // GIVEN + const stack = new Stack(); + + // WHEN + new JobQueue(stack, 'joBBQ'); + + expect(() => { + Template.fromStack(stack); + }).toThrow(/This JobQueue does not link any ComputeEnvironments/); +}); diff --git a/packages/@aws-cdk/aws-batch-alpha/test/managed-compute-environment.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/managed-compute-environment.test.ts index 033a5c7aa3408..5b7c95ae6e630 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/managed-compute-environment.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/managed-compute-environment.test.ts @@ -3,7 +3,7 @@ import * as ec2 from 'aws-cdk-lib/aws-ec2'; import * as eks from 'aws-cdk-lib/aws-eks'; import { ArnPrincipal, Role, ServicePrincipal } from 'aws-cdk-lib/aws-iam'; import { Stack, Duration } from 'aws-cdk-lib'; -import { capitalizePropertyNames } from 'aws-cdk-lib/core/lib/util'; +import { capitalizePropertyNames } from './utils'; import * as batch from '../lib'; import { AllocationStrategy, ManagedEc2EcsComputeEnvironment, ManagedEc2EcsComputeEnvironmentProps, ManagedEc2EksComputeEnvironment, ManagedEc2EksComputeEnvironmentProps } from '../lib'; import { CfnComputeEnvironmentProps } from 'aws-cdk-lib/aws-batch'; @@ -199,7 +199,7 @@ describe.each([ManagedEc2EcsComputeEnvironment, ManagedEc2EksComputeEnvironment] vpc, images: [ { - image: ec2.MachineImage.latestAmazonLinux(), + image: ec2.MachineImage.latestAmazonLinux2(), }, ], }); @@ -211,7 +211,7 @@ describe.each([ManagedEc2EcsComputeEnvironment, ManagedEc2EksComputeEnvironment] ...defaultComputeResources, Ec2Configuration: [ { - ImageIdOverride: { Ref: 'SsmParameterValueawsserviceamiamazonlinuxlatestamznamihvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter' }, + ImageIdOverride: { Ref: 'SsmParameterValueawsserviceamiamazonlinuxlatestamzn2amikernel510hvmx8664gp2C96584B6F00A464EAD1953AFF4B05118Parameter' }, ImageType: expectedImageType, }, ], diff --git a/packages/@aws-cdk/aws-batch-alpha/test/unmanaged-compute-environment.test.ts b/packages/@aws-cdk/aws-batch-alpha/test/unmanaged-compute-environment.test.ts index 0add2708ac8b4..c14524628dee1 100644 --- a/packages/@aws-cdk/aws-batch-alpha/test/unmanaged-compute-environment.test.ts +++ b/packages/@aws-cdk/aws-batch-alpha/test/unmanaged-compute-environment.test.ts @@ -1,7 +1,7 @@ import { Template } from 'aws-cdk-lib/assertions'; import { Role, ServicePrincipal } from 'aws-cdk-lib/aws-iam'; import { Stack } from 'aws-cdk-lib/core'; -import { capitalizePropertyNames } from 'aws-cdk-lib/core/lib/util'; +import { capitalizePropertyNames } from './utils'; import { CfnComputeEnvironmentProps } from 'aws-cdk-lib/aws-batch'; import { UnmanagedComputeEnvironment } from '../lib/unmanaged-compute-environment'; diff --git a/packages/@aws-cdk/aws-batch-alpha/test/utils.ts b/packages/@aws-cdk/aws-batch-alpha/test/utils.ts new file mode 100644 index 0000000000000..0f186c9f48500 --- /dev/null +++ b/packages/@aws-cdk/aws-batch-alpha/test/utils.ts @@ -0,0 +1,30 @@ +import { Stack } from 'aws-cdk-lib'; +import { IConstruct } from 'constructs'; + +/** + * Given an object, converts all keys to PascalCase given they are currently in camel case. + * @param obj The object. + */ +export function capitalizePropertyNames(construct: IConstruct, obj: any): any { + const stack = Stack.of(construct); + obj = stack.resolve(obj); + + if (typeof(obj) !== 'object') { + return obj; + } + + if (Array.isArray(obj)) { + return obj.map(x => capitalizePropertyNames(construct, x)); + } + + const newObj: any = { }; + for (const key of Object.keys(obj)) { + const value = obj[key]; + + const first = key.charAt(0).toUpperCase(); + const newKey = first + key.slice(1); + newObj[newKey] = capitalizePropertyNames(construct, value); + } + + return newObj; +} diff --git a/packages/@aws-cdk/aws-cloud9-alpha/package.json b/packages/@aws-cdk/aws-cloud9-alpha/package.json index b8b50979108f9..b6f3fadaa0e7c 100644 --- a/packages/@aws-cdk/aws-cloud9-alpha/package.json +++ b/packages/@aws-cdk/aws-cloud9-alpha/package.json @@ -85,7 +85,7 @@ "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-codestar-alpha/package.json b/packages/@aws-cdk/aws-codestar-alpha/package.json index 590f457795304..9375096dd6c1d 100644 --- a/packages/@aws-cdk/aws-codestar-alpha/package.json +++ b/packages/@aws-cdk/aws-codestar-alpha/package.json @@ -87,7 +87,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-cognito-identitypool-alpha/package.json b/packages/@aws-cdk/aws-cognito-identitypool-alpha/package.json index b85607415a876..ce9d575d46454 100644 --- a/packages/@aws-cdk/aws-cognito-identitypool-alpha/package.json +++ b/packages/@aws-cdk/aws-cognito-identitypool-alpha/package.json @@ -84,8 +84,8 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-gamelift-alpha/package.json b/packages/@aws-cdk/aws-gamelift-alpha/package.json index c028b20ea5fee..ead49a654e103 100644 --- a/packages/@aws-cdk/aws-gamelift-alpha/package.json +++ b/packages/@aws-cdk/aws-gamelift-alpha/package.json @@ -85,8 +85,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-glue-alpha/package.json b/packages/@aws-cdk/aws-glue-alpha/package.json index 0670c6c58e18d..bd8d5b685b0c0 100644 --- a/packages/@aws-cdk/aws-glue-alpha/package.json +++ b/packages/@aws-cdk/aws-glue-alpha/package.json @@ -85,8 +85,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/package.json b/packages/@aws-cdk/aws-iot-actions-alpha/package.json index 39cc63f7f9c95..3187654b96f84 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/package.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/package.json @@ -84,8 +84,8 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "constructs": "^10.0.0", "aws-cdk-lib": "0.0.0", "@aws-cdk/aws-kinesisfirehose-destinations-alpha": "0.0.0", diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/cdk.out b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/cdk.out new file mode 100644 index 0000000000000..7925065efbcc4 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets.json new file mode 100644 index 0000000000000..8dd304ebe4714 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "source": { + "path": "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/integ.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/integ.json new file mode 100644 index 0000000000000..c2e9a41313c84 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/integ.json @@ -0,0 +1,12 @@ +{ + "version": "31.0.0", + "testCases": { + "dynamodbv2-integtest/DefaultTest": { + "stacks": [ + "test-dynamodbv2-put-item-action-stack" + ], + "assertionStack": "dynamodbv2-integtest/DefaultTest/DeployAssert", + "assertionStackName": "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/manifest.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/manifest.json new file mode 100644 index 0000000000000..ac486393e2459 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/manifest.json @@ -0,0 +1,137 @@ +{ + "version": "31.0.0", + "artifacts": { + "test-dynamodbv2-put-item-action-stack.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "test-dynamodbv2-put-item-action-stack.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "test-dynamodbv2-put-item-action-stack": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "test-dynamodbv2-put-item-action-stack.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/3d5ae52b69c9656b617087e12c3cbd7486ab8a18a0e5e927442d682ecc704529.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "test-dynamodbv2-put-item-action-stack.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "test-dynamodbv2-put-item-action-stack.assets" + ], + "metadata": { + "/test-dynamodbv2-put-item-action-stack/TopicRule/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "TopicRule40A4EA44" + } + ], + "/test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "TopicRuleTopicRuleActionRole246C4F77" + } + ], + "/test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "TopicRuleTopicRuleActionRoleDefaultPolicy99ADD687" + } + ], + "/test-dynamodbv2-put-item-action-stack/MyTable": [ + { + "type": "aws:cdk:hasPhysicalName", + "data": { + "Ref": "MyTable794EDED1" + } + } + ], + "/test-dynamodbv2-put-item-action-stack/MyTable/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "MyTable794EDED1" + } + ], + "/test-dynamodbv2-put-item-action-stack/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/test-dynamodbv2-put-item-action-stack/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "test-dynamodbv2-put-item-action-stack" + }, + "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.template.json", + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "dynamodbv2integtestDefaultTestDeployAssertEF9A9A37.assets" + ], + "metadata": { + "/dynamodbv2-integtest/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/dynamodbv2-integtest/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] + }, + "displayName": "dynamodbv2-integtest/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.assets.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.assets.json new file mode 100644 index 0000000000000..e3fc02ecb3d1a --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.assets.json @@ -0,0 +1,19 @@ +{ + "version": "31.0.0", + "files": { + "3d5ae52b69c9656b617087e12c3cbd7486ab8a18a0e5e927442d682ecc704529": { + "source": { + "path": "test-dynamodbv2-put-item-action-stack.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "3d5ae52b69c9656b617087e12c3cbd7486ab8a18a0e5e927442d682ecc704529.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.template.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.template.json new file mode 100644 index 0000000000000..d2da7ebea3634 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/test-dynamodbv2-put-item-action-stack.template.json @@ -0,0 +1,139 @@ +{ + "Resources": { + "TopicRule40A4EA44": { + "Type": "AWS::IoT::TopicRule", + "Properties": { + "TopicRulePayload": { + "Actions": [ + { + "DynamoDBv2": { + "PutItem": { + "TableName": { + "Ref": "MyTable794EDED1" + } + }, + "RoleArn": { + "Fn::GetAtt": [ + "TopicRuleTopicRuleActionRole246C4F77", + "Arn" + ] + } + } + } + ], + "AwsIotSqlVersion": "2016-03-23", + "Sql": "SELECT * FROM 'device/+/data'" + } + } + }, + "TopicRuleTopicRuleActionRole246C4F77": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "iot.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "TopicRuleTopicRuleActionRoleDefaultPolicy99ADD687": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": "dynamodb:PutItem", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "MyTable794EDED1", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "TopicRuleTopicRuleActionRoleDefaultPolicy99ADD687", + "Roles": [ + { + "Ref": "TopicRuleTopicRuleActionRole246C4F77" + } + ] + } + }, + "MyTable794EDED1": { + "Type": "AWS::DynamoDB::Table", + "Properties": { + "KeySchema": [ + { + "AttributeName": "hashKey", + "KeyType": "HASH" + }, + { + "AttributeName": "sortKey", + "KeyType": "RANGE" + } + ], + "AttributeDefinitions": [ + { + "AttributeName": "hashKey", + "AttributeType": "S" + }, + { + "AttributeName": "sortKey", + "AttributeType": "N" + } + ], + "ProvisionedThroughput": { + "ReadCapacityUnits": 1, + "WriteCapacityUnits": 1 + }, + "TableName": "MyTable" + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/tree.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/tree.json new file mode 100644 index 0000000000000..b4c2e4c2ba4d4 --- /dev/null +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/dynamodbv2/integ.dynamodbv2-put-item-action.ts.snapshot/tree.json @@ -0,0 +1,288 @@ +{ + "version": "tree-0.1", + "tree": { + "id": "App", + "path": "", + "children": { + "test-dynamodbv2-put-item-action-stack": { + "id": "test-dynamodbv2-put-item-action-stack", + "path": "test-dynamodbv2-put-item-action-stack", + "children": { + "TopicRule": { + "id": "TopicRule", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule", + "children": { + "Resource": { + "id": "Resource", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IoT::TopicRule", + "aws:cdk:cloudformation:props": { + "topicRulePayload": { + "actions": [ + { + "dynamoDBv2": { + "putItem": { + "tableName": { + "Ref": "MyTable794EDED1" + } + }, + "roleArn": { + "Fn::GetAtt": [ + "TopicRuleTopicRuleActionRole246C4F77", + "Arn" + ] + } + } + } + ], + "awsIotSqlVersion": "2016-03-23", + "sql": "SELECT * FROM 'device/+/data'" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iot.CfnTopicRule", + "version": "0.0.0" + } + }, + "TopicRuleActionRole": { + "id": "TopicRuleActionRole", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole", + "children": { + "ImportTopicRuleActionRole": { + "id": "ImportTopicRuleActionRole", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/ImportTopicRuleActionRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, + "Resource": { + "id": "Resource", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Role", + "aws:cdk:cloudformation:props": { + "assumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "iot.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnRole", + "version": "0.0.0" + } + }, + "DefaultPolicy": { + "id": "DefaultPolicy", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/DefaultPolicy", + "children": { + "Resource": { + "id": "Resource", + "path": "test-dynamodbv2-put-item-action-stack/TopicRule/TopicRuleActionRole/DefaultPolicy/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::IAM::Policy", + "aws:cdk:cloudformation:props": { + "policyDocument": { + "Statement": [ + { + "Action": "dynamodb:PutItem", + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "MyTable794EDED1", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "policyName": "TopicRuleTopicRuleActionRoleDefaultPolicy99ADD687", + "roles": [ + { + "Ref": "TopicRuleTopicRuleActionRole246C4F77" + } + ] + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Policy", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_iam.Role", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/aws-iot-alpha.TopicRule", + "version": "0.0.0" + } + }, + "MyTable": { + "id": "MyTable", + "path": "test-dynamodbv2-put-item-action-stack/MyTable", + "children": { + "Resource": { + "id": "Resource", + "path": "test-dynamodbv2-put-item-action-stack/MyTable/Resource", + "attributes": { + "aws:cdk:cloudformation:type": "AWS::DynamoDB::Table", + "aws:cdk:cloudformation:props": { + "keySchema": [ + { + "attributeName": "hashKey", + "keyType": "HASH" + }, + { + "attributeName": "sortKey", + "keyType": "RANGE" + } + ], + "attributeDefinitions": [ + { + "attributeName": "hashKey", + "attributeType": "S" + }, + { + "attributeName": "sortKey", + "attributeType": "N" + } + ], + "provisionedThroughput": { + "readCapacityUnits": 1, + "writeCapacityUnits": 1 + }, + "tableName": "MyTable" + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_dynamodb.CfnTable", + "version": "0.0.0" + } + }, + "ScalingRole": { + "id": "ScalingRole", + "path": "test-dynamodbv2-put-item-action-stack/MyTable/ScalingRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.aws_dynamodb.Table", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "test-dynamodbv2-put-item-action-stack/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "test-dynamodbv2-put-item-action-stack/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "dynamodbv2-integtest": { + "id": "dynamodbv2-integtest", + "path": "dynamodbv2-integtest", + "children": { + "DefaultTest": { + "id": "DefaultTest", + "path": "dynamodbv2-integtest/DefaultTest", + "children": { + "Default": { + "id": "Default", + "path": "dynamodbv2-integtest/DefaultTest/Default", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + }, + "DeployAssert": { + "id": "DeployAssert", + "path": "dynamodbv2-integtest/DefaultTest/DeployAssert", + "children": { + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "dynamodbv2-integtest/DefaultTest/DeployAssert/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "dynamodbv2-integtest/DefaultTest/DeployAssert/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", + "version": "0.0.0" + } + } + }, + "constructInfo": { + "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } + } + }, + "constructInfo": { + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/cdk.out b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/cdk.out index 8ecc185e9dbee..7925065efbcc4 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/cdk.out +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"21.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/integ.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/integ.json index e6eee8bfe58bb..32f94b7ab6ab3 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/integ.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "21.0.0", + "version": "31.0.0", "testCases": { "integ.kinesis-put-record-action": { "stacks": [ diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/manifest.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/manifest.json index a358f5830007b..4b1c12adfadaf 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "21.0.0", + "version": "31.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "test-kinesis-stream-action-stack.assets": { "type": "cdk:asset-manifest", "properties": { @@ -23,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/ac064b75bdd497b1427d66c1cd1f8e97ccb3f7d87ed1e44833b559318c46ee6d.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/5f278f5c71c1d39fc8d1d652268b0bc618302c7b4be898269d3d654b3058ed3d.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -83,6 +77,12 @@ ] }, "displayName": "test-kinesis-stream-action-stack" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.assets.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.assets.json index 731659084a3c4..c5cb749170129 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.assets.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.assets.json @@ -1,7 +1,7 @@ { - "version": "21.0.0", + "version": "31.0.0", "files": { - "ac064b75bdd497b1427d66c1cd1f8e97ccb3f7d87ed1e44833b559318c46ee6d": { + "5f278f5c71c1d39fc8d1d652268b0bc618302c7b4be898269d3d654b3058ed3d": { "source": { "path": "test-kinesis-stream-action-stack.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "ac064b75bdd497b1427d66c1cd1f8e97ccb3f7d87ed1e44833b559318c46ee6d.json", + "objectKey": "5f278f5c71c1d39fc8d1d652268b0bc618302c7b4be898269d3d654b3058ed3d.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.template.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.template.json index eaddaa2406741..0eeffa4a08e52 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.template.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/test-kinesis-stream-action-stack.template.json @@ -84,9 +84,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } } diff --git a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/tree.json b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/tree.json index 35b0203e8cde0..c9a72d9e107e1 100644 --- a/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-iot-actions-alpha/test/kinesis-stream/integ.kinesis-put-record-action.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.129" - } - }, "test-kinesis-stream-action-stack": { "id": "test-kinesis-stream-action-stack", "path": "test-kinesis-stream-action-stack", @@ -49,7 +41,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iot.CfnTopicRule", + "fqn": "aws-cdk-lib.aws_iot.CfnTopicRule", "version": "0.0.0" } }, @@ -57,6 +49,14 @@ "id": "TopicRuleActionRole", "path": "test-kinesis-stream-action-stack/TopicRule/TopicRuleActionRole", "children": { + "ImportTopicRuleActionRole": { + "id": "ImportTopicRuleActionRole", + "path": "test-kinesis-stream-action-stack/TopicRule/TopicRuleActionRole/ImportTopicRuleActionRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "test-kinesis-stream-action-stack/TopicRule/TopicRuleActionRole/Resource", @@ -78,7 +78,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -116,25 +116,25 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iot.TopicRule", + "fqn": "@aws-cdk/aws-iot-alpha.TopicRule", "version": "0.0.0" } }, @@ -161,20 +161,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -182,19 +179,43 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "test-kinesis-stream-action-stack/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "test-kinesis-stream-action-stack/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "test-kinesis-stream-action-stack/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } + }, + "Tree": { + "id": "Tree", + "path": "Tree", + "constructInfo": { + "fqn": "constructs.Construct", + "version": "10.1.270" + } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk/aws-iot-alpha/package.json b/packages/@aws-cdk/aws-iot-alpha/package.json index 83c113ca85a5d..b9e9276420a1c 100644 --- a/packages/@aws-cdk/aws-iot-alpha/package.json +++ b/packages/@aws-cdk/aws-iot-alpha/package.json @@ -85,8 +85,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-iotevents-actions-alpha/package.json b/packages/@aws-cdk/aws-iotevents-actions-alpha/package.json index 80e113b17f37c..0b33518cbccec 100644 --- a/packages/@aws-cdk/aws-iotevents-actions-alpha/package.json +++ b/packages/@aws-cdk/aws-iotevents-actions-alpha/package.json @@ -77,8 +77,8 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0", diff --git a/packages/@aws-cdk/aws-iotevents-alpha/package.json b/packages/@aws-cdk/aws-iotevents-alpha/package.json index 1f5c3f40f0ae2..756f02147545d 100644 --- a/packages/@aws-cdk/aws-iotevents-alpha/package.json +++ b/packages/@aws-cdk/aws-iotevents-alpha/package.json @@ -87,8 +87,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-ivs-alpha/package.json b/packages/@aws-cdk/aws-ivs-alpha/package.json index f5fcf70ab4c43..25ed8a3ae1a51 100644 --- a/packages/@aws-cdk/aws-ivs-alpha/package.json +++ b/packages/@aws-cdk/aws-ivs-alpha/package.json @@ -93,7 +93,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/package.json b/packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/package.json index 4c6f808490643..0168622d91446 100644 --- a/packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/package.json +++ b/packages/@aws-cdk/aws-kinesisanalytics-flink-alpha/package.json @@ -80,8 +80,8 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/package.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/package.json index 75b2ffd4b77cd..6d8d43d090a8e 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/package.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/package.json @@ -85,7 +85,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.assets.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.assets.json index e24ad2aca3bc7..e80f37d324cff 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.assets.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.assets.json @@ -1,7 +1,7 @@ { - "version": "30.0.0", + "version": "31.0.0", "files": { - "bed7f066b95b247a6396828e923d49752e448cf9b273ff54a37a205cc961034e": { + "be598567e1d5fd0d41466eb09c80aba0c9a6cd2d5e0ca28a3a21580b6c3f32b5": { "source": { "path": "aws-cdk-firehose-delivery-stream-source-stream.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "bed7f066b95b247a6396828e923d49752e448cf9b273ff54a37a205cc961034e.json", + "objectKey": "be598567e1d5fd0d41466eb09c80aba0c9a6cd2d5e0ca28a3a21580b6c3f32b5.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.template.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.template.json index b8558d19e19f7..d58ab6cf08a26 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.template.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/aws-cdk-firehose-delivery-stream-source-stream.template.json @@ -91,9 +91,6 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "StreamModeDetails": { - "StreamMode": "PROVISIONED" } } }, diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/cdk.out b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/cdk.out index ae4b03c54e770..7925065efbcc4 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/cdk.out +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"30.0.0"} \ No newline at end of file +{"version":"31.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/integ.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/integ.json index 446b490bc5d36..f8846ad8cfc19 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/integ.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "30.0.0", + "version": "31.0.0", "testCases": { "integ.delivery-stream.source-stream": { "stacks": [ diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/manifest.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/manifest.json index 83cc8493c2597..c5b6115b86c67 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/manifest.json @@ -1,5 +1,5 @@ { - "version": "30.0.0", + "version": "31.0.0", "artifacts": { "aws-cdk-firehose-delivery-stream-source-stream.assets": { "type": "cdk:asset-manifest", @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/bed7f066b95b247a6396828e923d49752e448cf9b273ff54a37a205cc961034e.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/be598567e1d5fd0d41466eb09c80aba0c9a6cd2d5e0ca28a3a21580b6c3f32b5.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/tree.json b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/tree.json index 1fdcf15ae4078..b9f3d3654b034 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-alpha/test/integ.delivery-stream.source-stream.js.snapshot/tree.json @@ -20,13 +20,13 @@ "aws:cdk:cloudformation:props": {} }, "constructInfo": { - "fqn": "@aws-cdk/aws-s3.CfnBucket", + "fqn": "aws-cdk-lib.aws_s3.CfnBucket", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-s3.Bucket", + "fqn": "aws-cdk-lib.aws_s3.Bucket", "version": "0.0.0" } }, @@ -38,7 +38,7 @@ "id": "ImportRole", "path": "aws-cdk-firehose-delivery-stream-source-stream/Role/ImportRole", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -63,7 +63,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -128,19 +128,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -167,20 +167,17 @@ "KeyId": "alias/aws/kinesis" } ] - }, - "streamModeDetails": { - "streamMode": "PROVISIONED" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.CfnStream", + "fqn": "aws-cdk-lib.aws_kinesis.CfnStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesis.Stream", + "fqn": "aws-cdk-lib.aws_kinesis.Stream", "version": "0.0.0" } }, @@ -188,7 +185,7 @@ "id": "AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "path": "aws-cdk-firehose-delivery-stream-source-stream/AwsCdkKinesisEncryptedStreamsUnsupportedRegions", "constructInfo": { - "fqn": "@aws-cdk/core.CfnCondition", + "fqn": "aws-cdk-lib.CfnCondition", "version": "0.0.0" } }, @@ -204,7 +201,7 @@ "id": "ImportService Role", "path": "aws-cdk-firehose-delivery-stream-source-stream/Delivery Stream/Service Role/ImportService Role", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -229,7 +226,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -276,19 +273,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -330,13 +327,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesisfirehose.CfnDeliveryStream", + "fqn": "aws-cdk-lib.aws_kinesisfirehose.CfnDeliveryStream", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-kinesisfirehose.DeliveryStream", + "fqn": "@aws-cdk/aws-kinesisfirehose-alpha.DeliveryStream", "version": "0.0.0" } }, @@ -344,7 +341,7 @@ "id": "@aws-cdk--aws-kinesisfirehose.CidrBlocks", "path": "aws-cdk-firehose-delivery-stream-source-stream/@aws-cdk--aws-kinesisfirehose.CidrBlocks", "constructInfo": { - "fqn": "@aws-cdk/core.CfnMapping", + "fqn": "aws-cdk-lib.CfnMapping", "version": "0.0.0" } }, @@ -352,7 +349,7 @@ "id": "BootstrapVersion", "path": "aws-cdk-firehose-delivery-stream-source-stream/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -360,13 +357,13 @@ "id": "CheckBootstrapVersion", "path": "aws-cdk-firehose-delivery-stream-source-stream/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -375,12 +372,12 @@ "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.237" + "version": "10.1.270" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk/aws-kinesisfirehose-destinations-alpha/package.json b/packages/@aws-cdk/aws-kinesisfirehose-destinations-alpha/package.json index e702d7db24d4c..9b49098f80cac 100644 --- a/packages/@aws-cdk/aws-kinesisfirehose-destinations-alpha/package.json +++ b/packages/@aws-cdk/aws-kinesisfirehose-destinations-alpha/package.json @@ -79,8 +79,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/aws-kinesisfirehose-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-lambda-go-alpha/package.json b/packages/@aws-cdk/aws-lambda-go-alpha/package.json index 7c5cc91f95e32..1605b94aec016 100644 --- a/packages/@aws-cdk/aws-lambda-go-alpha/package.json +++ b/packages/@aws-cdk/aws-lambda-go-alpha/package.json @@ -88,7 +88,7 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-lambda-python-alpha/package.json b/packages/@aws-cdk/aws-lambda-python-alpha/package.json index 40c317002c942..24b0eeec32265 100644 --- a/packages/@aws-cdk/aws-lambda-python-alpha/package.json +++ b/packages/@aws-cdk/aws-lambda-python-alpha/package.json @@ -79,7 +79,7 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-location-alpha/package.json b/packages/@aws-cdk/aws-location-alpha/package.json index e288834286566..101e41a8ea14a 100644 --- a/packages/@aws-cdk/aws-location-alpha/package.json +++ b/packages/@aws-cdk/aws-location-alpha/package.json @@ -88,7 +88,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-msk-alpha/package.json b/packages/@aws-cdk/aws-msk-alpha/package.json index 20235129e51c8..9ac78e135f142 100644 --- a/packages/@aws-cdk/aws-msk-alpha/package.json +++ b/packages/@aws-cdk/aws-msk-alpha/package.json @@ -87,8 +87,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-msk-alpha/test/__snapshots__/cluster.test.js.snap b/packages/@aws-cdk/aws-msk-alpha/test/__snapshots__/cluster.test.js.snap index 6791e85b252fc..8c5770b626607 100644 --- a/packages/@aws-cdk/aws-msk-alpha/test/__snapshots__/cluster.test.js.snap +++ b/packages/@aws-cdk/aws-msk-alpha/test/__snapshots__/cluster.test.js.snap @@ -1,16 +1,16 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`MSK Cluster Snapshot test with all values set 1`] = ` -Object { - "Resources": Object { - "Vpc8378EB38": Object { - "Properties": Object { +{ + "Resources": { + "Vpc8378EB38": { + "Properties": { "CidrBlock": "10.0.0.0/16", "EnableDnsHostnames": true, "EnableDnsSupport": true, "InstanceTenancy": "default", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc", }, @@ -18,10 +18,10 @@ Object { }, "Type": "AWS::EC2::VPC", }, - "VpcIGWD7BA715C": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcIGWD7BA715C": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc", }, @@ -29,164 +29,164 @@ Object { }, "Type": "AWS::EC2::InternetGateway", }, - "VpcPrivateSubnet1DefaultRouteBE02A9ED": Object { - "Properties": Object { + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": Object { + "NatGatewayId": { "Ref": "VpcPublicSubnet1NATGateway4D7517AA", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, }, "Type": "AWS::EC2::Route", }, - "VpcPrivateSubnet1RouteTableAssociation70C59FA6": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Properties": { + "RouteTableId": { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPrivateSubnet1RouteTableB2C5B500": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPrivateSubnet1Subnet536B997A": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPrivateSubnet1Subnet536B997A": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 0, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.128.0/18", "MapPublicIpOnLaunch": false, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Private", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Private", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPrivateSubnet2DefaultRoute060D2087": Object { - "Properties": Object { + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": Object { + "NatGatewayId": { "Ref": "VpcPublicSubnet2NATGateway9182C01D", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, }, "Type": "AWS::EC2::Route", }, - "VpcPrivateSubnet2RouteTableA678073B": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPrivateSubnet2RouteTableA678073B": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPrivateSubnet2RouteTableAssociationA89CAD56": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Properties": { + "RouteTableId": { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPrivateSubnet2Subnet3788AAA1": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPrivateSubnet2Subnet3788AAA1": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 1, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.192.0/18", "MapPublicIpOnLaunch": false, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Private", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Private", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPublicSubnet1DefaultRoute3DA9E72A": Object { - "DependsOn": Array [ + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "DependsOn": [ "VpcVPCGWBF912B6E", ], - "Properties": Object { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": Object { + "GatewayId": { "Ref": "VpcIGWD7BA715C", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, }, "Type": "AWS::EC2::Route", }, - "VpcPublicSubnet1EIPD7E02669": Object { - "Properties": Object { + "VpcPublicSubnet1EIPD7E02669": { + "Properties": { "Domain": "vpc", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, @@ -194,23 +194,23 @@ Object { }, "Type": "AWS::EC2::EIP", }, - "VpcPublicSubnet1NATGateway4D7517AA": Object { - "DependsOn": Array [ + "VpcPublicSubnet1NATGateway4D7517AA": { + "DependsOn": [ "VpcPublicSubnet1DefaultRoute3DA9E72A", "VpcPublicSubnet1RouteTableAssociation97140677", ], - "Properties": Object { - "AllocationId": Object { - "Fn::GetAtt": Array [ + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ "VpcPublicSubnet1EIPD7E02669", "AllocationId", ], }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, @@ -218,83 +218,83 @@ Object { }, "Type": "AWS::EC2::NatGateway", }, - "VpcPublicSubnet1RouteTable6C95E38E": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPublicSubnet1RouteTable6C95E38E": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPublicSubnet1RouteTableAssociation97140677": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Properties": { + "RouteTableId": { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPublicSubnet1Subnet5C2D37C4": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPublicSubnet1Subnet5C2D37C4": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 0, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.0.0/18", "MapPublicIpOnLaunch": true, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Public", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Public", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPublicSubnet2DefaultRoute97F91067": Object { - "DependsOn": Array [ + "VpcPublicSubnet2DefaultRoute97F91067": { + "DependsOn": [ "VpcVPCGWBF912B6E", ], - "Properties": Object { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": Object { + "GatewayId": { "Ref": "VpcIGWD7BA715C", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, }, "Type": "AWS::EC2::Route", }, - "VpcPublicSubnet2EIP3C605A87": Object { - "Properties": Object { + "VpcPublicSubnet2EIP3C605A87": { + "Properties": { "Domain": "vpc", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, @@ -302,23 +302,23 @@ Object { }, "Type": "AWS::EC2::EIP", }, - "VpcPublicSubnet2NATGateway9182C01D": Object { - "DependsOn": Array [ + "VpcPublicSubnet2NATGateway9182C01D": { + "DependsOn": [ "VpcPublicSubnet2DefaultRoute97F91067", "VpcPublicSubnet2RouteTableAssociationDD5762D8", ], - "Properties": Object { - "AllocationId": Object { - "Fn::GetAtt": Array [ + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ "VpcPublicSubnet2EIP3C605A87", "AllocationId", ], }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, @@ -326,139 +326,139 @@ Object { }, "Type": "AWS::EC2::NatGateway", }, - "VpcPublicSubnet2RouteTable94F7E489": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPublicSubnet2RouteTable94F7E489": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPublicSubnet2RouteTableAssociationDD5762D8": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Properties": { + "RouteTableId": { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPublicSubnet2Subnet691E08A3": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPublicSubnet2Subnet691E08A3": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 1, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.64.0/18", "MapPublicIpOnLaunch": true, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Public", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Public", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcVPCGWBF912B6E": Object { - "Properties": Object { - "InternetGatewayId": Object { + "VpcVPCGWBF912B6E": { + "Properties": { + "InternetGatewayId": { "Ref": "VpcIGWD7BA715C", }, - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::VPCGatewayAttachment", }, - "kafka5BADF433": Object { + "kafka5BADF433": { "DeletionPolicy": "Retain", - "Properties": Object { - "BrokerNodeGroupInfo": Object { - "ClientSubnets": Array [ - Object { + "Properties": { + "BrokerNodeGroupInfo": { + "ClientSubnets": [ + { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, - Object { + { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, ], "InstanceType": "kafka.m5.large", - "SecurityGroups": Array [ + "SecurityGroups": [ "sg-123", "sg-456", ], - "StorageInfo": Object { - "EBSStorageInfo": Object { + "StorageInfo": { + "EBSStorageInfo": { "VolumeSize": 100, }, }, }, - "ClientAuthentication": Object { - "Tls": Object { - "CertificateAuthorityArnList": Array [ + "ClientAuthentication": { + "Tls": { + "CertificateAuthorityArnList": [ "arn:aws:acm-pca:us-west-2:1234567890:certificate-authority/11111111-1111-1111-1111-111111111111", ], }, }, "ClusterName": "test-cluster", - "EncryptionInfo": Object { - "EncryptionAtRest": Object { + "EncryptionInfo": { + "EncryptionAtRest": { "DataVolumeKMSKeyId": "1234abc", }, - "EncryptionInTransit": Object { + "EncryptionInTransit": { "ClientBroker": "TLS", "InCluster": true, }, }, "EnhancedMonitoring": "PER_TOPIC_PER_BROKER", "KafkaVersion": "2.6.1", - "LoggingInfo": Object { - "BrokerLogs": Object { - "CloudWatchLogs": Object { + "LoggingInfo": { + "BrokerLogs": { + "CloudWatchLogs": { "Enabled": true, "LogGroup": "a-log-group", }, - "Firehose": Object { + "Firehose": { "DeliveryStream": "a-delivery-stream", "Enabled": true, }, - "S3": Object { + "S3": { "Bucket": "a-bucket", "Enabled": true, }, }, }, "NumberOfBrokerNodes": 2, - "OpenMonitoring": Object { - "Prometheus": Object { - "JmxExporter": Object { + "OpenMonitoring": { + "Prometheus": { + "JmxExporter": { "EnabledInBroker": true, }, - "NodeExporter": Object { + "NodeExporter": { "EnabledInBroker": true, }, }, @@ -467,8 +467,8 @@ Object { "Type": "AWS::MSK::Cluster", "UpdateReplacePolicy": "Retain", }, - "sg1fromsg32181E6F4C07E": Object { - "Properties": Object { + "sg1fromsg32181E6F4C07E": { + "Properties": { "Description": "from sg3:2181", "FromPort": 2181, "GroupId": "sg-123", @@ -478,8 +478,8 @@ Object { }, "Type": "AWS::EC2::SecurityGroupIngress", }, - "sg2fromsg32181884B3B9E": Object { - "Properties": Object { + "sg2fromsg32181884B3B9E": { + "Properties": { "Description": "from sg3:2181", "FromPort": 2181, "GroupId": "sg-456", @@ -494,16 +494,16 @@ Object { `; exports[`MSK Cluster created with authentication enabled with sasl/iam auth and tls Snapshot test with all values set (iam/sasl) 1`] = ` -Object { - "Resources": Object { - "Vpc8378EB38": Object { - "Properties": Object { +{ + "Resources": { + "Vpc8378EB38": { + "Properties": { "CidrBlock": "10.0.0.0/16", "EnableDnsHostnames": true, "EnableDnsSupport": true, "InstanceTenancy": "default", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc", }, @@ -511,10 +511,10 @@ Object { }, "Type": "AWS::EC2::VPC", }, - "VpcIGWD7BA715C": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcIGWD7BA715C": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc", }, @@ -522,164 +522,164 @@ Object { }, "Type": "AWS::EC2::InternetGateway", }, - "VpcPrivateSubnet1DefaultRouteBE02A9ED": Object { - "Properties": Object { + "VpcPrivateSubnet1DefaultRouteBE02A9ED": { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": Object { + "NatGatewayId": { "Ref": "VpcPublicSubnet1NATGateway4D7517AA", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, }, "Type": "AWS::EC2::Route", }, - "VpcPrivateSubnet1RouteTableAssociation70C59FA6": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPrivateSubnet1RouteTableAssociation70C59FA6": { + "Properties": { + "RouteTableId": { "Ref": "VpcPrivateSubnet1RouteTableB2C5B500", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPrivateSubnet1RouteTableB2C5B500": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPrivateSubnet1RouteTableB2C5B500": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPrivateSubnet1Subnet536B997A": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPrivateSubnet1Subnet536B997A": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 0, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.128.0/18", "MapPublicIpOnLaunch": false, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Private", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Private", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPrivateSubnet2DefaultRoute060D2087": Object { - "Properties": Object { + "VpcPrivateSubnet2DefaultRoute060D2087": { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "NatGatewayId": Object { + "NatGatewayId": { "Ref": "VpcPublicSubnet2NATGateway9182C01D", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, }, "Type": "AWS::EC2::Route", }, - "VpcPrivateSubnet2RouteTableA678073B": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPrivateSubnet2RouteTableA678073B": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPrivateSubnet2RouteTableAssociationA89CAD56": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPrivateSubnet2RouteTableAssociationA89CAD56": { + "Properties": { + "RouteTableId": { "Ref": "VpcPrivateSubnet2RouteTableA678073B", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPrivateSubnet2Subnet3788AAA1": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPrivateSubnet2Subnet3788AAA1": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 1, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.192.0/18", "MapPublicIpOnLaunch": false, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Private", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Private", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PrivateSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPublicSubnet1DefaultRoute3DA9E72A": Object { - "DependsOn": Array [ + "VpcPublicSubnet1DefaultRoute3DA9E72A": { + "DependsOn": [ "VpcVPCGWBF912B6E", ], - "Properties": Object { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": Object { + "GatewayId": { "Ref": "VpcIGWD7BA715C", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, }, "Type": "AWS::EC2::Route", }, - "VpcPublicSubnet1EIPD7E02669": Object { - "Properties": Object { + "VpcPublicSubnet1EIPD7E02669": { + "Properties": { "Domain": "vpc", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, @@ -687,23 +687,23 @@ Object { }, "Type": "AWS::EC2::EIP", }, - "VpcPublicSubnet1NATGateway4D7517AA": Object { - "DependsOn": Array [ + "VpcPublicSubnet1NATGateway4D7517AA": { + "DependsOn": [ "VpcPublicSubnet1DefaultRoute3DA9E72A", "VpcPublicSubnet1RouteTableAssociation97140677", ], - "Properties": Object { - "AllocationId": Object { - "Fn::GetAtt": Array [ + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ "VpcPublicSubnet1EIPD7E02669", "AllocationId", ], }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, @@ -711,83 +711,83 @@ Object { }, "Type": "AWS::EC2::NatGateway", }, - "VpcPublicSubnet1RouteTable6C95E38E": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPublicSubnet1RouteTable6C95E38E": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPublicSubnet1RouteTableAssociation97140677": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPublicSubnet1RouteTableAssociation97140677": { + "Properties": { + "RouteTableId": { "Ref": "VpcPublicSubnet1RouteTable6C95E38E", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet1Subnet5C2D37C4", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPublicSubnet1Subnet5C2D37C4": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPublicSubnet1Subnet5C2D37C4": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 0, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.0.0/18", "MapPublicIpOnLaunch": true, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Public", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Public", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet1", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcPublicSubnet2DefaultRoute97F91067": Object { - "DependsOn": Array [ + "VpcPublicSubnet2DefaultRoute97F91067": { + "DependsOn": [ "VpcVPCGWBF912B6E", ], - "Properties": Object { + "Properties": { "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": Object { + "GatewayId": { "Ref": "VpcIGWD7BA715C", }, - "RouteTableId": Object { + "RouteTableId": { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, }, "Type": "AWS::EC2::Route", }, - "VpcPublicSubnet2EIP3C605A87": Object { - "Properties": Object { + "VpcPublicSubnet2EIP3C605A87": { + "Properties": { "Domain": "vpc", - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, @@ -795,23 +795,23 @@ Object { }, "Type": "AWS::EC2::EIP", }, - "VpcPublicSubnet2NATGateway9182C01D": Object { - "DependsOn": Array [ + "VpcPublicSubnet2NATGateway9182C01D": { + "DependsOn": [ "VpcPublicSubnet2DefaultRoute97F91067", "VpcPublicSubnet2RouteTableAssociationDD5762D8", ], - "Properties": Object { - "AllocationId": Object { - "Fn::GetAtt": Array [ + "Properties": { + "AllocationId": { + "Fn::GetAtt": [ "VpcPublicSubnet2EIP3C605A87", "AllocationId", ], }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, @@ -819,144 +819,144 @@ Object { }, "Type": "AWS::EC2::NatGateway", }, - "VpcPublicSubnet2RouteTable94F7E489": Object { - "Properties": Object { - "Tags": Array [ - Object { + "VpcPublicSubnet2RouteTable94F7E489": { + "Properties": { + "Tags": [ + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::RouteTable", }, - "VpcPublicSubnet2RouteTableAssociationDD5762D8": Object { - "Properties": Object { - "RouteTableId": Object { + "VpcPublicSubnet2RouteTableAssociationDD5762D8": { + "Properties": { + "RouteTableId": { "Ref": "VpcPublicSubnet2RouteTable94F7E489", }, - "SubnetId": Object { + "SubnetId": { "Ref": "VpcPublicSubnet2Subnet691E08A3", }, }, "Type": "AWS::EC2::SubnetRouteTableAssociation", }, - "VpcPublicSubnet2Subnet691E08A3": Object { - "Properties": Object { - "AvailabilityZone": Object { - "Fn::Select": Array [ + "VpcPublicSubnet2Subnet691E08A3": { + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ 1, - Object { + { "Fn::GetAZs": "", }, ], }, "CidrBlock": "10.0.64.0/18", "MapPublicIpOnLaunch": true, - "Tags": Array [ - Object { + "Tags": [ + { "Key": "aws-cdk:subnet-name", "Value": "Public", }, - Object { + { "Key": "aws-cdk:subnet-type", "Value": "Public", }, - Object { + { "Key": "Name", "Value": "Default/Vpc/PublicSubnet2", }, ], - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::Subnet", }, - "VpcVPCGWBF912B6E": Object { - "Properties": Object { - "InternetGatewayId": Object { + "VpcVPCGWBF912B6E": { + "Properties": { + "InternetGatewayId": { "Ref": "VpcIGWD7BA715C", }, - "VpcId": Object { + "VpcId": { "Ref": "Vpc8378EB38", }, }, "Type": "AWS::EC2::VPCGatewayAttachment", }, - "kafka5BADF433": Object { + "kafka5BADF433": { "DeletionPolicy": "Retain", - "Properties": Object { - "BrokerNodeGroupInfo": Object { - "ClientSubnets": Array [ - Object { + "Properties": { + "BrokerNodeGroupInfo": { + "ClientSubnets": [ + { "Ref": "VpcPrivateSubnet1Subnet536B997A", }, - Object { + { "Ref": "VpcPrivateSubnet2Subnet3788AAA1", }, ], "InstanceType": "kafka.m5.large", - "SecurityGroups": Array [ + "SecurityGroups": [ "sg-123", "sg-456", ], - "StorageInfo": Object { - "EBSStorageInfo": Object { + "StorageInfo": { + "EBSStorageInfo": { "VolumeSize": 100, }, }, }, - "ClientAuthentication": Object { - "Sasl": Object { - "Iam": Object { + "ClientAuthentication": { + "Sasl": { + "Iam": { "Enabled": true, }, }, - "Tls": Object { - "CertificateAuthorityArnList": Array [ + "Tls": { + "CertificateAuthorityArnList": [ "arn:aws:acm-pca:us-west-2:1234567890:certificate-authority/11111111-1111-1111-1111-111111111111", ], }, }, "ClusterName": "test-cluster", - "EncryptionInfo": Object { - "EncryptionAtRest": Object { + "EncryptionInfo": { + "EncryptionAtRest": { "DataVolumeKMSKeyId": "1234abc", }, - "EncryptionInTransit": Object { + "EncryptionInTransit": { "ClientBroker": "TLS", "InCluster": true, }, }, "EnhancedMonitoring": "PER_TOPIC_PER_BROKER", "KafkaVersion": "2.6.1", - "LoggingInfo": Object { - "BrokerLogs": Object { - "CloudWatchLogs": Object { + "LoggingInfo": { + "BrokerLogs": { + "CloudWatchLogs": { "Enabled": true, "LogGroup": "a-log-group", }, - "Firehose": Object { + "Firehose": { "DeliveryStream": "a-delivery-stream", "Enabled": true, }, - "S3": Object { + "S3": { "Bucket": "a-bucket", "Enabled": true, }, }, }, "NumberOfBrokerNodes": 2, - "OpenMonitoring": Object { - "Prometheus": Object { - "JmxExporter": Object { + "OpenMonitoring": { + "Prometheus": { + "JmxExporter": { "EnabledInBroker": true, }, - "NodeExporter": Object { + "NodeExporter": { "EnabledInBroker": true, }, }, @@ -965,8 +965,8 @@ Object { "Type": "AWS::MSK::Cluster", "UpdateReplacePolicy": "Retain", }, - "sg1fromsg32181E6F4C07E": Object { - "Properties": Object { + "sg1fromsg32181E6F4C07E": { + "Properties": { "Description": "from sg3:2181", "FromPort": 2181, "GroupId": "sg-123", @@ -976,8 +976,8 @@ Object { }, "Type": "AWS::EC2::SecurityGroupIngress", }, - "sg2fromsg32181884B3B9E": Object { - "Properties": Object { + "sg2fromsg32181884B3B9E": { + "Properties": { "Description": "from sg3:2181", "FromPort": 2181, "GroupId": "sg-456", diff --git a/packages/@aws-cdk/aws-neptune-alpha/package.json b/packages/@aws-cdk/aws-neptune-alpha/package.json index 609e991dabcd7..f14334b9470e9 100644 --- a/packages/@aws-cdk/aws-neptune-alpha/package.json +++ b/packages/@aws-cdk/aws-neptune-alpha/package.json @@ -86,7 +86,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-redshift-alpha/package.json b/packages/@aws-cdk/aws-redshift-alpha/package.json index a371cbbae687e..f806f41a4150c 100644 --- a/packages/@aws-cdk/aws-redshift-alpha/package.json +++ b/packages/@aws-cdk/aws-redshift-alpha/package.json @@ -85,9 +85,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-sdk": "^2.1329.0", - "jest": "^27.5.1", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-route53resolver-alpha/package.json b/packages/@aws-cdk/aws-route53resolver-alpha/package.json index defc633689d2c..b21d3d48f63ce 100644 --- a/packages/@aws-cdk/aws-route53resolver-alpha/package.json +++ b/packages/@aws-cdk/aws-route53resolver-alpha/package.json @@ -86,7 +86,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-s3objectlambda-alpha/package.json b/packages/@aws-cdk/aws-s3objectlambda-alpha/package.json index 6f08e02ab7289..f04f4bef5aa8b 100644 --- a/packages/@aws-cdk/aws-s3objectlambda-alpha/package.json +++ b/packages/@aws-cdk/aws-s3objectlambda-alpha/package.json @@ -88,8 +88,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-sagemaker-alpha/package.json b/packages/@aws-cdk/aws-sagemaker-alpha/package.json index 597bb2fda9f61..608d2b4f8d014 100644 --- a/packages/@aws-cdk/aws-sagemaker-alpha/package.json +++ b/packages/@aws-cdk/aws-sagemaker-alpha/package.json @@ -86,8 +86,9 @@ "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "aws-sdk": "^2.1329.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/lib/application.ts b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/lib/application.ts index fea31574909f6..413a288f300bd 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/lib/application.ts +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/lib/application.ts @@ -56,13 +56,6 @@ export interface IApplication extends cdk.IResource { */ readonly applicationName?: string; - /** - * Associate this application with an attribute group. - * - * @param attributeGroup AppRegistry attribute group - */ - associateAttributeGroup(attributeGroup: IAttributeGroup): void; - /** * Create an attribute group and associate this application with the created attribute group. * @@ -70,15 +63,6 @@ export interface IApplication extends cdk.IResource { * @param attributeGroupProps AppRegistry attribute group props */ addAttributeGroup(id: string, attributeGroupProps: AttributeGroupAssociationProps): IAttributeGroup; - - /** - * Associate this application with a CloudFormation stack. - * - * @deprecated Use `associateApplicationWithStack` instead. - * @param stack a CFN stack - */ - associateStack(stack: cdk.Stack): void; - /** * Associate a Cloudformation statck with the application in the given stack. * @@ -128,23 +112,6 @@ abstract class ApplicationBase extends cdk.Resource implements IApplication { private readonly associatedAttributeGroups: Set = new Set(); private readonly associatedResources: Set = new Set(); - /** - * Associate an attribute group with application - * If the attribute group is already associated, it will ignore duplicate request. - * - * @deprecated Use `AttributeGroup.associateWith` instead. - */ - public associateAttributeGroup(attributeGroup: IAttributeGroup): void { - if (!this.associatedAttributeGroups.has(attributeGroup.node.addr)) { - const hashId = this.generateUniqueHash(attributeGroup.node.addr); - new CfnAttributeGroupAssociation(this, `AttributeGroupAssociation${hashId}`, { - application: this.applicationId, - attributeGroup: attributeGroup.attributeGroupId, - }); - this.associatedAttributeGroups.add(attributeGroup.node.addr); - } - } - /** * Create an attribute group and associate this application with the created attribute group. */ @@ -162,25 +129,6 @@ abstract class ApplicationBase extends cdk.Resource implements IApplication { return attributeGroup; } - /** - * Associate a stack with the application - * If the resource is already associated, it will ignore duplicate request. - * A stack can only be associated with one application. - * - * @deprecated Use `associateApplicationWithStack` instead. - */ - public associateStack(stack: cdk.Stack): void { - if (!this.associatedResources.has(stack.node.addr)) { - const hashId = this.generateUniqueHash(stack.node.addr); - new CfnResourceAssociation(this, `ResourceAssociation${hashId}`, { - application: this.applicationId, - resource: stack.stackId, - resourceType: 'CFN_STACK', - }); - this.associatedResources.add(stack.node.addr); - } - } - /** * Associate stack with the application in the stack passed as parameter. * diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/package.json b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/package.json index 3aff9dd21e30a..8f422e56d8f38 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/package.json +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/package.json @@ -88,7 +88,7 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0", "@aws-cdk/integ-tests-alpha": "0.0.0" diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/application.test.ts b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/application.test.ts index ad99f664c158a..79439303e6aa2 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/application.test.ts +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/application.test.ts @@ -146,20 +146,6 @@ describe('Application', () => { }); }); - test('associate attribute group', () => { - const attributeGroup = new appreg.AttributeGroup(stack, 'AttributeGroup', { - attributeGroupName: 'AttributeGroupName', - attributes: {}, - }); - - application.associateAttributeGroup(attributeGroup); - - Template.fromStack(stack).hasResourceProperties('AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation', { - Application: { 'Fn::GetAtt': ['MyApplication5C63EC1D', 'Id'] }, - AttributeGroup: { 'Fn::GetAtt': ['AttributeGroup409C6335', 'Id'] }, - }); - }), - test('associate new attribute group', () => { application.addAttributeGroup('AttributeGroup', { attributeGroupName: 'AttributeGroupName', @@ -183,78 +169,6 @@ describe('Application', () => { }, }, }); - }), - - test('duplicate attribute group association are idempotent', () => { - const attributeGroup = new appreg.AttributeGroup(stack, 'AttributeGroup', { - attributeGroupName: 'attributeGroupName', - attributes: { key: 'value' }, - }); - - // If these were not idempotent, the second call would produce an error for duplicate construct ID. - application.associateAttributeGroup(attributeGroup); - application.associateAttributeGroup(attributeGroup); - - Template.fromStack(stack).resourceCountIs('AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation', 1); - }), - - test('multiple applications and attribute groups can associate', () => { - const application2 = new appreg.Application(stack, 'MyApplication2', { - applicationName: 'MyApplication2', - }); - - const attributeGroup1 = new appreg.AttributeGroup(stack, 'AttributeGroup', { - attributeGroupName: 'attributeGroupName', - attributes: { key: 'value' }, - }); - - const attributeGroup2 = new appreg.AttributeGroup(stack, 'AttributeGroup2', { - attributeGroupName: 'attributeGroupName2', - attributes: { key: 'value' }, - }); - - application.associateAttributeGroup(attributeGroup1); - application.associateAttributeGroup(attributeGroup2); - - application2.associateAttributeGroup(attributeGroup1); - application2.associateAttributeGroup(attributeGroup2); - - Template.fromStack(stack).resourceCountIs('AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation', 4); - }), - - test('associate resource', () => { - const resource = new cdk.Stack(stack, 'MyStack'); - - application.associateStack(resource); - - Template.fromStack(stack).hasResourceProperties('AWS::ServiceCatalogAppRegistry::ResourceAssociation', { - Application: { 'Fn::GetAtt': ['MyApplication5C63EC1D', 'Id'] }, - Resource: { 'Fn::ImportValue': 'MyStack:ExportsOutputRefAWSStackIdB2DD5BAA' }, - }); - }), - - test('associate resource on imported application', () => { - const resource = new cdk.Stack(stack, 'MyStack'); - - const importedApplication = appreg.Application.fromApplicationArn(stack, 'ImportedApplication', - 'arn:aws:servicecatalog:us-east-1:123456789012:/applications/0bqmvxvgmry0ecc4mjhwypun6i'); - - importedApplication.associateStack(resource); - - Template.fromStack(stack).hasResourceProperties('AWS::ServiceCatalogAppRegistry::ResourceAssociation', { - Application: '0bqmvxvgmry0ecc4mjhwypun6i', - Resource: { 'Fn::ImportValue': 'MyStack:ExportsOutputRefAWSStackIdB2DD5BAA' }, - }); - }), - - test('duplicate resource assocations are idempotent', () => { - const resource = new cdk.Stack(stack, 'MyStack'); - - // If these were not idempotent, the second call would produce an error for duplicate construct ID. - application.associateStack(resource); - application.associateStack(resource); - - Template.fromStack(stack).resourceCountIs('AWS::ServiceCatalogAppRegistry::ResourceAssociation', 1); }); }); diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.assets.json b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.assets.json index 4b0a52bc75b19..44ce22bf8028e 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.assets.json +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.assets.json @@ -1,7 +1,7 @@ { "version": "31.0.0", "files": { - "461d235e9497deb16b9209be4a927c7d0dc7aa06d668e38bfb19a90db8e4a4b2": { + "f33c45795986ec36a911c738213b5076f0382d4e57e6ed43ea411e2014880ae2": { "source": { "path": "integ-servicecatalogappregistry-application.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "461d235e9497deb16b9209be4a927c7d0dc7aa06d668e38bfb19a90db8e4a4b2.json", + "objectKey": "f33c45795986ec36a911c738213b5076f0382d4e57e6ed43ea411e2014880ae2.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.template.json b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.template.json index 12b3c8820e36b..4c96da405878b 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.template.json +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/integ-servicecatalogappregistry-application.template.json @@ -7,38 +7,6 @@ "Description": "My application description" } }, - "TestApplicationResourceAssociationd232b63e52a8414E905D": { - "Type": "AWS::ServiceCatalogAppRegistry::ResourceAssociation", - "Properties": { - "Application": { - "Fn::GetAtt": [ - "TestApplication2FBC585F", - "Id" - ] - }, - "Resource": { - "Ref": "AWS::StackId" - }, - "ResourceType": "CFN_STACK" - } - }, - "TestApplicationAttributeGroupAssociation4ba7f5842818B8EE1C6F": { - "Type": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation", - "Properties": { - "Application": { - "Fn::GetAtt": [ - "TestApplication2FBC585F", - "Id" - ] - }, - "AttributeGroup": { - "Fn::GetAtt": [ - "TestAttributeGroupB1CB284F", - "Id" - ] - } - } - }, "TestApplicationmyAnotherAttributeGroup375F79DB": { "Type": "AWS::ServiceCatalogAppRegistry::AttributeGroup", "Properties": { @@ -105,29 +73,6 @@ ] } }, - "TestAttributeGroupB1CB284F": { - "Type": "AWS::ServiceCatalogAppRegistry::AttributeGroup", - "Properties": { - "Attributes": { - "stage": "alpha", - "teamMembers": [ - "markI", - "markII", - "markIII" - ], - "public": false, - "publishYear": 2021, - "plannedRoadMap": { - "alpha": "some time", - "beta": "another time", - "gamma": "penultimate time", - "release": "go time" - } - }, - "Name": "myAttributeGroup", - "Description": "my attribute group description" - } - }, "MyRoleF48FFE04": { "Type": "AWS::IAM::Role", "Properties": { diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/manifest.json b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/manifest.json index a78c955945945..211d82a8b57ae 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/manifest.json @@ -17,7 +17,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/461d235e9497deb16b9209be4a927c7d0dc7aa06d668e38bfb19a90db8e4a4b2.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/f33c45795986ec36a911c738213b5076f0382d4e57e6ed43ea411e2014880ae2.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -39,18 +39,6 @@ "data": "TestApplication2FBC585F" } ], - "/integ-servicecatalogappregistry-application/TestApplication/ResourceAssociationd232b63e52a8": [ - { - "type": "aws:cdk:logicalId", - "data": "TestApplicationResourceAssociationd232b63e52a8414E905D" - } - ], - "/integ-servicecatalogappregistry-application/TestApplication/AttributeGroupAssociation4ba7f5842818": [ - { - "type": "aws:cdk:logicalId", - "data": "TestApplicationAttributeGroupAssociation4ba7f5842818B8EE1C6F" - } - ], "/integ-servicecatalogappregistry-application/TestApplication/myAnotherAttributeGroup/Resource": [ { "type": "aws:cdk:logicalId", @@ -69,12 +57,6 @@ "data": "TestApplicationMyShareIdE1044482" } ], - "/integ-servicecatalogappregistry-application/TestAttributeGroup/Resource": [ - { - "type": "aws:cdk:logicalId", - "data": "TestAttributeGroupB1CB284F" - } - ], "/integ-servicecatalogappregistry-application/MyRole/Resource": [ { "type": "aws:cdk:logicalId", @@ -92,6 +74,33 @@ "type": "aws:cdk:logicalId", "data": "CheckBootstrapVersion" } + ], + "TestApplicationResourceAssociationd232b63e52a8414E905D": [ + { + "type": "aws:cdk:logicalId", + "data": "TestApplicationResourceAssociationd232b63e52a8414E905D", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" + ] + } + ], + "TestApplicationAttributeGroupAssociation4ba7f5842818B8EE1C6F": [ + { + "type": "aws:cdk:logicalId", + "data": "TestApplicationAttributeGroupAssociation4ba7f5842818B8EE1C6F", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" + ] + } + ], + "TestAttributeGroupB1CB284F": [ + { + "type": "aws:cdk:logicalId", + "data": "TestAttributeGroupB1CB284F", + "trace": [ + "!!DESTRUCTIVE_CHANGES: WILL_DESTROY" + ] + } ] }, "displayName": "integ-servicecatalogappregistry-application" diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/tree.json b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/tree.json index e37ff9f4ccae9..454d25db9585a 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.js.snapshot/tree.json @@ -23,55 +23,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnApplication", - "version": "0.0.0" - } - }, - "ResourceAssociationd232b63e52a8": { - "id": "ResourceAssociationd232b63e52a8", - "path": "integ-servicecatalogappregistry-application/TestApplication/ResourceAssociationd232b63e52a8", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::ServiceCatalogAppRegistry::ResourceAssociation", - "aws:cdk:cloudformation:props": { - "application": { - "Fn::GetAtt": [ - "TestApplication2FBC585F", - "Id" - ] - }, - "resource": { - "Ref": "AWS::StackId" - }, - "resourceType": "CFN_STACK" - } - }, - "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnResourceAssociation", - "version": "0.0.0" - } - }, - "AttributeGroupAssociation4ba7f5842818": { - "id": "AttributeGroupAssociation4ba7f5842818", - "path": "integ-servicecatalogappregistry-application/TestApplication/AttributeGroupAssociation4ba7f5842818", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation", - "aws:cdk:cloudformation:props": { - "application": { - "Fn::GetAtt": [ - "TestApplication2FBC585F", - "Id" - ] - }, - "attributeGroup": { - "Fn::GetAtt": [ - "TestAttributeGroupB1CB284F", - "Id" - ] - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnAttributeGroupAssociation", + "fqn": "aws-cdk-lib.aws_servicecatalogappregistry.CfnApplication", "version": "0.0.0" } }, @@ -106,13 +58,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnAttributeGroup", + "fqn": "aws-cdk-lib.aws_servicecatalogappregistry.CfnAttributeGroup", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.AttributeGroup", + "fqn": "@aws-cdk/aws-servicecatalogappregistry-alpha.AttributeGroup", "version": "0.0.0" } }, @@ -137,7 +89,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnAttributeGroupAssociation", + "fqn": "aws-cdk-lib.aws_servicecatalogappregistry.CfnAttributeGroupAssociation", "version": "0.0.0" } }, @@ -171,54 +123,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-ram.CfnResourceShare", - "version": "0.0.0" - } - } - }, - "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.Application", - "version": "0.0.0" - } - }, - "TestAttributeGroup": { - "id": "TestAttributeGroup", - "path": "integ-servicecatalogappregistry-application/TestAttributeGroup", - "children": { - "Resource": { - "id": "Resource", - "path": "integ-servicecatalogappregistry-application/TestAttributeGroup/Resource", - "attributes": { - "aws:cdk:cloudformation:type": "AWS::ServiceCatalogAppRegistry::AttributeGroup", - "aws:cdk:cloudformation:props": { - "attributes": { - "stage": "alpha", - "teamMembers": [ - "markI", - "markII", - "markIII" - ], - "public": false, - "publishYear": 2021, - "plannedRoadMap": { - "alpha": "some time", - "beta": "another time", - "gamma": "penultimate time", - "release": "go time" - } - }, - "name": "myAttributeGroup", - "description": "my attribute group description" - } - }, - "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.CfnAttributeGroup", + "fqn": "aws-cdk-lib.aws_ram.CfnResourceShare", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-servicecatalogappregistry.AttributeGroup", + "fqn": "@aws-cdk/aws-servicecatalogappregistry-alpha.Application", "version": "0.0.0" } }, @@ -230,7 +141,7 @@ "id": "ImportMyRole", "path": "integ-servicecatalogappregistry-application/MyRole/ImportMyRole", "constructInfo": { - "fqn": "@aws-cdk/core.Resource", + "fqn": "aws-cdk-lib.Resource", "version": "0.0.0" } }, @@ -270,13 +181,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -284,7 +195,7 @@ "id": "BootstrapVersion", "path": "integ-servicecatalogappregistry-application/BootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnParameter", + "fqn": "aws-cdk-lib.CfnParameter", "version": "0.0.0" } }, @@ -292,13 +203,13 @@ "id": "CheckBootstrapVersion", "path": "integ-servicecatalogappregistry-application/CheckBootstrapVersion", "constructInfo": { - "fqn": "@aws-cdk/core.CfnRule", + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/core.Stack", + "fqn": "aws-cdk-lib.Stack", "version": "0.0.0" } }, @@ -312,7 +223,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/core.App", + "fqn": "aws-cdk-lib.App", "version": "0.0.0" } } diff --git a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.ts b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.ts index 998f831c76daf..ad9f7ef161e8c 100644 --- a/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.ts +++ b/packages/@aws-cdk/aws-servicecatalogappregistry-alpha/test/integ.application.ts @@ -10,29 +10,7 @@ const application = new appreg.Application(stack, 'TestApplication', { description: 'My application description', }); -const attributeGroup = new appreg.AttributeGroup(stack, 'TestAttributeGroup', { - attributeGroupName: 'myAttributeGroup', - description: 'my attribute group description', - attributes: { - stage: 'alpha', - teamMembers: [ - 'markI', - 'markII', - 'markIII', - ], - public: false, - publishYear: 2021, - plannedRoadMap: { - alpha: 'some time', - beta: 'another time', - gamma: 'penultimate time', - release: 'go time', - }, - }, -}); -application.associateStack(stack); -application.associateAttributeGroup(attributeGroup); application.addAttributeGroup('myAnotherAttributeGroup', { attributeGroupName: 'myAnotherAttributeGroup', attributes: { diff --git a/packages/@aws-cdk/aws-synthetics/.eslintrc.js b/packages/@aws-cdk/aws-synthetics-alpha/.eslintrc.js similarity index 100% rename from packages/@aws-cdk/aws-synthetics/.eslintrc.js rename to packages/@aws-cdk/aws-synthetics-alpha/.eslintrc.js diff --git a/packages/@aws-cdk/aws-synthetics/.gitignore b/packages/@aws-cdk/aws-synthetics-alpha/.gitignore similarity index 92% rename from packages/@aws-cdk/aws-synthetics/.gitignore rename to packages/@aws-cdk/aws-synthetics-alpha/.gitignore index 642c1d707c603..10e0002cccb4e 100644 --- a/packages/@aws-cdk/aws-synthetics/.gitignore +++ b/packages/@aws-cdk/aws-synthetics-alpha/.gitignore @@ -16,7 +16,7 @@ coverage nyc.config.js !.eslintrc.js !jest.config.js -!test/canaries/nodejs/* +!test/canaries/**/* junit.xml diff --git a/packages/@aws-cdk/aws-synthetics/.npmignore b/packages/@aws-cdk/aws-synthetics-alpha/.npmignore similarity index 100% rename from packages/@aws-cdk/aws-synthetics/.npmignore rename to packages/@aws-cdk/aws-synthetics-alpha/.npmignore diff --git a/packages/@aws-cdk/aws-synthetics/LICENSE b/packages/@aws-cdk/aws-synthetics-alpha/LICENSE similarity index 100% rename from packages/@aws-cdk/aws-synthetics/LICENSE rename to packages/@aws-cdk/aws-synthetics-alpha/LICENSE diff --git a/packages/@aws-cdk/aws-synthetics/NOTICE b/packages/@aws-cdk/aws-synthetics-alpha/NOTICE similarity index 100% rename from packages/@aws-cdk/aws-synthetics/NOTICE rename to packages/@aws-cdk/aws-synthetics-alpha/NOTICE diff --git a/packages/@aws-cdk/aws-synthetics/README.md b/packages/@aws-cdk/aws-synthetics-alpha/README.md similarity index 100% rename from packages/@aws-cdk/aws-synthetics/README.md rename to packages/@aws-cdk/aws-synthetics-alpha/README.md diff --git a/packages/@aws-cdk/aws-synthetics/images/endpoint-example.png b/packages/@aws-cdk/aws-synthetics-alpha/images/endpoint-example.png similarity index 100% rename from packages/@aws-cdk/aws-synthetics/images/endpoint-example.png rename to packages/@aws-cdk/aws-synthetics-alpha/images/endpoint-example.png diff --git a/packages/@aws-cdk/aws-synthetics/images/ui-screenshot.png b/packages/@aws-cdk/aws-synthetics-alpha/images/ui-screenshot.png similarity index 100% rename from packages/@aws-cdk/aws-synthetics/images/ui-screenshot.png rename to packages/@aws-cdk/aws-synthetics-alpha/images/ui-screenshot.png diff --git a/packages/@aws-cdk/aws-synthetics/jest.config.js b/packages/@aws-cdk/aws-synthetics-alpha/jest.config.js similarity index 100% rename from packages/@aws-cdk/aws-synthetics/jest.config.js rename to packages/@aws-cdk/aws-synthetics-alpha/jest.config.js diff --git a/packages/@aws-cdk/aws-synthetics/lib/canary.ts b/packages/@aws-cdk/aws-synthetics-alpha/lib/canary.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/lib/canary.ts rename to packages/@aws-cdk/aws-synthetics-alpha/lib/canary.ts diff --git a/packages/@aws-cdk/aws-synthetics/lib/code.ts b/packages/@aws-cdk/aws-synthetics-alpha/lib/code.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/lib/code.ts rename to packages/@aws-cdk/aws-synthetics-alpha/lib/code.ts diff --git a/packages/@aws-cdk/aws-synthetics/lib/index.ts b/packages/@aws-cdk/aws-synthetics-alpha/lib/index.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/lib/index.ts rename to packages/@aws-cdk/aws-synthetics-alpha/lib/index.ts diff --git a/packages/@aws-cdk/aws-synthetics/lib/runtime.ts b/packages/@aws-cdk/aws-synthetics-alpha/lib/runtime.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/lib/runtime.ts rename to packages/@aws-cdk/aws-synthetics-alpha/lib/runtime.ts diff --git a/packages/@aws-cdk/aws-synthetics/lib/schedule.ts b/packages/@aws-cdk/aws-synthetics-alpha/lib/schedule.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/lib/schedule.ts rename to packages/@aws-cdk/aws-synthetics-alpha/lib/schedule.ts diff --git a/packages/@aws-cdk/aws-synthetics/package.json b/packages/@aws-cdk/aws-synthetics-alpha/package.json similarity index 96% rename from packages/@aws-cdk/aws-synthetics/package.json rename to packages/@aws-cdk/aws-synthetics-alpha/package.json index cb2b45d64c2b8..9caad9d5aaa91 100644 --- a/packages/@aws-cdk/aws-synthetics/package.json +++ b/packages/@aws-cdk/aws-synthetics-alpha/package.json @@ -45,7 +45,7 @@ "repository": { "type": "git", "url": "https://github.com/aws/aws-cdk.git", - "directory": "packages/@aws-cdk/aws-synthetics" + "directory": "packages/@aws-cdk/aws-synthetics-alpha" }, "homepage": "https://github.com/aws/aws-cdk", "scripts": { @@ -87,7 +87,8 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/cfn2ts": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "aws-cdk-lib": "0.0.0", "constructs": "^10.0.0" }, diff --git a/packages/@aws-cdk/aws-synthetics/rosetta/default.ts-fixture b/packages/@aws-cdk/aws-synthetics-alpha/rosetta/default.ts-fixture similarity index 100% rename from packages/@aws-cdk/aws-synthetics/rosetta/default.ts-fixture rename to packages/@aws-cdk/aws-synthetics-alpha/rosetta/default.ts-fixture diff --git a/packages/@aws-cdk/aws-synthetics/test/canaries/nodejs/node_modules/canary.js b/packages/@aws-cdk/aws-synthetics-alpha/test/canaries/nodejs/node_modules/canary.js similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/canaries/nodejs/node_modules/canary.js rename to packages/@aws-cdk/aws-synthetics-alpha/test/canaries/nodejs/node_modules/canary.js diff --git a/packages/@aws-cdk/aws-synthetics/test/canaries/python/canary.py b/packages/@aws-cdk/aws-synthetics-alpha/test/canaries/python/canary.py similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/canaries/python/canary.py rename to packages/@aws-cdk/aws-synthetics-alpha/test/canaries/python/canary.py diff --git a/packages/@aws-cdk/aws-synthetics/test/canary.test.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/canary.test.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/canary.test.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/canary.test.ts diff --git a/packages/@aws-cdk/aws-synthetics/test/canary.zip b/packages/@aws-cdk/aws-synthetics-alpha/test/canary.zip similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/canary.zip rename to packages/@aws-cdk/aws-synthetics-alpha/test/canary.zip diff --git a/packages/@aws-cdk/aws-synthetics/test/code.test.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/code.test.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/code.test.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/code.test.ts diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/nodejs/node_modules/canary.js b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/nodejs/node_modules/canary.js similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/nodejs/node_modules/canary.js rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/nodejs/node_modules/canary.js diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/python/canary.py b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/python/canary.py similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/python/canary.py rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.9d00e437db1f5f8788ce938a3f00a9a1b946820e78c9b4c36207c8475db882bb/python/canary.py diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/canary-one.assets.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/canary-one.assets.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/canary-one.assets.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/canary-one.assets.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/canary-one.template.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/canary-one.template.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/canary-one.template.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/canary-one.template.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/cdk.out b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/cdk.out similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/cdk.out rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/cdk.out diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/integ.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/integ.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/integ.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/integ.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/manifest.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/manifest.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/manifest.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/manifest.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/tree.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/tree.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.js.snapshot/tree.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.js.snapshot/tree.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.canary.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.canary.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.canary.ts diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/asset.b1b777dcb79a2fa2790059927207d10bf5f4747d6dd1516e2780726d9d6fa820.zip diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/canary-vpc.assets.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/canary-vpc.assets.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/canary-vpc.assets.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/canary-vpc.assets.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/canary-vpc.template.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/canary-vpc.template.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/canary-vpc.template.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/canary-vpc.template.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/cdk.out b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/cdk.out similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/cdk.out rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/cdk.out diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/integ.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/integ.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/integ.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/integ.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/manifest.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/manifest.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/manifest.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/manifest.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/tree.json b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/tree.json similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.js.snapshot/tree.json rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.js.snapshot/tree.json diff --git a/packages/@aws-cdk/aws-synthetics/test/integ.vpc.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/integ.vpc.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/integ.vpc.ts diff --git a/packages/@aws-cdk/aws-synthetics/test/metric.test.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/metric.test.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/metric.test.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/metric.test.ts diff --git a/packages/@aws-cdk/aws-synthetics/test/schedule.test.ts b/packages/@aws-cdk/aws-synthetics-alpha/test/schedule.test.ts similarity index 100% rename from packages/@aws-cdk/aws-synthetics/test/schedule.test.ts rename to packages/@aws-cdk/aws-synthetics-alpha/test/schedule.test.ts diff --git a/packages/@aws-cdk/cfnspec/package.json b/packages/@aws-cdk/cfnspec/package.json index 60ea9ab6d4fc2..da3ea2ab1d639 100644 --- a/packages/@aws-cdk/cfnspec/package.json +++ b/packages/@aws-cdk/cfnspec/package.json @@ -33,10 +33,10 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/md5": "^2.3.2", "fast-json-patch": "^3.1.1", - "jest": "^27.5.1", + "jest": "^29.5.0", "json-diff": "^0.10.0", "sort-json": "^2.0.1" }, diff --git a/packages/@aws-cdk/cfnspec/spec-source/cfn-docs/cfn-docs.json b/packages/@aws-cdk/cfnspec/spec-source/cfn-docs/cfn-docs.json index cabc2303a7186..c48420ec7eb27 100644 --- a/packages/@aws-cdk/cfnspec/spec-source/cfn-docs/cfn-docs.json +++ b/packages/@aws-cdk/cfnspec/spec-source/cfn-docs/cfn-docs.json @@ -1385,7 +1385,7 @@ "EndpointConfiguration": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the `Parameters` property.", "FailOnWarnings": "A query parameter to indicate whether to rollback the API update ( `true` ) or not ( `false` ) when a warning is encountered. The default value is `false` .", "MinimumCompressionSize": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size.", - "Mode": "This property applies only when you use OpenAPI to define your REST API. The `Mode` determines how API Gateway handles resource updates.\n\nValid values are `overwrite` or `merge` .\n\nFor `overwrite` , the new API definition replaces the existing one. The existing API identifier remains unchanged.\n\nFor `merge` , the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. Use `merge` to define top-level `RestApi` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties.\n\nIf you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is `overwrite` . Otherwise, the default value is `merge` .", + "Mode": "This property applies only when you use OpenAPI to define your REST API. The `Mode` determines how API Gateway handles resource updates.\n\nValid values are `overwrite` or `merge` .\n\nFor `overwrite` , the new API definition replaces the existing one. The existing API identifier remains unchanged.\n\nFor `merge` , the new API definition is merged with the existing API.\n\nIf you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is `overwrite` . For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API.\n\nUse the default mode to define top-level `RestApi` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties.", "Name": "The name of the RestApi.", "Parameters": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set `ignore=documentation` as a `parameters` value, as in the AWS CLI command of `aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'` .", "Policy": "A policy document that contains the permissions for the `RestApi` resource. To set the ARN for the policy, use the `!Join` intrinsic function with `\"\"` as delimiter and values of `\"execute-api:/\"` and `\"*\"` .", @@ -1962,7 +1962,7 @@ "DeploymentStrategyId": "The deployment strategy ID.", "Description": "A description of the deployment.", "EnvironmentId": "The environment ID.", - "KmsKeyIdentifier": "", + "KmsKeyIdentifier": "The AWS KMS key identifier (key ID, key alias, or key ARN). AWS AppConfig uses this ID to encrypt the configuration data using a customer managed key.", "Tags": "Metadata to assign to the deployment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." } }, @@ -2027,6 +2027,48 @@ "Value": "The tag value can be up to 256 characters." } }, + "AWS::AppConfig::Extension": { + "attributes": { + "Arn": "The system-generated Amazon Resource Name (ARN) for the extension.", + "Id": "The system-generated ID of the extension.", + "Ref": "`Ref` returns information about the extension.", + "VersionNumber": "The extension version number." + }, + "description": "Creates an AWS AppConfig extension. An extension augments your ability to inject logic or behavior at different points during the AWS AppConfig workflow of creating or deploying a configuration.\n\nYou can create your own extensions or use the AWS authored extensions provided by AWS AppConfig . For an AWS AppConfig extension that uses AWS Lambda , you must create a Lambda function to perform any computation and processing defined in the extension. If you plan to create custom versions of the AWS authored notification extensions, you only need to specify an Amazon Resource Name (ARN) in the `Uri` field for the new extension version.\n\n- For a custom EventBridge notification extension, enter the ARN of the EventBridge default events in the `Uri` field.\n- For a custom Amazon SNS notification extension, enter the ARN of an Amazon SNS topic in the `Uri` field.\n- For a custom Amazon SQS notification extension, enter the ARN of an Amazon SQS message queue in the `Uri` field.\n\nFor more information about extensions, see [Working with AWS AppConfig extensions](https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) in the *AWS AppConfig User Guide* .", + "properties": { + "Actions": "The actions defined in the extension.", + "Description": "Information about the extension.", + "LatestVersionNumber": "You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.", + "Name": "A name for the extension. Each extension name in your account must be unique. Extension versions use the same name.", + "Parameters": "The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the `CreateExtensionAssociation` API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.", + "Tags": "Adds one or more tags for the specified extension. Tags are metadata that help you categorize resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define." + } + }, + "AWS::AppConfig::Extension.Parameter": { + "attributes": {}, + "description": "A value such as an Amazon Resource Name (ARN) or an Amazon Simple Notification Service topic entered in an extension when invoked. Parameter values are specified in an extension association. For more information about extensions, see [Working with AWS AppConfig extensions](https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) in the *AWS AppConfig User Guide* .", + "properties": { + "Description": "Information about the parameter.", + "Required": "A parameter value must be specified in the extension association." + } + }, + "AWS::AppConfig::ExtensionAssociation": { + "attributes": { + "Arn": "The ARN of the extension defined in the association.", + "ExtensionArn": "The ARN of the extension defined in the association.", + "Id": "The system-generated ID for the association.", + "Ref": "`Ref` returns information about the extension association.", + "ResourceArn": "The ARNs of applications, configuration profiles, or environments defined in the association." + }, + "description": "When you create an extension or configure an AWS authored extension, you associate the extension with an AWS AppConfig application, environment, or configuration profile. For example, you can choose to run the `AWS AppConfig deployment events to Amazon SNS` AWS authored extension and receive notifications on an Amazon SNS topic anytime a configuration deployment is started for a specific application. Defining which extension to associate with an AWS AppConfig resource is called an *extension association* . An extension association is a specified relationship between an extension and an AWS AppConfig resource, such as an application or a configuration profile. For more information about extensions and associations, see [Working with AWS AppConfig extensions](https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html) in the *AWS AppConfig User Guide* .", + "properties": { + "ExtensionIdentifier": "The name, the ID, or the Amazon Resource Name (ARN) of the extension.", + "ExtensionVersionNumber": "The version number of the extension. If not specified, AWS AppConfig uses the maximum version of the extension.", + "Parameters": "The parameter names and values defined in the extensions. Extension parameters marked `Required` must be entered for this field.", + "ResourceIdentifier": "The ARN of an application, configuration profile, or environment.", + "Tags": "Adds one or more tags for the specified extension association. Tags are metadata that help you categorize resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define." + } + }, "AWS::AppConfig::HostedConfigurationVersion": { "attributes": { "Ref": "`Ref` returns the version number." @@ -7019,7 +7061,7 @@ "Description": "The pricing rule description.", "ModifierPercentage": "A percentage modifier applied on the public pricing rates.", "Name": "The name of a pricing rule.", - "Operation": "", + "Operation": "Operation is the specific AWS action covered by this line item. This describes the specific usage of the line item.", "Scope": "The scope of pricing rule that indicates if it is globally applicable, or if it is service-specific.", "Service": "If the `Scope` attribute is `SERVICE` , this attribute indicates which service the `PricingRule` is applicable for.", "Tags": "A map that contains tag keys and tag values that are attached to a pricing rule.", @@ -7030,9 +7072,9 @@ }, "AWS::BillingConductor::PricingRule.FreeTier": { "attributes": {}, - "description": "", + "description": "The possible AWS Free Tier configurations.", "properties": { - "Activated": "" + "Activated": "Activate or deactivate AWS Free Tier." } }, "AWS::BillingConductor::PricingRule.Tiering": { @@ -17390,7 +17432,7 @@ "DnsSearchDomains": "A list of DNS search domains that are presented to the container. This parameter maps to `DnsSearch` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--dns-search` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\n> This parameter is not supported for Windows containers.", "DnsServers": "A list of DNS servers that are presented to the container. This parameter maps to `Dns` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--dns` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\n> This parameter is not supported for Windows containers.", "DockerLabels": "A key/value map of labels to add to the container. This parameter maps to `Labels` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--label` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version --format '{{.Server.APIVersion}}'`", - "DockerSecurityOptions": "A list of strings to provide custom labels for SELinux and AppArmor multi-level security systems. This field isn't valid for containers in tasks using the Fargate launch type.\n\nWith Windows containers, this parameter can be used to reference a credential spec file when configuring a container for Active Directory authentication. For more information, see [Using gMSAs for Windows Containers](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html) in the *Amazon Elastic Container Service Developer Guide* .\n\nThis parameter maps to `SecurityOpt` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--security-opt` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\n> The Amazon ECS container agent running on a container instance must register with the `ECS_SELINUX_CAPABLE=true` or `ECS_APPARMOR_CAPABLE=true` environment variables before containers placed on that instance can use these security options. For more information, see [Amazon ECS Container Agent Configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . \n\nFor more information about valid values, see [Docker Run Security Configuration](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\nValid values: \"no-new-privileges\" | \"apparmor:PROFILE\" | \"label:value\" | \"credentialspec:CredentialSpecFilePath\"", + "DockerSecurityOptions": "A list of strings to provide custom configuration for multiple security systems. For more information about valid values, see [Docker Run Security Configuration](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . This field isn't valid for containers in tasks using the Fargate launch type.\n\nFor Linux tasks on EC2, this parameter can be used to reference custom labels for SELinux and AppArmor multi-level security systems.\n\nFor any tasks on EC2, this parameter can be used to reference a credential spec file that configures a container for Active Directory authentication. For more information, see [Using gMSAs for Windows Containers](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html) and [Using gMSAs for Linux Containers](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html) in the *Amazon Elastic Container Service Developer Guide* .\n\nThis parameter maps to `SecurityOpt` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--security-opt` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\n> The Amazon ECS container agent running on a container instance must register with the `ECS_SELINUX_CAPABLE=true` or `ECS_APPARMOR_CAPABLE=true` environment variables before containers placed on that instance can use these security options. For more information, see [Amazon ECS Container Agent Configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . \n\nFor more information about valid values, see [Docker Run Security Configuration](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\nValid values: \"no-new-privileges\" | \"apparmor:PROFILE\" | \"label:value\" | \"credentialspec:CredentialSpecFilePath\"", "EntryPoint": "> Early versions of the Amazon ECS container agent don't properly handle `entryPoint` parameters. If you have problems using `entryPoint` , update your container agent or enter your commands and arguments as `command` array items instead. \n\nThe entry point that's passed to the container. This parameter maps to `Entrypoint` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--entrypoint` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . For more information, see [https://docs.docker.com/engine/reference/builder/#entrypoint](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/builder/#entrypoint) .", "Environment": "The environment variables to pass to a container. This parameter maps to `Env` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--env` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\n> We don't recommend that you use plaintext environment variables for sensitive information, such as credential data.", "EnvironmentFiles": "A list of files containing the environment variables to pass to a container. This parameter maps to the `--env-file` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\nYou can specify up to ten environment files. The file must have a `.env` file extension. Each line in an environment file contains an environment variable in `VARIABLE=VALUE` format. Lines beginning with `#` are treated as comments and are ignored. For more information about the environment variable file syntax, see [Declare default environment variables in file](https://docs.aws.amazon.com/https://docs.docker.com/compose/env-file/) .\n\nIf there are environment variables specified using the `environment` parameter in a container definition, they take precedence over the variables contained within an environment file. If multiple environment files are specified that contain the same variable, they're processed from the top down. We recommend that you use unique variable names. For more information, see [Specifying Environment Variables](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) in the *Amazon Elastic Container Service Developer Guide* .", @@ -22027,6 +22069,16 @@ "Tables": "A list of the tables to be synchronized." } }, + "AWS::Glue::Crawler.DeltaTarget": { + "attributes": {}, + "description": "Specifies a Delta data store to crawl one or more Delta tables.", + "properties": { + "ConnectionName": "The name of the connection to use to connect to the Delta table target.", + "CreateNativeDeltaTable": "Specifies whether the crawler will create native tables, to allow integration with query engines that support querying of the Delta transaction log directly.", + "DeltaTables": "A list of the Amazon S3 paths to the Delta tables.", + "WriteManifest": "Specifies whether to write the manifest files to the Delta table path." + } + }, "AWS::Glue::Crawler.DynamoDBTarget": { "attributes": {}, "description": "Specifies an Amazon DynamoDB table to crawl.", @@ -22090,6 +22142,7 @@ "description": "Specifies data stores to crawl.", "properties": { "CatalogTargets": "Specifies AWS Glue Data Catalog targets.", + "DeltaTargets": "", "DynamoDBTargets": "Specifies Amazon DynamoDB targets.", "JdbcTargets": "Specifies JDBC targets.", "MongoDBTargets": "A list of Mongo DB targets.", @@ -22161,12 +22214,21 @@ "properties": { "CreateTableDefaultPermissions": "Creates a set of default permissions on the table for principals. Used by AWS Lake Formation . Not used in the normal course of AWS Glue operations.", "Description": "A description of the database.", + "FederatedDatabase": "", "LocationUri": "The location of the database (for example, an HDFS path).", "Name": "The name of the database. For Hive compatibility, this is folded to lowercase when it is stored.", "Parameters": "These key-value pairs define parameters and properties of the database.", "TargetDatabase": "A `DatabaseIdentifier` structure that describes a target database for resource linking." } }, + "AWS::Glue::Database.FederatedDatabase": { + "attributes": {}, + "description": "", + "properties": { + "ConnectionName": "", + "Identifier": "" + } + }, "AWS::Glue::Database.PrincipalPrivileges": { "attributes": {}, "description": "the permissions granted to a principal", @@ -25150,8 +25212,7 @@ "ResourcesToAdd": "The resources to add to a monitor, which you provide as a set of Amazon Resource Names (ARNs).\n\nYou can add a combination of Virtual Private Clouds (VPCs) and Amazon CloudFront distributions, or you can add WorkSpaces directories. You can't add all three types of resources.\n\n> If you add only VPC resources, at least one VPC must have an Internet Gateway attached to it, to make sure that it has internet connectivity.", "ResourcesToRemove": "The resources to remove from a monitor. Provide the resources as a set of Amazon Resource Names (ARNs).", "Status": "The status of a monitor. The accepted values that you can specify for `Status` are `ACTIVE` and `INACTIVE` .", - "Tags": "The tags for a monitor, listed as a set of *key:value* pairs.", - "TrafficPercentageToMonitor": "" + "Tags": "The tags for a monitor, listed as a set of *key:value* pairs." } }, "AWS::InternetMonitor::Monitor.InternetMeasurementsLogDelivery": { @@ -26759,7 +26820,7 @@ "IotSiteWise": "Sends information about the detector model instance and the event that triggered the action to a specified asset property in AWS IoT SiteWise .\n\nYou must use expressions for all parameters in `IotSiteWiseAction` . The expressions accept literals, operators, functions, references, and substitutions templates.\n\n**Examples** - For literal values, the expressions must contain single quotes. For example, the value for the `propertyAlias` parameter can be `'/company/windfarm/3/turbine/7/temperature'` .\n- For references, you must specify either variables or input values. For example, the value for the `assetId` parameter can be `$input.TurbineInput.assetId1` .\n- For a substitution template, you must use `${}` , and the template must be in single quotes. A substitution template can also contain a combination of literals, operators, functions, references, and substitution templates.\n\nIn the following example, the value for the `propertyAlias` parameter uses a substitution template.\n\n`'company/windfarm/${$input.TemperatureInput.sensorData.windfarmID}/turbine/ ${$input.TemperatureInput.sensorData.turbineID}/temperature'`\n\nYou must specify either `propertyAlias` or both `assetId` and `propertyId` to identify the target asset property in AWS IoT SiteWise .\n\nFor more information, see [Expressions](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html) in the *AWS IoT Events Developer Guide* .", "IotTopicPublish": "Information required to publish the MQTT message through the AWS IoT message broker.", "Lambda": "Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.", - "Sns": "", + "Sns": "Information required to publish the Amazon SNS message.", "Sqs": "Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue." } }, @@ -26832,7 +26893,7 @@ "attributes": {}, "description": "Defines an action to write to the Amazon DynamoDB table that you created. The default action payload contains all the information about the detector model instance and the event that triggered the action. You can customize the [payload](https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html) . A separate column of the DynamoDB table receives one attribute-value pair in the payload that you specify.\n\nYou must use expressions for all parameters in `DynamoDBv2Action` . The expressions accept literals, operators, functions, references, and substitution templates.\n\n**Examples** - For literal values, the expressions must contain single quotes. For example, the value for the `tableName` parameter can be `'GreenhouseTemperatureTable'` .\n- For references, you must specify either variables or input values. For example, the value for the `tableName` parameter can be `$variable.ddbtableName` .\n- For a substitution template, you must use `${}` , and the template must be in single quotes. A substitution template can also contain a combination of literals, operators, functions, references, and substitution templates.\n\nIn the following example, the value for the `contentExpression` parameter in `Payload` uses a substitution template.\n\n`'{\\\"sensorID\\\": \\\"${$input.GreenhouseInput.sensor_id}\\\", \\\"temperature\\\": \\\"${$input.GreenhouseInput.temperature * 9 / 5 + 32}\\\"}'`\n- For a string concatenation, you must use `+` . A string concatenation can also contain a combination of literals, operators, functions, references, and substitution templates.\n\nIn the following example, the value for the `tableName` parameter uses a string concatenation.\n\n`'GreenhouseTemperatureTable ' + $input.GreenhouseInput.date`\n\nFor more information, see [Expressions](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html) in the *AWS IoT Events Developer Guide* .\n\nThe value for the `type` parameter in `Payload` must be `JSON` .", "properties": { - "Payload": "", + "Payload": "Information needed to configure the payload.\n\nBy default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use `contentExpression` .", "TableName": "The name of the DynamoDB table." } }, @@ -27794,10 +27855,10 @@ }, "AWS::IoTSiteWise::Portal.Alarms": { "attributes": {}, - "description": "", + "description": "Contains the configuration information of an alarm created in an AWS IoT SiteWise Monitor portal. You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see [Monitoring with alarms](https://docs.aws.amazon.com/iot-sitewise/latest/appguide/monitor-alarms.html) in the *AWS IoT SiteWise Application Guide* .", "properties": { - "AlarmRoleArn": "", - "NotificationLambdaArn": "" + "AlarmRoleArn": "The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the IAM role that allows the alarm to perform actions and access AWS resources and services, such as AWS IoT Events .", + "NotificationLambdaArn": "The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the Lambda function that manages alarm notifications. For more information, see [Managing alarm notifications](https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html) in the *AWS IoT Events Developer Guide* ." } }, "AWS::IoTSiteWise::Project": { @@ -28491,6 +28552,7 @@ "OnboardedImportedDevicesCount": "The summary information of count of wireless devices that have been onboarded to the import task.", "PendingImportedDevicesCount": "The summary information of count of wireless devices that are waiting in the queue to be onboarded to the import task.", "Ref": "`Ref` returns the wireless device import task.", + "Sidewalk.DeviceCreationFileList": "", "Status": "The status of a wireless device import task. The status can be `INITIALIZING` , `INITIALIZED` , `PENDING` , `COMPLETE` , `FAILED` , or `DELETING` .", "StatusReason": "The reason that provides additional information about the import task status." }, @@ -30641,6 +30703,12 @@ "description": "The `AWS::LakeFormation::DataLakeSettings` resource is an AWS Lake Formation resource type that manages the data lake settings for your account. Note that the CloudFormation template only supports updating the `Admins` list. It does not support updating the [CreateDatabaseDefaultPermissions](https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-settings.html#aws-lake-formation-api-aws-lake-formation-api-settings-DataLakeSettings) or [CreateTableDefaultPermissions](https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-settings.html#aws-lake-formation-api-aws-lake-formation-api-settings-DataLakeSettings) . Those permissions can only be edited in the DataLakeSettings resource via the API.", "properties": { "Admins": "A list of AWS Lake Formation principals.", + "AllowExternalDataFiltering": "Whether to allow Amazon EMR clusters to access data managed by Lake Formation.\n\nIf true, you allow Amazon EMR clusters to access data in Amazon S3 locations that are registered with Lake Formation.\n\nIf false or null, no Amazon EMR clusters will be able to access data in Amazon S3 locations that are registered with Lake Formation.\n\nFor more information, see [(Optional) Allow Data Filtering on Amazon EMR](https://docs.aws.amazon.com/https://docs-aws.amazon.com/lake-formation/latest/dg/getting-started-setup.html#emr-switch) .", + "AuthorizedSessionTagValueList": "Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it. Lake Formation will publish the acceptable key-value pair, for example key = \"LakeFormationTrustedCaller\" and value = \"TRUE\" and the third party integrator must properly tag the temporary security credentials that will be used to call Lake Formation's administrative APIs.", + "CreateDatabaseDefaultPermissions": "Specifies whether access control on newly created database is managed by Lake Formation permissions or exclusively by IAM permissions.\n\nA null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting \"Use only IAM access control,\" and is for backward compatibility with the AWS Glue permission model implemented by IAM permissions.\n\nThe only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.\n\nFor more information, see [Changing the Default Security Settings for Your Data Lake](https://docs.aws.amazon.com/https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html) .", + "CreateTableDefaultPermissions": "Specifies whether access control on newly created table is managed by Lake Formation permissions or exclusively by IAM permissions.\n\nA null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting \"Use only IAM access control,\" and is for backward compatibility with the AWS Glue permission model implemented by IAM permissions.\n\nThe only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.\n\nFor more information, see [Changing the Default Security Settings for Your Data Lake](https://docs.aws.amazon.com/https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html) .", + "ExternalDataFilteringAllowList": "A list of the account IDs of AWS accounts with Amazon EMR clusters that are to perform data filtering.>", + "Parameters": "A key-value map that provides an additional configuration on your data lake. CrossAccountVersion is the key you can configure in the Parameters field. Accepted values for the CrossAccountVersion key are 1, 2, and 3.", "TrustedResourceOwners": "An array of UTF-8 strings.\n\nA list of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs). The user ARNs can be logged in the resource owner's CloudTrail log. You may want to specify this property when you are in a high-trust boundary, such as the same team or company." } }, @@ -30649,6 +30717,16 @@ "description": "A list of AWS Lake Formation principals.", "properties": {} }, + "AWS::LakeFormation::DataLakeSettings.CreateDatabaseDefaultPermissions": { + "attributes": {}, + "description": "", + "properties": {} + }, + "AWS::LakeFormation::DataLakeSettings.CreateTableDefaultPermissions": { + "attributes": {}, + "description": "", + "properties": {} + }, "AWS::LakeFormation::DataLakeSettings.DataLakePrincipal": { "attributes": {}, "description": "The Lake Formation principal.", @@ -30656,6 +30734,24 @@ "DataLakePrincipalIdentifier": "An identifier for the Lake Formation principal." } }, + "AWS::LakeFormation::DataLakeSettings.ExternalDataFilteringAllowList": { + "attributes": {}, + "description": "", + "properties": {} + }, + "AWS::LakeFormation::DataLakeSettings.Permissions": { + "attributes": {}, + "description": "", + "properties": {} + }, + "AWS::LakeFormation::DataLakeSettings.PrincipalPermissions": { + "attributes": {}, + "description": "Permissions granted to a principal.", + "properties": { + "Permissions": "The permissions that are granted to the principal.", + "Principal": "The principal who is granted permissions." + } + }, "AWS::LakeFormation::Permissions": { "attributes": {}, "description": "The `AWS::LakeFormation::Permissions` resource represents the permissions that a principal has on an AWS Glue Data Catalog resource (such as AWS Glue database or AWS Glue tables). When you upload a permissions stack, the permissions are granted to the principal and when you remove the stack, the permissions are revoked from the principal. If you remove a stack, and the principal does not have the permissions referenced in the stack then AWS Lake Formation will throw an error because you can\u2019t call revoke on non-existing permissions. To successfully remove the stack, you\u2019ll need to regrant those permissions and then remove the stack.\n\n> New versions of AWS Lake Formation permission resources are now available. For more information, see: [AWS:LakeFormation::PrincipalPermissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html)", @@ -33715,7 +33811,7 @@ "description": "The `AWS::MWAA::Environment` resource creates an Amazon Managed Workflows for Apache Airflow (MWAA) environment.", "properties": { "AirflowConfigurationOptions": "A list of key-value pairs containing the Airflow configuration options for your environment. For example, `core.default_timezone: utc` . To learn more, see [Apache Airflow configuration options](https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html) .", - "AirflowVersion": "The version of Apache Airflow to use for the environment. If no value is specified, defaults to the latest version. Valid values: `2.0.2` , `1.10.12` , `2.2.2` , and `2.4.3` .", + "AirflowVersion": "The version of Apache Airflow to use for the environment. If no value is specified, defaults to the latest version.\n\n*Allowed Values* : `2.0.2` | `1.10.12` | `2.2.2` | `2.4.3` | `2.5.1` (latest)", "DagS3Path": "The relative path to the DAGs folder on your Amazon S3 bucket. For example, `dags` . To learn more, see [Adding or updating DAGs](https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html) .", "EnvironmentClass": "The environment class type. Valid values: `mw1.small` , `mw1.medium` , `mw1.large` . To learn more, see [Amazon MWAA environment class](https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html) .", "ExecutionRoleArn": "The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access AWS resources in your environment. For example, `arn:aws:iam::123456789:role/my-execution-role` . To learn more, see [Amazon MWAA Execution role](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html) .", @@ -33731,6 +33827,8 @@ "RequirementsS3Path": "The relative path to the `requirements.txt` file on your Amazon S3 bucket. For example, `requirements.txt` . To learn more, see [Installing Python dependencies](https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html) .", "Schedulers": "The number of schedulers that you want to run in your environment. Valid values:\n\n- *v2* - Accepts between 2 to 5. Defaults to 2.\n- *v1* - Accepts 1.", "SourceBucketArn": "The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG code and supporting files are stored. For example, `arn:aws:s3:::my-airflow-bucket-unique-name` . To learn more, see [Create an Amazon S3 bucket for Amazon MWAA](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html) .", + "StartupScriptS3ObjectVersion": "The version of the startup shell script in your Amazon S3 bucket. You must specify the [version ID](https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html) that Amazon S3 assigns to the file every time you update the script.\n\nVersion IDs are Unicode, UTF-8 encoded, URL-ready, opaque strings that are no more than 1,024 bytes long. The following is an example:\n\n`3sL4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo`\n\nFor more information, see [Using a startup script](https://docs.aws.amazon.com/mwaa/latest/userguide/using-startup-script.html) .", + "StartupScriptS3Path": "The relative path to the startup shell script in your Amazon S3 bucket. For example, `s3://mwaa-environment/startup.sh` .\n\nAmazon MWAA runs the script as your environment starts, and before running the Apache Airflow process. You can use this script to install dependencies, modify Apache Airflow configuration options, and set environment variables. For more information, see [Using a startup script](https://docs.aws.amazon.com/mwaa/latest/userguide/using-startup-script.html) .", "Tags": "The key-value tag pairs associated to your environment. For example, `\"Environment\": \"Staging\"` . To learn more, see [Tagging](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) .", "WebserverAccessMode": "The Apache Airflow *Web server* access mode. To learn more, see [Apache Airflow access modes](https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html) . Valid values: `PRIVATE_ONLY` or `PUBLIC_ONLY` .", "WeeklyMaintenanceWindowStart": "The day and time of the week to start weekly maintenance updates of your environment in the following format: `DAY:HH:MM` . For example: `TUE:03:30` . You can specify a start time in 30 minute increments only. Supported input includes the following:\n\n- MON|TUE|WED|THU|FRI|SAT|SUN:([01]\\\\d|2[0-3]):(00|30)" @@ -33828,19 +33926,19 @@ }, "AWS::Macie::FindingsFilter.CriterionAdditionalProperties": { "attributes": {}, - "description": "", + "description": "Specifies a condition that defines the property, operator, and one or more values to use in a findings filter. A *findings filter* , also referred to as a *filter rule* , is a set of custom criteria that specifies which findings to include or exclude from the results of a query for findings. You can also configure a findings filter to suppress (automatically archive) findings that match the filter's criteria. For more information, see [Filtering findings](https://docs.aws.amazon.com/macie/latest/user/findings-filter-overview.html) in the *Amazon Macie User Guide* .", "properties": { - "eq": "", - "gt": "", - "gte": "", - "lt": "", - "lte": "", - "neq": "" + "eq": "The value for the specified property matches (equals) the specified value. If you specify multiple values, Amazon Macie uses OR logic to join the values.", + "gt": "The value for the specified property is greater than the specified value.", + "gte": "The value for the specified property is greater than or equal to the specified value.", + "lt": "The value for the specified property is less than the specified value.", + "lte": "The value for the specified property is less than or equal to the specified value.", + "neq": "The value for the specified property doesn't match (doesn't equal) the specified value. If you specify multiple values, Amazon Macie uses OR logic to join the values." } }, "AWS::Macie::FindingsFilter.FindingCriteria": { "attributes": {}, - "description": "Specifies, as a map, one or more property-based conditions that filter the results of a query for findings. For more information, see [Filtering findings](https://docs.aws.amazon.com/macie/latest/user/findings-filter-overview.html) in the *Amazon Macie User Guide* .", + "description": "Specifies, as a map, one or more property-based conditions for a findings filter. A *findings filter* , also referred to as a *filter rule* , is a set of custom criteria that specifies which findings to include or exclude from the results of a query for findings. You can also configure a findings filter to suppress (automatically archive) findings that match the filter's criteria. For more information, see [Filtering findings](https://docs.aws.amazon.com/macie/latest/user/findings-filter-overview.html) in the *Amazon Macie User Guide* .", "properties": { "Criterion": "Specifies a condition that defines the property, operator, and one or more values to use to filter the results." } @@ -34014,7 +34112,7 @@ "FailoverMode": "The type of failover you choose for this flow. MERGE combines the source streams into a single stream, allowing graceful recovery from any single-source loss. FAILOVER allows switching between different streams.", "RecoveryWindow": "The size of the buffer (delay) that the service maintains. A larger buffer means a longer delay in transmitting the stream, but more room for error correction. A smaller buffer means a shorter delay, but less room for error correction. You can choose a value from 100-500 ms. If you keep this field blank, the service uses the default value of 200 ms. This setting only applies when Failover Mode is set to MERGE.", "SourcePriority": "The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams. This setting only applies when Failover Mode is set to FAILOVER.", - "State": "The state of source failover on the flow. If the state is disabled, the flow can have only one source. If the state is enabled, the flow can have one or two sources." + "State": "The state of source failover on the flow. If the state is inactive, the flow can have only one source. If the state is active, the flow can have one or two sources." } }, "AWS::MediaConnect::Flow.Source": { @@ -49060,7 +49158,7 @@ "properties": { "CopySourceArn": "The Amazon Resource Name (ARN) of a data source that has the credential pair that you want to use. When `CopySourceArn` is not null, the credential pair from the data source in the ARN is used as the credentials for the `DataSourceCredentials` structure.", "CredentialPair": "Credential pair. For more information, see `[CredentialPair](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CredentialPair.html)` .", - "SecretArn": "" + "SecretArn": "The Amazon Resource Name (ARN) of the secret associated with the data source in AWS Secrets Manager ." } }, "AWS::QuickSight::DataSource.DataSourceErrorInfo": { @@ -49080,7 +49178,7 @@ "AthenaParameters": "The parameters for Amazon Athena.", "AuroraParameters": "The parameters for Amazon Aurora MySQL.", "AuroraPostgreSqlParameters": "The parameters for Amazon Aurora.", - "DatabricksParameters": "", + "DatabricksParameters": "The required parameters that are needed to connect to a Databricks data source.", "MariaDbParameters": "The parameters for MariaDB.", "MySqlParameters": "The parameters for MySQL.", "OracleParameters": "Oracle parameters.", @@ -49097,11 +49195,11 @@ }, "AWS::QuickSight::DataSource.DatabricksParameters": { "attributes": {}, - "description": "", + "description": "The required parameters that are needed to connect to a Databricks data source.", "properties": { - "Host": "", - "Port": "", - "SqlEndpointPath": "" + "Host": "The host name of the Databricks data source.", + "Port": "The port for the Databricks data source.", + "SqlEndpointPath": "The HTTP path of the Databricks data source." } }, "AWS::QuickSight::DataSource.ManifestFileLocation": { @@ -49239,6 +49337,46 @@ "VpcConnectionArn": "The Amazon Resource Name (ARN) for the VPC connection." } }, + "AWS::QuickSight::RefreshSchedule": { + "attributes": { + "Arn": "The Amazon Resource Name (ARN) for the refresh schedule.", + "Ref": "" + }, + "description": "Creates a refresh schedule for a dataset in Amazon QuickSight .", + "properties": { + "AwsAccountId": "The AWS account ID of the account that you are creating a schedule in.", + "DataSetId": "The ID of the dataset that you are creating a refresh schedule for.", + "Schedule": "The refresh schedule of a dataset." + } + }, + "AWS::QuickSight::RefreshSchedule.RefreshOnDay": { + "attributes": {}, + "description": "The day that you want yout dataset to refresh.", + "properties": { + "DayOfMonth": "The day of the month that you want your dataset to refresh. This value is required for monthly refresh intervals.", + "DayOfWeek": "The day of the week that you want to schedule the refresh on. This value is required for weekly and monthly refresh intervals." + } + }, + "AWS::QuickSight::RefreshSchedule.RefreshScheduleMap": { + "attributes": {}, + "description": "A summary of a configured refresh schedule for a dataset.", + "properties": { + "RefreshType": "The type of refresh that a dataset undergoes. Valid values are as follows:\n\n- `FULL_REFRESH` : A complete refresh of a dataset.\n- `INCREMENTAL_REFRESH` : A partial refresh of some rows of a dataset, based on the time window specified.\n\nFor more information on full and incremental refreshes, see [Refreshing SPICE data](https://docs.aws.amazon.com/quicksight/latest/user/refreshing-imported-data.html) in the *Amazon QuickSight User Guide* .", + "ScheduleFrequency": "The frequency for the refresh schedule.", + "ScheduleId": "An identifier for the refresh schedule.", + "StartAfterDateTime": "Time after which the refresh schedule can be started, expressed in `YYYY-MM-DDTHH:MM:SS` format." + } + }, + "AWS::QuickSight::RefreshSchedule.ScheduleFrequency": { + "attributes": {}, + "description": "The frequency for the refresh schedule.", + "properties": { + "Interval": "The interval between scheduled refreshes. Valid values are as follows:\n\n- `MINUTE15` : The dataset refreshes every 15 minutes. This value is only supported for incremental refreshes. This interval can only be used for one schedule per dataset.\n- `MINUTE30` : The dataset refreshes every 30 minutes. This value is only supported for incremental refreshes. This interval can only be used for one schedule per dataset.\n- `HOURLY` : The dataset refreshes every hour. This interval can only be used for one schedule per dataset.\n- `DAILY` : The dataset refreshes every day.\n- `WEEKLY` : The dataset refreshes every week.\n- `MONTHLY` : The dataset refreshes every month.", + "RefreshOnDay": "The day of the week that you want to schedule the refresh on. This value is required for weekly and monthly refresh intervals.", + "TimeOfTheDay": "The time of day that you want the dataset to refresh. This value is expressed in HH:MM format. This field is not required for schedules that refresh hourly.", + "TimeZone": "The timezone that you want the refresh schedule to use. The timezone ID must match a corresponding ID found on `java.util.time.getAvailableIDs()` ." + } + }, "AWS::QuickSight::Template": { "attributes": { "Arn": "The Amazon Resource Name (ARN) of the template.", @@ -53837,6 +53975,7 @@ "PubliclyAccessible": "Indicates whether the DB instance is an internet-facing instance. If you specify true, AWS CloudFormation creates an instance with a publicly resolvable DNS name, which resolves to a public IP address. If you specify false, AWS CloudFormation creates an internal instance with a DNS name that resolves to a private IP address.\n\nThe default behavior value depends on your VPC setup and the database subnet group. For more information, see the `PubliclyAccessible` parameter in the [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) in the *Amazon RDS API Reference* .", "ReplicaMode": "The open mode of an Oracle read replica. For more information, see [Working with Oracle Read Replicas for Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) in the *Amazon RDS User Guide* .\n\nThis setting is only supported in RDS for Oracle.\n\nDefault: `open-read-only`\n\nValid Values: `open-read-only` or `mounted`", "RestoreTime": "The date and time to restore from.\n\nValid Values: Value must be a time in Universal Coordinated Time (UTC) format\n\nConstraints:\n\n- Must be before the latest restorable time for the DB instance\n- Can't be specified if the `UseLatestRestorableTime` parameter is enabled\n\nExample: `2009-09-07T23:45:00Z`", + "SourceDBClusterIdentifier": "The identifier of the Multi-AZ DB cluster that will act as the source for the read replica. Each DB cluster can have up to 15 read replicas.\n\nConstraints:\n\n- Must be the identifier of an existing Multi-AZ DB cluster.\n- Can't be specified if the `SourceDBInstanceIdentifier` parameter is also specified.\n- The specified DB cluster must have automatic backups enabled, that is, its backup retention period must be greater than 0.\n- The source DB cluster must be in the same AWS Region as the read replica. Cross-Region replication isn't supported.", "SourceDBInstanceAutomatedBackupsArn": "The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, `arn:aws:rds:useast-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE` .\n\nThis setting doesn't apply to RDS Custom.", "SourceDBInstanceIdentifier": "If you want to create a read replica DB instance, specify the ID of the source DB instance. Each DB instance can have a limited number of read replicas. For more information, see [Working with Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/USER_ReadRepl.html) in the *Amazon RDS User Guide* .\n\nFor information about constraints that apply to DB instance identifiers, see [Naming constraints in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints) in the *Amazon RDS User Guide* .\n\nThe `SourceDBInstanceIdentifier` property determines whether a DB instance is a read replica. If you remove the `SourceDBInstanceIdentifier` property from your template and then update your stack, AWS CloudFormation promotes the Read Replica to a standalone DB instance.\n\n> - If you specify a source DB instance that uses VPC security groups, we recommend that you specify the `VPCSecurityGroups` property. If you don't specify the property, the read replica inherits the value of the `VPCSecurityGroups` property from the source DB when you create the replica. However, if you update the stack, AWS CloudFormation reverts the replica's `VPCSecurityGroups` property to the default value because it's not defined in the stack's template. This change might cause unexpected issues.\n> - Read replicas don't support deletion policies. AWS CloudFormation ignores any deletion policy that's associated with a read replica.\n> - If you specify `SourceDBInstanceIdentifier` , don't specify the `DBSnapshotIdentifier` property. You can't create a read replica from a snapshot.\n> - Don't set the `BackupRetentionPeriod` , `DBName` , `MasterUsername` , `MasterUserPassword` , and `PreferredBackupWindow` properties. The database attributes are inherited from the source DB instance, and backups are disabled for read replicas.\n> - If the source DB instance is in a different region than the read replica, specify the source region in `SourceRegion` , and specify an ARN for a valid DB instance in `SourceDBInstanceIdentifier` . For more information, see [Constructing a Amazon RDS Amazon Resource Name (ARN)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#USER_Tagging.ARN) in the *Amazon RDS User Guide* .\n> - For DB instances in Amazon Aurora clusters, don't specify this property. Amazon RDS automatically assigns writer and reader DB instances.", "SourceDbiResourceId": "The resource ID of the source DB instance from which to restore.", @@ -57661,7 +57800,7 @@ "Alias": "The unique and identifiable alias of the contact or escalation plan.", "DisplayName": "The full name of the contact or escalation plan.", "Plan": "A list of stages. A contact has an engagement plan with stages that contact specified contact channels. An escalation plan uses stages that contact specified contacts.", - "Type": "Refers to the type of contact. A single contact is type `PERSONAL` and an escalation plan is type `ESCALATION` ." + "Type": "Refers to the type of contact:\n\n- `PERSONAL` : A single, individual contact.\n- `ESCALATION` : An escalation plan.\n- `ONCALL_SCHEDULE` : An on-call schedule." } }, "AWS::SSMContacts::Contact.ChannelTargetInfo": { @@ -58720,14 +58859,14 @@ "description": "The configuration of an `OfflineStore` .\n\nProvide an `OfflineStoreConfig` in a request to `CreateFeatureGroup` to create an `OfflineStore` .\n\nTo encrypt an `OfflineStore` using at rest data encryption, specify AWS Key Management Service (KMS) key ID, or `KMSKeyId` , in `S3StorageConfig` .", "properties": { "DataCatalogConfig": "The meta data of the Glue table that is autogenerated when an `OfflineStore` is created.", - "DisableGlueTableCreation": "Set to `True` to disable the automatic creation of an AWS Glue table when configuring an `OfflineStore` . If set to `False` , Feature Store will name the `OfflineStore` Glue table following [Athena's naming recommendations](https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html) .", + "DisableGlueTableCreation": "Set to `True` to disable the automatic creation of an AWS Glue table when configuring an `OfflineStore` . If set to `False` , Feature Store will name the `OfflineStore` Glue table following [Athena's naming recommendations](https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html) .\n\nThe default value is `False` .", "S3StorageConfig": "The Amazon Simple Storage (Amazon S3) location of `OfflineStore` .", "TableFormat": "" } }, "AWS::SageMaker::FeatureGroup.OnlineStoreConfig": { "attributes": {}, - "description": "Use this to specify the AWS Key Management Service (KMS) Key ID, or `KMSKeyId` , for at rest data encryption. You can turn `OnlineStore` on or off by specifying the `EnableOnlineStore` flag at General Assembly; the default value is `False` .", + "description": "Use this to specify the AWS Key Management Service (KMS) Key ID, or `KMSKeyId` , for at rest data encryption. You can turn `OnlineStore` on or off by specifying the `EnableOnlineStore` flag at General Assembly.\n\nThe default value is `False` .", "properties": { "EnableOnlineStore": "Turn `OnlineStore` off by specifying `False` for the `EnableOnlineStore` flag. Turn `OnlineStore` on by specifying `True` for the `EnableOnlineStore` flag.\n\nThe default value is `False` .", "SecurityConfig": "Use to specify KMS Key ID ( `KMSKeyId` ) for at-rest encryption of your `OnlineStore` ." diff --git a/packages/@aws-cdk/cli-lib-alpha/THIRD_PARTY_LICENSES b/packages/@aws-cdk/cli-lib-alpha/THIRD_PARTY_LICENSES index 5e46d018bc141..a716629dad040 100644 --- a/packages/@aws-cdk/cli-lib-alpha/THIRD_PARTY_LICENSES +++ b/packages/@aws-cdk/cli-lib-alpha/THIRD_PARTY_LICENSES @@ -1,4 +1,4 @@ -The @aws-cdk/cli-lib package includes the following third-party software/licensing: +The @aws-cdk/cli-lib-alpha package includes the following third-party software/licensing: ** @jsii/check-node@1.78.1 - https://www.npmjs.com/package/@jsii/check-node/v/1.78.1 | Apache-2.0 jsii diff --git a/packages/@aws-cdk/cli-lib-alpha/package.json b/packages/@aws-cdk/cli-lib-alpha/package.json index a46efa41bb8aa..6ed6d4ad1d4c3 100644 --- a/packages/@aws-cdk/cli-lib-alpha/package.json +++ b/packages/@aws-cdk/cli-lib-alpha/package.json @@ -88,10 +88,10 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "aws-cdk-lib": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-cdk": "0.0.0", "constructs": "^10.0.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "ts-node": "^10.9.1" }, "repository": { diff --git a/packages/@aws-cdk/cloud-assembly-schema/package.json b/packages/@aws-cdk/cloud-assembly-schema/package.json index e8dbc6eeb5866..13e8b0f36111d 100644 --- a/packages/@aws-cdk/cloud-assembly-schema/package.json +++ b/packages/@aws-cdk/cloud-assembly-schema/package.json @@ -61,11 +61,11 @@ "devDependencies": { "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/mock-fs": "^4.13.1", "@types/semver": "^7.3.13", "aws-cdk-lib": "0.0.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "mock-fs": "^4.14.0", "typescript-json-schema": "^0.55.0" }, diff --git a/packages/@aws-cdk/cloudformation-diff/package.json b/packages/@aws-cdk/cloudformation-diff/package.json index d6de946fe62e2..d26dcb4130316 100644 --- a/packages/@aws-cdk/cloudformation-diff/package.json +++ b/packages/@aws-cdk/cloudformation-diff/package.json @@ -33,11 +33,11 @@ "devDependencies": { "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/string-width": "^4.0.1", "fast-check": "^2.25.0", - "jest": "^27.5.1", - "ts-jest": "^27.1.5" + "jest": "^29.5.0", + "ts-jest": "^29.1.0" }, "repository": { "url": "https://github.com/aws/aws-cdk.git", diff --git a/packages/@aws-cdk/cx-api/package.json b/packages/@aws-cdk/cx-api/package.json index 08db091e85c67..7ec2833ed8897 100644 --- a/packages/@aws-cdk/cx-api/package.json +++ b/packages/@aws-cdk/cx-api/package.json @@ -70,10 +70,10 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/cloud-assembly-schema": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/mock-fs": "^4.13.1", "@types/semver": "^7.3.13", - "jest": "^27.5.1", + "jest": "^29.5.0", "madge": "^5.0.2", "mock-fs": "^4.14.0" }, diff --git a/packages/@aws-cdk/example-construct-library/package.json b/packages/@aws-cdk/example-construct-library/package.json index 8250f37317d95..428a77147ad6a 100644 --- a/packages/@aws-cdk/example-construct-library/package.json +++ b/packages/@aws-cdk/example-construct-library/package.json @@ -77,8 +77,8 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1" + "@types/jest": "^29.5.0", + "jest": "^29.5.0" }, "dependencies": { "aws-cdk-lib": "0.0.0", diff --git a/packages/@aws-cdk/integ-runner/package.json b/packages/@aws-cdk/integ-runner/package.json index 50122ca3d324a..59648e72b4c88 100644 --- a/packages/@aws-cdk/integ-runner/package.json +++ b/packages/@aws-cdk/integ-runner/package.json @@ -56,13 +56,13 @@ "aws-cdk-lib": "0.0.0", "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/mock-fs": "^4.13.1", "@types/workerpool": "^6.1.1", "@types/yargs": "^15.0.15", "constructs": "^10.0.0", "mock-fs": "^4.14.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "ts-node": "^10.9.1" }, "dependencies": { diff --git a/packages/@aws-cdk/integ-tests-alpha/package.json b/packages/@aws-cdk/integ-tests-alpha/package.json index cfcab7f4b71f5..ffa5a72e609c3 100644 --- a/packages/@aws-cdk/integ-tests-alpha/package.json +++ b/packages/@aws-cdk/integ-tests-alpha/package.json @@ -70,10 +70,10 @@ "@aws-cdk/integ-runner": "0.0.0", "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "aws-sdk": "^2.1329.0", "aws-sdk-mock": "5.6.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "nock": "^13.3.0", "sinon": "^9.2.4", "aws-cdk-lib": "0.0.0", diff --git a/packages/@aws-cdk/region-info/package.json b/packages/@aws-cdk/region-info/package.json index 0ff705c652d4e..aefa9a021bbde 100644 --- a/packages/@aws-cdk/region-info/package.json +++ b/packages/@aws-cdk/region-info/package.json @@ -64,7 +64,7 @@ "@aws-cdk/pkglint": "0.0.0", "aws-cdk-lib": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "fs-extra": "^9.1.0" }, "repository": { diff --git a/packages/aws-cdk-lib/README.md b/packages/aws-cdk-lib/README.md index 860961b8300b9..5a96090079f31 100644 --- a/packages/aws-cdk-lib/README.md +++ b/packages/aws-cdk-lib/README.md @@ -27,7 +27,7 @@ According to the kind of project you are developing: You can use a classic import to get access to each service namespaces: -```ts +```ts nofixture import { Stack, App, aws_s3 as s3 } from 'aws-cdk-lib'; const app = new App(); @@ -40,7 +40,7 @@ new s3.Bucket(stack, 'TestBucket'); Alternatively, you can use "barrel" imports: -```ts +```ts nofixture import { App, Stack } from 'aws-cdk-lib'; import { Bucket } from 'aws-cdk-lib/aws-s3'; @@ -684,13 +684,13 @@ exports.handler = async (e) => { `sum.ts`: ```ts nofixture +import { Construct } from 'constructs'; import { - Construct, CustomResource, CustomResourceProvider, CustomResourceProviderRuntime, Token, -} from '@aws-cdk/core'; +} from 'aws-cdk-lib'; export interface SumProps { readonly lhs: number; @@ -911,7 +911,7 @@ a property of the creationPolicy on the resource options. Setting it to true wil resources that depend on the fleet resource. ```ts -const fleet = new CfnFleet(stack, 'Fleet', { +const fleet = new appstream.CfnFleet(this, 'Fleet', { instanceType: 'stream.standard.small', name: 'Fleet', computeCapacity: { @@ -930,14 +930,18 @@ The properties passed to the level 2 constructs `AutoScalingGroup` and `Instance The CfnWaitCondition resource from the `aws-cloudformation` module suppports the `resourceSignal`. The format of the timeout is `PT#H#M#S`. In the example below AWS Cloudformation will wait for -3 success signals to occur within 15 minutes before the status of the resource will be set to +3 success signals to occur within 15 minutes before the status of the resource will be set to `CREATE_COMPLETE`. ```ts -resource.cfnOptions.resourceSignal = { - count: 3, - timeout: 'PR15M', -} +declare const resource: CfnResource; + +resource.cfnOptions.creationPolicy = { + resourceSignal: { + count: 3, + timeout: 'PR15M', + } +}; ``` [creation-policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html @@ -1290,8 +1294,6 @@ to all roles within a specific construct scope. The most common use case would be to apply a permissions boundary at the `Stage` level. ```ts -declare const app: App; - const prodStage = new Stage(app, 'ProdStage', { permissionsBoundary: PermissionsBoundary.fromName('cdk-${Qualifier}-PermissionsBoundary'), }); @@ -1323,19 +1325,21 @@ will be printed to the console or to a file (see below). To use one or more validation plugins in your application, use the `policyValidationBeta1` property of `Stage`: -```ts +```ts fixture=validation-plugin // globally for the entire app (an app is a stage) const app = new App({ policyValidationBeta1: [ - // These hypothetical classes implement IValidationPlugin: - new ThirdPartyPluginX(), + // These hypothetical classes implement IPolicyValidationPluginBeta1: + new ThirdPartyPluginX(), new ThirdPartyPluginY(), ], }); // only apply to a particular stage const prodStage = new Stage(app, 'ProdStage', { - policyValidationBeta1: [...], + policyValidationBeta1: [ + new ThirdPartyPluginX(), + ], }); ``` @@ -1351,12 +1355,12 @@ validation. > secure to use. By default, the report will be printed in a human readable format. If you want a -report in JSON format, enable it using the `@aws-cdk/core:validationReportJson` +report in JSON format, enable it using the `@aws-cdk/core:validationReportJson` context passing it directly to the application: ```ts -const app = new App({ - context: { '@aws-cdk/core:validationReportJson': true }, +const app = new App({ + context: { '@aws-cdk/core:validationReportJson': true }, }); ``` @@ -1372,35 +1376,39 @@ the standard output. ### For plugin authors The communication protocol between the CDK core module and your policy tool is -defined by the `IValidationPluginBeta1` interface. To create a new plugin you must +defined by the `IPolicyValidationPluginBeta1` interface. To create a new plugin you must write a class that implements this interface. There are two things you need to implement: the plugin name (by overriding the `name` property), and the `validate()` method. -The framework will call `validate()`, passing an `IValidationContextBeta1` object. +The framework will call `validate()`, passing an `IPolicyValidationContextBeta1` object. The location of the templates to be validated is given by `templatePaths`. The -plugin should return an instance of `ValidationPluginReportBeta1`. This object +plugin should return an instance of `PolicyValidationPluginReportBeta1`. This object represents the report that the user wil receive at the end of the synthesis. -```ts -validate(context: ValidationContextBeta1): ValidationReportBeta1 { - // First read the templates using context.templatePaths... - - // ...then perform the validation, and then compose and return the report. - // Using hard-coded values here for better clarity: - return { - success: false, - violations: [{ - ruleName: 'CKV_AWS_117', - recommendation: 'Ensure that AWS Lambda function is configured inside a VPC', - fix: 'https://docs.bridgecrew.io/docs/ensure-that-aws-lambda-function-is-configured-inside-a-vpc-1', - violatingResources: [{ - resourceName: 'MyFunction3BAA72D1', - templatePath: '/home/johndoe/myapp/cdk.out/MyService.template.json', - locations: 'Properties/VpcConfig', +```ts fixture=validation-plugin +class MyPlugin implements IPolicyValidationPluginBeta1 { + public readonly name = 'MyPlugin'; + + public validate(context: IPolicyValidationContextBeta1): PolicyValidationPluginReportBeta1 { + // First read the templates using context.templatePaths... + + // ...then perform the validation, and then compose and return the report. + // Using hard-coded values here for better clarity: + return { + success: false, + violations: [{ + ruleName: 'CKV_AWS_117', + description: 'Ensure that AWS Lambda function is configured inside a VPC', + fix: 'https://docs.bridgecrew.io/docs/ensure-that-aws-lambda-function-is-configured-inside-a-vpc-1', + violatingResources: [{ + resourceLogicalId: 'MyFunction3BAA72D1', + templatePath: '/home/johndoe/myapp/cdk.out/MyService.template.json', + locations: ['Properties/VpcConfig'], + }], }], - }], - }; + }; + } } ``` diff --git a/packages/aws-cdk-lib/assertions/test/__snapshots__/render.test.js.snap b/packages/aws-cdk-lib/assertions/test/__snapshots__/render.test.js.snap index ff920992eb401..a7cb192ad01a2 100644 --- a/packages/aws-cdk-lib/assertions/test/__snapshots__/render.test.js.snap +++ b/packages/aws-cdk-lib/assertions/test/__snapshots__/render.test.js.snap @@ -3,30 +3,30 @@ exports[`Abridged rendering of uninteresting keys (hiding Other) 1`] = ` " { - \\"Other\\": { ... }, + "Other": { ... }, !! Expected Balue but received Value - \\"Value\\": \\"Value\\" + "Value": "Value" }" `; exports[`Abridged rendering of uninteresting keys (showing Other) 1`] = ` " { - \\"Other\\": { \\"OneKey\\": \\"Visible\\" }, + "Other": { "OneKey": "Visible" }, !! Expected Balue but received Value - \\"Value\\": \\"Value\\" + "Value": "Value" }" `; exports[`ArrayWith matcher 1`] = ` "Most entries should be collapsed but at least one should for a deep comparison { - \\"List\\": [ + "List": [ !! Could not match arrayWith pattern 0. This is the closest match { - \\"MakeItBig\\": true, + "MakeItBig": true, !! Expected 5 but received 1 - \\"Value\\": \\"1\\" + "Value": "1" }, { ... }, { ... }, @@ -49,18 +49,18 @@ exports[`ArrayWith out-of-order match 1`] = ` exports[`ArrayWith partial match 1`] = ` "Most entries should be collapsed but at least one should for a deep comparison, and should show a place for previous matches { - \\"List\\": [ + "List": [ { ... }, !! arrayWith pattern 0 matched here { - \\"MakeItBig\\": true, - \\"Value\\": \\"2\\" + "MakeItBig": true, + "Value": "2" }, !! Could not match arrayWith pattern 1. This is the closest match { - \\"MakeItBig\\": true, + "MakeItBig": true, !! Expected 5 but received 3 - \\"Value\\": \\"3\\" + "Value": "3" }, { ... } ] @@ -70,10 +70,10 @@ exports[`ArrayWith partial match 1`] = ` exports[`Deep Match.objectLike with mismatched string value 1`] = ` " { - \\"Deep\\": { - \\"Other\\": \\"Other\\", + "Deep": { + "Other": "Other", !! Expected Value but received Balue - \\"Value\\": \\"Balue\\" + "Value": "Balue" } }" `; @@ -82,9 +82,9 @@ exports[`Encodedjson matcher 1`] = ` " { !! Encoded JSON value does not match - \\"Json\\": \\"{\\\\\\"Value\\\\\\":\\\\\\"Value\\\\\\"}\\" <*> { + "Json": "{\\"Value\\":\\"Value\\"}" <*> { !! Expected Balue but received Value - \\"Value\\": \\"Value\\" + "Value": "Value" } }" `; @@ -93,7 +93,7 @@ exports[`Match.objectEquals with missing key 1`] = ` " { !! Missing key 'Value' - \\"Value\\": undefined + "Value": undefined }" `; @@ -101,8 +101,8 @@ exports[`Match.objectEquals with unexpected key 1`] = ` " { !! Unexpected key Other - \\"Other\\": \\"Other\\", - \\"Value\\": \\"Value\\" + "Other": "Other", + "Value": "Value" }" `; @@ -110,15 +110,15 @@ exports[`Match.objectLike looking for absent key 1`] = ` " { !! Received Value, but key should be absent - \\"Value\\": \\"Value\\" + "Value": "Value" }" `; exports[`Match.objectLike with mismatched string value 1`] = ` " { - \\"Other\\": \\"Other\\", + "Other": "Other", !! Expected Value but received Balue - \\"Value\\": \\"Balue\\" + "Value": "Balue" }" `; diff --git a/packages/aws-cdk-lib/aws-apigateway/README.md b/packages/aws-cdk-lib/aws-apigateway/README.md index c97feff153724..27589eb4f2cbd 100644 --- a/packages/aws-cdk-lib/aws-apigateway/README.md +++ b/packages/aws-cdk-lib/aws-apigateway/README.md @@ -730,50 +730,54 @@ books.addMethod('GET', new apigateway.HttpIntegration('http://amazon.com'), { A full working example is shown below. -```ts +```ts nofixture import * as path from 'path'; import * as lambda from 'aws-cdk-lib/aws-lambda'; +import { Construct } from 'constructs'; import { App, Stack } from 'aws-cdk-lib'; -import { MockIntegration, PassthroughBehavior, RestApi, TokenAuthorizer, Cors } from '../../lib'; +import { MockIntegration, PassthroughBehavior, RestApi, TokenAuthorizer, Cors } from 'aws-cdk-lib/aws-apigateway'; /// !show -const app = new App(); -const stack = new Stack(app, 'TokenAuthorizerInteg'); - -const authorizerFn = new lambda.Function(stack, 'MyAuthorizerFunction', { - runtime: lambda.Runtime.NODEJS_14_X, - handler: 'index.handler', - code: lambda.AssetCode.fromAsset(path.join(__dirname, 'integ.token-authorizer.handler')), -}); - -const authorizer = new TokenAuthorizer(stack, 'MyAuthorizer', { - handler: authorizerFn, -}); - -const restapi = new RestApi(stack, 'MyRestApi', { - cloudWatchRole: true, - defaultMethodOptions: { - authorizer, - }, - defaultCorsPreflightOptions: { - allowOrigins: Cors.ALL_ORIGINS, - }, -}); +class MyStack extends Stack { + constructor(scope: Construct, id: string) { + super(scope, id); + + const authorizerFn = new lambda.Function(this, 'MyAuthorizerFunction', { + runtime: lambda.Runtime.NODEJS_14_X, + handler: 'index.handler', + code: lambda.AssetCode.fromAsset(path.join(__dirname, 'integ.token-authorizer.handler')), + }); + + const authorizer = new TokenAuthorizer(this, 'MyAuthorizer', { + handler: authorizerFn, + }); + + const restapi = new RestApi(this, 'MyRestApi', { + cloudWatchRole: true, + defaultMethodOptions: { + authorizer, + }, + defaultCorsPreflightOptions: { + allowOrigins: Cors.ALL_ORIGINS, + }, + }); -restapi.root.addMethod('ANY', new MockIntegration({ - integrationResponses: [ - { statusCode: '200' }, - ], - passthroughBehavior: PassthroughBehavior.NEVER, - requestTemplates: { - 'application/json': '{ "statusCode": 200 }', - }, -}), { - methodResponses: [ - { statusCode: '200' }, - ], -}); + restapi.root.addMethod('ANY', new MockIntegration({ + integrationResponses: [ + { statusCode: '200' }, + ], + passthroughBehavior: PassthroughBehavior.NEVER, + requestTemplates: { + 'application/json': '{ "statusCode": 200 }', + }, + }), { + methodResponses: [ + { statusCode: '200' }, + ], + }); + } +} ``` By default, the `TokenAuthorizer` looks for the authorization token in the request header with the key 'Authorization'. This can, diff --git a/packages/aws-cdk-lib/aws-appmesh/README.md b/packages/aws-cdk-lib/aws-appmesh/README.md index 597b4e0e68c3b..846bc0cf8f2f2 100644 --- a/packages/aws-cdk-lib/aws-appmesh/README.md +++ b/packages/aws-cdk-lib/aws-appmesh/README.md @@ -152,9 +152,9 @@ const node = mesh.addVirtualNode('virtual-node', { port: 8081, healthCheck: appmesh.HealthCheck.http({ healthyThreshold: 3, - interval: cdk.Duration.seconds(5), // minimum + interval: Duration.seconds(5), // minimum path: '/health-check-path', - timeout: cdk.Duration.seconds(2), // minimum + timeout: Duration.seconds(2), // minimum unhealthyThreshold: 2, }), })], @@ -175,13 +175,13 @@ const node = new appmesh.VirtualNode(this, 'node', { port: 8080, healthCheck: appmesh.HealthCheck.http({ healthyThreshold: 3, - interval: cdk.Duration.seconds(5), + interval: Duration.seconds(5), path: '/ping', - timeout: cdk.Duration.seconds(2), + timeout: Duration.seconds(2), unhealthyThreshold: 2, }), timeout: { - idle: cdk.Duration.seconds(5), + idle: Duration.seconds(5), }, })], backendDefaults: { @@ -211,13 +211,13 @@ const node = new appmesh.VirtualNode(this, 'node', { port: 8080, healthCheck: appmesh.HealthCheck.http({ healthyThreshold: 3, - interval: cdk.Duration.seconds(5), + interval: Duration.seconds(5), path: '/ping', - timeout: cdk.Duration.seconds(2), + timeout: Duration.seconds(2), unhealthyThreshold: 2, }), timeout: { - idle: cdk.Duration.seconds(5), + idle: Duration.seconds(5), }, })], accessLog: appmesh.AccessLog.fromFilePath('/dev/stdout'), @@ -257,7 +257,7 @@ node.addBackend(appmesh.Backend.virtualService(virtualService)); ### Adding TLS to a listener -The `tls` property specifies TLS configuration when creating a listener for a virtual node or a virtual gateway. +The `tls` property specifies TLS configuration when creating a listener for a virtual node or a virtual gateway. Provide the TLS certificate to the proxy in one of the following ways: - A certificate from AWS Certificate Manager (ACM). @@ -312,7 +312,7 @@ const gateway2 = new appmesh.VirtualGateway(this, 'gateway2', { ### Adding mutual TLS authentication -Mutual TLS authentication is an optional component of TLS that offers two-way peer authentication. +Mutual TLS authentication is an optional component of TLS that offers two-way peer authentication. To enable mutual TLS authentication, add the `mutualTlsCertificate` property to TLS client policy and/or the `mutualTlsValidation` property to your TLS listener. `tls.mutualTlsValidation` and `tlsClientPolicy.mutualTlsCertificate` can be sourced from either: @@ -364,7 +364,7 @@ const node2 = new appmesh.VirtualNode(this, 'node2', { ### Adding outlier detection to a Virtual Node listener -The `outlierDetection` property adds outlier detection to a Virtual Node listener. The properties +The `outlierDetection` property adds outlier detection to a Virtual Node listener. The properties `baseEjectionDuration`, `interval`, `maxEjectionPercent`, and `maxServerErrors` are required. ```ts @@ -381,8 +381,8 @@ const node = mesh.addVirtualNode('virtual-node', { serviceDiscovery: appmesh.ServiceDiscovery.cloudMap(service), listeners: [appmesh.VirtualNodeListener.http({ outlierDetection: { - baseEjectionDuration: cdk.Duration.seconds(10), - interval: cdk.Duration.seconds(30), + baseEjectionDuration: Duration.seconds(10), + interval: Duration.seconds(30), maxEjectionPercent: 50, maxServerErrors: 5, }, @@ -441,19 +441,19 @@ There a four different IP preferences available to use which each specify what I - `IPv6_PREFERRED` - Prefer IPv6 and fall back to IPv4. For CloudMap service discovery, an IPv6 address will be used if returned from CloudMap. Otherwise, an IPv4 address will be used if available. For DNS service discovery, Envoy's DNS resolver will first attempt to resolve DNS queries using IPv6 and fall back to IPv4. ```ts -const mesh = new appmesh.Mesh(stack, 'mesh', { +const mesh = new appmesh.Mesh(this, 'mesh', { meshName: 'mesh-with-preference', }); // Virtual Node with DNS service discovery and an IP preference -const dnsNode = new appmesh.VirtualNode(stack, 'dns-node', { +const dnsNode = new appmesh.VirtualNode(this, 'dns-node', { mesh, serviceDiscovery: appmesh.ServiceDiscovery.dns('test', appmesh.DnsResponseType.LOAD_BALANCER, appmesh.IpPreference.IPV4_ONLY), }); // Virtual Node with CloudMap service discovery and an IP preference -const vpc = new ec2.Vpc(stack, 'vpc'); -const namespace = new cloudmap.PrivateDnsNamespace(stack, 'test-namespace', { +const vpc = new ec2.Vpc(this, 'vpc'); +const namespace = new cloudmap.PrivateDnsNamespace(this, 'test-namespace', { vpc, name: 'domain.local', }); @@ -462,7 +462,7 @@ const service = namespace.createService('Svc'); const instanceAttribute : { [key: string]: string} = {}; instanceAttribute.testKey = 'testValue'; -const cloudmapNode = new appmesh.VirtualNode(stack, 'cloudmap-node', { +const cloudmapNode = new appmesh.VirtualNode(this, 'cloudmap-node', { mesh, serviceDiscovery: appmesh.ServiceDiscovery.cloudMap(service, instanceAttribute, appmesh.IpPreference.IPV4_ONLY), }); @@ -470,14 +470,14 @@ const cloudmapNode = new appmesh.VirtualNode(stack, 'cloudmap-node', { ## Adding a Route -A _route_ matches requests with an associated virtual router and distributes traffic to its associated virtual nodes. +A _route_ matches requests with an associated virtual router and distributes traffic to its associated virtual nodes. The route distributes matching requests to one or more target virtual nodes with relative weighting. The `RouteSpec` class lets you define protocol-specific route specifications. The `tcp()`, `http()`, `http2()`, and `grpc()` methods create a specification for the named protocols. -For HTTP-based routes, the match field can match on path (prefix, exact, or regex), HTTP method, scheme, -HTTP headers, and query parameters. By default, HTTP-based routes match all requests. +For HTTP-based routes, the match field can match on path (prefix, exact, or regex), HTTP method, scheme, +HTTP headers, and query parameters. By default, HTTP-based routes match all requests. For gRPC-based routes, the match field can match on service name, method name, and metadata. When specifying the method name, the service name must also be specified. @@ -576,7 +576,7 @@ router.addRoute('route-http2-retry', { // Retry five times retryAttempts: 5, // Use a 1 second timeout per retry - retryTimeout: cdk.Duration.seconds(1), + retryTimeout: Duration.seconds(1), }, }), }); @@ -603,7 +603,7 @@ router.addRoute('route-grpc-retry', { appmesh.GrpcRetryEvent.UNAVAILABLE, ], retryAttempts: 5, - retryTimeout: cdk.Duration.seconds(1), + retryTimeout: Duration.seconds(1), }, }), }); @@ -618,7 +618,7 @@ declare const node: appmesh.VirtualNode; router.addRoute('route-grpc-retry', { routeSpec: appmesh.RouteSpec.grpc({ weightedTargets: [{ virtualNode: node }], - match: { + match: { // When method name is specified, service name must be also specified. methodName: 'methodname', serviceName: 'servicename', @@ -649,8 +649,8 @@ router.addRoute('route-http', { serviceName: 'my-service.default.svc.cluster.local', }, timeout: { - idle : cdk.Duration.seconds(2), - perRequest: cdk.Duration.seconds(1), + idle : Duration.seconds(2), + perRequest: Duration.seconds(1), }, }), }); @@ -677,7 +677,7 @@ const gateway = new appmesh.VirtualGateway(this, 'gateway', { listeners: [appmesh.VirtualGatewayListener.http({ port: 443, healthCheck: appmesh.HealthCheck.http({ - interval: cdk.Duration.seconds(10), + interval: Duration.seconds(10), }), })], backendDefaults: { @@ -705,7 +705,7 @@ const gateway = mesh.addVirtualGateway('gateway', { listeners: [appmesh.VirtualGatewayListener.http({ port: 443, healthCheck: appmesh.HealthCheck.http({ - interval: cdk.Duration.seconds(10), + interval: Duration.seconds(10), }), })], }); @@ -720,7 +720,7 @@ The `backendDefaults` property, provided when creating the virtual gateway, spec A _gateway route_ is attached to a virtual gateway and routes matching traffic to an existing virtual service. -For HTTP-based gateway routes, the `match` field can be used to match on +For HTTP-based gateway routes, the `match` field can be used to match on path (prefix, exact, or regex), HTTP method, host name, HTTP headers, and query parameters. By default, HTTP-based gateway routes match all requests. @@ -777,7 +777,7 @@ gateway.addGatewayRoute('gateway-route-http-1', { match: { // If the request full path is '/path-to-app/xxxxx', this rewrites the path to '/rewrittenUri/xxxxx'. // Please note both `prefixPathMatch` and `rewriteTo` must start and end with the `/` character. - path: appmesh.HttpGatewayRoutePathMatch.startsWith('/path-to-app/', '/rewrittenUri/'), + path: appmesh.HttpGatewayRoutePathMatch.startsWith('/path-to-app/', '/rewrittenUri/'), }, }), }); @@ -795,13 +795,13 @@ gateway.addGatewayRoute('gateway-route-http-2', { routeTarget: virtualService, match: { // This rewrites the path from '/test' to '/rewrittenPath'. - path: appmesh.HttpGatewayRoutePathMatch.exactly('/test', '/rewrittenPath'), + path: appmesh.HttpGatewayRoutePathMatch.exactly('/test', '/rewrittenPath'), }, }), }); ``` -For HTTP/gRPC based routes, App Mesh automatically rewrites +For HTTP/gRPC based routes, App Mesh automatically rewrites the original request received at the Virtual Gateway to the destination Virtual Service name. This default host name rewrite can be configured by specifying the rewrite rule as one of the `match` property: @@ -852,7 +852,7 @@ appmesh.Mesh.fromMeshName(this, 'imported-mesh', 'abc'); ## IAM Grants -`VirtualNode` and `VirtualGateway` provide `grantStreamAggregatedResources` methods that grant identities that are running +`VirtualNode` and `VirtualGateway` provide `grantStreamAggregatedResources` methods that grant identities that are running Envoy access to stream generated config from App Mesh. ```ts @@ -864,7 +864,7 @@ const envoyUser = new iam.User(this, 'envoyUser'); * This will grant `grantStreamAggregatedResources` ONLY for this gateway. */ gateway.grantStreamAggregatedResources(envoyUser) -``` +``` ## Adding Resources to shared meshes diff --git a/packages/aws-cdk-lib/aws-backup/README.md b/packages/aws-cdk-lib/aws-backup/README.md index ca7848bd82916..8a72eb7135294 100644 --- a/packages/aws-cdk-lib/aws-backup/README.md +++ b/packages/aws-cdk-lib/aws-backup/README.md @@ -204,7 +204,7 @@ By default access is not restricted. Use the `lockConfiguration` property to enable [AWS Backup Vault Lock](https://docs.aws.amazon.com/aws-backup/latest/devguide/vault-lock.html): ```ts -new BackupVault(stack, 'Vault', { +new backup.BackupVault(this, 'Vault', { lockConfiguration: { minRetention: Duration.days(30), }, diff --git a/packages/aws-cdk-lib/aws-certificatemanager/README.md b/packages/aws-cdk-lib/aws-certificatemanager/README.md index 23c4a4ca7a0c4..5c20e8fae88dd 100644 --- a/packages/aws-cdk-lib/aws-certificatemanager/README.md +++ b/packages/aws-cdk-lib/aws-certificatemanager/README.md @@ -100,6 +100,9 @@ in order to access the cross stack/region certificate. > **This feature is currently experimental** ```ts +import { aws_cloudfront as cloudfront, aws_cloudfront_origins as origins } from 'aws-cdk-lib'; +declare const app: App; + const stack1 = new Stack(app, 'Stack1', { env: { region: 'us-east-1', diff --git a/packages/aws-cdk-lib/aws-cloudformation/lib/custom-resource.ts b/packages/aws-cdk-lib/aws-cloudformation/lib/custom-resource.ts index 4911060deae91..145df85311f94 100644 --- a/packages/aws-cdk-lib/aws-cloudformation/lib/custom-resource.ts +++ b/packages/aws-cdk-lib/aws-cloudformation/lib/custom-resource.ts @@ -96,9 +96,9 @@ export interface CustomResourceProps { * [resource provider framework]: https://docs.aws.amazon.com/cdk/api/latest/docs/custom-resources-readme.html * * ```ts - * import * as custom_resources from '@aws-cdk/custom-resources'; - * import * as lambda from '@aws-cdk/aws-lambda'; - * import { Stack } from '@aws-cdk/core'; + * import * as custom_resources from 'aws-cdk-lib/custom-resources'; + * import * as lambda from 'aws-cdk-lib/aws-lambda'; + * import { Stack } from 'aws-cdk-lib'; * declare const myOnEventLambda: lambda.Function; * declare const myIsCompleteLambda: lambda.Function; * const stack = new Stack(); diff --git a/packages/aws-cdk-lib/aws-cloudfront/README.md b/packages/aws-cdk-lib/aws-cloudfront/README.md index 1569441e54853..3963d26fa8b86 100644 --- a/packages/aws-cdk-lib/aws-cloudfront/README.md +++ b/packages/aws-cdk-lib/aws-cloudfront/README.md @@ -125,6 +125,11 @@ enabled it is possible to do something like creating a CloudFront distribution i an ACM certificate in `us-east-1`. ```ts +import * as acm from 'aws-cdk-lib/aws-certificatemanager'; +import * as route53 from 'aws-cdk-lib/aws-route53'; + +declare const app: App; + const stack1 = new Stack(app, 'Stack1', { env: { region: 'us-east-1', diff --git a/packages/aws-cdk-lib/aws-cloudtrail/README.md b/packages/aws-cdk-lib/aws-cloudtrail/README.md index fabd6bdf43b10..4be433038e560 100644 --- a/packages/aws-cdk-lib/aws-cloudtrail/README.md +++ b/packages/aws-cdk-lib/aws-cloudtrail/README.md @@ -16,7 +16,7 @@ const trail = new cloudtrail.Trail(this, 'CloudTrail'); ``` By default, this will create a new S3 Bucket that CloudTrail will write to, and choose a few other reasonable defaults -such as turning on multi-region and global service events. +such as turning on multi-region and global service events. The defaults for each property and how to override them are all documented on the `TrailProps` interface. ## Log File Validation @@ -62,7 +62,7 @@ import * as logs from 'aws-cdk-lib/aws-logs'; const trail = new cloudtrail.Trail(this, 'CloudTrail', { sendToCloudWatchLogs: true, - cloudWatchLogsRetention: logs.RetentionDays.FOUR_MONTHS, + cloudWatchLogsRetention: logs.RetentionDays.FOUR_MONTHS, }); ``` @@ -126,7 +126,7 @@ account. These are also known as control plane operations. Learn more about [Man Events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-events). By default, a `Trail` logs all management events. However, they can be configured to either be turned off, or to only -log 'Read' or 'Write' events. +log 'Read' or 'Write' events. The following code configures the `Trail` to only track management events that are of type 'Read'. @@ -194,10 +194,10 @@ Set `InsightSelector` to enable Insight. Insights selector values can be `ApiCallRateInsight`, `ApiErrorRateInsight`, or both. ```ts -new Trail(stack, 'Insights', { +new cloudtrail.Trail(this, 'Insights', { insightTypes: [ - InsightType.API_CALL_RATE, - InsightType.API_ERROR_RATE, + cloudtrail.InsightType.API_CALL_RATE, + cloudtrail.InsightType.API_ERROR_RATE, ], }); ``` diff --git a/packages/aws-cdk-lib/aws-cloudwatch/README.md b/packages/aws-cdk-lib/aws-cloudwatch/README.md index 919835d965bf1..c01213a90d6f1 100644 --- a/packages/aws-cdk-lib/aws-cloudwatch/README.md +++ b/packages/aws-cdk-lib/aws-cloudwatch/README.md @@ -179,6 +179,8 @@ The most common values are provided in the `cloudwatch.Stats` class. You can pro Read more at [CloudWatch statistics definitions](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Statistics-definitions.html). ```ts +declare const hostedZone: route53.HostedZone; + new cloudwatch.Metric({ namespace: 'AWS/Route53', metricName: 'DNSQueries', @@ -186,7 +188,7 @@ new cloudwatch.Metric({ HostedZoneId: hostedZone.hostedZoneId }, statistic: cloudwatch.Stats.SAMPLE_COUNT, - period: cloudwatch.Duration.minutes(5) + period: Duration.minutes(5) }); new cloudwatch.Metric({ @@ -196,7 +198,7 @@ new cloudwatch.Metric({ HostedZoneId: hostedZone.hostedZoneId }, statistic: cloudwatch.Stats.p(99), - period: cloudwatch.Duration.minutes(5) + period: Duration.minutes(5) }); new cloudwatch.Metric({ @@ -206,7 +208,7 @@ new cloudwatch.Metric({ HostedZoneId: hostedZone.hostedZoneId }, statistic: 'TS(7.5%:90%)', - period: cloudwatch.Duration.minutes(5) + period: Duration.minutes(5) }); ``` @@ -340,8 +342,8 @@ new cloudwatch.CompositeAlarm(this, 'MyAwesomeCompositeAlarm', { If you want to disable actions of a Composite Alarm based on a certain condition, you can use [Actions Suppression](https://www.amazonaws.cn/en/new/2022/amazon-cloudwatch-supports-composite-alarm-actions-suppression/). ```ts -declare const childAlarm1: cloudwatch.Alarm; -declare const childAlarm2: cloudwatch.Alarm; +declare const alarm1: cloudwatch.Alarm; +declare const alarm2: cloudwatch.Alarm; declare const onAlarmAction: cloudwatch.IAlarmAction; declare const onOkAction: cloudwatch.IAlarmAction; declare const actionsSuppressor: cloudwatch.Alarm; @@ -352,8 +354,8 @@ const myCompositeAlarm = new cloudwatch.CompositeAlarm(this, 'MyAwesomeComposite alarmRule, actionsSuppressor, }); -myCompositeAlarm.addAlarmActions(onAlarmAction); -myComposireAlarm.addOkAction(onOkAction); +myCompositeAlarm.addAlarmAction(onAlarmAction); +myCompositeAlarm.addOkAction(onOkAction); ``` In the provided example, if `actionsSuppressor` is in `ALARM` state, `onAlarmAction` won't be triggered even if `myCompositeAlarm` goes into `ALARM` state. @@ -562,7 +564,7 @@ declare const dashboard: cloudwatch.Dashboard; dashboard.addWidgets(new cloudwatch.TextWidget({ markdown: '# Key Performance Indicators', - background: TextWidgetBackground.TRANSPARENT + background: cloudwatch.TextWidgetBackground.TRANSPARENT })); ``` @@ -691,13 +693,13 @@ You can add a widget after object instantiation with the method ### Interval duration for dashboard Interval duration for metrics in dashboard. You can specify `defaultInterval` with -the relative time(eg. 7 days) as `cdk.Duration.days(7)`. +the relative time(eg. 7 days) as `Duration.days(7)`. ```ts import * as cw from 'aws-cdk-lib/aws-cloudwatch'; -const dashboard = new cw.Dashboard(stack, 'Dash', { - defaultInterval: cdk.Duration.days(7), +const dashboard = new cw.Dashboard(this, 'Dash', { + defaultInterval: Duration.days(7), }); ``` diff --git a/packages/aws-cdk-lib/aws-codebuild/README.md b/packages/aws-cdk-lib/aws-codebuild/README.md index e2ed9c07481f7..f7c1128f9b65e 100644 --- a/packages/aws-cdk-lib/aws-codebuild/README.md +++ b/packages/aws-cdk-lib/aws-codebuild/README.md @@ -114,7 +114,7 @@ You can specify a specific filename that exists within the project's source arti ```ts const project = new codebuild.Project(this, 'MyProject', { - buildSpec: codebuild.BuildSpec.fromSourceFileName('my-buildspec.yml'), + buildSpec: codebuild.BuildSpec.fromSourceFilename('my-buildspec.yml'), source: codebuild.Source.gitHub({ owner: 'awslabs', repo: 'aws-cdk', @@ -450,7 +450,7 @@ Example: ```ts new codebuild.Project(this, 'Project', { environment: { - buildImage: codebuild.LinuxBuildImage.STANDARD_6_0, + buildImage: codebuild.LinuxBuildImage.STANDARD_7_0, }, ssmSessionPermissions: true, buildSpec: codebuild.BuildSpec.fromObject({ diff --git a/packages/aws-cdk-lib/aws-codebuild/lib/project.ts b/packages/aws-cdk-lib/aws-codebuild/lib/project.ts index 61effdf6a577c..4a2c43347687a 100644 --- a/packages/aws-cdk-lib/aws-codebuild/lib/project.ts +++ b/packages/aws-cdk-lib/aws-codebuild/lib/project.ts @@ -1733,6 +1733,8 @@ export class LinuxBuildImage implements IBuildImage { public static readonly STANDARD_5_0 = LinuxBuildImage.codeBuildImage('aws/codebuild/standard:5.0'); /** The `aws/codebuild/standard:6.0` build image. */ public static readonly STANDARD_6_0 = LinuxBuildImage.codeBuildImage('aws/codebuild/standard:6.0'); + /** The `aws/codebuild/standard:7.0` build image. */ + public static readonly STANDARD_7_0 = LinuxBuildImage.codeBuildImage('aws/codebuild/standard:7.0'); public static readonly AMAZON_LINUX_2 = LinuxBuildImage.codeBuildImage('aws/codebuild/amazonlinux2-x86_64-standard:1.0'); public static readonly AMAZON_LINUX_2_2 = LinuxBuildImage.codeBuildImage('aws/codebuild/amazonlinux2-x86_64-standard:2.0'); diff --git a/packages/aws-cdk-lib/aws-codebuild/test/project.test.ts b/packages/aws-cdk-lib/aws-codebuild/test/project.test.ts index ac5892d59a41b..b1df20f10b156 100644 --- a/packages/aws-cdk-lib/aws-codebuild/test/project.test.ts +++ b/packages/aws-cdk-lib/aws-codebuild/test/project.test.ts @@ -793,6 +793,7 @@ describe('Environment', () => { }); test.each([ + ['Standard 7.0', codebuild.LinuxBuildImage.STANDARD_7_0, 'aws/codebuild/standard:7.0'], ['Standard 6.0', codebuild.LinuxBuildImage.STANDARD_6_0, 'aws/codebuild/standard:6.0'], ['Amazon Linux 4.0', codebuild.LinuxBuildImage.AMAZON_LINUX_2_4, 'aws/codebuild/amazonlinux2-x86_64-standard:4.0'], ['Windows Server Core 2019 2.0', codebuild.WindowsBuildImage.WIN_SERVER_CORE_2019_BASE_2_0, 'aws/codebuild/windows-base:2019-2.0'], diff --git a/packages/aws-cdk-lib/aws-codedeploy/README.md b/packages/aws-cdk-lib/aws-codedeploy/README.md index 30038154c6dfc..caeeb2ec8184f 100644 --- a/packages/aws-cdk-lib/aws-codedeploy/README.md +++ b/packages/aws-cdk-lib/aws-codedeploy/README.md @@ -141,8 +141,6 @@ With Application Load Balancer or Network Load Balancer, you provide a Target Group as the load balancer: ```ts -import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; - declare const alb: elbv2.ApplicationLoadBalancer; const listener = alb.addListener('Listener', { port: 80 }); const targetGroup = listener.addTargets('Fleet', { port: 80 }); @@ -325,8 +323,8 @@ letting you specify precisely how fast a new function version is deployed. ```ts const config = new codedeploy.LambdaDeploymentConfig(this, 'CustomConfig', { - trafficRoutingConfig: new codedeploy.TimeBasedCanaryTrafficRoutingConfig({ - interval: cdk.Duration.minutes(15), + trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({ + interval: Duration.minutes(15), percentage: 5, }), }); @@ -344,8 +342,8 @@ You can specify a custom name for your deployment config, but if you do you will ```ts const config = new codedeploy.LambdaDeploymentConfig(this, 'CustomConfig', { - trafficRoutingConfig: new codedeploy.TimeBasedCanaryTrafficRoutingConfig({ - interval: cdk.Duration.minutes(15), + trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({ + interval: Duration.minutes(15), percentage: 5, }), deploymentConfigName: 'MyDeploymentConfig', @@ -416,7 +414,7 @@ const service = new ecs.FargateService(this, 'Service', { }, }); -new codedeploy.EcsDeploymentGroup(stack, 'BlueGreenDG', { +new codedeploy.EcsDeploymentGroup(this, 'BlueGreenDG', { service, blueGreenDeploymentConfig: { blueTargetGroup, @@ -456,43 +454,48 @@ and green target groups. ```ts import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch'; +declare const service: ecs.FargateService; +declare const blueTargetGroup: elbv2.ApplicationTargetGroup; +declare const greenTargetGroup: elbv2.ApplicationTargetGroup; +declare const listener: elbv2.IApplicationListener; + // Alarm on the number of unhealthy ECS tasks in each target group -const blueUnhealthyHosts = new cloudwatch.Alarm(stack, 'BlueUnhealthyHosts', { - alarmName: stack.stackName + '-Unhealthy-Hosts-Blue', +const blueUnhealthyHosts = new cloudwatch.Alarm(this, 'BlueUnhealthyHosts', { + alarmName: Stack.of(this).stackName + '-Unhealthy-Hosts-Blue', metric: blueTargetGroup.metricUnhealthyHostCount(), threshold: 1, evaluationPeriods: 2, }); -const greenUnhealthyHosts = new cloudwatch.Alarm(stack, 'GreenUnhealthyHosts', { - alarmName: stack.stackName + '-Unhealthy-Hosts-Green', +const greenUnhealthyHosts = new cloudwatch.Alarm(this, 'GreenUnhealthyHosts', { + alarmName: Stack.of(this).stackName + '-Unhealthy-Hosts-Green', metric: greenTargetGroup.metricUnhealthyHostCount(), threshold: 1, evaluationPeriods: 2, }); // Alarm on the number of HTTP 5xx responses returned by each target group -const blueApiFailure = new cloudwatch.Alarm(stack, 'Blue5xx', { - alarmName: stack.stackName + '-Http-5xx-Blue', +const blueApiFailure = new cloudwatch.Alarm(this, 'Blue5xx', { + alarmName: Stack.of(this).stackName + '-Http-5xx-Blue', metric: blueTargetGroup.metricHttpCodeTarget( elbv2.HttpCodeTarget.TARGET_5XX_COUNT, - { period: cdk.Duration.minutes(1) }, + { period: Duration.minutes(1) }, ), threshold: 1, evaluationPeriods: 1, }); -const greenApiFailure = new cloudwatch.Alarm(stack, 'Green5xx', { - alarmName: stack.stackName + '-Http-5xx-Green', +const greenApiFailure = new cloudwatch.Alarm(this, 'Green5xx', { + alarmName: Stack.of(this).stackName + '-Http-5xx-Green', metric: greenTargetGroup.metricHttpCodeTarget( elbv2.HttpCodeTarget.TARGET_5XX_COUNT, - { period: cdk.Duration.minutes(1) }, + { period: Duration.minutes(1) }, ), threshold: 1, evaluationPeriods: 1, }); -new codedeploy.EcsDeploymentGroup(stack, 'BlueGreenDG', { +new codedeploy.EcsDeploymentGroup(this, 'BlueGreenDG', { // CodeDeploy will monitor these alarms during a deployment and automatically roll back alarms: [blueUnhealthyHosts, greenUnhealthyHosts, blueApiFailure, greenApiFailure], autoRollback: { @@ -526,7 +529,7 @@ declare const greenTargetGroup: elbv2.ITargetGroup; declare const listener: elbv2.IApplicationListener; declare const testListener: elbv2.IApplicationListener; -new codedeploy.EcsDeploymentGroup(stack, 'BlueGreenDG', { +new codedeploy.EcsDeploymentGroup(this, 'BlueGreenDG', { service, blueGreenDeploymentConfig: { blueTargetGroup, @@ -558,7 +561,13 @@ If the ContinueDeployment API is not called within the approval wait time period deployment and can automatically roll back the deployment. ```ts -new codedeploy.EcsDeploymentGroup(stack, 'BlueGreenDG', { +declare const service: ecs.FargateService; +declare const blueTargetGroup: elbv2.ITargetGroup; +declare const greenTargetGroup: elbv2.ITargetGroup; +declare const listener: elbv2.IApplicationListener; +declare const testListener: elbv2.IApplicationListener; + +new codedeploy.EcsDeploymentGroup(this, 'BlueGreenDG', { autoRollback: { // CodeDeploy will automatically roll back if the 8-hour approval period times out and the deployment stops stoppedDeployment: true, @@ -583,7 +592,18 @@ is complete in order to let the deployment "bake" a while. During this bake time CloudWatch alarms specified for the deployment group and will automatically roll back if those alarms go into a failed state. ```ts -new codedeploy.EcsDeploymentGroup(stack, 'BlueGreenDG', { +import { aws_cloudwatch as cloudwatch } from 'aws-cdk-lib'; + +declare const service: ecs.FargateService; +declare const blueTargetGroup: elbv2.ITargetGroup; +declare const greenTargetGroup: elbv2.ITargetGroup; +declare const listener: elbv2.IApplicationListener; +declare const blueUnhealthyHosts: cloudwatch.Alarm; +declare const greenUnhealthyHosts: cloudwatch.Alarm; +declare const blueApiFailure: cloudwatch.Alarm; +declare const greenApiFailure: cloudwatch.Alarm; + +new codedeploy.EcsDeploymentGroup(this, 'BlueGreenDG', { service, blueGreenDeploymentConfig: { blueTargetGroup, @@ -626,8 +646,8 @@ letting you specify precisely how fast an ECS service is deployed. ```ts new codedeploy.EcsDeploymentConfig(this, 'CustomConfig', { - trafficRoutingConfig: new codedeploy.TimeBasedCanaryTrafficRoutingConfig({ - interval: cdk.Duration.minutes(15), + trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({ + interval: Duration.minutes(15), percentage: 5, }), }); @@ -637,8 +657,8 @@ You can specify a custom name for your deployment config, but if you do you will ```ts const config = new codedeploy.EcsDeploymentConfig(this, 'CustomConfig', { - trafficRoutingConfig: new codedeploy.TimeBasedCanaryTrafficRoutingConfig({ - interval: cdk.Duration.minutes(15), + trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({ + interval: Duration.minutes(15), percentage: 5, }), deploymentConfigName: 'MyDeploymentConfig', @@ -661,8 +681,8 @@ const deploymentConfig = codedeploy.EcsDeploymentConfig.fromEcsDeploymentConfigN An experimental construct is available on the Construct Hub called [@cdklabs/cdk-ecs-codedeploy](https://constructs.dev/packages/@cdklabs/cdk-ecs-codedeploy) that manages ECS CodeDeploy deployments. -```ts -declare const deploymentGroup: codeDeploy.IEcsDeploymentGroup; +```ts fixture=constructhub +declare const deploymentGroup: codedeploy.IEcsDeploymentGroup; declare const taskDefinition: ecs.ITaskDefinition; new EcsDeployment({ @@ -677,7 +697,10 @@ new EcsDeployment({ The deployment will use the AutoRollbackConfig for the EcsDeploymentGroup unless it is overridden in the deployment: -```ts +```ts fixture=constructhub +declare const deploymentGroup: codedeploy.IEcsDeploymentGroup; +declare const taskDefinition: ecs.ITaskDefinition; + new EcsDeployment({ deploymentGroup, targetService: { @@ -695,7 +718,10 @@ new EcsDeployment({ By default, the CodeDeploy Deployment will timeout after 30 minutes. The timeout value can be overridden: -```ts +```ts fixture=constructhub +declare const deploymentGroup: codedeploy.IEcsDeploymentGroup; +declare const taskDefinition: ecs.ITaskDefinition; + new EcsDeployment({ deploymentGroup, targetService: { diff --git a/packages/aws-cdk-lib/aws-codepipeline/lib/pipeline.ts b/packages/aws-cdk-lib/aws-codepipeline/lib/pipeline.ts index c81189ce2ac53..37d05564ffd7f 100644 --- a/packages/aws-cdk-lib/aws-codepipeline/lib/pipeline.ts +++ b/packages/aws-cdk-lib/aws-codepipeline/lib/pipeline.ts @@ -293,7 +293,7 @@ abstract class PipelineBase extends Resource implements IPipeline { * * @example * // create a pipeline - * import * as codecommit from '@aws-cdk/aws-codecommit'; + * import * as codecommit from 'aws-cdk-lib/aws-codecommit'; * * const pipeline = new codepipeline.Pipeline(this, 'Pipeline'); * diff --git a/packages/aws-cdk-lib/aws-cognito/README.md b/packages/aws-cdk-lib/aws-cognito/README.md index e9680faa72a92..9ef2f023325d5 100644 --- a/packages/aws-cdk-lib/aws-cognito/README.md +++ b/packages/aws-cdk-lib/aws-cognito/README.md @@ -555,7 +555,7 @@ Using Google identity provider is possible to use clientSecretValue with SecretV ```ts const userpool = new cognito.UserPool(this, 'Pool'); -const secret = secretsManager.Secret.fromSecretAttributes(this, "CognitoClientSecret", { +const secret = secretsmanager.Secret.fromSecretAttributes(this, "CognitoClientSecret", { secretCompleteArn: "arn:aws:secretsmanager:xxx:xxx:secret:xxx-xxx" }).secretValue @@ -780,6 +780,8 @@ User Pool clients can generate a client ID as well as a client secret, to suppor To create a client with an autogenerated client secret, pass the `generateSecret: true` prop: ```ts +declare const importedPool: cognito.UserPool; + const userPoolClient = new cognito.UserPoolClient(this, 'UserPoolClient', { userPool: importedPool, generateSecret: true, diff --git a/packages/aws-cdk-lib/aws-config/README.md b/packages/aws-cdk-lib/aws-config/README.md index f9bd3b1555f1e..0ed4df7f9cda5 100644 --- a/packages/aws-cdk-lib/aws-config/README.md +++ b/packages/aws-cdk-lib/aws-config/README.md @@ -3,7 +3,7 @@ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) provides a detailed view of the configuration of AWS resources in your AWS account. This includes how the resources are related to one another and how they were configured in the -past so that you can see how the configurations and relationships change over time. +past so that you can see how the configurations and relationships change over time. This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. @@ -66,7 +66,7 @@ new config.AccessKeysRotated(this, 'AccessKeyRotated'); #### CloudFormation Stack drift detection Checks whether your CloudFormation stack's actual configuration differs, or has drifted, -from it's expected configuration. +from it's expected configuration. ```ts // compliant if stack's status is 'IN_SYNC' @@ -140,7 +140,7 @@ rule checkcompliance when } `; -new config.CustomPolicy(stack, "Custom", { +new config.CustomPolicy(this, "Custom", { policyText: samplePolicyText, enableDebugLog: true, ruleScope: config.RuleScope.fromResources([ @@ -173,7 +173,7 @@ new config.CustomRule(this, 'CustomRule', { ``` When the trigger for a rule occurs, the Lambda function is invoked by publishing an event. -See [example events for AWS Config Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules_example-events.html) +See [example events for AWS Config Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules_example-events.html) The AWS documentation has examples of Lambda functions for evaluations that are [triggered by configuration changes](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules_nodejs-sample.html#event-based-example-rule) and [triggered periodically](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules_nodejs-sample.html#periodic-example-rule) diff --git a/packages/aws-cdk-lib/aws-dynamodb/README.md b/packages/aws-cdk-lib/aws-dynamodb/README.md index 267a72409dcad..b8b8ed75e2e28 100644 --- a/packages/aws-cdk-lib/aws-dynamodb/README.md +++ b/packages/aws-cdk-lib/aws-dynamodb/README.md @@ -124,7 +124,7 @@ const globalTable = new dynamodb.Table(this, 'Table', { }); ``` -A maximum of 10 tables with replication can be added to a stack without a limit increase for +A maximum of 10 tables with replication can be added to a stack without a limit increase for [managed policies attached to an IAM role](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entities). This is because more than 10 managed policies will be attached to the DynamoDB service replication role - one policy per replication table. Consider splitting your tables across multiple stacks if your reach this limit. @@ -220,7 +220,7 @@ const metric = table.metricThrottledRequestsForOperations({ period: Duration.minutes(1), }); -new cloudwatch.Alarm(stack, 'Alarm', { +new cloudwatch.Alarm(this, 'Alarm', { metric: metric, evaluationPeriods: 1, threshold: 1, @@ -229,7 +229,7 @@ new cloudwatch.Alarm(stack, 'Alarm', { ## Deletion Protection for Tables -You can enable deletion protection for a table by setting the `deletionProtection` property to `true`. +You can enable deletion protection for a table by setting the `deletionProtection` property to `true`. When deletion protection is enabled for a table, it cannot be deleted by anyone. By default, deletion protection is disabled. ```ts diff --git a/packages/aws-cdk-lib/aws-ec2/README.md b/packages/aws-cdk-lib/aws-ec2/README.md index 42e22db39107a..99421ddf0d739 100644 --- a/packages/aws-cdk-lib/aws-ec2/README.md +++ b/packages/aws-cdk-lib/aws-ec2/README.md @@ -225,8 +225,8 @@ Use `IpAddresses.cidr` to define a Cidr range for your Vpc directly in code: ```ts import { IpAddresses } from 'aws-cdk-lib/aws-ec2'; -new ec2.Vpc(stack, 'TheVPC', { - ipAddresses: ec2.IpAddresses.cidr('10.0.1.0/20') +new ec2.Vpc(this, 'TheVPC', { + ipAddresses: IpAddresses.cidr('10.0.1.0/20') }); ``` @@ -246,8 +246,8 @@ import { IpAddresses } from 'aws-cdk-lib/aws-ec2'; declare const pool: ec2.CfnIPAMPool; -new ec2.Vpc(stack, 'TheVPC', { - ipAddresses: ec2.IpAddresses.awsIpamAllocation({ +new ec2.Vpc(this, 'TheVPC', { + ipAddresses: IpAddresses.awsIpamAllocation({ ipv4IpamPoolId: pool.ref, ipv4NetmaskLength: 18, defaultSubnetIpv4NetmaskLength: 24 @@ -300,7 +300,7 @@ subnet configuration could look like this: const vpc = new ec2.Vpc(this, 'TheVPC', { // 'IpAddresses' configures the IP range and size of the entire VPC. // The IP space will be divided based on configuration for the subnets. - ipAddresses: IpAddresses.cidr('10.0.0.0/21'), + ipAddresses: ec2.IpAddresses.cidr('10.0.0.0/21'), // 'maxAzs' configures the maximum number of availability zones to use. // If you want to specify the exact availability zones you want the VPC @@ -1029,29 +1029,19 @@ care of restarting your instance if it ever fails. declare const vpc: ec2.Vpc; declare const instanceType: ec2.InstanceType; -// Amazon Linux 1 -new ec2.Instance(this, 'Instance1', { - vpc, - instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux(), -}); - // Amazon Linux 2 new ec2.Instance(this, 'Instance2', { vpc, instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, - }), + machineImage: ec2.MachineImage.latestAmazonLinux2(), }); // Amazon Linux 2 with kernel 5.x new ec2.Instance(this, 'Instance3', { vpc, instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, - kernel: ec2.AmazonLinuxKernel.KERNEL5_X, + machineImage: new ec2.AmazonLinux2Image({ + kernel: ec2.AmazonLinux2Kernel.KERNEL_5_10, }), }); @@ -1059,22 +1049,116 @@ new ec2.Instance(this, 'Instance3', { new ec2.Instance(this, 'Instance4', { vpc, instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2022, - }), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), }); // Graviton 3 Processor new ec2.Instance(this, 'Instance5', { vpc, instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, + machineImage: ec2.MachineImage.latestAmazonLinux2022({ cpuType: ec2.AmazonLinuxCpuType.ARM_64, }), }); ``` +### Latest Amazon Linux Images + +Rather than specifying a specific AMI ID to use, it is possible to specify a SSM +Parameter that contains the AMI ID. AWS publishes a set of [public parameters](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters-ami.html) +that contain the latest Amazon Linux AMIs. To make it easier to query a +particular image parameter, the CDK provides a couple of constructs `AmazonLinux2ImageSsmParameter`, +`AmazonLinux2022ImageSsmParameter`, & `AmazonLinux2023SsmParameter`. For example +to use the latest `al2023` image: + +```ts +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + machineImage: ec2.MachineImage.latestAmazonLinux2023(), +}); +``` + +> **Warning** +> Since this retrieves the value from an SSM parameter at deployment time, the +> value will be resolved each time the stack is deployed. This means that if +> the parameter contains a different value on your next deployment, the instance +> will be replaced. + +It is also possible to perform the lookup once at synthesis time and then cache +the value in CDK context. This way the value will not change on future +deployments unless you manually refresh the context. + +```ts +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + machineImage: ec2.MachineImage.latestAmazonLinux2023({ + cachedInContext: true, // default is false + }), +}); + +// or +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + // context cache is turned on by default + machineImage: new ec2.AmazonLinux2023ImageSsmParameter(), +}); +``` + +#### Kernel Versions + +Each Amazon Linux AMI uses a specific kernel version. Most Amazon Linux +generations come with an AMI using the "default" kernel and then 1 or more +AMIs using a specific kernel version, which may or may not be different from the +default kernel version. + +For example, Amazon Linux 2 has two different AMIs available from the SSM +parameters. + +- `/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-ebs` + - This is the "default" kernel which uses `kernel-4.14` +- `/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-ebs` + +If a new Amazon Linux generation AMI is published with a new kernel version, +then a new SSM parameter will be created with the new version +(e.g. `/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.15-hvm-x86_64-ebs`), +but the "default" AMI may or may not be updated. + +If you would like to make sure you always have the latest kernel version, then +either specify the specific latest kernel version or opt-in to using the CDK +latest kernel version. + +```ts +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + // context cache is turned on by default + machineImage: new ec2.AmazonLinux2023ImageSsmParameter({ + kernel: ec2.AmazonLinux2023Kernel.KERNEL_6_1, + }), +}); +``` +_CDK managed latest_ + +```ts +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + // context cache is turned on by default + machineImage: new ec2.AmazonLinux2023ImageSsmParameter({ + kernel: ec2.AmazonLinux2023Kernel.CDK_LATEST, + }), +}); + +// or + +new ec2.Instance(this, 'LatestAl2023', { + instanceType: ec2.InstanceType.of(ec2.InstanceClass.C7G, ec2.InstanceSize.LARGE), + machineImage: ec2.MachineImage.latestAmazonLinux2023(), // always uses latest kernel version +}); +``` + +When using the CDK managed latest version, when a new kernel version is made +available the `LATEST` will be updated to point to the new kernel version. You +then would be required to update the newest CDK version for it to take effect. + ### Configuring Instances using CloudFormation Init (cfn-init) CloudFormation Init allows you to configure your instances by writing files to them, installing software @@ -1162,12 +1246,9 @@ declare const instanceType: ec2.InstanceType; new ec2.Instance(this, 'Instance', { vpc, instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux({ - // Amazon Linux 2 uses SystemD - generation: ec2.AmazonLinuxGeneration: AMAZON_LINUX_2, - }), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), - init: ec2.CloudFormationInit.fromElements([ + init: ec2.CloudFormationInit.fromElements( // Create a simple config file that runs a Python web server ec2.InitService.systemdConfigFile('simpleserver', { command: '/usr/bin/python3 -m http.server 8080', @@ -1179,7 +1260,7 @@ new ec2.Instance(this, 'Instance', { }), // Drop an example file to show the web server working ec2.InitFile.fromString('/var/www/html/index.html', 'Hello! It\'s working!'), - ]), + ), }); ``` @@ -1391,8 +1472,8 @@ You can specify the `throughput` of a GP3 volume from 125 (default) to 1000. ```ts new ec2.Volume(this, 'Volume', { availabilityZone: 'us-east-1a', - size: cdk.Size.gibibytes(125), - volumeType: EbsDeviceVolumeType.GP3, + size: Size.gibibytes(125), + volumeType: ec2.EbsDeviceVolumeType.GP3, throughput: 125, }); ``` @@ -1469,7 +1550,7 @@ vpc.addFlowLog('FlowLogS3', { // Only reject traffic and interval every minute. vpc.addFlowLog('FlowLogCloudWatch', { trafficType: ec2.FlowLogTrafficType.REJECT, - maxAggregationInterval: FlowLogMaxAggregationInterval.ONE_MINUTE, + maxAggregationInterval: ec2.FlowLogMaxAggregationInterval.ONE_MINUTE, }); ``` @@ -1597,7 +1678,7 @@ When creating a Windows UserData you can use the `persist` option to set whether `true` [to the user data script](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html#user-data-scripts). it can be used as follows: ```ts -const windowsUserData = UserData.forWindows({ persist: true }); +const windowsUserData = ec2.UserData.forWindows({ persist: true }); ``` For a Linux instance, this can be accomplished by using a Multipart user data to configure cloud-config as detailed @@ -1701,9 +1782,7 @@ The following demonstrates how to create a launch template with an Amazon Machin declare const vpc: ec2.Vpc; const template = new ec2.LaunchTemplate(this, 'LaunchTemplate', { - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, - }), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), securityGroup: new ec2.SecurityGroup(this, 'LaunchTemplateSG', { vpc: vpc, }), @@ -1733,7 +1812,7 @@ declare const instanceType: ec2.InstanceType; new ec2.Instance(this, 'Instance1', { vpc, instanceType, - machineImage: ec2.MachineImage.latestAmazonLinux(), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), detailedMonitoring: true, }); ``` @@ -1764,9 +1843,7 @@ new ec2.Instance(this, 'Instance1', { instanceType, // Amazon Linux 2 comes with SSM Agent by default - machineImage: ec2.MachineImage.latestAmazonLinux({ - generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, - }), + machineImage: ec2.MachineImage.latestAmazonLinux2022(), // Turn on SSM ssmSessionPermissions: true, diff --git a/packages/aws-cdk-lib/aws-ec2/lib/index.ts b/packages/aws-cdk-lib/aws-ec2/lib/index.ts index 952b1a3f2a1c4..54c43091cc8cc 100644 --- a/packages/aws-cdk-lib/aws-ec2/lib/index.ts +++ b/packages/aws-cdk-lib/aws-ec2/lib/index.ts @@ -28,6 +28,7 @@ export * from './client-vpn-endpoint'; export * from './client-vpn-authorization-rule'; export * from './client-vpn-route'; export * from './ip-addresses'; +export * from './machine-image'; export * from './placement-group'; // AWS::EC2 CloudFormation Resources: diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2022.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2022.ts new file mode 100644 index 0000000000000..06f40de63bae0 --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2022.ts @@ -0,0 +1,91 @@ +import { AmazonLinuxCpuType, AmazonLinuxEdition, AmazonLinuxGeneration, AmazonLinuxImageSsmParameterCommonOptions, AmazonLinuxImageSsmParameterBase } from './common'; + +/** + * Amazon Linux 2022 kernel versions + */ +export class AmazonLinux2022Kernel { + /** + * The latest kernel version currently available in a published AMI. + * + * When a new kernel version is available for an al2022 AMI this will be + * updated to contain the latest kernel version and will cause your instances + * to be replaced. Do not store stateful information on the instance if you are + * using this version. + */ + public static readonly CDK_LATEST = new AmazonLinux2022Kernel('5.15'); + + /** + * The default kernel version for Amazon Linux 2022 is 5.15 and + * the SSM parameter does not include it in the name + * (i.e. /aws/service/ami-amazon-linux-latest/amzn2022-ami-kernel-default-x86_64) + */ + public static readonly DEFAULT = new AmazonLinux2022Kernel('default'); + + /** + * Kernel version 5.15 + */ + public static readonly KERNEL_5_15 = new AmazonLinux2022Kernel('5.15'); + + constructor(private readonly version: string) { } + + /** + * Generate a string representation of the kernel + */ + public toString(): string { + return `kernel-${this.version}`; + } +} + +/** + * Properties specific to al2022 images + */ +export interface AmazonLinux2022ImageSsmParameterProps extends AmazonLinuxImageSsmParameterCommonOptions { + /** + * What kernel version of Amazon Linux to use + * + * @default AmazonLinux2022Kernel.DEFAULT + */ + readonly kernel?: AmazonLinux2022Kernel; +} + +/** + * A SSM Parameter that contains the AMI ID for Amazon Linux 2023 + */ +export class AmazonLinux2022ImageSsmParameter extends AmazonLinuxImageSsmParameterBase { + /** + * Generates a SSM Parameter name for a specific amazon linux 2022 AMI + * + * Example values: + * + * "/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-5.15-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-default-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-5.15-arm64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-5.15-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-5.15-arm64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-default-arm64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-default-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-default-arm64", + */ + public static ssmParameterName(props: AmazonLinux2022ImageSsmParameterProps): string { + const edition = (props && props.edition) || AmazonLinuxEdition.STANDARD; + + const parts: Array = [ + AmazonLinuxGeneration.AMAZON_LINUX_2022, + 'ami', + edition !== AmazonLinuxEdition.STANDARD ? edition : undefined, + props.kernel?.toString(), + props.cpuType ?? AmazonLinuxCpuType.X86_64, + ].filter(x => !!x); + + return '/aws/service/ami-amazon-linux-latest/' + parts.join('-'); + } + + constructor(props: AmazonLinux2022ImageSsmParameterProps) { + super({ + parameterName: AmazonLinux2022ImageSsmParameter.ssmParameterName(props), + cachedInContext: props.cachedInContext, + userData: props.userData, + }); + } + +} diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2023.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2023.ts new file mode 100644 index 0000000000000..3ea5863201ef1 --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux-2023.ts @@ -0,0 +1,90 @@ +import { AmazonLinuxCpuType, AmazonLinuxEdition, AmazonLinuxGeneration, AmazonLinuxImageSsmParameterCommonOptions, AmazonLinuxImageSsmParameterBase } from './common'; + +/** + * Amazon Linux 2023 kernel versions + */ +export class AmazonLinux2023Kernel { + /** + * The latest kernel version currently available in a published AMI. + * + * When a new kernel version is available for an al2023 AMI this will be + * updated to contain the latest kernel version and will cause your instances + * to be replaced. Do not store stateful information on the instance if you are + * using this version. + */ + public static readonly CDK_LATEST = new AmazonLinux2023Kernel('6.1'); + + /** + * The default kernel version for Amazon Linux 2023 is 6.1 and + * the SSM parameter does not include it in the name + * (i.e. /aws/service/ami-amazon-linux-latest/amzn2023-ami-kernel-default-x86_64) + */ + public static readonly DEFAULT = new AmazonLinux2023Kernel('default'); + + /** + * Kernel version 6.1 + */ + public static readonly KERNEL_6_1 = new AmazonLinux2023Kernel('6.1'); + constructor(private readonly version: string) { } + + /** + * Generate a string representation of the kernel + */ + public toString(): string { + return `kernel-${this.version}`; + } +} + +/** + * Properties specific to al2023 images + */ +export interface AmazonLinux2023ImageSsmParameterProps extends AmazonLinuxImageSsmParameterCommonOptions { + /** + * What kernel version of Amazon Linux to use + * + * @default AmazonLinux2023Kernel.DEFAULT + */ + readonly kernel?: AmazonLinux2023Kernel; +} + + +/** + * A SSM Parameter that contains the AMI ID for Amazon Linux 2023 + */ +export class AmazonLinux2023ImageSsmParameter extends AmazonLinuxImageSsmParameterBase { + /** + * Generates a SSM Parameter name for a specific amazon linux 2022 AMI + * + * Example values: + * + * "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-arm64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-6.1-arm64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-6.1-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-default-arm64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-default-x86_64", + * "/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-arm64", + */ + public static ssmParameterName(props: AmazonLinux2023ImageSsmParameterProps): string { + const edition = (props && props.edition) || AmazonLinuxEdition.STANDARD; + + const parts: Array = [ + AmazonLinuxGeneration.AMAZON_LINUX_2023, + 'ami', + edition !== AmazonLinuxEdition.STANDARD ? edition : undefined, + (props.kernel ?? AmazonLinux2023Kernel.DEFAULT)?.toString(), + props.cpuType ?? AmazonLinuxCpuType.X86_64, + ].filter(x => !!x); + + return '/aws/service/ami-amazon-linux-latest/' + parts.join('-'); + } + + constructor(props: AmazonLinux2023ImageSsmParameterProps) { + super({ + parameterName: AmazonLinux2023ImageSsmParameter.ssmParameterName(props), + cachedInContext: props.cachedInContext, + userData: props.userData, + }); + } +} diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux2.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux2.ts new file mode 100644 index 0000000000000..a037a61a80851 --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/amazon-linux2.ts @@ -0,0 +1,109 @@ +import { AmazonLinuxCpuType, AmazonLinuxEdition, AmazonLinuxGeneration, AmazonLinuxImageSsmParameterBase, AmazonLinuxImageSsmParameterCommonOptions, AmazonLinuxStorage, AmazonLinuxVirt } from './common'; + +/** + * Amazon Linux 2 kernel versions + */ +export class AmazonLinux2Kernel { + /** + * The latest kernel version currently available in a published AMI. + * + * When a new kernel version is available for an amzn2 AMI this will be + * updated to contain the latest kernel version and will cause your instances + * to be replaced. Do not store stateful information on the instance if you are + * using this version. + */ + public static readonly CDK_LATEST = new AmazonLinux2Kernel('5.10'); + + /** + * The default kernel version for Amazon Linux 2 is 4.14 and + * Linux 4.14.311-233.529.amzn2.x86_64 + * the SSM parameter does not include it in the name + * (i.e. /aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2) + */ + public static readonly DEFAULT = new AmazonLinux2Kernel('default'); + + /** + * Kernel version 5.10 + */ + public static readonly KERNEL_5_10 = new AmazonLinux2Kernel('5.10'); + + constructor(private readonly version: string) { } + + /** + * Generate a string representation of the kernel + */ + public toString(): string | undefined { + return this.version === 'default' + ? undefined + : `kernel-${this.version}`; + } +} + +/** + * Properties specific to amzn2 images + */ +export interface AmazonLinux2ImageSsmParameterProps extends AmazonLinuxImageSsmParameterCommonOptions { + /** + * What storage backed image to use + * + * @default GeneralPurpose + */ + readonly storage?: AmazonLinuxStorage; + + /** + * What kernel version of Amazon Linux to use + * + * @default - + */ + readonly kernel?: AmazonLinux2Kernel; + + /** + * Virtualization type + * + * @default HVM + */ + readonly virtualization?: AmazonLinuxVirt; +} + +/** + * A SSM Parameter that contains the AMI ID for Amazon Linux 2 + */ +export class AmazonLinux2ImageSsmParameter extends AmazonLinuxImageSsmParameterBase { + /** + * Generates a SSM Parameter name for a specific amazon linux 2 AMI + * + * Example values: + * + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-ebs", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-ebs", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-arm64-gp2", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-minimal-hvm-arm64-ebs", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-arm64-gp2", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-gp2", + * "/aws/service/ami-amazon-linux-latest/amzn2-ami-minimal-hvm-x86_64-ebs" + */ + public static ssmParameterName(props: AmazonLinux2ImageSsmParameterProps): string { + const edition = (props && props.edition) || AmazonLinuxEdition.STANDARD; + + const parts: Array = [ + AmazonLinuxGeneration.AMAZON_LINUX_2, + 'ami', + edition !== AmazonLinuxEdition.STANDARD ? edition : undefined, + props.kernel?.toString(), + props.virtualization ?? AmazonLinuxVirt.HVM, + props.cpuType ?? AmazonLinuxCpuType.X86_64, + props.storage ?? AmazonLinuxStorage.GENERAL_PURPOSE, + ].filter(x => !!x); + + return '/aws/service/ami-amazon-linux-latest/' + parts.join('-'); + } + + constructor(props: AmazonLinux2ImageSsmParameterProps) { + super({ + parameterName: AmazonLinux2ImageSsmParameter.ssmParameterName(props), + cachedInContext: props.cachedInContext, + userData: props.userData, + }); + } +} diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/common.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/common.ts new file mode 100644 index 0000000000000..a598c2c3a6d5b --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/common.ts @@ -0,0 +1,218 @@ +import { Construct } from 'constructs'; +import { lookupImage } from './utils'; +import { UserData } from '../user-data'; + +/** + * Common options across all generations. + */ +export interface AmazonLinuxImageSsmParameterCommonOptions extends AmazonLinuxImageSsmParameterBaseOptions { + /** + * What edition of Amazon Linux to use + * + * @default AmazonLinuxEdition.Standard + */ + readonly edition?: AmazonLinuxEdition; + + /** + * CPU Type + * + * @default AmazonLinuxCpuType.X86_64 + */ + readonly cpuType?: AmazonLinuxCpuType; +} + +/** + * Base options for amazon linux ssm parameters + */ +export interface AmazonLinuxImageSsmParameterBaseOptions { + /** + * Whether the AMI ID is cached to be stable between deployments + * + * By default, the newest image is used on each deployment. This will cause + * instances to be replaced whenever a new version is released, and may cause + * downtime if there aren't enough running instances in the AutoScalingGroup + * to reschedule the tasks on. + * + * If set to true, the AMI ID will be cached in `cdk.context.json` and the + * same value will be used on future runs. Your instances will not be replaced + * but your AMI version will grow old over time. To refresh the AMI lookup, + * you will have to evict the value from the cache using the `cdk context` + * command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for + * more information. + * + * Can not be set to `true` in environment-agnostic stacks. + * + * @default false + */ + readonly cachedInContext?: boolean; + + /** + * Initial user data + * + * @default - Empty UserData for Linux machines + */ + readonly userData?: UserData; +} + +/** + * Base properties for an Amazon Linux SSM Parameter + */ +export interface AmazonLinuxImageSsmParameterBaseProps extends AmazonLinuxImageSsmParameterBaseOptions { + /** + * The name of the SSM parameter that contains the AMI value + */ + readonly parameterName: string; +} + +export abstract class AmazonLinuxImageSsmParameterBase implements IMachineImage { + private readonly cachedInContext: boolean; + constructor(private readonly props: AmazonLinuxImageSsmParameterBaseProps) { + this.cachedInContext = this.props.cachedInContext ?? true; + } + + getImage(scope: Construct): MachineImageConfig { + const imageId = lookupImage(scope, this.cachedInContext, this.props.parameterName); + + const osType = OperatingSystemType.LINUX; + return { + imageId, + osType, + userData: this.props.userData ?? UserData.forLinux(), + }; + } + +} + +/** + * What generation of Amazon Linux to use + */ +export enum AmazonLinuxGeneration { + /** + * Amazon Linux + */ + AMAZON_LINUX = 'amzn', + + /** + * Amazon Linux 2 + */ + AMAZON_LINUX_2 = 'amzn2', + + /** + * Amazon Linux 2022 + */ + AMAZON_LINUX_2022 = 'al2022', + + /** + * Amazon Linux 2023 + */ + AMAZON_LINUX_2023 = 'al2023', +} + +/** + * Interface for classes that can select an appropriate machine image to use + */ +export interface IMachineImage { + /** + * Return the image to use in the given context + */ + getImage(scope: Construct): MachineImageConfig; +} + +/** + * Configuration for a machine image + */ +export interface MachineImageConfig { + /** + * The AMI ID of the image to use + */ + readonly imageId: string; + + /** + * Operating system type for this image + */ + readonly osType: OperatingSystemType; + + /** + * Initial UserData for this image + */ + readonly userData: UserData; +} + +/** + * The OS type of a particular image + */ +export enum OperatingSystemType { + LINUX, + WINDOWS, + /** + * Used when the type of the operating system is not known + * (for example, for imported Auto-Scaling Groups). + */ + UNKNOWN, +} + +/** + * CPU type + */ +export enum AmazonLinuxCpuType { + /** + * arm64 CPU type + */ + ARM_64 = 'arm64', + + /** + * x86_64 CPU type + */ + X86_64 = 'x86_64', +} + +/** + * Amazon Linux edition + */ +export enum AmazonLinuxEdition { + /** + * Standard edition + */ + STANDARD = 'standard', + + /** + * Minimal edition + */ + MINIMAL = 'minimal', +} + +/** + * Virtualization type for Amazon Linux + */ +export enum AmazonLinuxVirt { + /** + * HVM virtualization (recommended) + */ + HVM = 'hvm', + + /** + * PV virtualization + */ + PV = 'pv', +} + +/** + * Available storage options for Amazon Linux images + * Only applies to Amazon Linux & Amazon Linux 2 + */ +export enum AmazonLinuxStorage { + /** + * EBS-backed storage + */ + EBS = 'ebs', + + /** + * S3-backed storage + */ + S3 = 's3', + + /** + * General Purpose-based storage (recommended) + */ + GENERAL_PURPOSE = 'gp2', +} diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/index.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/index.ts new file mode 100644 index 0000000000000..ad5829128310e --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/index.ts @@ -0,0 +1,5 @@ +export * from './common'; +export * from './amazon-linux2'; +export * from './machine-image'; +export * from './amazon-linux-2022'; +export * from './amazon-linux-2023'; diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/machine-image.ts similarity index 88% rename from packages/aws-cdk-lib/aws-ec2/lib/machine-image.ts rename to packages/aws-cdk-lib/aws-ec2/lib/machine-image/machine-image.ts index 12c41894e5936..c5064c4dbd10b 100644 --- a/packages/aws-cdk-lib/aws-ec2/lib/machine-image.ts +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/machine-image.ts @@ -1,20 +1,16 @@ -import * as ssm from '../../aws-ssm'; -import * as cxschema from '../../cloud-assembly-schema'; -import { ContextProvider, CfnMapping, Aws, Stack, Token } from '../../core'; -import * as cxapi from '../../cx-api'; import { Construct } from 'constructs'; -import { UserData } from './user-data'; -import { WindowsVersion } from './windows-versions'; +import { AmazonLinux2022ImageSsmParameter, AmazonLinux2022ImageSsmParameterProps, AmazonLinux2022Kernel } from './amazon-linux-2022'; +import { AmazonLinux2023ImageSsmParameter, AmazonLinux2023ImageSsmParameterProps, AmazonLinux2023Kernel } from './amazon-linux-2023'; +import { AmazonLinux2ImageSsmParameter, AmazonLinux2ImageSsmParameterProps, AmazonLinux2Kernel } from './amazon-linux2'; +import { AmazonLinuxCpuType, AmazonLinuxEdition, AmazonLinuxGeneration, AmazonLinuxStorage, AmazonLinuxVirt, IMachineImage, MachineImageConfig, OperatingSystemType } from './common'; +import { lookupImage } from './utils'; +import * as ssm from '../../../aws-ssm'; +import * as cxschema from '../../../cloud-assembly-schema'; +import { ContextProvider, CfnMapping, Aws, Stack, Token } from '../../../core'; +import * as cxapi from '../../../cx-api'; +import { UserData } from '../user-data'; +import { WindowsVersion } from '../windows-versions'; -/** - * Interface for classes that can select an appropriate machine image to use - */ -export interface IMachineImage { - /** - * Return the image to use in the given context - */ - getImage(scope: Construct): MachineImageConfig; -} /** * Factory functions for standard Amazon Machine Image objects. @@ -32,6 +28,54 @@ export abstract class MachineImage { return new WindowsImage(version, props); } + /** + * An Amazon Linux 2 image that is automatically kept up-to-date + * + * This Machine Image automatically updates to the latest version on every + * deployment. Be aware this will cause your instances to be replaced when a + * new version of the image becomes available. Do not store stateful information + * on the instance if you are using this image. + */ + public static latestAmazonLinux2(props?: AmazonLinux2ImageSsmParameterProps): IMachineImage { + return new AmazonLinux2ImageSsmParameter({ + cachedInContext: false, + ...props, + kernel: AmazonLinux2Kernel.CDK_LATEST, + }); + } + + /** + * An Amazon Linux 2022 image that is automatically kept up-to-date + * + * This Machine Image automatically updates to the latest version on every + * deployment. Be aware this will cause your instances to be replaced when a + * new version of the image becomes available. Do not store stateful information + * on the instance if you are using this image. + */ + public static latestAmazonLinux2022(props?: AmazonLinux2022ImageSsmParameterProps): IMachineImage { + return new AmazonLinux2022ImageSsmParameter({ + cachedInContext: false, + ...props, + kernel: AmazonLinux2022Kernel.CDK_LATEST, + }); + } + + /** + * An Amazon Linux 2023 image that is automatically kept up-to-date + * + * This Machine Image automatically updates to the latest version on every + * deployment. Be aware this will cause your instances to be replaced when a + * new version of the image becomes available. Do not store stateful information + * on the instance if you are using this image. + */ + public static latestAmazonLinux2023(props?: AmazonLinux2023ImageSsmParameterProps): IMachineImage { + return new AmazonLinux2023ImageSsmParameter({ + cachedInContext: false, + ...props, + kernel: AmazonLinux2023Kernel.CDK_LATEST, + }); + } + /** * An Amazon Linux image that is automatically kept up-to-date * @@ -53,6 +97,7 @@ export abstract class MachineImage { * generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2, * }) * ``` + * @deprecated use MachineImage.latestAmazonLinux2 instead */ public static latestAmazonLinux(props?: AmazonLinuxImageProps): IMachineImage { return new AmazonLinuxImage(props); @@ -131,26 +176,6 @@ export abstract class MachineImage { } } -/** - * Configuration for a machine image - */ -export interface MachineImageConfig { - /** - * The AMI ID of the image to use - */ - readonly imageId: string; - - /** - * Operating system type for this image - */ - readonly osType: OperatingSystemType; - - /** - * Initial UserData for this image - */ - readonly userData: UserData; -} - /** * Select the image based on a given SSM parameter * @@ -304,20 +329,6 @@ export class WindowsImage extends GenericSSMParameterImage { } } -/** - * CPU type - */ -export enum AmazonLinuxCpuType { - /** - * arm64 CPU type - */ - ARM_64 = 'arm64', - - /** - * x86_64 CPU type - */ - X86_64 = 'x86_64', -} /** * Amazon Linux image properties @@ -344,13 +355,6 @@ export interface AmazonLinuxImageProps { */ readonly kernel?: AmazonLinuxKernel; - /** - * Virtualization type - * - * @default HVM - */ - readonly virtualization?: AmazonLinuxVirt; - /** * What storage backed image to use * @@ -372,6 +376,13 @@ export interface AmazonLinuxImageProps { */ readonly cpuType?: AmazonLinuxCpuType; + /** + * Virtualization type + * + * @default HVM + */ + readonly virtualization?: AmazonLinuxVirt; + /** * Whether the AMI ID is cached to be stable between deployments * @@ -465,25 +476,6 @@ export class AmazonLinuxImage extends GenericSSMParameterImage { } } -/** - * What generation of Amazon Linux to use - */ -export enum AmazonLinuxGeneration { - /** - * Amazon Linux - */ - AMAZON_LINUX = 'amzn', - - /** - * Amazon Linux 2 - */ - AMAZON_LINUX_2 = 'amzn2', - - /** - * Amazon Linux 2022 - */ - AMAZON_LINUX_2022 = 'al2022', -} /** * Amazon Linux Kernel @@ -495,53 +487,6 @@ export enum AmazonLinuxKernel { KERNEL5_X = 'kernel-5.10', } -/** - * Amazon Linux edition - */ -export enum AmazonLinuxEdition { - /** - * Standard edition - */ - STANDARD = 'standard', - - /** - * Minimal edition - */ - MINIMAL = 'minimal', -} - -/** - * Virtualization type for Amazon Linux - */ -export enum AmazonLinuxVirt { - /** - * HVM virtualization (recommended) - */ - HVM = 'hvm', - - /** - * PV virtualization - */ - PV = 'pv', -} - -export enum AmazonLinuxStorage { - /** - * EBS-backed storage - */ - EBS = 'ebs', - - /** - * S3-backed storage - */ - S3 = 's3', - - /** - * General Purpose-based storage (recommended) - */ - GENERAL_PURPOSE = 'gp2', -} - /** * Configuration options for GenericLinuxImage */ @@ -641,19 +586,6 @@ export class GenericWindowsImage implements IMachineImage { } } -/** - * The OS type of a particular image - */ -export enum OperatingSystemType { - LINUX, - WINDOWS, - /** - * Used when the type of the operating system is not known - * (for example, for imported Auto-Scaling Groups). - */ - UNKNOWN, -} - /** * A machine image whose AMI ID will be searched using DescribeImages. * @@ -743,8 +675,3 @@ export interface LookupMachineImageProps { readonly userData?: UserData; } -function lookupImage(scope: Construct, cachedInContext: boolean | undefined, parameterName: string) { - return cachedInContext - ? ssm.StringParameter.valueFromLookup(scope, parameterName) - : ssm.StringParameter.valueForTypedStringParameterV2(scope, parameterName, ssm.ParameterValueType.AWS_EC2_IMAGE_ID); -} diff --git a/packages/aws-cdk-lib/aws-ec2/lib/machine-image/utils.ts b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/utils.ts new file mode 100644 index 0000000000000..a2da997c80e63 --- /dev/null +++ b/packages/aws-cdk-lib/aws-ec2/lib/machine-image/utils.ts @@ -0,0 +1,9 @@ +import { Construct } from 'constructs'; +import * as ssm from '../../../aws-ssm'; + +export function lookupImage(scope: Construct, cachedInContext: boolean | undefined, parameterName: string) { + return cachedInContext + ? ssm.StringParameter.valueFromLookup(scope, parameterName) + : ssm.StringParameter.valueForTypedStringParameterV2(scope, parameterName, ssm.ParameterValueType.AWS_EC2_IMAGE_ID); +} + diff --git a/packages/aws-cdk-lib/aws-ec2/lib/vpc.ts b/packages/aws-cdk-lib/aws-ec2/lib/vpc.ts index 4685dcf4ecf62..f50eb2975f026 100644 --- a/packages/aws-cdk-lib/aws-ec2/lib/vpc.ts +++ b/packages/aws-cdk-lib/aws-ec2/lib/vpc.ts @@ -1157,7 +1157,7 @@ export interface SubnetConfiguration { * * ```ts * const vpc = new ec2.Vpc(this, 'TheVPC', { - * ipAddresses: IpAddresses.cidr('10.0.0.0/16'), + * ipAddresses: ec2.IpAddresses.cidr('10.0.0.0/16'), * }) * * // Iterate the private subnets diff --git a/packages/aws-cdk-lib/aws-ec2/test/machine-image.test.ts b/packages/aws-cdk-lib/aws-ec2/test/machine-image.test.ts index f4f4fcedf8271..3375f1736f9be 100644 --- a/packages/aws-cdk-lib/aws-ec2/test/machine-image.test.ts +++ b/packages/aws-cdk-lib/aws-ec2/test/machine-image.test.ts @@ -269,6 +269,115 @@ test('cached lookups of Amazon Linux 2022 with kernel 5.x', () => { ]); }); +describe('latest amazon linux', () => { + test('latestAmazonLinux2', () => { + // WHEN + ec2.MachineImage.latestAmazonLinux2().getImage(stack); + + // THEN + Template.fromStack(stack).hasParameter('*', { + Type: 'AWS::SSM::Parameter::Value', + Default: '/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-5.10-hvm-x86_64-gp2', + }); + }); + + test('AmazonLinux2ImageSsmParameter', () => { + // WHEN + const ami = new ec2.AmazonLinux2ImageSsmParameter({ + cpuType: ec2.AmazonLinuxCpuType.ARM_64, + edition: ec2.AmazonLinuxEdition.MINIMAL, + virtualization: ec2.AmazonLinuxVirt.PV, + storage: ec2.AmazonLinuxStorage.EBS, + kernel: ec2.AmazonLinux2Kernel.DEFAULT, + }).getImage(stack).imageId; + + // THEN + expect(ami).toEqual('dummy-value-for-/aws/service/ami-amazon-linux-latest/amzn2-ami-minimal-pv-arm64-ebs'); + expect(app.synth().manifest.missing).toEqual([ + { + key: 'ssm:account=1234:parameterName=/aws/service/ami-amazon-linux-latest/amzn2-ami-minimal-pv-arm64-ebs:region=testregion', + props: { + account: '1234', + lookupRoleArn: 'arn:${AWS::Partition}:iam::1234:role/cdk-hnb659fds-lookup-role-1234-testregion', + region: 'testregion', + parameterName: '/aws/service/ami-amazon-linux-latest/amzn2-ami-minimal-pv-arm64-ebs', + }, + provider: 'ssm', + }, + ]); + }); + + test('latestAmazonLinux2022', () => { + // WHEN + ec2.MachineImage.latestAmazonLinux2022().getImage(stack); + + // THEN + Template.fromStack(stack).hasParameter('*', { + Type: 'AWS::SSM::Parameter::Value', + Default: '/aws/service/ami-amazon-linux-latest/al2022-ami-kernel-5.15-x86_64', + }); + }); + + test('AmazonLinux2022ImageSsmParameter', () => { + // WHEN + const ami = new ec2.AmazonLinux2022ImageSsmParameter({ + cpuType: ec2.AmazonLinuxCpuType.ARM_64, + edition: ec2.AmazonLinuxEdition.MINIMAL, + kernel: ec2.AmazonLinux2022Kernel.DEFAULT, + }).getImage(stack).imageId; + + // THEN + expect(ami).toEqual('dummy-value-for-/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-default-arm64'); + expect(app.synth().manifest.missing).toEqual([ + { + key: 'ssm:account=1234:parameterName=/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-default-arm64:region=testregion', + props: { + account: '1234', + lookupRoleArn: 'arn:${AWS::Partition}:iam::1234:role/cdk-hnb659fds-lookup-role-1234-testregion', + region: 'testregion', + parameterName: '/aws/service/ami-amazon-linux-latest/al2022-ami-minimal-kernel-default-arm64', + }, + provider: 'ssm', + }, + ]); + }); + + test('latestAmazonLinux2023', () => { + // WHEN + ec2.MachineImage.latestAmazonLinux2023().getImage(stack); + + // THEN + Template.fromStack(stack).hasParameter('*', { + Type: 'AWS::SSM::Parameter::Value', + Default: '/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-x86_64', + }); + }); + + test('AmazonLinux2023ImageSsmParameter', () => { + // WHEN + const ami = new ec2.AmazonLinux2023ImageSsmParameter({ + cpuType: ec2.AmazonLinuxCpuType.ARM_64, + edition: ec2.AmazonLinuxEdition.MINIMAL, + kernel: ec2.AmazonLinux2023Kernel.DEFAULT, + }).getImage(stack).imageId; + + // THEN + expect(ami).toEqual('dummy-value-for-/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-default-arm64'); + expect(app.synth().manifest.missing).toEqual([ + { + key: 'ssm:account=1234:parameterName=/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-default-arm64:region=testregion', + props: { + account: '1234', + lookupRoleArn: 'arn:${AWS::Partition}:iam::1234:role/cdk-hnb659fds-lookup-role-1234-testregion', + region: 'testregion', + parameterName: '/aws/service/ami-amazon-linux-latest/al2023-ami-minimal-kernel-default-arm64', + }, + provider: 'ssm', + }, + ]); + }); +}); + function isWindowsUserData(ud: ec2.UserData) { return ud.render().indexOf('powershell') > -1; } diff --git a/packages/aws-cdk-lib/aws-ecr-assets/lib/image-asset.ts b/packages/aws-cdk-lib/aws-ecr-assets/lib/image-asset.ts index bc2c78ff7fc2c..dbb5e8887b7af 100644 --- a/packages/aws-cdk-lib/aws-ecr-assets/lib/image-asset.ts +++ b/packages/aws-cdk-lib/aws-ecr-assets/lib/image-asset.ts @@ -165,7 +165,13 @@ export interface DockerCacheOption { * Refer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. * @default {} No options provided * - * @example { ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, mode: "max" } + * @example + * declare const branch: string; + * + * const params = { + * ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, + * mode: "max", + * }; */ readonly params?: { [key: string]: string }; } @@ -209,10 +215,11 @@ export interface DockerImageAssetOptions extends FingerprintOptions, FileFingerp * @default - no build secrets * * @example + * import { DockerBuildSecret } from 'aws-cdk-lib'; * - * { + * const buildSecrets = { * 'MY_SECRET': DockerBuildSecret.fromSrc('file.txt') - * } + * }; */ readonly buildSecrets?: { [key: string]: string } diff --git a/packages/aws-cdk-lib/aws-ecr/README.md b/packages/aws-cdk-lib/aws-ecr/README.md index fa26ef6370f0f..345688f2aea5d 100644 --- a/packages/aws-cdk-lib/aws-ecr/README.md +++ b/packages/aws-cdk-lib/aws-ecr/README.md @@ -73,7 +73,7 @@ new ecr.Repository(this, 'Repo', { imageTagMutability: ecr.TagMutability.IMMUTAB By default, Amazon ECR uses server-side encryption with Amazon S3-managed encryption keys which encrypts your data at rest using an AES-256 encryption algorithm. For more control over the encryption for your Amazon ECR repositories, you can use server-side encryption with KMS keys stored in AWS Key Management Service (AWS KMS). Read more about this feature in the [ECR Developer Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/encryption-at-rest.html). -When you use AWS KMS to encrypt your data, you can either use the default AWS managed key, which is managed by Amazon ECR, by specifying `RepositoryEncryption.KMS` in the `encryption` property. Or specify your own customer managed KMS key, by specifying the `encryptionKey` property. +When you use AWS KMS to encrypt your data, you can either use the default AWS managed key, which is managed by Amazon ECR, by specifying `RepositoryEncryption.KMS` in the `encryption` property. Or specify your own customer managed KMS key, by specifying the `encryptionKey` property. When `encryptionKey` is set, the `encryption` property must be `KMS` or empty. @@ -121,7 +121,7 @@ To override this and force all images to get deleted during repository deletion, enable the`autoDeleteImages` option. ```ts -const repository = new Repository(this, 'MyTempRepo', { +const repository = new ecr.Repository(this, 'MyTempRepo', { removalPolicy: RemovalPolicy.DESTROY, autoDeleteImages: true, }); diff --git a/packages/aws-cdk-lib/aws-ecs-patterns/README.md b/packages/aws-cdk-lib/aws-ecs-patterns/README.md index b052fea3eec4c..cdad630491713 100644 --- a/packages/aws-cdk-lib/aws-ecs-patterns/README.md +++ b/packages/aws-cdk-lib/aws-ecs-patterns/README.md @@ -887,6 +887,7 @@ stack.node.setContext(cxapi.ECS_REMOVE_DEFAULT_DESIRED_COUNT, true); The following is an example of an application with the REMOVE_DEFAULT_DESIRED_COUNT feature flag enabled: ```ts nofixture +import { Construct } from 'constructs'; import { App, Stack } from 'aws-cdk-lib'; import * as ec2 from 'aws-cdk-lib/aws-ec2'; import * as ecs from 'aws-cdk-lib/aws-ecs'; @@ -894,20 +895,23 @@ import * as ecsPatterns from 'aws-cdk-lib/aws-ecs-patterns'; import * as cxapi from 'aws-cdk-lib/cx-api'; import * as path from 'path'; -const app = new App(); +class MyStack extends Stack { + constructor(scope: Construct, id: string) { + super(scope, id); -const stack = new Stack(app, 'aws-ecs-patterns-queue'); -stack.node.setContext(cxapi.ECS_REMOVE_DEFAULT_DESIRED_COUNT, true); + this.node.setContext(cxapi.ECS_REMOVE_DEFAULT_DESIRED_COUNT, true); -const vpc = new ec2.Vpc(stack, 'VPC', { - maxAzs: 2, -}); + const vpc = new ec2.Vpc(this, 'VPC', { + maxAzs: 2, + }); -new ecsPatterns.QueueProcessingFargateService(stack, 'QueueProcessingService', { - vpc, - memoryLimitMiB: 512, - image: new ecs.AssetImage(path.join(__dirname, '..', 'sqs-reader')), -}); + new ecsPatterns.QueueProcessingFargateService(this, 'QueueProcessingService', { + vpc, + memoryLimitMiB: 512, + image: new ecs.AssetImage(path.join(__dirname, '..', 'sqs-reader')), + }); + } +} ``` ### Deploy application and metrics sidecar diff --git a/packages/aws-cdk-lib/aws-ecs/README.md b/packages/aws-cdk-lib/aws-ecs/README.md index 284da95aa148e..9f4c582707c8b 100644 --- a/packages/aws-cdk-lib/aws-ecs/README.md +++ b/packages/aws-cdk-lib/aws-ecs/README.md @@ -727,22 +727,22 @@ The feature flag changes behavior for the entire CDK project. Therefore it is no declare const cluster: ecs.Cluster; // Import service from EC2 service attributes -const service = ecs.Ec2Service.fromEc2ServiceAttributes(stack, 'EcsService', { +const service = ecs.Ec2Service.fromEc2ServiceAttributes(this, 'EcsService', { serviceArn: 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service', cluster, }); // Import service from EC2 service ARN -const service = ecs.Ec2Service.fromEc2ServiceArn(stack, 'EcsService', 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service'); +const service = ecs.Ec2Service.fromEc2ServiceArn(this, 'EcsService', 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service'); // Import service from Fargate service attributes -const service = ecs.FargateService.fromFargateServiceAttributes(stack, 'EcsService', { +const service = ecs.FargateService.fromFargateServiceAttributes(this, 'EcsService', { serviceArn: 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service', cluster, }); // Import service from Fargate service ARN -const service = ecs.FargateService.fromFargateServiceArn(stack, 'EcsService', 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service'); +const service = ecs.FargateService.fromFargateServiceArn(this, 'EcsService', 'arn:aws:ecs:us-west-2:123456789012:service/my-http-service'); ``` ## Task Auto-Scaling @@ -1154,9 +1154,9 @@ For more information visit https://docs.aws.amazon.com/AmazonECS/latest/develope When the service does not have a capacity provider strategy, the cluster's default capacity provider strategy will be used. Default Capacity Provider Strategy can be added by using the method `addDefaultCapacityProviderStrategy`. A capacity provider strategy cannot contain a mix of EC2 Autoscaling Group capacity providers and Fargate providers. ```ts -declare const capacityProvider: ecs.CapacityProvider; +declare const capacityProvider: ecs.AsgCapacityProvider; -const cluster = new ecs.Cluster(stack, 'EcsCluster', { +const cluster = new ecs.Cluster(this, 'EcsCluster', { enableFargateCapacityProviders: true, }); cluster.addAsgCapacityProvider(capacityProvider); @@ -1168,9 +1168,9 @@ cluster.addDefaultCapacityProviderStrategy([ ``` ```ts -declare const capacityProvider: ecs.CapacityProvider; +declare const capacityProvider: ecs.AsgCapacityProvider; -const cluster = new ecs.Cluster(stack, 'EcsCluster', { +const cluster = new ecs.Cluster(this, 'EcsCluster', { enableFargateCapacityProviders: true, }); cluster.addAsgCapacityProvider(capacityProvider); @@ -1287,15 +1287,15 @@ or you can specify a custom namespace. You must also have created a named port m ```ts declare const cluster: ecs.Cluster; declare const taskDefinition: ecs.TaskDefinition; -declare const container: ecs.ContainerDefinition; +declare const containerOptions: ecs.ContainerDefinitionOptions; + +const container = taskDefinition.addContainer('MyContainer', containerOptions); container.addPortMappings({ name: 'api', containerPort: 8080, }); -taskDefinition.addContainer(container); - cluster.addDefaultCloudMapNamespace({ name: 'local', }); @@ -1321,21 +1321,27 @@ be routed to the container's port 8080. To opt a service into using service connect without advertising a port, simply call the 'enableServiceConnect' method on an initialized service. ```ts +declare const cluster: ecs.Cluster; +declare const taskDefinition: ecs.TaskDefinition; + const service = new ecs.FargateService(this, 'Service', { cluster, - taskDefinition -) + taskDefinition, +}); service.enableServiceConnect(); ``` Service Connect also allows custom logging, Service Discovery name, and configuration of the port where service connect traffic is received. ```ts +declare const cluster: ecs.Cluster; +declare const taskDefinition: ecs.TaskDefinition; + const customService = new ecs.FargateService(this, 'CustomizedService', { cluster, taskDefinition, serviceConnectConfiguration: { - logDriver: ecs.LogDrivers.awslogs({ + logDriver: ecs.LogDrivers.awsLogs({ streamPrefix: 'sc-traffic', }), services: [ diff --git a/packages/aws-cdk-lib/aws-eks/README.md b/packages/aws-cdk-lib/aws-eks/README.md index a81bf0aaf7458..d8bc35e544e1e 100644 --- a/packages/aws-cdk-lib/aws-eks/README.md +++ b/packages/aws-cdk-lib/aws-eks/README.md @@ -38,7 +38,9 @@ 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 -// provisiong a cluster +import { KubectlV25Layer } from '@aws-cdk/lambda-layer-kubectl-v25'; + +// provisioning a cluster const cluster = new eks.Cluster(this, 'hello-eks', { version: eks.KubernetesVersion.V1_25, kubectlLayer: new KubectlV25Layer(this, 'kubectl'), @@ -674,7 +676,7 @@ Only version 1.20 of kubectl is available in `aws-cdk-lib`. If you need a differ version, you will need to use one of the `@aws-cdk/lambda-layer-kubectl-vXY` packages. ```ts -import { KubectlV25Layer } from 'aws-cdk-lib/lambda-layer-kubectl-v25'; +import { KubectlV25Layer } from '@aws-cdk/lambda-layer-kubectl-v25'; const cluster = new eks.Cluster(this, 'hello-eks', { version: eks.KubernetesVersion.V1_25, @@ -1169,6 +1171,8 @@ cluster.addHelmChart('test-chart', { Nested values passed to the `values` parameter should be provided as a nested dictionary: ```ts +declare const cluster: eks.Cluster; + cluster.addHelmChart('ExternalSecretsOperator', { chart: 'external-secrets', release: 'external-secrets', @@ -1257,12 +1261,12 @@ To get started, add the following dependencies to your `package.json` file: ```json "dependencies": { "cdk8s": "^2.0.0", - "cdk8s-plus-22": "^2.0.0-rc.30", + "cdk8s-plus-25": "^2.0.0", "constructs": "^10.0.0" } ``` -Note that here we are using `cdk8s-plus-22` as we are targeting Kubernetes version 1.22.0. If you operate a different kubernetes version, you should +Note that here we are using `cdk8s-plus-25` as we are targeting Kubernetes version 1.25.0. If you operate a different kubernetes version, you should use the corresponding `cdk8s-plus-XX` library. See [Select the appropriate cdk8s+ library](https://cdk8s.io/docs/latest/plus/#i-operate-kubernetes-version-1xx-which-cdk8s-library-should-i-be-using) for more details. @@ -1278,7 +1282,7 @@ In this example we create a chart that accepts an `s3.Bucket` and passes its nam import { aws_s3 as s3 } from 'aws-cdk-lib'; import * as constructs from 'constructs'; import * as cdk8s from 'cdk8s'; -import * as kplus from 'cdk8s-plus-22'; +import * as kplus from 'cdk8s-plus-25'; export interface MyChartProps { readonly bucket: s3.Bucket; @@ -1320,13 +1324,13 @@ cluster.addCdk8sChart('my-chart', myChart); #### Custom CDK8s Constructs You can also compose a few stock `cdk8s+` constructs into your own custom construct. However, since mixing scopes between `aws-cdk` and `cdk8s` is currently not supported, the `Construct` class -you'll need to use is the one from the [`constructs`](https://github.com/aws/constructs) module, and not from `@aws-cdk/core` like you normally would. +you'll need to use is the one from the [`constructs`](https://github.com/aws/constructs) module, and not from `aws-cdk-lib` like you normally would. This is why we used `new cdk8s.App()` as the scope of the chart above. ```ts nofixture import * as constructs from 'constructs'; import * as cdk8s from 'cdk8s'; -import * as kplus from 'cdk8s-plus-21'; +import * as kplus from 'cdk8s-plus-25'; export interface LoadBalancedWebService { readonly port: number; diff --git a/packages/aws-cdk-lib/aws-eks/test/cluster-resource-provider.test.ts b/packages/aws-cdk-lib/aws-eks/test/cluster-resource-provider.test.ts index bb9876f1a84c0..14a86af97fe74 100644 --- a/packages/aws-cdk-lib/aws-eks/test/cluster-resource-provider.test.ts +++ b/packages/aws-cdk-lib/aws-eks/test/cluster-resource-provider.test.ts @@ -1,6 +1,14 @@ import * as mocks from './cluster-resource-handler-mocks'; import { ClusterResourceHandler } from '../lib/cluster-resource-handler/cluster'; +beforeAll(() => { + jest.spyOn(console, 'log').mockImplementation(); +}); + +afterAll(() => { + jest.restoreAllMocks(); +}); + describe('cluster resource provider', () => { beforeEach(() => { mocks.reset(); diff --git a/packages/aws-cdk-lib/aws-eks/test/fargate-resource-provider.test.ts b/packages/aws-cdk-lib/aws-eks/test/fargate-resource-provider.test.ts index 45dcb2c85457e..751bdcd49ae02 100644 --- a/packages/aws-cdk-lib/aws-eks/test/fargate-resource-provider.test.ts +++ b/packages/aws-cdk-lib/aws-eks/test/fargate-resource-provider.test.ts @@ -2,6 +2,14 @@ import * as sinon from 'sinon'; import { FARGATE_PROFILE_RESOURCE_TYPE } from '../lib/cluster-resource-handler/consts'; import { FargateProfileResourceHandler } from '../lib/cluster-resource-handler/fargate'; +beforeAll(() => { + jest.spyOn(console, 'log').mockImplementation(); +}); + +afterAll(() => { + jest.restoreAllMocks(); +}); + describe('fargate resource provider', () => { describe('create', () => { test('calls createFargateProfile with a generated name', async () => { @@ -283,4 +291,4 @@ function newEksClientMock() { deleteFargateProfile: sinon.fake(), describeFargateProfile: sinon.fake.throws('not implemented'), }; -} \ No newline at end of file +} diff --git a/packages/aws-cdk-lib/aws-elasticloadbalancing/README.md b/packages/aws-cdk-lib/aws-elasticloadbalancing/README.md index 7c98f5c3d5233..ad24f5226b5de 100644 --- a/packages/aws-cdk-lib/aws-elasticloadbalancing/README.md +++ b/packages/aws-cdk-lib/aws-elasticloadbalancing/README.md @@ -44,14 +44,16 @@ lb.addListener({ You can add an EC2 instance to the load balancer by calling using `new InstanceTarget` as the argument to `addTarget()`: ```ts +declare const vpc: ec2.IVpc; const lb = new elb.LoadBalancer(this, 'LB', { vpc, }); + // instance to add as the target for load balancer. -const instance = new Instance(stack, 'targetInstance', { +const instance = new ec2.Instance(this, 'targetInstance', { vpc: vpc, - instanceType: InstanceType.of(InstanceClass.BURSTABLE2, InstanceSize.MICRO), - machineImage: new AmazonLinuxImage(), + instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO), + machineImage: new ec2.AmazonLinuxImage({ generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2 }), }); -lb.addTarget(elb.InstanceTarget(instance)); +lb.addTarget(new elb.InstanceTarget(instance)); ``` diff --git a/packages/aws-cdk-lib/aws-elasticloadbalancingv2-actions/README.md b/packages/aws-cdk-lib/aws-elasticloadbalancingv2-actions/README.md index 2aae5adeddecc..a117be505ae67 100644 --- a/packages/aws-cdk-lib/aws-elasticloadbalancingv2-actions/README.md +++ b/packages/aws-cdk-lib/aws-elasticloadbalancingv2-actions/README.md @@ -12,6 +12,11 @@ Cognito](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lis Here's an example: ```ts +import { aws_certificatemanager as acm } from 'aws-cdk-lib'; + +declare const vpc: ec2.Vpc; +declare const certificate: acm.Certificate; + const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', { vpc, internetFacing: true, diff --git a/packages/aws-cdk-lib/aws-elasticloadbalancingv2/README.md b/packages/aws-cdk-lib/aws-elasticloadbalancingv2/README.md index b1cc9ebae9eb1..14e86b86963db 100644 --- a/packages/aws-cdk-lib/aws-elasticloadbalancingv2/README.md +++ b/packages/aws-cdk-lib/aws-elasticloadbalancingv2/README.md @@ -18,7 +18,6 @@ and adding Targets to the Listener: ```ts import { AutoScalingGroup } from 'aws-cdk-lib/aws-autoscaling'; declare const asg: AutoScalingGroup; - declare const vpc: ec2.Vpc; // Create the load balancer in a VPC. 'internetFacing' is 'false' @@ -199,6 +198,8 @@ ingress rules then set `open: false` and use the listener's `connections` object You can modify attributes of Application Load Balancers: ```ts +declare const vpc: ec2.Vpc; + const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', { vpc, internetFacing: true, @@ -207,8 +208,8 @@ const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', { http2Enabled: false, // The idle timeout value, in seconds - idleTimeout: cdk.Duration.seconds(1000), - + idleTimeout: Duration.seconds(1000), + // Whether HTTP headers with header fields thatare not valid // are removed by the load balancer (true), or routed to targets dropInvalidHeaderFields: true, @@ -622,7 +623,7 @@ Metrics are also available to imported resources: ```ts declare const stack: Stack; -const targetGroup = elbv2.ApplicationTargetGroup.fromTargetGroupAttributes(stack, 'MyTargetGroup', { +const targetGroup = elbv2.ApplicationTargetGroup.fromTargetGroupAttributes(this, 'MyTargetGroup', { targetGroupArn: Fn.importValue('TargetGroupArn'), loadBalancerArns: Fn.importValue('LoadBalancerArn'), }); @@ -635,7 +636,7 @@ throw an error: ```ts declare const stack: Stack; -const targetGroup = elbv2.ApplicationTargetGroup.fromTargetGroupAttributes(stack, 'MyTargetGroup', { +const targetGroup = elbv2.ApplicationTargetGroup.fromTargetGroupAttributes(this, 'MyTargetGroup', { targetGroupArn: Fn.importValue('TargetGroupArn'), }); diff --git a/packages/aws-cdk-lib/aws-events-targets/README.md b/packages/aws-cdk-lib/aws-events-targets/README.md index 966fb0a34f9b6..62da5179fbab0 100644 --- a/packages/aws-cdk-lib/aws-events-targets/README.md +++ b/packages/aws-cdk-lib/aws-events-targets/README.md @@ -58,7 +58,7 @@ const queue = new sqs.Queue(this, 'Queue'); rule.addTarget(new targets.LambdaFunction(fn, { deadLetterQueue: queue, // Optional: add a dead letter queue - maxEventAge: cdk.Duration.hours(2), // Optional: set the maxEventAge retry policy + maxEventAge: Duration.hours(2), // Optional: set the maxEventAge retry policy retryAttempts: 2, // Optional: set the max number of retry attempts })); ``` @@ -95,9 +95,9 @@ declare const logGroup: logs.LogGroup; declare const rule: events.Rule; rule.addTarget(new targets.CloudWatchLogGroup(logGroup, { - logEvent: targets.LogGroupTargetInput({ - timestamp: events.EventField.from('$.time'), - message: events.EventField.from('$.detail-type'), + logEvent: targets.LogGroupTargetInput.fromObject({ + timestamp: events.EventField.fromPath('$.time'), + message: events.EventField.fromPath('$.detail-type'), }), })); ``` @@ -111,10 +111,10 @@ declare const logGroup: logs.LogGroup; declare const rule: events.Rule; rule.addTarget(new targets.CloudWatchLogGroup(logGroup, { - logEvent: targets.LogGroupTargetInput({ + logEvent: targets.LogGroupTargetInput.fromObject({ message: JSON.stringify({ - CustomField: 'CustomValue', - }), + CustomField: 'CustomValue', + }), }), })); ``` @@ -183,7 +183,7 @@ import * as iam from 'aws-cdk-lib/aws-iam'; import * as sfn from 'aws-cdk-lib/aws-stepfunctions'; const rule = new events.Rule(this, 'Rule', { - schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + schedule: events.Schedule.rate(Duration.minutes(1)), }); const dlq = new sqs.Queue(this, 'DeadLetterQueue'); @@ -192,7 +192,7 @@ const role = new iam.Role(this, 'Role', { assumedBy: new iam.ServicePrincipal('events.amazonaws.com'), }); const stateMachine = new sfn.StateMachine(this, 'SM', { - definition: new sfn.Wait(this, 'Hello', { time: sfn.WaitTime.duration(cdk.Duration.seconds(10)) }) + definition: new sfn.Wait(this, 'Hello', { time: sfn.WaitTime.duration(Duration.seconds(10)) }) }); rule.addTarget(new targets.SfnStateMachine(stateMachine, { @@ -213,7 +213,7 @@ You can optionally attach a to the target. ```ts -import * as batch from 'aws-cdk-lib/aws-batch'; +import * as batch from '@aws-cdk/aws-batch-alpha'; import { ContainerImage } from 'aws-cdk-lib/aws-ecs'; const jobQueue = new batch.JobQueue(this, 'MyQueue', { @@ -236,7 +236,7 @@ const jobDefinition = new batch.JobDefinition(this, 'MyJob', { const queue = new sqs.Queue(this, 'Queue'); const rule = new events.Rule(this, 'Rule', { - schedule: events.Schedule.rate(cdk.Duration.hours(1)), + schedule: events.Schedule.rate(Duration.hours(1)), }); rule.addTarget(new targets.BatchJob( @@ -247,7 +247,7 @@ rule.addTarget(new targets.BatchJob( deadLetterQueue: queue, event: events.RuleTargetInput.fromObject({ SomeParam: 'SomeValue' }), retryAttempts: 2, - maxEventAge: cdk.Duration.hours(2), + maxEventAge: Duration.hours(2), }, )); ``` @@ -263,7 +263,7 @@ import * as api from 'aws-cdk-lib/aws-apigateway'; import * as lambda from 'aws-cdk-lib/aws-lambda'; const rule = new events.Rule(this, 'Rule', { - schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + schedule: events.Schedule.rate(Duration.minutes(1)), }); const fn = new lambda.Function( this, 'MyFunc', { @@ -313,7 +313,7 @@ const destination = new events.ApiDestination(this, 'Destination', { }); const rule = new events.Rule(this, 'Rule', { - schedule: events.Schedule.rate(cdk.Duration.minutes(1)), + schedule: events.Schedule.rate(Duration.minutes(1)), targets: [new targets.ApiDestination(destination)], }); ``` diff --git a/packages/aws-cdk-lib/aws-events-targets/lib/withRepoAndKinesisStream.ts-fixture b/packages/aws-cdk-lib/aws-events-targets/lib/withRepoAndKinesisStream.ts-fixture index 431f8511e02c9..105e6e649ff76 100644 --- a/packages/aws-cdk-lib/aws-events-targets/lib/withRepoAndKinesisStream.ts-fixture +++ b/packages/aws-cdk-lib/aws-events-targets/lib/withRepoAndKinesisStream.ts-fixture @@ -1,12 +1,12 @@ // Fixture with packages imported, but nothing else -import { Duration, RemovalPolicy, Stack } from '@aws-cdk/core'; +import { Duration, RemovalPolicy, Stack } from 'aws-cdk-lib'; import { Construct } from 'constructs'; -import * as targets from '@aws-cdk/aws-events-targets'; -import * as events from '@aws-cdk/aws-events'; -import * as kinesis from '@aws-cdk/aws-kinesis'; -import * as codecommit from '@aws-cdk/aws-codecommit'; -import * as cdk from '@aws-cdk/core'; +import * as targets from 'aws-cdk-lib/aws-events-targets'; +import * as events from 'aws-cdk-lib/aws-events'; +import * as kinesis from 'aws-cdk-lib/aws-kinesis'; +import * as codecommit from 'aws-cdk-lib/aws-codecommit'; +import * as cdk from 'aws-cdk-lib'; class Fixture extends Stack { constructor(scope: Construct, id: string) { diff --git a/packages/aws-cdk-lib/aws-events/README.md b/packages/aws-cdk-lib/aws-events/README.md index 4629c05d5b4b8..528f4b483bd44 100644 --- a/packages/aws-cdk-lib/aws-events/README.md +++ b/packages/aws-cdk-lib/aws-events/README.md @@ -108,7 +108,7 @@ const rule = new events.Rule(this, 'rule', { events.Match.exactString('DEEP_ARCHIVE'), ), }, - 'detail-type': events.Match.equalsIgnoreCase('object created'), + detailType: events.Match.equalsIgnoreCase('object created'), // If you prefer, you can use a low level array of strings, as directly consumed by EventBridge source: ['aws.s3'], diff --git a/packages/aws-cdk-lib/aws-fsx/README.md b/packages/aws-cdk-lib/aws-fsx/README.md index c77c1c2a8f953..373d3753e74c3 100644 --- a/packages/aws-cdk-lib/aws-fsx/README.md +++ b/packages/aws-cdk-lib/aws-fsx/README.md @@ -120,7 +120,7 @@ inst.userData.addCommands( ### Importing an existing Lustre filesystem -An FSx for Lustre file system can be imported with `fromLustreFileSystemAttributes(stack, id, attributes)`. The +An FSx for Lustre file system can be imported with `fromLustreFileSystemAttributes(this, id, attributes)`. The following example lays out how you could import the SecurityGroup a file system belongs to, use that to import the file system, and then also import the VPC the file system is in and add an EC2 instance to it, giving it access to the file system. @@ -162,6 +162,8 @@ Note: CloudFormation does not currently support for `PERSISTENT_2` filesystems, The following example illustrates setting up a DRA to an S3 bucket, including automated metadata import whenever a file is changed, created or deleted in the S3 bucket: ```ts +import { aws_s3 as s3 } from 'aws-cdk-lib'; + declare const vpc: ec2.Vpc; declare const bucket: s3.Bucket; diff --git a/packages/aws-cdk-lib/aws-iam/README.md b/packages/aws-cdk-lib/aws-iam/README.md index cf13db9d900f6..69f6aec5b7337 100644 --- a/packages/aws-cdk-lib/aws-iam/README.md +++ b/packages/aws-cdk-lib/aws-iam/README.md @@ -143,7 +143,7 @@ CDK will not create any IAM roles or policies with the `stack` scope. `cdk synth it will generate a policy report to the cloud assembly (i.e. cdk.out). The `iam-policy-report.txt` report will contain a list of IAM roles and associated permissions that would have been created. This report can be used to create the roles with the appropriate permissions outside of -the CDK application. +the CDK application. Once the missing roles have been created, their names can be added to the `usePrecreatedRoles` property, like shown below: @@ -151,13 +151,13 @@ property, like shown below: ```ts declare const app: App; const stack = new Stack(app, 'MyStack'); -iam.Role.customizeRoles(stack, { +iam.Role.customizeRoles(this, { usePrecreatedRoles: { 'MyStack/MyRole': 'my-precreated-role-name', }, }); -new iam.Role(stack, 'MyRole', { +new iam.Role(this, 'MyRole', { assumedBy: new iam.ServicePrincipal('sns.amazonaws.com'), }); ``` @@ -171,13 +171,13 @@ declare const app: App; const stack = new Stack(app, 'MyStack'); iam.Role.customizeRoles(stack); -const fn = new lambda.Function(stack, 'MyLambda', { +const fn = new lambda.Function(this, 'MyLambda', { code: new lambda.InlineCode('foo'), handler: 'index.handler', runtime: lambda.Runtime.NODEJS_14_X, }); -const bucket = new s3.Bucket(stack, 'Bucket'); +const bucket = new s3.Bucket(this, 'Bucket'); bucket.grantRead(fn); ``` @@ -228,7 +228,7 @@ come back and update the `customizeRoles` with the role name. ```ts declare const app: App; const stack = new Stack(app, 'MyStack'); -iam.Role.customizeRoles(stack, { +iam.Role.customizeRoles(this, { usePrecreatedRoles: { 'MyStack/MyLambda/ServiceRole': 'my-role-name', } @@ -244,7 +244,7 @@ It is also possible to generate the report _without_ preventing the role/policy ```ts declare const stack: Stack; -iam.Role.customizeRoles(stack, { +iam.Role.customizeRoles(this, { preventSynthesis: false, }); ``` @@ -690,7 +690,7 @@ const accessKey = new iam.AccessKey(this, 'MyAccessKey', { user: user }); ``` You can force CloudFormation to rotate the access key by providing a monotonically increasing `serial` -property. Simply provide a higher serial value than any number used previously: +property. Simply provide a higher serial value than any number used previously: ```ts const user = new iam.User(this, 'MyUser'); @@ -723,8 +723,8 @@ const group = iam.Group.fromGroupName(this, 'MyImportedGroupByName', 'group-name To add a user to a group (both for a new and imported user/group): ```ts -const user = new iam.User(this, 'MyUser'); // or User.fromUserName(stack, 'User', 'johnsmith'); -const group = new iam.Group(this, 'MyGroup'); // or Group.fromGroupArn(stack, 'Group', 'arn:aws:iam::account-id:group/group-name'); +const user = new iam.User(this, 'MyUser'); // or User.fromUserName(this, 'User', 'johnsmith'); +const group = new iam.Group(this, 'MyGroup'); // or Group.fromGroupArn(this, 'Group', 'arn:aws:iam::account-id:group/group-name'); user.addToGroup(group); // or diff --git a/packages/aws-cdk-lib/aws-iam/lib/role.ts b/packages/aws-cdk-lib/aws-iam/lib/role.ts index a09e47b709f52..0c5ea517899ed 100644 --- a/packages/aws-cdk-lib/aws-iam/lib/role.ts +++ b/packages/aws-cdk-lib/aws-iam/lib/role.ts @@ -201,13 +201,15 @@ export interface CustomizeRolesOptions { * The constructPath can be either a relative or absolute path * from the scope that `customizeRoles` is used on to the role being created. * - * For example, if you were creating a role - * * @example + * declare const app: App; + * * const stack = new Stack(app, 'MyStack'); - * new Role(stack, 'MyRole'); + * new iam.Role(stack, 'MyRole', { + * assumedBy: new iam.AccountPrincipal('1111111111'), + * }); * - * Role.customizeRoles(stack, { + * iam.Role.customizeRoles(stack, { * usePrecreatedRoles: { * // absolute path * 'MyStack/MyRole': 'my-precreated-role-name', @@ -347,7 +349,7 @@ export class Role extends Resource implements IRole { * * @example * declare const app: App; - * Role.customizeRoles(app, { + * iam.Role.customizeRoles(app, { * usePrecreatedRoles: { * 'ConstructPath/To/Role': 'my-precreated-role-name', * }, diff --git a/packages/aws-cdk-lib/aws-iam/test/precreated-role.test.ts b/packages/aws-cdk-lib/aws-iam/test/precreated-role.test.ts index ff359d7c065d3..b07c115a9b2fd 100644 --- a/packages/aws-cdk-lib/aws-iam/test/precreated-role.test.ts +++ b/packages/aws-cdk-lib/aws-iam/test/precreated-role.test.ts @@ -272,85 +272,81 @@ describe('precreatedRole report created', () => { const filePath = path.join(assembly.directory, 'iam-policy-report'); const file = fs.readFileSync(filePath+'.txt', { encoding: 'utf-8' }); const jsonfile = fs.readFileSync(filePath+'.json', { encoding: 'utf-8' }); - expect(jsonfile).toMatchInlineSnapshot(` -"{ - \\"roles\\": [ + expect(jsonfile).toEqual(`{ + \"roles\": [ { - \\"roleConstructPath\\": \\"OtherStack/MyRole\\", - \\"roleName\\": \\"other-role-name\\", - \\"missing\\": false, - \\"assumeRolePolicy\\": [ + \"roleConstructPath\": \"OtherStack/MyRole\", + \"roleName\": \"other-role-name\", + \"missing\": false, + \"assumeRolePolicy\": [ { - \\"Action\\": \\"sts:AssumeRole\\", - \\"Effect\\": \\"Allow\\", - \\"Principal\\": { - \\"Service\\": \\"sns.amazonaws.com\\" + \"Action\": \"sts:AssumeRole\", + \"Effect\": \"Allow\", + \"Principal\": { + \"Service\": \"sns.amazonaws.com\" } } ], - \\"managedPolicyArns\\": [ - \\"arn:(PARTITION):iam::aws:policy/ReadOnlyAccess\\", - \\"arn:(PARTITION):iam::(ACCOUNT):policy/CustomReadOnlyAccess\\" + \"managedPolicyArns\": [ + \"arn:(PARTITION):iam::aws:policy/ReadOnlyAccess\", + \"arn:(PARTITION):iam::(ACCOUNT):policy/CustomReadOnlyAccess\" ], - \\"managedPolicyStatements\\": [ + \"managedPolicyStatements\": [ { - \\"Action\\": \\"s3:PutObject\\", - \\"Effect\\": \\"Allow\\", - \\"Resource\\": \\"(MyStack/SomeResource.Arn)\\" + \"Action\": \"s3:PutObject\", + \"Effect\": \"Allow\", + \"Resource\": \"(MyStack/SomeResource.Arn)\" }, { - \\"Action\\": [ - \\"sns:Publish\\", - \\"s3:GetObject\\" + \"Action\": [ + \"sns:Publish\", + \"s3:GetObject\" ], - \\"Effect\\": \\"Allow\\", - \\"Resource\\": \\"(MyStack/SomeResource.Ref)\\" + \"Effect\": \"Allow\", + \"Resource\": \"(MyStack/SomeResource.Ref)\" } ], - \\"identityPolicyStatements\\": [] + \"identityPolicyStatements\": [] } ] -}" -`); - expect(file).toMatchInlineSnapshot(` -" (OtherStack/MyRole) +}`); + expect(file).toEqual(` (OtherStack/MyRole) AssumeRole Policy: [ { - \\"Action\\": \\"sts:AssumeRole\\", - \\"Effect\\": \\"Allow\\", - \\"Principal\\": { - \\"Service\\": \\"sns.amazonaws.com\\" + \"Action\": \"sts:AssumeRole\", + \"Effect\": \"Allow\", + \"Principal\": { + \"Service\": \"sns.amazonaws.com\" } } ] Managed Policy ARNs: [ - \\"arn:(PARTITION):iam::aws:policy/ReadOnlyAccess\\", - \\"arn:(PARTITION):iam::(ACCOUNT):policy/CustomReadOnlyAccess\\" + \"arn:(PARTITION):iam::aws:policy/ReadOnlyAccess\", + \"arn:(PARTITION):iam::(ACCOUNT):policy/CustomReadOnlyAccess\" ] Managed Policies Statements: [ { - \\"Action\\": \\"s3:PutObject\\", - \\"Effect\\": \\"Allow\\", - \\"Resource\\": \\"(MyStack/SomeResource.Arn)\\" + \"Action\": \"s3:PutObject\", + \"Effect\": \"Allow\", + \"Resource\": \"(MyStack/SomeResource.Arn)\" }, { - \\"Action\\": [ - \\"sns:Publish\\", - \\"s3:GetObject\\" + \"Action\": [ + \"sns:Publish\", + \"s3:GetObject\" ], - \\"Effect\\": \\"Allow\\", - \\"Resource\\": \\"(MyStack/SomeResource.Ref)\\" + \"Effect\": \"Allow\", + \"Resource\": \"(MyStack/SomeResource.Ref)\" } ] Identity Policy Statements: -NONE" -`); +NONE`); }); }); diff --git a/packages/aws-cdk-lib/aws-kinesis/lib/stream.ts b/packages/aws-cdk-lib/aws-kinesis/lib/stream.ts index 0444694a9af17..d600a048f1d9d 100644 --- a/packages/aws-cdk-lib/aws-kinesis/lib/stream.ts +++ b/packages/aws-cdk-lib/aws-kinesis/lib/stream.ts @@ -757,12 +757,12 @@ export class Stream extends StreamBase { }); let shardCount = props.shardCount; - const streamMode = props.streamMode ?? StreamMode.PROVISIONED; + const streamMode = props.streamMode; if (streamMode === StreamMode.ON_DEMAND && shardCount !== undefined) { throw new Error(`streamMode must be set to ${StreamMode.PROVISIONED} (default) when specifying shardCount`); } - if (streamMode === StreamMode.PROVISIONED && shardCount === undefined) { + if ( (streamMode === StreamMode.PROVISIONED || streamMode === undefined) && shardCount === undefined) { shardCount = 1; } @@ -780,7 +780,11 @@ export class Stream extends StreamBase { retentionPeriodHours, shardCount, streamEncryption, - streamModeDetails: streamMode ? { streamMode } : undefined, + ...(props.streamMode !== undefined + ? { + streamModeDetails: { streamMode: props.streamMode }, + } + : undefined), }); this.streamArn = this.getResourceArnAttribute(this.stream.attrArn, { diff --git a/packages/aws-cdk-lib/aws-kinesis/test/stream.test.ts b/packages/aws-cdk-lib/aws-kinesis/test/stream.test.ts index 00e3e32e58eaf..3cef41d9874bb 100644 --- a/packages/aws-cdk-lib/aws-kinesis/test/stream.test.ts +++ b/packages/aws-cdk-lib/aws-kinesis/test/stream.test.ts @@ -15,9 +15,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -70,9 +67,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -92,9 +86,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -157,9 +148,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 2, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -213,9 +201,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 168, StreamEncryption: { 'Fn::If': [ @@ -287,9 +272,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { EncryptionType: 'KMS', @@ -326,9 +308,6 @@ describe('Kinesis data streams', () => { // THEN Template.fromStack(stack).hasResourceProperties('AWS::Kinesis::Stream', { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { EncryptionType: 'KMS', @@ -373,9 +352,6 @@ describe('Kinesis data streams', () => { Template.fromStack(stack).hasResourceProperties('AWS::Kinesis::Stream', { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { EncryptionType: 'KMS', @@ -568,9 +544,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -659,9 +632,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -741,9 +711,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -834,9 +801,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -919,9 +883,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: 24, StreamEncryption: { 'Fn::If': [ @@ -1024,9 +985,6 @@ describe('Kinesis data streams', () => { Type: 'AWS::Kinesis::Stream', Properties: { ShardCount: 1, - StreamModeDetails: { - StreamMode: StreamMode.PROVISIONED, - }, RetentionPeriodHours: { Ref: 'myretentionperiod', }, diff --git a/packages/aws-cdk-lib/aws-lambda-event-sources/README.md b/packages/aws-cdk-lib/aws-lambda-event-sources/README.md index d05292bd57d87..31faee0fe35cd 100644 --- a/packages/aws-cdk-lib/aws-lambda-event-sources/README.md +++ b/packages/aws-cdk-lib/aws-lambda-event-sources/README.md @@ -254,11 +254,8 @@ const topic = 'some-cool-topic'; // The secret that allows access to your self hosted Kafka cluster declare const secret: Secret; -// (Optional) The secret containing the root CA certificate that your Kafka brokers use for TLS encryption -declare const encryption: Secret; - // (Optional) The consumer group id to use when connecting to the Kafka broker. If omitted the UUID of the event source mapping will be used. -const consumerGroupId: "my-consumer-group-id"; +const consumerGroupId = "my-consumer-group-id"; declare const myFunction: lambda.Function; myFunction.addEventSource(new SelfManagedKafkaEventSource({ @@ -268,7 +265,6 @@ myFunction.addEventSource(new SelfManagedKafkaEventSource({ secret: secret, batchSize: 100, // default startingPosition: lambda.StartingPosition.TRIM_HORIZON, - encryption: encryption // optional })); ``` diff --git a/packages/aws-cdk-lib/aws-lambda-nodejs/test/__snapshots__/bundling.test.js.snap b/packages/aws-cdk-lib/aws-lambda-nodejs/test/__snapshots__/bundling.test.js.snap index 424a57861cfa9..74947ef80295d 100644 --- a/packages/aws-cdk-lib/aws-lambda-nodejs/test/__snapshots__/bundling.test.js.snap +++ b/packages/aws-cdk-lib/aws-lambda-nodejs/test/__snapshots__/bundling.test.js.snap @@ -1,15 +1,15 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`esbuild bundling with esbuild options 1`] = ` -"\\"use strict\\"; +""use strict"; (() => { // aws-lambda-nodejs/test/integ-handlers/define.ts function handler() { return [ - \\"VALUE\\", + "VALUE", true, 7777, - 'this is a \\"test\\"' + 'this is a "test"' ]; } })(); diff --git a/packages/aws-cdk-lib/aws-lambda/README.md b/packages/aws-cdk-lib/aws-lambda/README.md index 273097a949e2d..9d9962c807469 100644 --- a/packages/aws-cdk-lib/aws-lambda/README.md +++ b/packages/aws-cdk-lib/aws-lambda/README.md @@ -134,7 +134,7 @@ const fn = new lambda.Function(this, 'MyFunction', { runtime: lambda.Runtime.NODEJS_18_X, handler: 'index.handler', code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')), - timeout: cdk.Duration.minutes(5), + timeout: Duration.minutes(5), }); if (fn.timeout) { @@ -1039,8 +1039,8 @@ Lambda runtime management controls help reduce the risk of impact to your worklo For more information, see [Runtime management controls](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html#runtime-management-controls) ```ts -new Function(stack, 'Lambda', { - runtimeManagementMode: RuntimeManagementMode.AUTO, +new lambda.Function(this, 'Lambda', { + runtimeManagementMode: lambda.RuntimeManagementMode.AUTO, runtime: lambda.Runtime.NODEJS_18_X, handler: 'index.handler', code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')), @@ -1050,8 +1050,8 @@ new Function(stack, 'Lambda', { If you want to set the "Manual" setting, using the ARN of the runtime version as the argument. ```ts -new Function(stack, 'Lambda', { - runtimeManagementMode: RuntimeManagementMode.manual('runtimeVersion-arn'), +new lambda.Function(this, 'Lambda', { + runtimeManagementMode: lambda.RuntimeManagementMode.manual('runtimeVersion-arn'), runtime: lambda.Runtime.NODEJS_18_X, handler: 'index.handler', code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')), diff --git a/packages/aws-cdk-lib/aws-lambda/lib/runtime.ts b/packages/aws-cdk-lib/aws-lambda/lib/runtime.ts index d38659c7f2230..be479c8de7db4 100644 --- a/packages/aws-cdk-lib/aws-lambda/lib/runtime.ts +++ b/packages/aws-cdk-lib/aws-lambda/lib/runtime.ts @@ -133,6 +133,15 @@ export class Runtime { supportsCodeGuruProfiling: true, }); + /** + * The Python 3.10 runtime (python3.10) + */ + public static readonly PYTHON_3_10 = new Runtime('python3.10', RuntimeFamily.PYTHON, { + supportsInlineCode: true, + supportsCodeGuruProfiling: true, + }); + + /** * The Java 8 runtime (java8) */ diff --git a/packages/aws-cdk-lib/aws-logs/README.md b/packages/aws-cdk-lib/aws-logs/README.md index c0ae8f57858fc..a5cd44de73b31 100644 --- a/packages/aws-cdk-lib/aws-logs/README.md +++ b/packages/aws-cdk-lib/aws-logs/README.md @@ -163,7 +163,7 @@ const mf = new logs.MetricFilter(this, 'MetricFilter', { dimensions: { ErrorCode: '$.errorCode', }, - unit: Unit.MILLISECONDS, + unit: cloudwatch.Unit.MILLISECONDS, }); //expose a metric from the metric filter diff --git a/packages/aws-cdk-lib/aws-logs/test/log-retention-provider.test.ts b/packages/aws-cdk-lib/aws-logs/test/log-retention-provider.test.ts index 4f3cb24799643..fa85fc44ea292 100644 --- a/packages/aws-cdk-lib/aws-logs/test/log-retention-provider.test.ts +++ b/packages/aws-cdk-lib/aws-logs/test/log-retention-provider.test.ts @@ -34,6 +34,14 @@ class MyError extends Error { } } +beforeAll(() => { + jest.spyOn(console, 'log').mockImplementation(); +}); + +afterAll(() => { + jest.restoreAllMocks(); +}); + describe('log retention provider', () => { afterEach(() => { AWS.restore(); diff --git a/packages/aws-cdk-lib/aws-rds/README.md b/packages/aws-cdk-lib/aws-rds/README.md index 8737cc007791d..8c9b01705648d 100644 --- a/packages/aws-cdk-lib/aws-rds/README.md +++ b/packages/aws-cdk-lib/aws-rds/README.md @@ -185,14 +185,14 @@ to use for the instance: declare const vpc: ec2.Vpc; const iopsInstance = new rds.DatabaseInstance(this, 'IopsInstance', { - engine: rds.DatabaseInstanceEngine.mysql({ version: MysqlEngineVersion.VER_8_0_30 }), + engine: rds.DatabaseInstanceEngine.mysql({ version: rds.MysqlEngineVersion.VER_8_0_30 }), vpc, storageType: rds.StorageType.IO1, iops: 5000, }); const gp3Instance = new rds.DatabaseInstance(this, 'Gp3Instance', { - engine: rds.DatabaseInstanceEngine.mysql({ version: MysqlEngineVersion.VER_8_0_30 }), + engine: rds.DatabaseInstanceEngine.mysql({ version: rds.MysqlEngineVersion.VER_8_0_30 }), vpc, allocatedStorage: 500, storageType: rds.StorageType.GP3, @@ -351,7 +351,7 @@ import * as cdk from 'aws-cdk-lib'; declare const instance: rds.DatabaseInstance; declare const mySecurityGroup: ec2.SecurityGroup; instance.addRotationSingleUser({ - automaticallyAfter: cdk.Duration.days(7), // defaults to 30 days + automaticallyAfter: Duration.days(7), // defaults to 30 days excludeCharacters: '!@#$%^&*', // defaults to the set " %+~`#$&*()|[]{}:;<>?!'/@\"\\" securityGroup: mySecurityGroup, // defaults to an auto-created security group }); diff --git a/packages/aws-cdk-lib/aws-route53-targets/README.md b/packages/aws-cdk-lib/aws-route53-targets/README.md index 1d745b5ef6c7a..c16a614a4e307 100644 --- a/packages/aws-cdk-lib/aws-route53-targets/README.md +++ b/packages/aws-cdk-lib/aws-route53-targets/README.md @@ -21,7 +21,7 @@ This library contains Route53 Alias Record targets for: * API Gateway V2 custom domains ```ts - import * as apigwv2 from 'aws-cdk-lib/aws-apigatewayv2'; + import * as apigwv2 from '@aws-cdk/aws-apigatewayv2-alpha'; declare const zone: route53.HostedZone; declare const domainName: apigwv2.DomainName; diff --git a/packages/aws-cdk-lib/aws-route53/README.md b/packages/aws-cdk-lib/aws-route53/README.md index 4c18a86469d42..1abb8bfc4bbaa 100644 --- a/packages/aws-cdk-lib/aws-route53/README.md +++ b/packages/aws-cdk-lib/aws-route53/README.md @@ -267,25 +267,21 @@ Assuming your account has ownership of the particular domain/subdomain, this construct sets up the private DNS configuration on the endpoint service, creates all the necessary Route53 entries, and verifies domain ownership. -```ts nofixture -import { Stack } from 'aws-cdk-lib'; -import { Vpc, VpcEndpointService } from 'aws-cdk-lib/aws-ec2'; +```ts import { NetworkLoadBalancer } from 'aws-cdk-lib/aws-elasticloadbalancingv2'; -import { PublicHostedZone, VpcEndpointServiceDomainName } from 'aws-cdk-lib/aws-route53'; -const stack = new Stack(); -const vpc = new Vpc(stack, 'VPC'); -const nlb = new NetworkLoadBalancer(stack, 'NLB', { +const vpc = new ec2.Vpc(this, 'VPC'); +const nlb = new NetworkLoadBalancer(this, 'NLB', { vpc, }); -const vpces = new VpcEndpointService(stack, 'VPCES', { +const vpces = new ec2.VpcEndpointService(this, 'VPCES', { vpcEndpointServiceLoadBalancers: [nlb], }); // You must use a public hosted zone so domain ownership can be verified -const zone = new PublicHostedZone(stack, 'PHZ', { +const zone = new route53.PublicHostedZone(this, 'PHZ', { zoneName: 'aws-cdk.dev', }); -new VpcEndpointServiceDomainName(stack, 'EndpointDomain', { +new route53.VpcEndpointServiceDomainName(this, 'EndpointDomain', { endpointService: vpces, domainName: 'my-stuff.aws-cdk.dev', publicHostedZone: zone, diff --git a/packages/aws-cdk-lib/aws-s3/README.md b/packages/aws-cdk-lib/aws-s3/README.md index 90ae4018b0ca0..0b0cfd7aa4a51 100644 --- a/packages/aws-cdk-lib/aws-s3/README.md +++ b/packages/aws-cdk-lib/aws-s3/README.md @@ -167,10 +167,10 @@ To use a bucket in a different stack in the same CDK application, pass the objec /** * Stack that defines the bucket */ -class Producer extends cdk.Stack { +class Producer extends Stack { public readonly myBucket: s3.Bucket; - constructor(scope: cdk.App, id: string, props?: cdk.StackProps) { + constructor(scope: Construct, id: string, props?: cdk.StackProps) { super(scope, id, props); const bucket = new s3.Bucket(this, 'MyBucket', { @@ -187,8 +187,8 @@ interface ConsumerProps extends cdk.StackProps { /** * Stack that consumes the bucket */ -class Consumer extends cdk.Stack { - constructor(scope: cdk.App, id: string, props: ConsumerProps) { +class Consumer extends Stack { + constructor(scope: Construct, id: string, props: ConsumerProps) { super(scope, id, props); const user = new iam.User(this, 'MyUser'); @@ -196,6 +196,7 @@ class Consumer extends cdk.Stack { } } +const app = new App(); const producer = new Producer(app, 'ProducerStack'); new Consumer(app, 'ConsumerStack', { userBucket: producer.myBucket }); ``` @@ -608,8 +609,8 @@ new s3.Bucket(this, 'MyBucket', { { name: 'foo', prefix: 'folder/name', - archiveAccessTierTime: cdk.Duration.days(90), - deepArchiveAccessTierTime: cdk.Duration.days(180), + archiveAccessTierTime: Duration.days(90), + deepArchiveAccessTierTime: Duration.days(180), tags: [{ key: 'tagname', value: 'tagvalue' }], }, ], @@ -624,20 +625,20 @@ new s3.Bucket(this, 'MyBucket', { const bucket = new s3.Bucket(this, 'MyBucket', { lifecycleRules: [ { - abortIncompleteMultipartUploadAfter: cdk.Duration.minutes(30), + abortIncompleteMultipartUploadAfter: Duration.minutes(30), enabled: false, - expiration: cdk.Duration.days(30), + expiration: Duration.days(30), expirationDate: new Date(), expiredObjectDeleteMarker: false, id: 'id', - noncurrentVersionExpiration: cdk.Duration.days(30), + noncurrentVersionExpiration: Duration.days(30), // the properties below are optional noncurrentVersionsToRetain: 123, noncurrentVersionTransitions: [ { storageClass: s3.StorageClass.GLACIER, - transitionAfter: cdk.Duration.days(30), + transitionAfter: Duration.days(30), // the properties below are optional noncurrentVersionsToRetain: 123, @@ -651,7 +652,7 @@ const bucket = new s3.Bucket(this, 'MyBucket', { storageClass: s3.StorageClass.GLACIER, // the properties below are optional - transitionAfter: cdk.Duration.days(30), + transitionAfter: Duration.days(30), transitionDate: new Date(), }, ], @@ -683,11 +684,11 @@ These can be specified by providing `objectLockDefaultRetention`: ```ts // Configure for governance mode with a duration of 7 years new s3.Bucket(this, 'Bucket1', { - objectLockDefaultRetention: s3.ObjectLockRetention.governance(cdk.Duration.days(7 * 365)), + objectLockDefaultRetention: s3.ObjectLockRetention.governance(Duration.days(7 * 365)), }); // Configure for compliance mode with a duration of 1 year new s3.Bucket(this, 'Bucket2', { - objectLockDefaultRetention: s3.ObjectLockRetention.compliance(cdk.Duration.days(365)), + objectLockDefaultRetention: s3.ObjectLockRetention.compliance(Duration.days(365)), }); ``` diff --git a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts index 3283f6cb51929..4ec12055e1f24 100644 --- a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts +++ b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts @@ -1610,10 +1610,11 @@ export interface Tag { * BucketResource. * * @example + * import { RemovalPolicy } from 'aws-cdk-lib'; * - * new Bucket(scope, 'Bucket', { - * blockPublicAccess: BlockPublicAccess.BLOCK_ALL, - * encryption: BucketEncryption.S3_MANAGED, + * new s3.Bucket(scope, 'Bucket', { + * blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + * encryption: s3.BucketEncryption.S3_MANAGED, * enforceSSL: true, * versioned: true, * removalPolicy: RemovalPolicy.RETAIN, diff --git a/packages/aws-cdk-lib/aws-secretsmanager/README.md b/packages/aws-cdk-lib/aws-secretsmanager/README.md index 66f9c217da967..cb7e7f36691a9 100644 --- a/packages/aws-cdk-lib/aws-secretsmanager/README.md +++ b/packages/aws-cdk-lib/aws-secretsmanager/README.md @@ -267,11 +267,11 @@ For example: In order to create this type of secret, use the `secretObjectValue` input prop. ```ts -const user = new iam.User(stack, 'User'); -const accessKey = new iam.AccessKey(stack, 'AccessKey', { user }); +const user = new iam.User(this, 'User'); +const accessKey = new iam.AccessKey(this, 'AccessKey', { user }); declare const stack: Stack; -new secretsmanager.Secret(stack, 'Secret', { +new secretsmanager.Secret(this, 'Secret', { secretObjectValue: { username: SecretValue.unsafePlainText(user.userName), database: SecretValue.unsafePlainText('foo'), diff --git a/packages/aws-cdk-lib/aws-servicecatalog/README.md b/packages/aws-cdk-lib/aws-servicecatalog/README.md index f0db4e0f6f1a3..b5f4ab730fcb8 100644 --- a/packages/aws-cdk-lib/aws-servicecatalog/README.md +++ b/packages/aws-cdk-lib/aws-servicecatalog/README.md @@ -65,13 +65,11 @@ const portfolio = servicecatalog.Portfolio.fromPortfolioArn(this, 'ReferencedPor ### Granting access to a portfolio -You can grant access to and manage the `IAM` users, groups, or roles that have access to the products within a portfolio. +You can grant access to and manage the `IAM` users, groups, or roles that have access to the products within a portfolio. Entities with granted access will be able to utilize the portfolios resources and products via the console or AWS CLI. Once resources are deployed end users will be able to access them via the console or service catalog CLI. ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; - declare const portfolio: servicecatalog.Portfolio; const user = new iam.User(this, 'User'); @@ -101,7 +99,7 @@ portfolio.shareWithAccount('012345678901'); Products are version friendly infrastructure-as-code templates that admins create and add to portfolios for end users to provision and create AWS resources. Service Catalog supports products from AWS Marketplace or ones defined by a CloudFormation template. -The CDK currently only supports adding products of type CloudFormation. +The CDK currently only supports adding products of type CloudFormation. Using the CDK, a new Product can be created with the `CloudFormationProduct` construct. You can use `CloudFormationTemplate.fromUrl` to create a Product from a CloudFormation template directly from a URL that points to the template in S3, GitHub, or CodeCommit: @@ -150,10 +148,9 @@ const product = new servicecatalog.CloudFormationProduct(this, 'Product', { You can create a Service Catalog `CloudFormationProduct` entirely defined with CDK code using a service catalog `ProductStack`. A separate child stack for your product is created and you can add resources like you would for any other CDK stack, such as an S3 Bucket, IAM roles, and EC2 instances. This stack is passed in as a product version to your -product. This will not create a separate CloudFormation stack during deployment. +product. This will not create a separate CloudFormation stack during deployment. ```ts -import * as s3 from 'aws-cdk-lib/aws-s3'; import * as cdk from 'aws-cdk-lib'; class S3BucketProduct extends servicecatalog.ProductStack { @@ -187,8 +184,8 @@ import * as cdk from 'aws-cdk-lib'; import { Bucket } from "aws-cdk-lib/aws-s3"; class LambdaProduct extends servicecatalog.ProductStack { - constructor(scope: Construct, id: string) { - super(scope, id); + constructor(scope: Construct, id: string, props: servicecatalog.ProductStackProps) { + super(scope, id, props); new lambda.Function(this, 'LambdaProduct', { runtime: lambda.Runtime.PYTHON_3_9, @@ -216,61 +213,63 @@ const product = new servicecatalog.CloudFormationProduct(this, 'Product', { }); ``` -When a product containing an asset is shared with a spoke account, the corresponding asset bucket -will automatically grant read permissions to the spoke account. -Note, it is not recommended using a referenced bucket as permissions cannot be added from CDK. +When a product containing an asset is shared with a spoke account, the corresponding asset bucket +will automatically grant read permissions to the spoke account. +Note, it is not recommended using a referenced bucket as permissions cannot be added from CDK. In this case, it will be your responsibility to grant read permissions for the asset bucket to the spoke account. -If you want to provide your own bucket policy or scope down your bucket policy further to only allow +If you want to provide your own bucket policy or scope down your bucket policy further to only allow reads from a specific launch role, refer to the following example policy: ```ts +declare const bucket: s3.IBucket; + new iam.PolicyStatement({ - actions: [ - 's3:GetObject*', - 's3:GetBucket*', - 's3:List*', ], - effect: iam.Effect.ALLOW, - resources: [ - bucket.bucketArn, - bucket.arnForObjects('*'), - ], - principals: [ - new iam.ArnPrincipal(cdk.Stack.of(this).formatArn({ - service: 'iam', - region: '', - sharedAccount, - resource: 'role', - resourceName: launchRoleName, - })) - ], - conditions: { - 'ForAnyValue:StringEquals': { - 'aws:CalledVia': ['cloudformation.amazonaws.com'], - }, - 'Bool': { - 'aws:ViaAWSService': true, - }, - }, + actions: [ + 's3:GetObject*', + 's3:GetBucket*', + 's3:List*', ], + effect: iam.Effect.ALLOW, + resources: [ + bucket.bucketArn, + bucket.arnForObjects('*'), + ], + principals: [ + new iam.ArnPrincipal(Stack.of(this).formatArn({ + service: 'iam', + region: '', + account: '111111111111', + resource: 'role', + resourceName: 'MyLaunchRole', + })) + ], + conditions: { + 'ForAnyValue:StringEquals': { + 'aws:CalledVia': ['cloudformation.amazonaws.com'], + }, + 'Bool': { + 'aws:ViaAWSService': true, + }, + }, }); ``` -Furthermore, in order for a spoke account to provision a product with an asset, the role launching +Furthermore, in order for a spoke account to provision a product with an asset, the role launching the product needs permissions to read from the asset bucket. We recommend you utilize a launch role with permissions to read from the asset bucket. For example your launch role would need to include at least the following policy: ```json { - "Statement": [ - { - "Effect": "Allow", - "Action": [ - "s3:GetObject" - ], - "Resource": "*" - } - ] + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "s3:GetObject" + ], + "Resource": "*" + } + ] } ``` @@ -281,7 +280,7 @@ to understand the permissions that launch roles need. ### Creating a Product from a stack with a history of previous versions The default behavior of Service Catalog is to overwrite each product version upon deployment. -This applies to Product Stacks as well, where only the latest changes to your Product Stack will +This applies to Product Stacks as well, where only the latest changes to your Product Stack will be deployed. To keep a history of the revisions of a ProductStack available in Service Catalog, you would need to define a ProductStack for each historical copy. @@ -293,11 +292,8 @@ The `locked` boolean which when set to true will prevent your `currentVersionNam from being overwritten when there is an existing snapshot for that version. ```ts -import * as s3 from 'aws-cdk-lib/aws-s3'; -import * as cdk from 'aws-cdk-lib'; - class S3BucketProduct extends servicecatalog.ProductStack { - constructor(scope: cdk.Construct, id: string) { + constructor(scope: Construct, id: string) { super(scope, id); new s3.Bucket(this, 'BucketProduct'); @@ -314,11 +310,8 @@ const productStackHistory = new servicecatalog.ProductStackHistory(this, 'Produc We can deploy the current version `v1` by using `productStackHistory.currentVersion()` ```ts -import * as s3 from 'aws-cdk-lib/aws-s3'; -import * as cdk from 'aws-cdk-lib'; - class S3BucketProduct extends servicecatalog.ProductStack { - constructor(scope: cdk.Construct, id: string) { + constructor(scope: Construct, id: string) { super(scope, id); new s3.Bucket(this, 'BucketProductV2'); @@ -342,19 +335,16 @@ const product = new servicecatalog.CloudFormationProduct(this, 'MyFirstProduct', Using `ProductStackHistory` all deployed templates for the ProductStack will be written to disk, so that they will still be available in the future as the definition of the `ProductStack` subclass changes over time. -**It is very important** that you commit these old versions to source control as these versions +**It is very important** that you commit these old versions to source control as these versions determine whether a version has already been deployed and can also be deployed themselves. -After using `ProductStackHistory` to deploy version `v1` of your `ProductStack`, we +After using `ProductStackHistory` to deploy version `v1` of your `ProductStack`, we make changes to the `ProductStack` and update the `currentVersionName` to `v2`. We still want our `v1` version to still be deployed, so we reference it by calling `productStackHistory.versionFromSnapshot('v1')`. ```ts -import * as s3 from 'aws-cdk-lib/aws-s3'; -import * as cdk from 'aws-cdk-lib'; - class S3BucketProduct extends servicecatalog.ProductStack { - constructor(scope: cdk.Construct, id: string) { + constructor(scope: Construct, id: string) { super(scope, id); new s3.Bucket(this, 'BucketProductV2'); @@ -424,7 +414,7 @@ Constraints are governance gestures that you place on product-portfolio associat Using the CDK, if you do not explicitly associate a product to a portfolio and add a constraint, it will automatically add an association for you. There are rules around how constraints are applied to portfolio-product associations. -For example, you can only have a single "launch role" constraint applied to a portfolio-product association. +For example, you can only have a single "launch role" constraint applied to a portfolio-product association. If a misconfigured constraint is added, `synth` will fail with an error message. Read more at [Service Catalog Constraints](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints.html). @@ -472,7 +462,7 @@ portfolio.notifyOnStackEvents(product, topic1); const topic2 = new sns.Topic(this, 'Topic2'); portfolio.notifyOnStackEvents(product, topic2, { - description: 'description for topic2', // description is an optional field. + description: 'description for topic2', // description is an optional field. }); ``` @@ -496,9 +486,9 @@ declare const product: servicecatalog.CloudFormationProduct; portfolio.constrainCloudFormationParameters(product, { rule: { ruleName: 'testInstanceType', - condition: cdk.Fn.conditionEquals(cdk.Fn.ref('Environment'), 'test'), + condition: Fn.conditionEquals(Fn.ref('Environment'), 'test'), assertions: [{ - assert: cdk.Fn.conditionContains(['t2.micro', 't2.small'], cdk.Fn.ref('InstanceType')), + assert: Fn.conditionContains(['t2.micro', 't2.small'], Fn.ref('InstanceType')), description: 'For test environment, the instance type should be small', }], }, @@ -515,8 +505,6 @@ You can only have one launch role set for a portfolio-product association, and you cannot set a launch role on a product that already has a StackSets deployment configured. ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; - declare const portfolio: servicecatalog.Portfolio; declare const product: servicecatalog.CloudFormationProduct; @@ -529,14 +517,12 @@ portfolio.setLaunchRole(product, launchRole); You can also set the launch role using just the name of a role which is locally deployed in end user accounts. This is useful for when roles and users are separately managed outside of the CDK. -The given role must exist in both the account that creates the launch role constraint, -as well as in any end user accounts that wish to provision a product with the launch role. +The given role must exist in both the account that creates the launch role constraint, +as well as in any end user accounts that wish to provision a product with the launch role. You can do this by passing in the role with an explicitly set name: ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; - declare const portfolio: servicecatalog.Portfolio; declare const product: servicecatalog.CloudFormationProduct; @@ -551,8 +537,6 @@ portfolio.setLocalLaunchRole(product, launchRole); Or you can simply pass in a role name and CDK will create a role with that name that trusts service catalog in the account: ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; - declare const portfolio: servicecatalog.Portfolio; declare const product: servicecatalog.CloudFormationProduct; @@ -565,8 +549,8 @@ to understand the permissions that launch roles need. ### Deploy with StackSets -A StackSets deployment constraint allows you to configure product deployment options using -[AWS CloudFormation StackSets](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/using-stacksets.html). +A StackSets deployment constraint allows you to configure product deployment options using +[AWS CloudFormation StackSets](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/using-stacksets.html). You can specify one or more accounts and regions into which stack instances will launch when the product is provisioned. There is an additional field `allowStackSetInstanceOperations` that sets ability for end users to create, edit, or delete the stacks created by the StackSet. By default, this field is set to `false`. @@ -575,8 +559,6 @@ You can only define one StackSets deployment configuration per portfolio-product and you cannot both set a launch role and StackSets deployment configuration for an assocation. ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; - declare const portfolio: servicecatalog.Portfolio; declare const product: servicecatalog.CloudFormationProduct; diff --git a/packages/aws-cdk-lib/aws-ses/README.md b/packages/aws-cdk-lib/aws-ses/README.md index 5a7097a9c02c0..327172954ab1d 100644 --- a/packages/aws-cdk-lib/aws-ses/README.md +++ b/packages/aws-cdk-lib/aws-ses/README.md @@ -142,7 +142,7 @@ Use `addEventDestination()` to publish email sending events to Amazon SNS or Ama ```ts declare const myConfigurationSet: ses.ConfigurationSet; -declare const myTopic: ses.Topic; +declare const myTopic: sns.Topic; myConfigurationSet.addEventDestination('ToSns', { destination: ses.EventDestination.snsTopic(myTopic), @@ -161,7 +161,7 @@ To verify an identity for a hosted zone, you create an `EmailIdentity`: ```ts declare const myHostedZone: route53.IPublicHostedZone; -const identity = new ses.EmailIdentity(stack, 'Identity', { +const identity = new ses.EmailIdentity(this, 'Identity', { identity: ses.Identity.publicHostedZone(myHostedZone), mailFromDomain: 'mail.cdk.dev', }); @@ -176,9 +176,9 @@ as [Bring Your Own DKIM (BYODKIM)](https://docs.aws.amazon.com/ses/latest/dg/sen ```ts declare const myHostedZone: route53.IPublicHostedZone; -new ses.EmailIdentity(stack, 'Identity', { +new ses.EmailIdentity(this, 'Identity', { identity: ses.Identity.publicHostedZone(myHostedZone), - dkimIdentity: DkimIdentity.byoDkim({ + dkimIdentity: ses.DkimIdentity.byoDkim({ privateKey: SecretValue.secretsManager('dkim-private-key'), publicKey: '...base64-encoded-public-key...', selector: 'selector', @@ -195,7 +195,7 @@ When using `publicHostedZone()` for the identity, all necessary Amazon Route 53 When working with `domain()`, records must be created manually: ```ts -const identity = new ses.EmailIdentity(stack, 'Identity', { +const identity = new ses.EmailIdentity(this, 'Identity', { identity: ses.Identity.domain('cdk.dev'), }); diff --git a/packages/aws-cdk-lib/aws-sns/README.md b/packages/aws-cdk-lib/aws-sns/README.md index bcaeb08bc9090..e5143003b9911 100644 --- a/packages/aws-cdk-lib/aws-sns/README.md +++ b/packages/aws-cdk-lib/aws-sns/README.md @@ -111,7 +111,7 @@ myTopic.addSubscription(new subscriptions.LambdaSubscription(fn, { ### Example of Firehose Subscription ```ts -import { DeliveryStream } from 'aws-cdk-lib/aws-kinesisfirehose'; +import { DeliveryStream } from '@aws-cdk/aws-kinesisfirehose-alpha'; const topic = new sns.Topic(this, 'Topic'); declare const stream: DeliveryStream; diff --git a/packages/aws-cdk-lib/aws-ssm/README.md b/packages/aws-cdk-lib/aws-ssm/README.md index cf7ca2a243bd7..a05447c87a8a3 100644 --- a/packages/aws-cdk-lib/aws-ssm/README.md +++ b/packages/aws-cdk-lib/aws-ssm/README.md @@ -9,6 +9,8 @@ You can reference existing SSM Parameter Store values that you want to use in your CDK app by using `ssm.StringParameter.fromStringParameterAttributes`: ```ts +const parameterVersion = Token.asNumber({ Ref: 'MyParameter' }); + // Retrieve the latest value of the non-secret parameter // with name "/My/String/Parameter". const stringValue = ssm.StringParameter.fromStringParameterAttributes(this, 'MyValue', { @@ -38,13 +40,13 @@ You can also reference an existing SSM Parameter Store value that matches an [AWS specific parameter type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html#aws-specific-parameter-types): ```ts -ssm.StringParameter.valueForTypedStringParameterV2(stack, '/My/Public/Parameter', ssm.ParameterValueType.AWS_EC2_IMAGE_ID); +ssm.StringParameter.valueForTypedStringParameterV2(this, '/My/Public/Parameter', ssm.ParameterValueType.AWS_EC2_IMAGE_ID); ``` To do the same for a SSM Parameter Store value that is stored as a list: ```ts -ssm.StringListParameter.valueForTypedListParameter(stack, '/My/Public/Parameter', ssm.ParameterValueType.AWS_EC2_IMAGE_ID); +ssm.StringListParameter.valueForTypedListParameter(this, '/My/Public/Parameter', ssm.ParameterValueType.AWS_EC2_IMAGE_ID); ``` ### Lookup existing parameters @@ -53,7 +55,7 @@ You can also use an existing parameter by looking up the parameter from the AWS This method uses AWS API calls to lookup the value from SSM during synthesis. ```ts -const stringValue = ssm.StringParameter.valueFromLookup(stack, '/My/Public/Parameter'); +const stringValue = ssm.StringParameter.valueFromLookup(this, '/My/Public/Parameter'); ``` When using `valueFromLookup` an initial value of 'dummy-value-for-${parameterName}' @@ -117,7 +119,7 @@ new ssm.StringParameter(this, 'Parameter', { ```ts // Create a new SSM Parameter holding a String -const param = new ssm.StringParameter(stack, 'StringParameter', { +const param = new ssm.StringParameter(this, 'StringParameter', { // description: 'Some user-friendly description', // name: 'ParameterName', stringValue: 'Initial parameter value', @@ -125,10 +127,11 @@ const param = new ssm.StringParameter(stack, 'StringParameter', { }); // Grant read access to some Role +declare const role: iam.IRole; param.grantRead(role); // Create a new SSM Parameter holding a StringList -const listParameter = new ssm.StringListParameter(stack, 'StringListParameter', { +const listParameter = new ssm.StringListParameter(this, 'StringListParameter', { // description: 'Some user-friendly description', // name: 'ParameterName', stringListValue: ['Initial parameter value A', 'Initial parameter value B'], diff --git a/packages/aws-cdk-lib/aws-stepfunctions-tasks/README.md b/packages/aws-cdk-lib/aws-stepfunctions-tasks/README.md index 4e095786df26a..baa4b4c5b400a 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions-tasks/README.md +++ b/packages/aws-cdk-lib/aws-stepfunctions-tasks/README.md @@ -167,7 +167,7 @@ new tasks.CallApiGatewayRestApiEndpoint(this, 'Endpoint', { The `CallApiGatewayHttpApiEndpoint` calls the HTTP API endpoint. ```ts -import * as apigatewayv2 from 'aws-cdk-lib/aws-apigatewayv2'; +import * as apigatewayv2 from '@aws-cdk/aws-apigatewayv2-alpha'; const httpApi = new apigatewayv2.HttpApi(this, 'MyHttpApi'); const invokeTask = new tasks.CallApiGatewayHttpApiEndpoint(this, 'Call HTTP API', { @@ -298,7 +298,7 @@ Step Functions supports [Batch](https://docs.aws.amazon.com/step-functions/lates The [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html) API submits an AWS Batch job from a job definition. ```ts -import * as batch from 'aws-cdk-lib/aws-batch'; +import * as batch from '@aws-cdk/aws-batch-alpha'; declare const batchJobDefinition: batch.JobDefinition; declare const batchQueue: batch.JobQueue; diff --git a/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.ts b/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.ts index 8d0a2f7c2ed9d..12166183c9962 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.ts +++ b/packages/aws-cdk-lib/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.ts @@ -29,7 +29,7 @@ export interface CallApiGatewayRestApiEndpointProps extends CallApiGatewayEndpoi * `JsonPath.array()` to wrap the token in an array: * * ```ts - * import * as apigateway from '@aws-cdk/aws-apigateway'; + * import * as apigateway from 'aws-cdk-lib/aws-apigateway'; * declare const api: apigateway.RestApi; * * new tasks.CallApiGatewayRestApiEndpoint(this, 'Endpoint', { diff --git a/packages/aws-cdk-lib/aws-stepfunctions-tasks/test/eval-nodejs-handler.test.ts b/packages/aws-cdk-lib/aws-stepfunctions-tasks/test/eval-nodejs-handler.test.ts index 8d69e9d3b8105..8254e6e2f482d 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions-tasks/test/eval-nodejs-handler.test.ts +++ b/packages/aws-cdk-lib/aws-stepfunctions-tasks/test/eval-nodejs-handler.test.ts @@ -1,6 +1,14 @@ import { Event } from '../lib'; import { handler } from '../lib/eval-nodejs-handler'; +beforeAll(() => { + jest.spyOn(console, 'log').mockImplementation(); +}); + +afterAll(() => { + jest.restoreAllMocks(); +}); + test('with numbers', async () => { // GIVEN const event: Event = { diff --git a/packages/aws-cdk-lib/aws-stepfunctions/README.md b/packages/aws-cdk-lib/aws-stepfunctions/README.md index f41088f0e61df..7b100988e9f0a 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions/README.md +++ b/packages/aws-cdk-lib/aws-stepfunctions/README.md @@ -576,7 +576,6 @@ Tasks are executed using the State Machine's execution role. In some cases, e.g. This can be achieved by providing the optional `credentials` property which allows using a fixed role or a json expression to resolve the role at runtime from the task's inputs. ```ts -import * as iam from 'aws-cdk-lib/aws-iam'; import * as lambda from 'aws-cdk-lib/aws-lambda'; declare const submitLambda: lambda.Function; @@ -916,13 +915,13 @@ In addition, the StateMachine can be imported via the `StateMachine.fromStateMac const app = new App(); const stack = new Stack(app, 'MyStack'); sfn.StateMachine.fromStateMachineArn( - stack, + this, "ViaArnImportedStateMachine", "arn:aws:states:us-east-1:123456789012:stateMachine:StateMachine2E01A3A5-N5TJppzoevKQ" ); sfn.StateMachine.fromStateMachineName( - stack, + this, "ViaResourceNameImportedStateMachine", "StateMachine2E01A3A5-N5TJppzoevKQ" ); diff --git a/packages/aws-cdk-lib/aws-stepfunctions/lib/task-credentials.ts b/packages/aws-cdk-lib/aws-stepfunctions/lib/task-credentials.ts index 9454e16f999a6..8ce9b071bf66e 100644 --- a/packages/aws-cdk-lib/aws-stepfunctions/lib/task-credentials.ts +++ b/packages/aws-cdk-lib/aws-stepfunctions/lib/task-credentials.ts @@ -28,7 +28,7 @@ export abstract class TaskRole { * * @example * - * TaskRole.fromRoleArnJsonPath('$.RoleArn'); + * sfn.TaskRole.fromRoleArnJsonPath('$.RoleArn'); */ public static fromRoleArnJsonPath(expression: string): TaskRole { return new JsonExpressionTaskRole(expression); diff --git a/packages/aws-cdk-lib/cloud-assembly-schema/lib/assets/docker-image-asset.ts b/packages/aws-cdk-lib/cloud-assembly-schema/lib/assets/docker-image-asset.ts index 6224af4fb6c77..fd124d683317d 100644 --- a/packages/aws-cdk-lib/cloud-assembly-schema/lib/assets/docker-image-asset.ts +++ b/packages/aws-cdk-lib/cloud-assembly-schema/lib/assets/docker-image-asset.ts @@ -147,7 +147,13 @@ export interface DockerCacheOption { * Refer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. * @default {} No options provided * - * @example { ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, mode: "max" } + * @example + * declare const branch: string; + * + * const params = { + * ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, + * mode: "max", + * }; */ readonly params?: { [key: string]: string }; } \ No newline at end of file diff --git a/packages/aws-cdk-lib/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.ts b/packages/aws-cdk-lib/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.ts index bcc67298ff308..569ef31d1e8c9 100644 --- a/packages/aws-cdk-lib/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.ts +++ b/packages/aws-cdk-lib/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.ts @@ -88,7 +88,13 @@ export interface ContainerImageAssetCacheOption { * Refer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. * @default {} No options provided * - * @example { ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, mode: "max" } + * @example + * declare const branch: string; + * + * const params = { + * ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, + * mode: "max", + * }; */ readonly params?: { [key: string]: string }; } diff --git a/packages/aws-cdk-lib/cloud-assembly-schema/test/__snapshots__/manifest.test.js.snap b/packages/aws-cdk-lib/cloud-assembly-schema/test/__snapshots__/manifest.test.js.snap index 58289c740c914..14a8ff8031165 100644 --- a/packages/aws-cdk-lib/cloud-assembly-schema/test/__snapshots__/manifest.test.js.snap +++ b/packages/aws-cdk-lib/cloud-assembly-schema/test/__snapshots__/manifest.test.js.snap @@ -1,7 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`manifest load 1`] = ` -Object { +{ "version": "0.0.0", } `; diff --git a/packages/aws-cdk-lib/core/README.md b/packages/aws-cdk-lib/core/README.md index 92b3c137a06c5..89834eb10784a 100644 --- a/packages/aws-cdk-lib/core/README.md +++ b/packages/aws-cdk-lib/core/README.md @@ -28,12 +28,9 @@ According to the kind of project you are developing: You can use a classic import to get access to each service namespaces: ```ts -import { Stack, App, aws_s3 as s3 } from 'aws-cdk-lib'; +import { aws_s3 as s3 } from 'aws-cdk-lib'; -const app = new App(); -const stack = new Stack(app, 'TestStack'); - -new s3.Bucket(stack, 'TestBucket'); +new s3.Bucket(this, 'TestBucket'); ``` #### Barrel import @@ -41,13 +38,9 @@ new s3.Bucket(stack, 'TestBucket'); Alternatively, you can use "barrel" imports: ```ts -import { App, Stack } from 'aws-cdk-lib'; import { Bucket } from 'aws-cdk-lib/aws-s3'; -const app = new App(); -const stack = new Stack(app, 'TestStack'); - -new Bucket(stack, 'TestBucket'); +new Bucket(this, 'TestBucket'); ``` @@ -930,7 +923,7 @@ The properties passed to the level 2 constructs `AutoScalingGroup` and `Instance The CfnWaitCondition resource from the `aws-cloudformation` module suppports the `resourceSignal`. The format of the timeout is `PT#H#M#S`. In the example below AWS Cloudformation will wait for -3 success signals to occur within 15 minutes before the status of the resource will be set to +3 success signals to occur within 15 minutes before the status of the resource will be set to `CREATE_COMPLETE`. ```ts @@ -1328,7 +1321,7 @@ To use one or more validation plugins in your application, use the const app = new App({ policyValidationBeta1: [ // These hypothetical classes implement IValidationPlugin: - new ThirdPartyPluginX(), + new ThirdPartyPluginX(), new ThirdPartyPluginY(), ], }); @@ -1351,12 +1344,12 @@ validation. > secure to use. By default, the report will be printed in a human readable format. If you want a -report in JSON format, enable it using the `@aws-cdk/core:validationReportJson` +report in JSON format, enable it using the `@aws-cdk/core:validationReportJson` context passing it directly to the application: ```ts -const app = new App({ - context: { '@aws-cdk/core:validationReportJson': true }, +const app = new App({ + context: { '@aws-cdk/core:validationReportJson': true }, }); ``` diff --git a/packages/aws-cdk-lib/core/lib/assets.ts b/packages/aws-cdk-lib/core/lib/assets.ts index ccb8eaadfa192..f03e89e23cbfa 100644 --- a/packages/aws-cdk-lib/core/lib/assets.ts +++ b/packages/aws-cdk-lib/core/lib/assets.ts @@ -377,7 +377,13 @@ export interface DockerCacheOption { * Refer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. * @default {} No options provided * - * @example { ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, mode: "max" } + * @example + * declare const branch: string; + * + * const params = { + * ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`, + * mode: "max", + * }; */ readonly params?: { [key: string]: string }; } \ No newline at end of file diff --git a/packages/aws-cdk-lib/core/lib/permissions-boundary.ts b/packages/aws-cdk-lib/core/lib/permissions-boundary.ts index a80ae44363862..19ef1f497d66a 100644 --- a/packages/aws-cdk-lib/core/lib/permissions-boundary.ts +++ b/packages/aws-cdk-lib/core/lib/permissions-boundary.ts @@ -54,7 +54,6 @@ export class PermissionsBoundary { * @param name the name of the permissions boundary policy * * @example - * declare const app: App; * new Stage(app, 'ProdStage', { * permissionsBoundary: PermissionsBoundary.fromName('my-custom-permissions-boundary'), * }); @@ -80,7 +79,6 @@ export class PermissionsBoundary { * @param arn the ARN of the permissions boundary policy * * @example - * declare const app: App; * new Stage(app, 'ProdStage', { * permissionsBoundary: PermissionsBoundary.fromArn('arn:aws:iam::${AWS::AccountId}:policy/my-custom-permissions-boundary'), * }); diff --git a/packages/aws-cdk-lib/core/lib/stack.ts b/packages/aws-cdk-lib/core/lib/stack.ts index f251e8b9b7b25..8cdab70e5cf38 100644 --- a/packages/aws-cdk-lib/core/lib/stack.ts +++ b/packages/aws-cdk-lib/core/lib/stack.ts @@ -1358,6 +1358,15 @@ export class Stack extends Construct implements ITaggable { // in which Export/Fn::ImportValue would work is if the value are the same // between producer and consumer anyway, so we can just assume that they are). const containingAssembly = Stage.of(this); + + if (env.account && typeof(env.account) !== 'string') { + throw new Error(`Account id of stack environment must be a 'string' but received '${typeof(env.account)}'`); + } + + if (env.region && typeof(env.region) !== 'string') { + throw new Error(`Region of stack environment must be a 'string' but received '${typeof(env.region)}'`); + } + const account = env.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID; const region = env.region ?? containingAssembly?.region ?? Aws.REGION; diff --git a/packages/aws-cdk-lib/core/lib/tag-manager.ts b/packages/aws-cdk-lib/core/lib/tag-manager.ts index 851c4406e4b24..ed7cd8ce1cae7 100644 --- a/packages/aws-cdk-lib/core/lib/tag-manager.ts +++ b/packages/aws-cdk-lib/core/lib/tag-manager.ts @@ -261,15 +261,13 @@ export interface TagManagerOptions { * value that will resolve to the tags at synthesis time. * * @example - * import * as cdk from '@aws-cdk/core'; + * class MyConstruct extends Resource implements ITaggable { + * public readonly tags = new TagManager(TagType.KEY_VALUE, 'Whatever::The::Type'); * - * class MyConstruct extends cdk.Resource implements cdk.ITaggable { - * public readonly tags = new cdk.TagManager(cdk.TagType.KEY_VALUE, 'Whatever::The::Type'); - * - * constructor(scope: cdk.Construct, id: string) { + * constructor(scope: Construct, id: string) { * super(scope, id); * - * new cdk.CfnResource(this, 'Resource', { + * new CfnResource(this, 'Resource', { * type: 'Whatever::The::Type', * properties: { * // ... diff --git a/packages/aws-cdk-lib/core/lib/validation/validation.ts b/packages/aws-cdk-lib/core/lib/validation/validation.ts index df5f6a95d5a07..f392b1d3c1072 100644 --- a/packages/aws-cdk-lib/core/lib/validation/validation.ts +++ b/packages/aws-cdk-lib/core/lib/validation/validation.ts @@ -4,30 +4,29 @@ import { PolicyValidationPluginReportBeta1 } from './report'; * Represents a validation plugin that will be executed during synthesis * * @example - * class MyCustomValidatorPlugin implements IValidationPlugin { - * public readonly name = 'my-custom-plugin'; + * /// fixture=validation-plugin + * class MyPlugin implements IPolicyValidationPluginBeta1 { + * public readonly name = 'MyPlugin'; * - * public isReady(): boolean { - * // check if the plugin tool is installed - * return true; - * } + * public validate(context: IPolicyValidationContextBeta1): PolicyValidationPluginReportBeta1 { + * // First read the templates using context.templatePaths... * - * public validate(context: IValidationContext): ValidationPluginReport { - * const templatePaths = context.templatePaths; - * // perform validation on the template - * // if there are any failures report them - * return { - * pluginName: this.name, - * success: false, - * violations: [{ - * ruleName: 'rule-name', - * description: 'description of the rule', - * violatingResources: [{ - * resourceName: 'FailingResource', - * templatePath: '/path/to/stack.template.json', - * }], - * }); - * } + * // ...then perform the validation, and then compose and return the report. + * // Using hard-coded values here for better clarity: + * return { + * success: false, + * violations: [{ + * ruleName: 'CKV_AWS_117', + * description: 'Ensure that AWS Lambda function is configured inside a VPC', + * fix: 'https://docs.bridgecrew.io/docs/ensure-that-aws-lambda-function-is-configured-inside-a-vpc-1', + * violatingResources: [{ + * resourceLogicalId: 'MyFunction3BAA72D1', + * templatePath: '/home/johndoe/myapp/cdk.out/MyService.template.json', + * locations: ['Properties/VpcConfig'], + * }], + * }], + * }; + * } * } */ export interface IPolicyValidationPluginBeta1 { diff --git a/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-reader-handler.test.ts b/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-reader-handler.test.ts index cdd021a54a9f6..f3005503b5ba0 100644 --- a/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-reader-handler.test.ts +++ b/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-reader-handler.test.ts @@ -39,6 +39,10 @@ beforeEach(() => { }); }); afterEach(() => { + jest.clearAllMocks(); +}); + +afterAll(() => { jest.restoreAllMocks(); }); diff --git a/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-writer-handler.test.ts b/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-writer-handler.test.ts index e5079668b3b8c..386e7d133b5c1 100644 --- a/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-writer-handler.test.ts +++ b/packages/aws-cdk-lib/core/test/custom-resource-provider/cross-region-ssm-writer-handler.test.ts @@ -34,7 +34,8 @@ beforeEach(() => { mockDeleteParameters = jest.fn().mockImplementation(() => { return {}; }); - mocklistTagsForResource = jest.fn().mockImplementation(() => { + mocklistTagsForResource = jest.fn(); + mocklistTagsForResource.mockImplementation(() => { return {}; }); mockPutParameter.mockImplementation(() => { @@ -42,11 +43,11 @@ beforeEach(() => { }); }); afterEach(() => { - jest.restoreAllMocks(); + jest.clearAllMocks(); }); -describe('cross-region-ssm-writer throws', () => { - +afterAll(() => { + jest.restoreAllMocks(); }); describe('cross-region-ssm-writer entrypoint', () => { diff --git a/packages/aws-cdk-lib/core/test/private/tree-metadata.test.ts b/packages/aws-cdk-lib/core/test/private/tree-metadata.test.ts index c3b7b534778b9..c3497bbb4137b 100644 --- a/packages/aws-cdk-lib/core/test/private/tree-metadata.test.ts +++ b/packages/aws-cdk-lib/core/test/private/tree-metadata.test.ts @@ -1,7 +1,7 @@ import * as fs from 'fs'; import * as path from 'path'; -import * as cxschema from '../../../cloud-assembly-schema'; import { Construct } from 'constructs'; +import * as cxschema from '../../../cloud-assembly-schema'; import { App, CfnParameter, CfnResource, Lazy, Stack, TreeInspector } from '../../lib/index'; abstract class AbstractCfnResource extends CfnResource { @@ -46,7 +46,7 @@ describe('tree metadata', () => { children: { BootstrapVersion: { constructInfo: { - fqn: 'aws-cdk-lib.CfnParameter', + fqn: expect.stringMatching(/(aws-cdk-lib.CfnParameter|constructs.Construct)/), version: expect.any(String), }, id: 'BootstrapVersion', @@ -54,7 +54,7 @@ describe('tree metadata', () => { }, CheckBootstrapVersion: { constructInfo: { - fqn: 'aws-cdk-lib.CfnRule', + fqn: expect.stringMatching(/(aws-cdk-lib.CfnRule|constructs.Construct)/), version: expect.any(String), }, id: 'CheckBootstrapVersion', diff --git a/packages/aws-cdk-lib/core/test/stack.test.ts b/packages/aws-cdk-lib/core/test/stack.test.ts index 71097ab0c9584..dc53c437ad787 100644 --- a/packages/aws-cdk-lib/core/test/stack.test.ts +++ b/packages/aws-cdk-lib/core/test/stack.test.ts @@ -1,8 +1,8 @@ import { testDeprecated } from '@aws-cdk/cdk-build-tools'; -import * as cxapi from '../../cx-api'; -import { Fact, RegionInfo } from '../../region-info'; import { Construct, Node } from 'constructs'; import { toCloudFormation } from './util'; +import * as cxapi from '../../cx-api'; +import { Fact, RegionInfo } from '../../region-info'; import { App, CfnCondition, CfnInclude, CfnOutput, CfnParameter, CfnResource, Lazy, ScopedAws, Stack, validateString, @@ -2071,6 +2071,40 @@ describe('stack', () => { stack.node.setContext(cxapi.BUNDLING_STACKS, []); expect(stack.bundlingRequired).toBe(false); }); + + test('account id passed in stack environment must be a string', () => { + // GIVEN + const envConfig: any = { + account: 11111111111, + }; + + // WHEN + const app = new App(); + + // THEN + expect(() => { + new Stack(app, 'Stack', { + env: envConfig, + }); + }).toThrowError('Account id of stack environment must be a \'string\' but received \'number\''); + }); + + test('region passed in stack environment must be a string', () => { + // GIVEN + const envConfig: any = { + region: 2, + }; + + // WHEN + const app = new App(); + + // THEN + expect(() => { + new Stack(app, 'Stack', { + env: envConfig, + }); + }).toThrowError('Region of stack environment must be a \'string\' but received \'number\''); + }); }); describe('permissions boundary', () => { diff --git a/packages/aws-cdk-lib/core/test/staging.test.ts b/packages/aws-cdk-lib/core/test/staging.test.ts index 818b016ffd81c..3ce7301fc2b7a 100644 --- a/packages/aws-cdk-lib/core/test/staging.test.ts +++ b/packages/aws-cdk-lib/core/test/staging.test.ts @@ -1,10 +1,10 @@ import * as os from 'os'; import * as path from 'path'; import { testDeprecated } from '@aws-cdk/cdk-build-tools'; -import { FileAssetPackaging } from '../../cloud-assembly-schema'; -import * as cxapi from '../../cx-api'; import * as fs from 'fs-extra'; import * as sinon from 'sinon'; +import { FileAssetPackaging } from '../../cloud-assembly-schema'; +import * as cxapi from '../../cx-api'; import { App, AssetHashType, AssetStaging, DockerImage, BundlingOptions, BundlingOutput, FileSystem, Stack, Stage, BundlingFileAccess } from '../lib'; const STUB_INPUT_FILE = '/tmp/docker-stub.input'; diff --git a/packages/aws-cdk-lib/core/test/validation/trace.test.ts b/packages/aws-cdk-lib/core/test/validation/trace.test.ts index ef215739169fb..5f17537b88e1b 100644 --- a/packages/aws-cdk-lib/core/test/validation/trace.test.ts +++ b/packages/aws-cdk-lib/core/test/validation/trace.test.ts @@ -31,7 +31,7 @@ describe('ReportTrace', () => { // THEN expect(formatted).toEqual({ id: 'MyStack', - construct: expect.stringMatching(/.*Stack/), + construct: expect.stringMatching(/.*(Stack|Construct)/), libraryVersion: expect.any(String), location: expect.stringMatching(/Object. \(.*\/trace.test.ts:[0-9]+:[0-9]+\)/), path: 'MyStack', @@ -43,13 +43,13 @@ describe('ReportTrace', () => { path: 'MyStack/MyConstruct', child: { id: 'MyL2Resource', - construct: expect.stringMatching(/Resource/), + construct: expect.stringMatching(/(Resource|Construct)/), libraryVersion: expect.any(String), location: expect.stringMatching(/new MyConstruct \(.*\/trace.test.ts:[0-9]+:[0-9]+\)/), path: 'MyStack/MyConstruct/MyL2Resource', child: { id: 'Resource', - construct: expect.stringMatching(/CfnResource/), + construct: expect.stringMatching(/(CfnResource|Construct)/), libraryVersion: expect.any(String), location: expect.stringMatching(/new MyL2Resource \(.*\/trace.test.ts:[0-9]+:[0-9]+\)/), path: 'MyStack/MyConstruct/MyL2Resource/Resource', @@ -78,7 +78,7 @@ describe('ReportTrace', () => { // THEN expect(formatted).toEqual({ id: 'MyStack', - construct: expect.stringMatching(/.*Stack/), + construct: expect.stringMatching(/.*(Stack|Construct)/), libraryVersion: expect.any(String), location: "Run with '--debug' to include location info", path: 'MyStack', @@ -90,13 +90,13 @@ describe('ReportTrace', () => { path: 'MyStack/MyConstruct', child: { id: 'MyL2Resource', - construct: expect.stringMatching(/Resource/), + construct: expect.stringMatching(/(Resource|Construct)/), libraryVersion: expect.any(String), location: "Run with '--debug' to include location info", path: 'MyStack/MyConstruct/MyL2Resource', child: { id: 'Resource', - construct: expect.stringMatching(/CfnResource/), + construct: expect.stringMatching(/(CfnResource|Construct)/), libraryVersion: expect.any(String), location: "Run with '--debug' to include location info", path: 'MyStack/MyConstruct/MyL2Resource/Resource', diff --git a/packages/aws-cdk-lib/core/test/validation/validation.test.ts b/packages/aws-cdk-lib/core/test/validation/validation.test.ts index af5dd9d448e26..d0e3a12602f0a 100644 --- a/packages/aws-cdk-lib/core/test/validation/validation.test.ts +++ b/packages/aws-cdk-lib/core/test/validation/validation.test.ts @@ -16,8 +16,11 @@ beforeEach(() => { }); afterEach(() => { - consoleErrorMock.mockRestore(); - consoleLogMock.mockRestore(); + jest.clearAllMocks(); +}); + +afterAll(() => { + jest.resetAllMocks(); }); describe('validations', () => { @@ -62,11 +65,11 @@ describe('validations', () => { severity: 'medium', creationStack: [ expect.stringMatching(/Default \(Default\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.Stack/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.Stack|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), expect.stringMatching(/└── Fake \(Default\/Fake\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.CfnResource/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.CfnResource|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), ], @@ -246,15 +249,15 @@ Policy Validation Report Summary title: 'test-rule2', creationStack: [ expect.stringMatching(/Stage1 \(Stage1\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.Stage/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.Stage|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), expect.stringMatching(/└── stack1 \(Stage1\/stack1\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.Stack/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.Stack|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), expect.stringMatching(/└── DefaultResource \(Stage1\/stack1\/DefaultResource\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.CfnResource/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.CfnResource|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), ], @@ -477,11 +480,11 @@ Policy Validation Report Summary title: 'rule-1', creationStack: [ expect.stringMatching(/Default \(Default\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.Stack/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.Stack|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), expect.stringMatching(/└── Fake \(Default\/Fake\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.CfnResource/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.CfnResource|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), ], @@ -544,11 +547,11 @@ Policy Validation Report Summary title: 'rule-2', creationStack: [ expect.stringMatching(/Default \(Default\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.Stack/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.Stack|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), expect.stringMatching(/└── Fake \(Default\/Fake\)/), - expect.stringMatching(/│ Construct: aws-cdk-lib.CfnResource/), + expect.stringMatching(/│ Construct: (aws-cdk-lib.CfnResource|constructs.Construct)/), expect.stringMatching(/│ Library Version: .*/), expect.stringMatching(/│ Location: Run with '--debug' to include location info/), ], @@ -665,13 +668,13 @@ Policy Validation Report Summary { constructStack: { 'id': 'Default', - 'construct': 'aws-cdk-lib.Stack', + 'construct': expect.stringMatching(/(aws-cdk-lib.Stack|Construct)/), 'libraryVersion': expect.any(String), 'location': "Run with '--debug' to include location info", 'path': 'Default', 'child': { 'id': 'Fake', - 'construct': 'aws-cdk-lib.CfnResource', + 'construct': expect.stringMatching(/(aws-cdk-lib.CfnResource|Construct)/), 'libraryVersion': expect.any(String), 'location': "Run with '--debug' to include location info", 'path': 'Default/Fake', diff --git a/packages/aws-cdk-lib/custom-resources/README.md b/packages/aws-cdk-lib/custom-resources/README.md index bb8b2247f4163..b06e7dd6404aa 100644 --- a/packages/aws-cdk-lib/custom-resources/README.md +++ b/packages/aws-cdk-lib/custom-resources/README.md @@ -533,14 +533,14 @@ Additionally, the Lambda function can be placed in a private VPC by using the `v and `vpcSubnets` properties. ```ts -declare const myVpc: ec2.Vpc; +declare const vpc: ec2.Vpc; new cr.AwsCustomResource(this, 'CustomizedInVpc', { vpc, - vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_NAT }, + vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }, policy: cr.AwsCustomResourcePolicy.fromSdkCalls({ resources: cr.AwsCustomResourcePolicy.ANY_RESOURCE, - } -}) + }), +}); ``` Note that Lambda functions in a VPC diff --git a/packages/aws-cdk-lib/cx-api/test/__snapshots__/cloud-assembly.test.js.snap b/packages/aws-cdk-lib/cx-api/test/__snapshots__/cloud-assembly.test.js.snap index 6aa2a5490d445..924d0c683fb97 100644 --- a/packages/aws-cdk-lib/cx-api/test/__snapshots__/cloud-assembly.test.js.snap +++ b/packages/aws-cdk-lib/cx-api/test/__snapshots__/cloud-assembly.test.js.snap @@ -1,9 +1,9 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`assembly with a single cloudformation stack and tree metadata 1`] = ` -Object { +{ "environment": "aws://37736633/us-region-1", - "properties": Object { + "properties": { "templateFile": "template.json", }, "type": "aws:cloudformation:stack", @@ -11,8 +11,8 @@ Object { `; exports[`assembly with a single cloudformation stack and tree metadata 2`] = ` -Object { - "properties": Object { +{ + "properties": { "file": "foo.tree.json", }, "type": "cdk:tree", @@ -20,12 +20,12 @@ Object { `; exports[`assembly with missing context 1`] = ` -Array [ - Object { +[ + { "key": "missing:context:key", - "props": Object { + "props": { "account": "1234", - "filter": Object { + "filter": { "foo": 123, }, "region": "us-east-1", @@ -36,8 +36,8 @@ Array [ `; exports[`assets 1`] = ` -Array [ - Object { +[ + { "artifactHashParameter": "hashParameter", "id": "logical-id-of-the-asset", "packaging": "zip", @@ -46,7 +46,7 @@ Array [ "s3KeyParameter": "keyParameter", "sourceHash": "xoxoxox", }, - Object { + { "id": "logical-id-of-the-asset-x1234", "packaging": "container-image", "path": "docker-asset", @@ -56,17 +56,17 @@ Array [ `; exports[`empty assembly 1`] = ` -Object { +{ "version": "0.0.0", } `; exports[`messages 1`] = ` -Array [ - Object { - "entry": Object { +[ + { + "entry": { "data": "boom", - "trace": Array [ + "trace": [ "bam", ], "type": "aws:cdk:warning", @@ -74,10 +74,10 @@ Array [ "id": "foo", "level": "warning", }, - Object { - "entry": Object { + { + "entry": { "data": "error!!", - "trace": Array [ + "trace": [ "bam!Error", ], "type": "aws:cdk:error", @@ -85,10 +85,10 @@ Array [ "id": "foo", "level": "error", }, - Object { - "entry": Object { + { + "entry": { "data": "info?", - "trace": Array [ + "trace": [ "bam!Error", ], "type": "aws:cdk:info", diff --git a/packages/aws-cdk-lib/package.json b/packages/aws-cdk-lib/package.json index c42aa5f61f98f..21d9b9e82e111 100644 --- a/packages/aws-cdk-lib/package.json +++ b/packages/aws-cdk-lib/package.json @@ -143,7 +143,7 @@ "@aws-cdk/cfn2ts": "0.0.0", "lambda-tester": "^3.6.0", "@types/aws-lambda": "^8.10.111", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/lodash": "^4.14.191", "@types/punycode": "^2.1.0", "typescript-json-schema": "^0.55.0" @@ -444,6 +444,15 @@ "publishConfig": { "tag": "latest" }, + "jsiiRosetta": { + "exampleDependencies": { + "@aws-cdk/lambda-layer-kubectl-v25": "^2.0.3", + "cdk8s-plus-25": "^2.7.0", + "@aws-cdk/aws-apigatewayv2-alpha": "^0.0.0", + "@aws-cdk/aws-batch-alpha": "^0.0.0", + "@aws-cdk/aws-kinesisfirehose-alpha": "^0.0.0" + } + }, "awslint": { "exclude": [ "integ-return-type:aws-cdk-lib.IBoundStackSynthesizer.bind", diff --git a/packages/aws-cdk-lib/pipelines/ORIGINAL_API.md b/packages/aws-cdk-lib/pipelines/ORIGINAL_API.md index 37bce5a2e2f42..453b05b099b64 100644 --- a/packages/aws-cdk-lib/pipelines/ORIGINAL_API.md +++ b/packages/aws-cdk-lib/pipelines/ORIGINAL_API.md @@ -207,8 +207,8 @@ library and create `Artifact` objects for the source and Cloud Assembly artifacts: ```ts -import { Construct, Stage, Stack, StackProps, StageProps } from '@aws-cdk/core'; -import * as codepipeline from '@aws-cdk/aws-codepipeline'; +import { Construct, Stage, Stack, StackProps, StageProps } from 'aws-cdk-lib'; +import * as codepipeline from 'aws-cdk-lib/aws-codepipeline'; /** * Stack to hold the pipeline diff --git a/packages/aws-cdk-lib/pipelines/README.md b/packages/aws-cdk-lib/pipelines/README.md index 2ddb53d013588..1bd9403dbeb91 100644 --- a/packages/aws-cdk-lib/pipelines/README.md +++ b/packages/aws-cdk-lib/pipelines/README.md @@ -870,7 +870,7 @@ class MyLambdaStep extends pipelines.Step implements pipelines.ICodePipelineActi private stackOutputReference: pipelines.StackOutputReference constructor( - private readonly function: lambda.Function, + private readonly fn: lambda.Function, stackOutput: CfnOutput, ) { super('MyLambdaStep'); @@ -884,7 +884,7 @@ class MyLambdaStep extends pipelines.Step implements pipelines.ICodePipelineActi runOrder: options.runOrder, // Map the reference to the variable name the CDK has generated for you. userParameters: {stackOutput: options.stackOutputsMap.toCodePipeline(this.stackOutputReference)}, - lambda: this.function, + lambda: this.fn, })); return { runOrdersConsumed: 1 }; @@ -1684,21 +1684,21 @@ const pipeline = new pipelines.CodePipeline(this, 'Pipeline', { // Configure CodeBuild to use a drop-in Docker replacement. codeBuildDefaults: { - buildEnvironment: { - partialBuildSpec: Codebuild.BuildSpec.fromObject({ - phases: { - install: { - // Add the shell commands to install your drop-in Docker - // replacement to the CodeBuild enviromment. - commands: installCommands, - } + partialBuildSpec: codebuild.BuildSpec.fromObject({ + phases: { + install: { + // Add the shell commands to install your drop-in Docker + // replacement to the CodeBuild enviromment. + commands: installCommands, } - }), + } + }), + buildEnvironment: { environmentVariables: { // Instruct the AWS CDK to use `drop-in-replacement` instead of // `docker` when building / publishing docker images. // e.g., `drop-in-replacement build . -f path/to/Dockerfile` - CDK_DOCKER: 'drop-in-replacement', + CDK_DOCKER: { value: 'drop-in-replacement' }, } } }, @@ -1733,7 +1733,7 @@ const pipeline = new pipelines.CodePipeline(this, 'Pipeline', { // If you haven't provided an `ENV` in your Dockerfile that overrides // `CDK_DOCKER`, then you must provide the name of the command that // the AWS CDK should run instead of `docker` here. - CDK_DOCKER: 'drop-in-replacement', + CDK_DOCKER: { value: 'drop-in-replacement' }, } } }, diff --git a/packages/aws-cdk-lib/pipelines/lib/blueprint/stack-deployment.ts b/packages/aws-cdk-lib/pipelines/lib/blueprint/stack-deployment.ts index 6bfcb46339877..aa4f7e6c25ffa 100644 --- a/packages/aws-cdk-lib/pipelines/lib/blueprint/stack-deployment.ts +++ b/packages/aws-cdk-lib/pipelines/lib/blueprint/stack-deployment.ts @@ -1,5 +1,4 @@ import * as path from 'path'; -import { parse as parseUrl } from 'url'; import * as cxapi from '../../../cx-api'; import { AssetType } from './asset-type'; import { Step } from './step'; @@ -334,6 +333,14 @@ function extractStackAssets(stackArtifact: cxapi.CloudFormationStackArtifact): S * @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#virtual-hosted-style-access */ function s3UrlFromUri(uri: string, region: string | undefined) { - const url = parseUrl(uri); - return `https://${url.hostname}.s3.${region ? `${region}.` : ''}amazonaws.com${url.path}`; -} \ No newline at end of file + + // will return something like this + //[ + // 's3:', + // '', + // 'cdk-hnb659fds-assets-111-${AWS::Region}', + // '21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json' + // ] + const url = uri.split('/'); + return `https://${url[2]}.s3.${region ? `${region}.` : ''}amazonaws.com/${url[3]}`; +} diff --git a/packages/aws-cdk-lib/pipelines/test/blueprint/stack-deployment.test.ts b/packages/aws-cdk-lib/pipelines/test/blueprint/stack-deployment.test.ts index 76dbc568733e8..6d116e5b8ee38 100644 --- a/packages/aws-cdk-lib/pipelines/test/blueprint/stack-deployment.test.ts +++ b/packages/aws-cdk-lib/pipelines/test/blueprint/stack-deployment.test.ts @@ -43,7 +43,7 @@ describe('templateUrl', () => { const sd = StageDeployment.fromStage(stage); // THEN - expect(sd.stacks[0].templateUrl).toBe('https://cdk-hnb659fds-assets-111-.s3.amazonaws.com/$%7BAWS::Region%7D/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json'); + expect(sd.stacks[0].templateUrl).toBe('https://cdk-hnb659fds-assets-111-${AWS::Region}.s3.amazonaws.com/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json'); }); }); diff --git a/packages/aws-cdk-lib/region-info/test/__snapshots__/region-info.test.js.snap b/packages/aws-cdk-lib/region-info/test/__snapshots__/region-info.test.js.snap index d3d67ac32bcd7..d35007ebd1e70 100644 --- a/packages/aws-cdk-lib/region-info/test/__snapshots__/region-info.test.js.snap +++ b/packages/aws-cdk-lib/region-info/test/__snapshots__/region-info.test.js.snap @@ -1,15 +1,15 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`built-in data is correct 1`] = ` -Object { - "af-south-1": Object { +{ + "af-south-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13", @@ -21,7 +21,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.af-south-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.af-south-1.amazonaws.com", @@ -37,14 +37,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-east-1": Object { + "ap-east-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13", @@ -56,7 +56,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-east-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-east-1.amazonaws.com", @@ -72,14 +72,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-northeast-1": Object { + "ap-northeast-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23", "1.0.135.0": "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25", "1.0.143.0": "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:31", @@ -91,7 +91,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-ap-northeast-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-northeast-1.amazonaws.com", @@ -107,14 +107,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-northeast-2": Object { + "ap-northeast-2": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20", @@ -126,7 +126,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-northeast-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-northeast-2.amazonaws.com", @@ -142,14 +142,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-northeast-3": Object { + "ap-northeast-3": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1", "1.0.143.0": "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2", @@ -161,7 +161,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-northeast-3.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-northeast-3.amazonaws.com", @@ -177,14 +177,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-south-1": Object { + "ap-south-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21", @@ -196,7 +196,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-south-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-south-1.amazonaws.com", @@ -212,14 +212,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-south-2": Object { + "ap-south-2": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -231,7 +231,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-south-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-south-2.amazonaws.com", @@ -247,14 +247,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-southeast-1": Object { + "ap-southeast-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21", @@ -266,7 +266,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-ap-southeast-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-southeast-1.amazonaws.com", @@ -282,14 +282,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-southeast-2": Object { + "ap-southeast-2": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21", @@ -301,7 +301,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-ap-southeast-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-southeast-2.amazonaws.com", @@ -317,14 +317,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ap-southeast-3": Object { + "ap-southeast-3": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -336,7 +336,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ap-southeast-3.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ap-southeast-3.amazonaws.com", @@ -352,14 +352,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "ca-central-1": Object { + "ca-central-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20", @@ -371,7 +371,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.ca-central-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.ca-central-1.amazonaws.com", @@ -387,14 +387,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "cn-north-1": Object { + "cn-north-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com.cn", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14", @@ -406,7 +406,7 @@ Object { }, "partition": "aws-cn", "s3StaticWebsiteEndpoint": "s3-website.cn-north-1.amazonaws.com.cn", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.cn-north-1.amazonaws.com.cn", @@ -422,14 +422,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "cn.com.amazonaws.vpce", }, - "cn-northwest-1": Object { + "cn-northwest-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com.cn", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14", @@ -441,7 +441,7 @@ Object { }, "partition": "aws-cn", "s3StaticWebsiteEndpoint": "s3-website.cn-northwest-1.amazonaws.com.cn", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.cn-northwest-1.amazonaws.com.cn", @@ -457,14 +457,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "cn.com.amazonaws.vpce", }, - "eu-central-1": Object { + "eu-central-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21", @@ -476,7 +476,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-central-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-central-1.amazonaws.com", @@ -492,14 +492,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-central-2": Object { + "eu-central-2": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -511,7 +511,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-central-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-central-2.amazonaws.com", @@ -527,14 +527,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-north-1": Object { + "eu-north-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20", @@ -546,7 +546,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-north-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-north-1.amazonaws.com", @@ -562,14 +562,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-south-1": Object { + "eu-south-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13", @@ -581,7 +581,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-south-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-south-1.amazonaws.com", @@ -597,14 +597,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-south-2": Object { + "eu-south-2": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -616,7 +616,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-south-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-south-2.amazonaws.com", @@ -632,14 +632,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-west-1": Object { + "eu-west-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21", @@ -651,7 +651,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-eu-west-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-west-1.amazonaws.com", @@ -667,14 +667,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-west-2": Object { + "eu-west-2": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21", @@ -686,7 +686,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-west-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-west-2.amazonaws.com", @@ -702,14 +702,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "eu-west-3": Object { + "eu-west-3": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20", @@ -721,7 +721,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.eu-west-3.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.eu-west-3.amazonaws.com", @@ -737,14 +737,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "me-central-1": Object { + "me-central-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -756,7 +756,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.me-central-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.me-central-1.amazonaws.com", @@ -772,14 +772,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "me-south-1": Object { + "me-south-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9", "1.0.135.0": "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11", "1.0.143.0": "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13", @@ -791,7 +791,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.me-south-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.me-south-1.amazonaws.com", @@ -807,14 +807,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "sa-east-1": Object { + "sa-east-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20", @@ -826,7 +826,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-sa-east-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.sa-east-1.amazonaws.com", @@ -842,14 +842,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-east-1": Object { + "us-east-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21", @@ -861,7 +861,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-us-east-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-east-1.amazonaws.com", @@ -877,14 +877,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-east-2": Object { + "us-east-2": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21", @@ -896,7 +896,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website.us-east-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-east-2.amazonaws.com", @@ -912,14 +912,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-gov-east-1": Object { + "us-gov-east-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -931,7 +931,7 @@ Object { }, "partition": "aws-us-gov", "s3StaticWebsiteEndpoint": "s3-website.us-gov-east-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-gov-east-1.amazonaws.com", @@ -947,14 +947,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-gov-west-1": Object { + "us-gov-west-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -966,7 +966,7 @@ Object { }, "partition": "aws-us-gov", "s3StaticWebsiteEndpoint": "s3-website-us-gov-west-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-gov-west-1.amazonaws.com", @@ -982,14 +982,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-iso-east-1": Object { + "us-iso-east-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "c2s.ic.gov", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -1001,7 +1001,7 @@ Object { }, "partition": "aws-iso", "s3StaticWebsiteEndpoint": "s3-website.us-iso-east-1.c2s.ic.gov", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.amazonaws.com", @@ -1017,14 +1017,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "gov.ic.c2s.vpce", }, - "us-iso-west-1": Object { + "us-iso-west-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "c2s.ic.gov", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -1036,7 +1036,7 @@ Object { }, "partition": "aws-iso", "s3StaticWebsiteEndpoint": "s3-website.us-iso-west-1.c2s.ic.gov", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.amazonaws.com", @@ -1052,14 +1052,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "gov.ic.c2s.vpce", }, - "us-isob-east-1": Object { + "us-isob-east-1": { "cdkMetadataResourceAvailable": false, "domainSuffix": "sc2s.sgov.gov", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, "1.0.143.0": undefined, @@ -1071,7 +1071,7 @@ Object { }, "partition": "aws-iso-b", "s3StaticWebsiteEndpoint": "s3-website.us-isob-east-1.sc2s.sgov.gov", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.amazonaws.com", @@ -1087,14 +1087,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "gov.sgov.sc2s.vpce", }, - "us-west-1": Object { + "us-west-1": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": undefined, "1.0.135.0": undefined, }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20", @@ -1106,7 +1106,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-us-west-1.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-west-1.amazonaws.com", @@ -1122,14 +1122,14 @@ Object { }, "vpcEndPointServiceNamePrefix": "com.amazonaws.vpce", }, - "us-west-2": Object { + "us-west-2": { "cdkMetadataResourceAvailable": true, "domainSuffix": "amazonaws.com", - "lambdaInsightsArmVersions": Object { + "lambdaInsightsArmVersions": { "1.0.119.0": "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1", "1.0.135.0": "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2", }, - "lambdaInsightsVersions": Object { + "lambdaInsightsVersions": { "1.0.119.0": "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16", "1.0.135.0": "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18", "1.0.143.0": "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21", @@ -1141,7 +1141,7 @@ Object { }, "partition": "aws", "s3StaticWebsiteEndpoint": "s3-website-us-west-2.amazonaws.com", - "servicePrincipals": Object { + "servicePrincipals": { "application-autoscaling": "application-autoscaling.amazonaws.com", "autoscaling": "autoscaling.amazonaws.com", "codedeploy": "codedeploy.us-west-2.amazonaws.com", diff --git a/packages/aws-cdk-lib/rosetta/README-custom-resource-provider.ts-fixture b/packages/aws-cdk-lib/rosetta/README-custom-resource-provider.ts-fixture index a116224f856db..86797a85e544c 100644 --- a/packages/aws-cdk-lib/rosetta/README-custom-resource-provider.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/README-custom-resource-provider.ts-fixture @@ -1,4 +1,5 @@ -import { CfnOutput, Construct, Token } from 'aws-cdk-lib'; +import { CfnOutput, Token } from 'aws-cdk-lib'; +import { Construct } from 'constructs'; declare interface SumProps { readonly lhs: number; @@ -8,8 +9,6 @@ declare class Sum extends Construct { public readonly result: number; constructor(scope: Construct, id: string, props: SumProps); } -declare class ThirdPartyPluginX extends IValidationPlugin {} -declare class ThirdPartyPluginY extends IValidationPlugin {} class fixture$construct extends Construct { public constructor(scope: Construct, id: string) { diff --git a/packages/aws-cdk-lib/rosetta/aws_appmesh/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_appmesh/default.ts-fixture index 63925abad6183..9b94e2df20a6a 100644 --- a/packages/aws-cdk-lib/rosetta/aws_appmesh/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_appmesh/default.ts-fixture @@ -1,4 +1,5 @@ // Fixture with packages imported, but nothing else +import { Construct } from 'constructs'; import cdk = require('aws-cdk-lib'); import acmpca = require('aws-cdk-lib/aws-acmpca'); import appmesh = require('aws-cdk-lib/aws-appmesh'); @@ -6,9 +7,10 @@ import certificatemanager = require('aws-cdk-lib/aws-certificatemanager'); import cloudmap = require('aws-cdk-lib/aws-servicediscovery'); import ec2 = require('aws-cdk-lib/aws-ec2'); import iam = require('aws-cdk-lib/aws-iam'); +import { Duration } from 'aws-cdk-lib'; class Fixture extends cdk.Stack { - constructor(scope: cdk.Construct, id: string) { + constructor(scope: Construct, id: string) { super(scope, id); /// here diff --git a/packages/aws-cdk-lib/rosetta/aws_batch/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_batch/default.ts-fixture deleted file mode 100644 index a8b555f06b49e..0000000000000 --- a/packages/aws-cdk-lib/rosetta/aws_batch/default.ts-fixture +++ /dev/null @@ -1,15 +0,0 @@ -// Fixture with packages imported, but nothing else -import { Construct } from 'constructs'; -import { Stack } from 'aws-cdk-lib'; -import * as ec2 from 'aws-cdk-lib/aws-ec2'; -import * as batch from 'aws-cdk-lib/aws-batch'; -import * as ecs from 'aws-cdk-lib/aws-ecs'; -import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'; - -class Fixture extends Stack { - constructor(scope: Construct, id: string) { - super(scope, id); - - /// here - } -} diff --git a/packages/aws-cdk-lib/rosetta/aws_certificatemanager/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_certificatemanager/default.ts-fixture index 055a744ffa1f0..2486eaf8dffab 100644 --- a/packages/aws-cdk-lib/rosetta/aws_certificatemanager/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_certificatemanager/default.ts-fixture @@ -4,7 +4,7 @@ import * as acm from 'aws-cdk-lib/aws-certificatemanager'; import * as route53 from 'aws-cdk-lib/aws-route53'; import { PublicHostedZone } from 'aws-cdk-lib/aws-route53'; import { StringParameter } from 'aws-cdk-lib/aws-ssm'; -import { Stack, Names } from 'aws-cdk-lib'; +import { App, Stack, Names } from 'aws-cdk-lib'; import { AwsCustomResource, PhysicalResourceId, AwsCustomResourcePolicy } from 'aws-cdk-lib/custom-resources'; class Fixture extends Stack { diff --git a/packages/aws-cdk-lib/rosetta/aws_cloudfront/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_cloudfront/default.ts-fixture index 3daab43d74b1c..d8c849ae21977 100644 --- a/packages/aws-cdk-lib/rosetta/aws_cloudfront/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_cloudfront/default.ts-fixture @@ -1,5 +1,5 @@ import { Construct } from 'constructs'; -import { Duration, Stack } from 'aws-cdk-lib'; +import { App, Duration, Stack } from 'aws-cdk-lib'; import * as cloudfront from 'aws-cdk-lib/aws-cloudfront'; import * as origins from 'aws-cdk-lib/aws-cloudfront-origins'; import * as s3 from 'aws-cdk-lib/aws-s3'; diff --git a/packages/aws-cdk-lib/rosetta/aws_codedeploy/constructhub.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_codedeploy/constructhub.ts-fixture new file mode 100644 index 0000000000000..1050b33cf20d7 --- /dev/null +++ b/packages/aws-cdk-lib/rosetta/aws_codedeploy/constructhub.ts-fixture @@ -0,0 +1,20 @@ +// Fixture with packages imported, but nothing else +import { Construct } from 'constructs'; +import { Duration, Stack } from 'aws-cdk-lib'; +import * as codedeploy from 'aws-cdk-lib/aws-codedeploy'; +import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; +import * as ecs from 'aws-cdk-lib/aws-ecs'; +import * as lambda from 'aws-cdk-lib/aws-lambda'; + +declare class EcsDeployment { + constructor(params: any); +} + +class Fixture extends Stack { + constructor(scope: Construct, id: string) { + super(scope, id); + + /// here + } +} + diff --git a/packages/aws-cdk-lib/rosetta/aws_codedeploy/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_codedeploy/default.ts-fixture index 0c5e226fe2320..d885ff9666d72 100644 --- a/packages/aws-cdk-lib/rosetta/aws_codedeploy/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_codedeploy/default.ts-fixture @@ -2,6 +2,8 @@ import { Construct } from 'constructs'; import { Duration, Stack } from 'aws-cdk-lib'; import * as codedeploy from 'aws-cdk-lib/aws-codedeploy'; +import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; +import * as ecs from 'aws-cdk-lib/aws-ecs'; import * as lambda from 'aws-cdk-lib/aws-lambda'; class Fixture extends Stack { diff --git a/packages/aws-cdk-lib/rosetta/aws_codepipeline_actions/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_codepipeline_actions/default.ts-fixture index 240e431aa1537..fdf538a40b96c 100644 --- a/packages/aws-cdk-lib/rosetta/aws_codepipeline_actions/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_codepipeline_actions/default.ts-fixture @@ -1,5 +1,6 @@ // Fixture with packages imported, but nothing else -import { Arn, Construct, Duration, SecretValue, Stack } from 'aws-cdk-lib'; +import { Construct } from 'constructs'; +import { Arn, Duration, SecretValue, Stack } from 'aws-cdk-lib'; import codebuild = require('aws-cdk-lib/aws-codebuild'); import codedeploy = require('aws-cdk-lib/aws-codedeploy'); import codepipeline = require('aws-cdk-lib/aws-codepipeline'); diff --git a/packages/aws-cdk-lib/rosetta/aws_cognito/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_cognito/default.ts-fixture index b8d85f501d6eb..f1a851ff4aefe 100644 --- a/packages/aws-cdk-lib/rosetta/aws_cognito/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_cognito/default.ts-fixture @@ -5,6 +5,7 @@ import * as certificatemanager from 'aws-cdk-lib/aws-certificatemanager'; import * as cognito from 'aws-cdk-lib/aws-cognito'; import * as iam from 'aws-cdk-lib/aws-iam'; import * as lambda from 'aws-cdk-lib/aws-lambda'; +import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'; import * as path from 'path'; class Fixture extends Stack { diff --git a/packages/aws-cdk-lib/rosetta/aws_ec2/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_ec2/default.ts-fixture index 5a83aebb9a81d..315000926ad9c 100644 --- a/packages/aws-cdk-lib/rosetta/aws_ec2/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_ec2/default.ts-fixture @@ -1,5 +1,6 @@ // Fixture with packages imported, but nothing else -import { Aspects, Construct, Duration, Fn, Size, Stack, StackProps } from 'aws-cdk-lib'; +import { Construct } from 'constructs'; +import { Aspects, Duration, Fn, Size, Stack, StackProps } from 'aws-cdk-lib'; import ec2 = require('aws-cdk-lib/aws-ec2'); import s3 = require('aws-cdk-lib/aws-s3'); import iam = require('aws-cdk-lib/aws-iam'); diff --git a/packages/aws-cdk-lib/rosetta/aws_ecr/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_ecr/default.ts-fixture index c29188647439b..005e00352cf8a 100644 --- a/packages/aws-cdk-lib/rosetta/aws_ecr/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_ecr/default.ts-fixture @@ -1,6 +1,6 @@ // Fixture with packages imported, but nothing else import { Construct } from 'constructs'; -import { Duration, Stack } from 'aws-cdk-lib'; +import { Duration, Stack, RemovalPolicy } from 'aws-cdk-lib'; import * as ecr from 'aws-cdk-lib/aws-ecr'; import * as events from 'aws-cdk-lib/aws-events'; import * as iam from 'aws-cdk-lib/aws-iam'; diff --git a/packages/aws-cdk-lib/rosetta/aws_ecr_assets/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_ecr_assets/default.ts-fixture index eaf5d09feafb2..e85f06bdfb889 100644 --- a/packages/aws-cdk-lib/rosetta/aws_ecr_assets/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_ecr_assets/default.ts-fixture @@ -2,6 +2,7 @@ import { Stack } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as path from 'path'; +import * as ecr_assets from 'aws-cdk-lib/aws-ecr-assets'; class Fixture extends Stack { constructor(scope: Construct, id: string) { diff --git a/packages/aws-cdk-lib/rosetta/aws_eks/cdk8schart.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_eks/cdk8schart.ts-fixture index 127d807e43bd2..e4fb7e17ec975 100644 --- a/packages/aws-cdk-lib/rosetta/aws_eks/cdk8schart.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_eks/cdk8schart.ts-fixture @@ -3,7 +3,7 @@ import { CfnOutput, Fn, Size, Stack } from 'aws-cdk-lib'; import * as eks from 'aws-cdk-lib/aws-eks'; import * as s3 from 'aws-cdk-lib/aws-s3'; import * as cdk8s from 'cdk8s'; -import * as kplus from 'cdk8s-plus-21'; +import * as kplus from 'cdk8s-plus-25'; interface MyChartProps { readonly bucket: s3.Bucket; diff --git a/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2/default.ts-fixture index 4153aacc0e615..9f9c0bb37b6be 100644 --- a/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2/default.ts-fixture @@ -1,9 +1,10 @@ // Fixture with packages imported, but nothing else import { Construct, Node } from 'constructs'; -import { CfnOutput, Stack, Duration, Resource, SecretValue } from 'aws-cdk-lib'; +import { CfnOutput, Stack, Duration, Resource, SecretValue, Fn } from 'aws-cdk-lib'; import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; import * as ec2 from 'aws-cdk-lib/aws-ec2'; import * as autoscaling from 'aws-cdk-lib/aws-autoscaling'; +import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch'; class Fixture extends Stack { constructor(scope: Construct, id: string) { diff --git a/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2_actions/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2_actions/default.ts-fixture new file mode 100644 index 0000000000000..b017ae2930fbf --- /dev/null +++ b/packages/aws-cdk-lib/rosetta/aws_elasticloadbalancingv2_actions/default.ts-fixture @@ -0,0 +1,17 @@ +// Fixture with packages imported, but nothing else +import { Construct, Node } from 'constructs'; +import { CfnOutput, Stack, Duration, Resource, SecretValue, Fn } from 'aws-cdk-lib'; +import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; +import * as actions from 'aws-cdk-lib/aws-elasticloadbalancingv2-actions'; +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as autoscaling from 'aws-cdk-lib/aws-autoscaling'; +import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch'; +import { aws_cognito as cognito } from 'aws-cdk-lib'; + +class Fixture extends Stack { + constructor(scope: Construct, id: string) { + super(scope, id); + + /// here + } +} \ No newline at end of file diff --git a/packages/aws-cdk-lib/rosetta/aws_elasticsearch/migrate-opensearch.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_elasticsearch/migrate-opensearch.ts-fixture index 0fc63076669ae..19fa991121629 100644 --- a/packages/aws-cdk-lib/rosetta/aws_elasticsearch/migrate-opensearch.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_elasticsearch/migrate-opensearch.ts-fixture @@ -1,3 +1,4 @@ +import { Construct } from 'constructs'; import * as cdk from 'aws-cdk-lib'; import * as es from 'aws-cdk-lib/aws-elasticsearch'; import * as iam from 'aws-cdk-lib/aws-iam'; @@ -7,8 +8,8 @@ declare const role: iam.IRole; declare const elasticsearchVersion: es.ElasticsearchVersion; declare const openSearchVersion: opensearch.EngineVersion; -class Fixture extends cdk.Construct { - constructor(scope: cdk.Construct, id: string) { +class Fixture extends Construct { + constructor(scope: Construct, id: string) { super(scope, id); /// here diff --git a/packages/aws-cdk-lib/rosetta/aws_s3/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_s3/default.ts-fixture index abc63a21970db..1a90082f5bc54 100644 --- a/packages/aws-cdk-lib/rosetta/aws_s3/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_s3/default.ts-fixture @@ -1,4 +1,5 @@ // Fixture with packages imported, but nothing else +import { Construct } from 'constructs'; import cdk = require('aws-cdk-lib'); import s3 = require('aws-cdk-lib/aws-s3'); import kms = require('aws-cdk-lib/aws-kms'); @@ -8,9 +9,10 @@ import s3n = require('aws-cdk-lib/aws-s3-notifications'); import sns = require('aws-cdk-lib/aws-sns'); import sqs = require('aws-cdk-lib/aws-sqs'); import assert = require('assert'); +import { App, Duration, Stack } from 'aws-cdk-lib'; class Fixture extends cdk.Stack { - constructor(scope: cdk.Construct, id: string) { + constructor(scope: Construct, id: string) { super(scope, id); /// here diff --git a/packages/aws-cdk-lib/rosetta/aws_servicecatalog/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_servicecatalog/default.ts-fixture index 3c6e918e15ed4..a5256f26ac489 100644 --- a/packages/aws-cdk-lib/rosetta/aws_servicecatalog/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_servicecatalog/default.ts-fixture @@ -1,7 +1,9 @@ // Fixture with packages imported, but nothing else import { Construct } from 'constructs'; -import { Stack } from 'aws-cdk-lib'; +import { Fn, Stack } from 'aws-cdk-lib'; import * as servicecatalog from 'aws-cdk-lib/aws-servicecatalog'; +import * as s3 from 'aws-cdk-lib/aws-s3'; +import * as iam from 'aws-cdk-lib/aws-iam'; class Fixture extends Stack { constructor(scope: Construct, id: string) { diff --git a/packages/aws-cdk-lib/rosetta/aws_ses/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_ses/default.ts-fixture index 69c2454dd0346..e327d1ab66bff 100644 --- a/packages/aws-cdk-lib/rosetta/aws_ses/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_ses/default.ts-fixture @@ -1,5 +1,5 @@ // Fixture with packages imported, but nothing else -import { Stack } from 'aws-cdk-lib'; +import { Stack, SecretValue } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as ses from 'aws-cdk-lib/aws-ses'; import * as sns from 'aws-cdk-lib/aws-sns'; diff --git a/packages/aws-cdk-lib/rosetta/aws_ssm/default.ts-fixture b/packages/aws-cdk-lib/rosetta/aws_ssm/default.ts-fixture index 6e1471e325d23..ea6e4f67f825d 100644 --- a/packages/aws-cdk-lib/rosetta/aws_ssm/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/aws_ssm/default.ts-fixture @@ -1,6 +1,6 @@ // Fixture with packages imported, but nothing else import { Construct } from 'constructs'; -import { Stack, Lazy } from 'aws-cdk-lib'; +import { Token, Stack, Lazy } from 'aws-cdk-lib'; import * as ssm from 'aws-cdk-lib/aws-ssm'; import * as sns from 'aws-cdk-lib/aws-sns'; import * as iam from 'aws-cdk-lib/aws-iam'; diff --git a/packages/aws-cdk-lib/rosetta/custom_resources/default.ts-fixture b/packages/aws-cdk-lib/rosetta/custom_resources/default.ts-fixture index ecbbae00ffdd7..cb95cf9d58580 100644 --- a/packages/aws-cdk-lib/rosetta/custom_resources/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/custom_resources/default.ts-fixture @@ -5,9 +5,10 @@ import * as lambda from 'aws-cdk-lib/aws-lambda'; import * as iam from 'aws-cdk-lib/aws-iam'; import * as cr from 'aws-cdk-lib/custom-resources'; import * as s3 from 'aws-cdk-lib/aws-s3'; +import * as ec2 from 'aws-cdk-lib/aws-ec2'; import * as logs from 'aws-cdk-lib/aws-logs'; -class Fixture extends Stack { +class Fixture extends Stack { constructor(scope: Construct, id: string) { super(scope, id); diff --git a/packages/aws-cdk-lib/rosetta/default.ts-fixture b/packages/aws-cdk-lib/rosetta/default.ts-fixture index a015e286782c5..f15b52668477f 100644 --- a/packages/aws-cdk-lib/rosetta/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/default.ts-fixture @@ -1,6 +1,7 @@ import * as cfn from 'aws-cdk-lib/aws-cloudformation'; import * as cloudfront from 'aws-cdk-lib/aws-cloudfront'; import * as acm from 'aws-cdk-lib/aws-certificatemanager'; +import * as appstream from 'aws-cdk-lib/aws-appstream'; import * as route53 from 'aws-cdk-lib/aws-route53'; import * as origins from 'aws-cdk-lib/aws-cloudfront-origins'; import * as customresources from 'aws-cdk-lib/custom-resources'; @@ -28,19 +29,24 @@ import { DefaultStackSynthesizer, Duration, Fn, - IConstruct, + ITaggable, + PermissionsBoundary, RemovalPolicy, + Resource, SecretValue, Size, SizeRoundingBehavior, Stack, StackProps, Stage, + TagManager, + TagType, Token, } from 'aws-cdk-lib'; import { + IConstruct, Construct, - DependencyGroup, + DependencyGroup, } from 'constructs'; declare const app: App; diff --git a/packages/aws-cdk-lib/rosetta/pipelines/default.ts-fixture b/packages/aws-cdk-lib/rosetta/pipelines/default.ts-fixture index 8f9837178accb..61817e5475480 100644 --- a/packages/aws-cdk-lib/rosetta/pipelines/default.ts-fixture +++ b/packages/aws-cdk-lib/rosetta/pipelines/default.ts-fixture @@ -10,7 +10,7 @@ import dynamodb = require('aws-cdk-lib/aws-dynamodb'); import ecr = require('aws-cdk-lib/aws-ecr'); import ec2 = require('aws-cdk-lib/aws-ec2'); import iam = require('aws-cdk-lib/aws-iam'); -import lambda = require('aws-cdk-lib/lambda'); +import lambda = require('aws-cdk-lib/aws-lambda'); import pipelines = require('aws-cdk-lib/pipelines'); import secretsmanager = require('aws-cdk-lib/aws-secretsmanager'); import sns = require('aws-cdk-lib/aws-sns'); diff --git a/packages/aws-cdk-lib/rosetta/validation-plugin.ts-fixture b/packages/aws-cdk-lib/rosetta/validation-plugin.ts-fixture new file mode 100644 index 0000000000000..4a848b0237069 --- /dev/null +++ b/packages/aws-cdk-lib/rosetta/validation-plugin.ts-fixture @@ -0,0 +1,21 @@ +import { Construct } from 'constructs'; +import { App, IPolicyValidationPluginBeta1, Stage, IPolicyValidationContextBeta1, PolicyValidationPluginReportBeta1 } from 'aws-cdk-lib'; + +declare class ThirdPartyPluginX implements IPolicyValidationPluginBeta1 { + public readonly name: string; + public validate(x: any): any; +} + +declare class ThirdPartyPluginY implements IPolicyValidationPluginBeta1 { + public readonly name: string; + public validate(x: any): any; +} + +class fixture$construct extends Construct { + public constructor(scope: Construct, id: string) { + super(scope, id); + + /// here + } +} + diff --git a/packages/aws-cdk-lib/triggers/README.md b/packages/aws-cdk-lib/triggers/README.md index a462e55159128..c9bd4a0e86fad 100644 --- a/packages/aws-cdk-lib/triggers/README.md +++ b/packages/aws-cdk-lib/triggers/README.md @@ -15,13 +15,9 @@ The `TriggerFunction` construct will define an AWS Lambda function which is triggered *during* deployment: ```ts -import * as lambda from 'aws-cdk-lib/aws-lambda'; import * as triggers from 'aws-cdk-lib/triggers'; -import { Stack } from 'aws-cdk-lib'; -declare const stack: Stack; - -new triggers.TriggerFunction(stack, 'MyTrigger', { +new triggers.TriggerFunction(this, 'MyTrigger', { runtime: lambda.Runtime.NODEJS_14_X, handler: 'index.handler', code: lambda.Code.fromAsset(__dirname + '/my-trigger'), @@ -34,28 +30,24 @@ be invoked when the stack is deployed. It is also possible to trigger a predefined Lambda function by using the `Trigger` construct: ```ts -import * as lambda from '@aws-cdk/aws-lambda'; -import * as triggers from '@aws-cdk/triggers'; -import { Stack } from '@aws-cdk/core'; - -declare const stack: Stack; +import * as triggers from 'aws-cdk-lib/triggers'; -const func = new lambda.Function(stack, 'MyFunction', { +const func = new lambda.Function(this, 'MyFunction', { handler: 'index.handler', runtime: lambda.Runtime.NODEJS_14_X, code: lambda.Code.fromInline('foo'), }); -new triggers.Trigger(stack, 'MyTrigger', { +new triggers.Trigger(this, 'MyTrigger', { handler: func, timeout: Duration.minutes(10), invocationType: triggers.InvocationType.EVENT, }); ``` -Addition properties can be used to fine-tune the behaviour of the trigger. +Addition properties can be used to fine-tune the behaviour of the trigger. The `timeout` property can be used to determine how long the invocation of the function should take. -The `invocationType` property can be used to change the invocation type of the function. +The `invocationType` property can be used to change the invocation type of the function. This might be useful in scenarios where a fire-and-forget strategy for invoking the function is sufficient. ## Trigger Failures @@ -81,7 +73,6 @@ parallel, and then the trigger `myTrigger` will be executed. Only then the resources under `goodbye` will be provisioned: ```ts -import { Construct, Node } from 'constructs'; import * as triggers from 'aws-cdk-lib/triggers'; declare const myTrigger: triggers.Trigger; diff --git a/packages/aws-cdk-lib/triggers/test/trigger-handler.test.ts b/packages/aws-cdk-lib/triggers/test/trigger-handler.test.ts index bd1c54bebbb86..ebe6d98423012 100644 --- a/packages/aws-cdk-lib/triggers/test/trigger-handler.test.ts +++ b/packages/aws-cdk-lib/triggers/test/trigger-handler.test.ts @@ -1,6 +1,14 @@ import * as AWS from 'aws-sdk'; import * as lambda from '../lib/lambda'; +beforeAll(() => { + jest.spyOn(console, 'log').mockImplementation(); +}); + +afterAll(() => { + jest.restoreAllMocks(); +}); + afterEach(() => { jest.clearAllMocks(); }); diff --git a/packages/aws-cdk-migration/package.json b/packages/aws-cdk-migration/package.json index ca125edc30d1e..04c939f4349c1 100644 --- a/packages/aws-cdk-migration/package.json +++ b/packages/aws-cdk-migration/package.json @@ -39,7 +39,7 @@ }, "devDependencies": { "@types/glob": "^7.2.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/pkglint": "0.0.0" }, diff --git a/packages/aws-cdk/package.json b/packages/aws-cdk/package.json index 7cae0e17ed9ae..f03bcd6f6bd4b 100644 --- a/packages/aws-cdk/package.json +++ b/packages/aws-cdk/package.json @@ -66,7 +66,7 @@ "@types/archiver": "^5.3.1", "@types/fs-extra": "^9.0.13", "@types/glob": "^7.2.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/minimatch": "^3.0.5", "@types/mockery": "^1.4.30", "@types/promptly": "^3.0.2", @@ -79,7 +79,7 @@ "@types/yargs": "^15.0.15", "aws-sdk-mock": "5.6.0", "@aws-cdk/cdk-build-tools": "0.0.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "madge": "^5.0.2", "constructs": "^10.0.0", "make-runnable": "^1.4.1", @@ -87,7 +87,7 @@ "nock": "^13.3.0", "@aws-cdk/pkglint": "0.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.5", + "ts-jest": "^29.1.0", "ts-mock-imports": "^1.3.8", "xml-js": "^1.6.11", "axios": "^0.27.2", diff --git a/packages/aws-cdk/test/api/stack-activity-monitor.test.ts b/packages/aws-cdk/test/api/stack-activity-monitor.test.ts index 9d5a2074b2285..16c1321d061da 100644 --- a/packages/aws-cdk/test/api/stack-activity-monitor.test.ts +++ b/packages/aws-cdk/test/api/stack-activity-monitor.test.ts @@ -263,8 +263,8 @@ test('print failed resources because of hook failures', () => { expect(output.length).toStrictEqual(4); expect(output[0].trim()).toStrictEqual(`stack-name | 0/2 | ${HUMAN_TIME} | ${reset('IN_PROGRESS ')} | AWS::CloudFormation::Stack | ${reset(bold('stack1'))}`); - expect(output[1].trim()).toStrictEqual(`stack-name | 0/2 | ${HUMAN_TIME} | ${red('UPDATE_FAILED ')} | AWS::CloudFormation::Stack | ${red(bold('stack1 The following hook(s) failed: hook1 : stack1 must obey certain rules'))}`); + expect(output[1].trim()).toStrictEqual(`stack-name | 0/2 | ${HUMAN_TIME} | ${red('UPDATE_FAILED ')} | AWS::CloudFormation::Stack | ${red(bold('stack1'))} ${red(bold('The following hook(s) failed: hook1 : stack1 must obey certain rules'))}`); expect(output[2].trim()).toStrictEqual('Failed resources:'); - expect(output[3].trim()).toStrictEqual(`stack-name | ${HUMAN_TIME} | ${red('UPDATE_FAILED ')} | AWS::CloudFormation::Stack | ${red(bold('stack1 The following hook(s) failed: hook1 : stack1 must obey certain rules'))}`); + expect(output[3].trim()).toStrictEqual(`stack-name | ${HUMAN_TIME} | ${red('UPDATE_FAILED ')} | AWS::CloudFormation::Stack | ${red(bold('stack1'))} ${red(bold('The following hook(s) failed: hook1 : stack1 must obey certain rules'))}`); }); diff --git a/packages/aws-cdk/test/usersettings.test.ts b/packages/aws-cdk/test/usersettings.test.ts index ce14677a6e83f..6f5e0fb4fb642 100644 --- a/packages/aws-cdk/test/usersettings.test.ts +++ b/packages/aws-cdk/test/usersettings.test.ts @@ -2,12 +2,11 @@ import * as os from 'os'; import * as fs_path from 'path'; import * as fs from 'fs-extra'; -import { mocked } from 'ts-jest/utils'; import { Configuration, PROJECT_CONFIG, PROJECT_CONTEXT } from '../lib/settings'; // mock fs deeply jest.mock('fs-extra'); -const mockedFs = mocked(fs, true); +const mockedFs = jest.mocked(fs, { shallow: true }); const USER_CONFIG = fs_path.join(os.homedir(), '.cdk.json'); @@ -112,4 +111,4 @@ test('Can specify the `quiet` key in the user config', async () => { const config = await new Configuration().load(); expect(config.settings.get(['quiet'])).toBe(true); -}); \ No newline at end of file +}); diff --git a/packages/awslint/package.json b/packages/awslint/package.json index 8f94bbbe70c31..9155d89c7e114 100644 --- a/packages/awslint/package.json +++ b/packages/awslint/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/yargs": "^15.0.15", "@aws-cdk/pkglint": "0.0.0", "typescript": "~4.9.5", @@ -39,7 +39,7 @@ "@aws-cdk/eslint-plugin": "0.0.0", "eslint-plugin-import": "^2.27.5", "eslint-plugin-jest": "^24.7.0", - "jest": "^27.5.1" + "jest": "^29.5.0" }, "repository": { "type": "git", diff --git a/packages/cdk-assets/package.json b/packages/cdk-assets/package.json index 558ece15e56d8..376e5d9cd6f83 100644 --- a/packages/cdk-assets/package.json +++ b/packages/cdk-assets/package.json @@ -32,12 +32,12 @@ "devDependencies": { "@types/archiver": "^5.3.1", "@types/glob": "^7.2.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/mime": "^2.0.3", "@types/mock-fs": "^4.13.1", "@types/yargs": "^15.0.15", "@aws-cdk/cdk-build-tools": "0.0.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "jszip": "^3.10.1", "mock-fs": "^4.14.0", "@aws-cdk/pkglint": "0.0.0" diff --git a/packages/cdk-cli-wrapper/package.json b/packages/cdk-cli-wrapper/package.json index c26d60a956320..7efc182ad3163 100644 --- a/packages/cdk-cli-wrapper/package.json +++ b/packages/cdk-cli-wrapper/package.json @@ -61,9 +61,9 @@ }, "license": "Apache-2.0", "devDependencies": { - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@aws-cdk/cdk-build-tools": "0.0.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "@aws-cdk/pkglint": "0.0.0" }, "repository": { diff --git a/patches/@lerna+package-graph+4.0.0.patch b/patches/@lerna+package-graph+4.0.0.patch deleted file mode 100644 index e1677faa27c88..0000000000000 --- a/patches/@lerna+package-graph+4.0.0.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/node_modules/@lerna/package-graph/index.js b/node_modules/@lerna/package-graph/index.js -index 804aae0..72c22b9 100644 ---- a/node_modules/@lerna/package-graph/index.js -+++ b/node_modules/@lerna/package-graph/index.js -@@ -218,6 +218,8 @@ class PackageGraph extends Map { - /** @type {(PackageGraphNode | CyclicPackageGraphNode)[]} */ - const walkStack = []; - -+ const seen = new Set(); -+ - function visits(baseNode, dependentNode) { - if (nodeToCycle.has(baseNode)) { - return; -@@ -228,6 +230,9 @@ class PackageGraph extends Map { - topLevelDependent = nodeToCycle.get(topLevelDependent); - } - -+ if (seen.has(topLevelDependent)) { return; } -+ seen.add(topLevelDependent); -+ - if ( - topLevelDependent === baseNode || - (topLevelDependent.isCycle && topLevelDependent.has(baseNode.name)) diff --git a/scripts/@aws-cdk/script-tests/package.json b/scripts/@aws-cdk/script-tests/package.json index e55a131b3abe7..a625e3a6fdad7 100644 --- a/scripts/@aws-cdk/script-tests/package.json +++ b/scripts/@aws-cdk/script-tests/package.json @@ -12,6 +12,6 @@ "build+extract": "npm run build" }, "devDependencies": { - "jest": "^27.5.1" + "jest": "^29.5.0" } } diff --git a/scripts/align-version.js b/scripts/align-version.js index 4376b24de71dc..e18d3f77a1db3 100755 --- a/scripts/align-version.js +++ b/scripts/align-version.js @@ -32,6 +32,7 @@ for (const file of files) { processSection(pkg.dependencies || { }, file); processSection(pkg.devDependencies || { }, file); processSection(pkg.peerDependencies || { }, file); + processSection(pkg.jsiiRosetta?.exampleDependencies ?? { }, file); console.error(`${file} => ${version}`); fs.writeFileSync(file, JSON.stringify(pkg, undefined, 2)); diff --git a/tools/@aws-cdk/cdk-build-tools/bin/cdk-copy.ts b/tools/@aws-cdk/cdk-build-tools/bin/cdk-copy.ts index ad94b6037d499..e9cfac8f4a47e 100644 --- a/tools/@aws-cdk/cdk-build-tools/bin/cdk-copy.ts +++ b/tools/@aws-cdk/cdk-build-tools/bin/cdk-copy.ts @@ -185,7 +185,6 @@ function autoIgnore(source: string): string[] { return [ // package.json `main` is lib/index.js so no need for top level index.ts ...['.ts', '.js', '.d.ts'].map((ext: string) => path.join(source, `index${ext}`)), - '**/__snapshots__/**', 'node_modules/**', ]; } diff --git a/tools/@aws-cdk/cdk-build-tools/package.json b/tools/@aws-cdk/cdk-build-tools/package.json index c215c1761fa83..06f61ee50ace6 100644 --- a/tools/@aws-cdk/cdk-build-tools/package.json +++ b/tools/@aws-cdk/cdk-build-tools/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/semver": "^7.3.13", "@types/yargs": "^15.0.15" }, @@ -57,7 +57,7 @@ "eslint-plugin-jest": "^24.7.0", "fs-extra": "^9.1.0", "glob": "^7.2.3", - "jest": "^27.5.1", + "jest": "^29.5.0", "jest-junit": "^13.2.0", "jsii": "~5.0.2", "jsii-pacmak": "1.78.1", @@ -65,7 +65,7 @@ "markdownlint-cli": "^0.33.0", "nyc": "^15.1.0", "semver": "^7.3.8", - "ts-jest": "^27.1.5", + "ts-jest": "^29.1.0", "typescript": "~4.9.5", "yargs": "^16.2.0" }, diff --git a/tools/@aws-cdk/cdk-release/package.json b/tools/@aws-cdk/cdk-release/package.json index 8c1ec9ee06329..8308530decbc2 100644 --- a/tools/@aws-cdk/cdk-release/package.json +++ b/tools/@aws-cdk/cdk-release/package.json @@ -32,9 +32,9 @@ "@aws-cdk/pkglint": "0.0.0", "@types/changelog-parser": "^2.8.1", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/yargs": "^15.0.15", - "jest": "^27.5.1" + "jest": "^29.5.0" }, "dependencies": { "@lerna/project": "^4.0.0", diff --git a/tools/@aws-cdk/cfn2ts/package.json b/tools/@aws-cdk/cfn2ts/package.json index 1577da1e13057..dac22576328b1 100644 --- a/tools/@aws-cdk/cfn2ts/package.json +++ b/tools/@aws-cdk/cfn2ts/package.json @@ -42,9 +42,9 @@ "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/pkglint": "0.0.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/yargs": "^15.0.15", - "jest": "^27.5.1" + "jest": "^29.5.0" }, "keywords": [ "aws", diff --git a/tools/@aws-cdk/eslint-plugin/package.json b/tools/@aws-cdk/eslint-plugin/package.json index a30b5081cfbf4..a2d654ac06229 100644 --- a/tools/@aws-cdk/eslint-plugin/package.json +++ b/tools/@aws-cdk/eslint-plugin/package.json @@ -16,9 +16,9 @@ "devDependencies": { "@types/eslint": "^7.29.0", "@types/fs-extra": "^9.0.13", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/estree": "*", - "jest": "^27.5.1", + "jest": "^29.5.0", "typescript": "~4.9.5" }, "dependencies": { diff --git a/tools/@aws-cdk/node-bundle/.eslintrc.json b/tools/@aws-cdk/node-bundle/.eslintrc.json index 3f029a7c13bf7..04f300cad3cf5 100644 --- a/tools/@aws-cdk/node-bundle/.eslintrc.json +++ b/tools/@aws-cdk/node-bundle/.eslintrc.json @@ -1,3 +1,4 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". { "env": { "jest": true, @@ -155,7 +156,7 @@ "error" ], "import/order": [ - "error", + "warn", { "groups": [ "builtin", diff --git a/tools/@aws-cdk/node-bundle/.projen/deps.json b/tools/@aws-cdk/node-bundle/.projen/deps.json index ad9af2188762a..8c761afb753da 100644 --- a/tools/@aws-cdk/node-bundle/.projen/deps.json +++ b/tools/@aws-cdk/node-bundle/.projen/deps.json @@ -44,23 +44,18 @@ "version": "^8", "type": "build" }, - { - "name": "jest-junit", - "version": "^13", - "type": "build" - }, { "name": "jest", - "version": "^27", "type": "build" }, { - "name": "json-schema", + "name": "jest-junit", + "version": "^13", "type": "build" }, { "name": "npm-check-updates", - "version": "^12", + "version": "^16", "type": "build" }, { @@ -74,7 +69,6 @@ }, { "name": "ts-jest", - "version": "^27", "type": "build" }, { diff --git a/tools/@aws-cdk/node-bundle/.projen/tasks.json b/tools/@aws-cdk/node-bundle/.projen/tasks.json index 783e7240c14a4..de4234036fa18 100644 --- a/tools/@aws-cdk/node-bundle/.projen/tasks.json +++ b/tools/@aws-cdk/node-bundle/.projen/tasks.json @@ -161,22 +161,14 @@ "spawn": "compile" }, { - "exec": "jest --passWithNoTests --all --updateSnapshot" + "exec": "jest --passWithNoTests --updateSnapshot", + "receiveArgs": true }, { "spawn": "eslint" } ] }, - "test:update": { - "name": "test:update", - "description": "Update jest snapshots", - "steps": [ - { - "exec": "jest --updateSnapshot" - } - ] - }, "test:watch": { "name": "test:watch", "description": "Run jest in watch mode", diff --git a/tools/@aws-cdk/node-bundle/.projenrc.js b/tools/@aws-cdk/node-bundle/.projenrc.js index 92b238778cd48..87d8f4e6eb871 100644 --- a/tools/@aws-cdk/node-bundle/.projenrc.js +++ b/tools/@aws-cdk/node-bundle/.projenrc.js @@ -22,6 +22,18 @@ const project = new typescript.TypeScriptProject({ defaultReleaseBranch: 'main', }); +project.tryFindObjectFile('package.json').addDeletionOverride('jest.globals'); +project.tryFindObjectFile('package.json').addOverride('jest.transform', { + '^.+\\.tsx?$': [ + 'ts-jest', + { + tsconfig: 'tsconfig.dev.json', + isolatedModules: true, + }, + ], +}); + + project.gitignore.exclude('.vscode/'); // required for esbuild > v0.14.32 diff --git a/tools/@aws-cdk/node-bundle/package.json b/tools/@aws-cdk/node-bundle/package.json index 4a6159e124d2a..2be364a498442 100644 --- a/tools/@aws-cdk/node-bundle/package.json +++ b/tools/@aws-cdk/node-bundle/package.json @@ -18,7 +18,6 @@ "pre-compile": "npx projen pre-compile", "release": "npx projen release", "test": "npx projen test", - "test:update": "npx projen test:update", "test:watch": "npx projen test:watch", "unbump": "npx projen unbump", "upgrade": "npx projen upgrade", @@ -26,27 +25,25 @@ "projen": "npx projen" }, "devDependencies": { - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/license-checker": "^25.0.3", "@types/madge": "^5.0.0", - "@types/node": "18.11.19", + "@types/node": "^14", "@typescript-eslint/eslint-plugin": "^5", "@typescript-eslint/parser": "^5", "eslint": "^8", "eslint-import-resolver-node": "^0.3.7", "eslint-import-resolver-typescript": "^2.7.1", "eslint-plugin-import": "^2.27.5", - "jest": "^27", + "jest": "^29", "jest-junit": "^13", - "json-schema": "^0.4.0", - "npm-check-updates": "^12", + "npm-check-updates": "^16", "projen": "^0.67.75", "standard-version": "^9", - "ts-jest": "^27", + "ts-jest": "^29", "typescript": "^4.5.5" }, "dependencies": { - "cdk-generate-synthetic-examples": "^0.1.173", "esbuild": "^0.17.11", "fs-extra": "^10.1.0", "license-checker": "^25.0.1", @@ -60,7 +57,7 @@ "jest": { "testMatch": [ "/src/**/__tests__/**/*.ts?(x)", - "/(test|src)/**/?(*.)+(spec|test).ts?(x)" + "/(test|src)/**/*(*.)@(spec|test).ts?(x)" ], "clearMocks": true, "collectCoverage": true, @@ -91,10 +88,14 @@ ] ], "preset": "ts-jest", - "globals": { - "ts-jest": { - "tsconfig": "tsconfig.dev.json" - } + "transform": { + "^.+\\.tsx?$": [ + "ts-jest", + { + "tsconfig": "tsconfig.dev.json", + "isolatedModules": true + } + ] } }, "types": "lib/index.d.ts", diff --git a/tools/@aws-cdk/node-bundle/tsconfig.dev.json b/tools/@aws-cdk/node-bundle/tsconfig.dev.json index ce1b951d11062..3cff2f67b2ac0 100644 --- a/tools/@aws-cdk/node-bundle/tsconfig.dev.json +++ b/tools/@aws-cdk/node-bundle/tsconfig.dev.json @@ -1,3 +1,4 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". { "compilerOptions": { "alwaysStrict": true, @@ -32,6 +33,5 @@ ], "exclude": [ "node_modules" - ], - "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." + ] } diff --git a/tools/@aws-cdk/node-bundle/tsconfig.json b/tools/@aws-cdk/node-bundle/tsconfig.json index 80c33e3e98b78..f7c8af0b7b7f9 100644 --- a/tools/@aws-cdk/node-bundle/tsconfig.json +++ b/tools/@aws-cdk/node-bundle/tsconfig.json @@ -1,3 +1,4 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". { "compilerOptions": { "rootDir": "src", @@ -30,6 +31,5 @@ "include": [ "src/**/*.ts" ], - "exclude": [], - "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." + "exclude": [] } diff --git a/tools/@aws-cdk/pkglint/package.json b/tools/@aws-cdk/pkglint/package.json index 586a1002db1f4..05578b36e42ea 100644 --- a/tools/@aws-cdk/pkglint/package.json +++ b/tools/@aws-cdk/pkglint/package.json @@ -40,7 +40,7 @@ "@aws-cdk/eslint-plugin": "0.0.0", "@types/fs-extra": "^9.0.13", "@types/glob": "^7.2.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/semver": "^7.3.13", "@types/yargs": "^15.0.15", "@typescript-eslint/eslint-plugin": "^4.33.0", @@ -50,7 +50,7 @@ "eslint-import-resolver-typescript": "^2.7.1", "eslint-plugin-import": "^2.27.5", "eslint-plugin-jest": "^24.7.0", - "jest": "^27.5.1", + "jest": "^29.5.0", "typescript": "~4.9.5" }, "nozem": { diff --git a/tools/@aws-cdk/prlint/package.json b/tools/@aws-cdk/prlint/package.json index 64c6b32090664..58fdfb8db6d5c 100644 --- a/tools/@aws-cdk/prlint/package.json +++ b/tools/@aws-cdk/prlint/package.json @@ -21,8 +21,8 @@ "@types/conventional-commits-parser": "3.0.2", "@types/fs-extra": "^9.0.13", "@types/glob": "^7.2.0", - "@types/jest": "^27.5.2", - "jest": "^27.5.1", + "@types/jest": "^29.5.0", + "jest": "^29.5.0", "make-runnable": "^1.4.1", "typescript": "~4.9.5" }, diff --git a/tools/@aws-cdk/yarn-cling/package.json b/tools/@aws-cdk/yarn-cling/package.json index 8921edb113d4e..f7553fed20212 100644 --- a/tools/@aws-cdk/yarn-cling/package.json +++ b/tools/@aws-cdk/yarn-cling/package.json @@ -38,11 +38,11 @@ }, "devDependencies": { "@aws-cdk/pkglint": "0.0.0", - "@types/jest": "^27.5.2", + "@types/jest": "^29.5.0", "@types/node": "18.11.19", "@types/semver": "^7.3.13", "@types/yarnpkg__lockfile": "^1.1.5", - "jest": "^27.5.1", + "jest": "^29.5.0", "typescript": "~4.9.5" }, "dependencies": { diff --git a/yarn.lock b/yarn.lock index 873a273d434bb..008ef4a40af53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -86,7 +86,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz#457ffe647c480dff59c2be092fc3acf71195c87f" integrity sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g== -"@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/core@^7.11.6": version "7.21.4" resolved "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz#c6dc73242507b8e2a27fd13a9c1814f9fa34a659" integrity sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA== @@ -211,7 +211,7 @@ "@babel/traverse" "^7.21.2" "@babel/types" "^7.21.2" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0": version "7.20.2" resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== @@ -308,6 +308,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" +"@babel/plugin-syntax-jsx@^7.7.2": + version "7.21.4" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2" + integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -590,7 +597,7 @@ resolved "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz#b7569632b0b788a0ca0e438235154e45d42813a7" integrity sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw== -"@gar/promisify@^1.0.1", "@gar/promisify@^1.1.3": +"@gar/promisify@^1.1.3": version "1.1.3" resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== @@ -654,173 +661,196 @@ resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" - integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== +"@jest/console@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/console/-/console-29.5.0.tgz#593a6c5c0d3f75689835f1b3b4688c4f8544cb57" + integrity sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ== dependencies: - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.5.1" - jest-util "^27.5.1" + jest-message-util "^29.5.0" + jest-util "^29.5.0" slash "^3.0.0" -"@jest/core@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" - integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== +"@jest/core@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/core/-/core-29.5.0.tgz#76674b96904484e8214614d17261cc491e5f1f03" + integrity sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ== dependencies: - "@jest/console" "^27.5.1" - "@jest/reporters" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/console" "^29.5.0" + "@jest/reporters" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - emittery "^0.8.1" + ci-info "^3.2.0" exit "^0.1.2" graceful-fs "^4.2.9" - jest-changed-files "^27.5.1" - jest-config "^27.5.1" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-resolve-dependencies "^27.5.1" - jest-runner "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - jest-watcher "^27.5.1" + jest-changed-files "^29.5.0" + jest-config "^29.5.0" + jest-haste-map "^29.5.0" + jest-message-util "^29.5.0" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-resolve-dependencies "^29.5.0" + jest-runner "^29.5.0" + jest-runtime "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" + jest-watcher "^29.5.0" micromatch "^4.0.4" - rimraf "^3.0.0" + pretty-format "^29.5.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" - integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== +"@jest/environment@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65" + integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ== dependencies: - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^27.5.1" + jest-mock "^29.5.0" -"@jest/fake-timers@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" - integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== +"@jest/expect-utils@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.5.0.tgz#f74fad6b6e20f924582dc8ecbf2cb800fe43a036" + integrity sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg== dependencies: - "@jest/types" "^27.5.1" - "@sinonjs/fake-timers" "^8.0.1" + jest-get-type "^29.4.3" + +"@jest/expect@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.5.0.tgz#80952f5316b23c483fbca4363ce822af79c38fba" + integrity sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g== + dependencies: + expect "^29.5.0" + jest-snapshot "^29.5.0" + +"@jest/fake-timers@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c" + integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg== + dependencies: + "@jest/types" "^29.5.0" + "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-util "^27.5.1" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" -"@jest/globals@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" - integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== +"@jest/globals@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.5.0.tgz#6166c0bfc374c58268677539d0c181f9c1833298" + integrity sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ== dependencies: - "@jest/environment" "^27.5.1" - "@jest/types" "^27.5.1" - expect "^27.5.1" + "@jest/environment" "^29.5.0" + "@jest/expect" "^29.5.0" + "@jest/types" "^29.5.0" + jest-mock "^29.5.0" -"@jest/reporters@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" - integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== +"@jest/reporters@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.5.0.tgz#985dfd91290cd78ddae4914ba7921bcbabe8ac9b" + integrity sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/console" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@jridgewell/trace-mapping" "^0.3.15" "@types/node" "*" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" - glob "^7.1.2" + glob "^7.1.3" graceful-fs "^4.2.9" istanbul-lib-coverage "^3.0.0" istanbul-lib-instrument "^5.1.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.1.3" - jest-haste-map "^27.5.1" - jest-resolve "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" + jest-message-util "^29.5.0" + jest-util "^29.5.0" + jest-worker "^29.5.0" slash "^3.0.0" - source-map "^0.6.0" string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^8.1.0" + strip-ansi "^6.0.0" + v8-to-istanbul "^9.0.1" + +"@jest/schemas@^29.4.3": + version "29.4.3" + resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" + integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== + dependencies: + "@sinclair/typebox" "^0.25.16" -"@jest/source-map@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" - integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== +"@jest/source-map@^29.4.3": + version "29.4.3" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20" + integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w== dependencies: + "@jridgewell/trace-mapping" "^0.3.15" callsites "^3.0.0" graceful-fs "^4.2.9" - source-map "^0.6.0" -"@jest/test-result@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" - integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== +"@jest/test-result@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.5.0.tgz#7c856a6ca84f45cc36926a4e9c6b57f1973f1408" + integrity sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ== dependencies: - "@jest/console" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/console" "^29.5.0" + "@jest/types" "^29.5.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" - integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== +"@jest/test-sequencer@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz#34d7d82d3081abd523dbddc038a3ddcb9f6d3cc4" + integrity sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ== dependencies: - "@jest/test-result" "^27.5.1" + "@jest/test-result" "^29.5.0" graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-runtime "^27.5.1" + jest-haste-map "^29.5.0" + slash "^3.0.0" -"@jest/transform@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" - integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== +"@jest/transform@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.5.0.tgz#cf9c872d0965f0cbd32f1458aa44a2b1988b00f9" + integrity sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw== dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^27.5.1" + "@babel/core" "^7.11.6" + "@jest/types" "^29.5.0" + "@jridgewell/trace-mapping" "^0.3.15" babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" + convert-source-map "^2.0.0" + fast-json-stable-stringify "^2.1.0" graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-regex-util "^27.5.1" - jest-util "^27.5.1" + jest-haste-map "^29.5.0" + jest-regex-util "^29.4.3" + jest-util "^29.5.0" micromatch "^4.0.4" pirates "^4.0.4" slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" + write-file-atomic "^4.0.2" -"@jest/types@^27.5.1": - version "27.5.1" - resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" - integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== +"@jest/types@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593" + integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog== dependencies: + "@jest/schemas" "^29.4.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" - "@types/yargs" "^16.0.0" + "@types/yargs" "^17.0.8" chalk "^4.0.0" "@jridgewell/gen-mapping@^0.1.0": @@ -863,6 +893,14 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15": + version "0.3.18" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" + integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== + dependencies: + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" + "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" @@ -931,676 +969,135 @@ dependencies: ajv "^8.12.0" -"@lerna/add@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" - integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== - dependencies: - "@lerna/bootstrap" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - npm-package-arg "^8.1.0" - p-map "^4.0.0" - pacote "^11.2.6" - semver "^7.3.4" - -"@lerna/bootstrap@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" - integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/has-npm-version" "4.0.0" - "@lerna/npm-install" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - get-port "^5.1.1" - multimatch "^5.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" - read-package-tree "^5.3.1" - semver "^7.3.4" - -"@lerna/changed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" - integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== - dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" - -"@lerna/check-working-tree@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" - integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== - dependencies: - "@lerna/collect-uncommitted" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/validation-error" "4.0.0" - -"@lerna/child-process@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" - integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== +"@lerna/child-process@6.6.1": + version "6.6.1" + resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-6.6.1.tgz#e31bc411ad6d474cf7b676904da6f77f58fd64eb" + integrity sha512-yUCDCcRNNbI9UUsUB6FYEmDHpo5Tn/f0q5D7vhDP4i6Or8kBj82y7+e31hwfLvK2ykOYlDVs2MxAluH/+QUBOQ== dependencies: chalk "^4.1.0" execa "^5.0.0" strong-log-transformer "^2.1.0" -"@lerna/clean@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" - integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" - -"@lerna/cli@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" - integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== - dependencies: - "@lerna/global-options" "4.0.0" - dedent "^0.7.0" - npmlog "^4.1.2" - yargs "^16.2.0" - -"@lerna/collect-uncommitted@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" - integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== - dependencies: - "@lerna/child-process" "4.0.0" - chalk "^4.1.0" - npmlog "^4.1.2" - -"@lerna/collect-updates@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" - integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/describe-ref" "4.0.0" - minimatch "^3.0.4" - npmlog "^4.1.2" - slash "^3.0.0" - -"@lerna/command@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" - integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== +"@lerna/create@6.6.1": + version "6.6.1" + resolved "https://registry.npmjs.org/@lerna/create/-/create-6.6.1.tgz#fc20f09e10b612d424a576775ad6eefe6aa96517" + integrity sha512-GDmHFhQ0mr0RcXWXrsLyfMV6ch/dZV/Ped1e6sFVQhsLL9P+FFXX1ZWxa/dQQ90VWF2qWcmK0+S/L3kUz2xvTA== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/project" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/write-log-file" "4.0.0" - clone-deep "^4.0.1" + "@lerna/child-process" "6.6.1" dedent "^0.7.0" - execa "^5.0.0" - is-ci "^2.0.0" - npmlog "^4.1.2" - -"@lerna/conventional-commits@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" - integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== - dependencies: - "@lerna/validation-error" "4.0.0" - conventional-changelog-angular "^5.0.12" - conventional-changelog-core "^4.2.2" - conventional-recommended-bump "^6.1.0" fs-extra "^9.1.0" - get-stream "^6.0.0" - lodash.template "^4.5.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - pify "^5.0.0" - semver "^7.3.4" - -"@lerna/create-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" - integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== - dependencies: - cmd-shim "^4.1.0" - fs-extra "^9.1.0" - npmlog "^4.1.2" - -"@lerna/create@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" - integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - fs-extra "^9.1.0" - globby "^11.0.2" - init-package-json "^2.0.2" - npm-package-arg "^8.1.0" + init-package-json "^3.0.2" + npm-package-arg "8.1.1" p-reduce "^2.1.0" - pacote "^11.2.6" + pacote "^13.6.1" pify "^5.0.0" semver "^7.3.4" slash "^3.0.0" validate-npm-package-license "^3.0.4" - validate-npm-package-name "^3.0.0" - whatwg-url "^8.4.0" + validate-npm-package-name "^4.0.0" yargs-parser "20.2.4" -"@lerna/describe-ref@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" - integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== - dependencies: - "@lerna/child-process" "4.0.0" - npmlog "^4.1.2" - -"@lerna/diff@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" - integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/validation-error" "4.0.0" - npmlog "^4.1.2" - -"@lerna/exec@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" - integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/filter-options@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" - integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== - dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/filter-packages" "4.0.0" - dedent "^0.7.0" - npmlog "^4.1.2" - -"@lerna/filter-packages@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" - integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== - dependencies: - "@lerna/validation-error" "4.0.0" - multimatch "^5.0.0" - npmlog "^4.1.2" - -"@lerna/get-npm-exec-opts@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" - integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== - dependencies: - npmlog "^4.1.2" - -"@lerna/get-packed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" - integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== - dependencies: - fs-extra "^9.1.0" - ssri "^8.0.1" - tar "^6.1.0" - -"@lerna/github-client@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" - integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== - dependencies: - "@lerna/child-process" "4.0.0" - "@octokit/plugin-enterprise-rest" "^6.0.1" - "@octokit/rest" "^18.1.0" - git-url-parse "^11.4.4" - npmlog "^4.1.2" - -"@lerna/gitlab-client@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" - integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== - dependencies: - node-fetch "^2.6.1" - npmlog "^4.1.2" - whatwg-url "^8.4.0" - -"@lerna/global-options@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" - integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== - -"@lerna/has-npm-version@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" - integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== - dependencies: - "@lerna/child-process" "4.0.0" - semver "^7.3.4" - -"@lerna/import@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" - integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - fs-extra "^9.1.0" - p-map-series "^2.1.0" - -"@lerna/info@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" - integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/output" "4.0.0" - envinfo "^7.7.4" - -"@lerna/init@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" - integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - write-json-file "^4.3.0" - -"@lerna/link@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" - integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - p-map "^4.0.0" - slash "^3.0.0" - -"@lerna/list@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" - integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" - -"@lerna/listable@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" - integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== - dependencies: - "@lerna/query-graph" "4.0.0" - chalk "^4.1.0" - columnify "^1.5.4" - -"@lerna/log-packed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" - integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== - dependencies: - byte-size "^7.0.0" - columnify "^1.5.4" - has-unicode "^2.0.1" - npmlog "^4.1.2" - -"@lerna/npm-conf@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" - integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== - dependencies: - config-chain "^1.1.12" - pify "^5.0.0" - -"@lerna/npm-dist-tag@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" - integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== - dependencies: - "@lerna/otplease" "4.0.0" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" - npmlog "^4.1.2" - -"@lerna/npm-install@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" - integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" - fs-extra "^9.1.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - signal-exit "^3.0.3" - write-pkg "^4.0.0" - -"@lerna/npm-publish@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" - integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== - dependencies: - "@lerna/otplease" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - fs-extra "^9.1.0" - libnpmpublish "^4.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - pify "^5.0.0" - read-package-json "^3.0.0" - -"@lerna/npm-run-script@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" - integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" - npmlog "^4.1.2" - -"@lerna/otplease@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" - integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== - dependencies: - "@lerna/prompt" "4.0.0" - -"@lerna/output@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" - integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== - dependencies: - npmlog "^4.1.2" - -"@lerna/pack-directory@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" - integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== - dependencies: - "@lerna/get-packed" "4.0.0" - "@lerna/package" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - npm-packlist "^2.1.4" - npmlog "^4.1.2" - tar "^6.1.0" - temp-write "^4.0.0" - -"@lerna/package-graph@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" - integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== - dependencies: - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/validation-error" "4.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - semver "^7.3.4" - -"@lerna/package@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" - integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== - dependencies: - load-json-file "^6.2.0" - npm-package-arg "^8.1.0" - write-pkg "^4.0.0" - -"@lerna/prerelease-id-from-version@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" - integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== - dependencies: - semver "^7.3.4" - -"@lerna/profiler@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" - integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== - dependencies: - fs-extra "^9.1.0" - npmlog "^4.1.2" - upath "^2.0.1" - -"@lerna/project@4.0.0", "@lerna/project@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" - integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== - dependencies: - "@lerna/package" "4.0.0" - "@lerna/validation-error" "4.0.0" - cosmiconfig "^7.0.0" - dedent "^0.7.0" - dot-prop "^6.0.1" - glob-parent "^5.1.1" - globby "^11.0.2" - load-json-file "^6.2.0" - npmlog "^4.1.2" - p-map "^4.0.0" - resolve-from "^5.0.0" - write-json-file "^4.3.0" - -"@lerna/prompt@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" - integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== - dependencies: - inquirer "^7.3.3" - npmlog "^4.1.2" - -"@lerna/publish@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" - integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/log-packed" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/npm-dist-tag" "4.0.0" - "@lerna/npm-publish" "4.0.0" - "@lerna/otplease" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/pack-directory" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/version" "4.0.0" - fs-extra "^9.1.0" - libnpmaccess "^4.0.1" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" - npmlog "^4.1.2" - p-map "^4.0.0" - p-pipe "^3.1.0" - pacote "^11.2.6" - semver "^7.3.4" - -"@lerna/pulse-till-done@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" - integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== - dependencies: - npmlog "^4.1.2" - -"@lerna/query-graph@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" - integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== - dependencies: - "@lerna/package-graph" "4.0.0" - -"@lerna/resolve-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" - integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== - dependencies: - fs-extra "^9.1.0" - npmlog "^4.1.2" - read-cmd-shim "^2.0.0" - -"@lerna/rimraf-dir@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" - integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== - dependencies: - "@lerna/child-process" "4.0.0" - npmlog "^4.1.2" - path-exists "^4.0.0" - rimraf "^3.0.2" - -"@lerna/run-lifecycle@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" - integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== - dependencies: - "@lerna/npm-conf" "4.0.0" - npm-lifecycle "^3.1.5" - npmlog "^4.1.2" - -"@lerna/run-topologically@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" - integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== - dependencies: - "@lerna/query-graph" "4.0.0" - p-queue "^6.6.2" - -"@lerna/run@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" - integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-run-script" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/timer" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/symlink-binary@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" - integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== - dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/package" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - -"@lerna/symlink-dependencies@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" - integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== - dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/resolve-symlink" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - p-map-series "^2.1.0" - -"@lerna/timer@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" - integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== +"@lerna/legacy-package-management@6.6.1": + version "6.6.1" + resolved "https://registry.npmjs.org/@lerna/legacy-package-management/-/legacy-package-management-6.6.1.tgz#1f44af40098b9396a4f698514ff2b87016b1ee3d" + integrity sha512-0EYxSFr34VgeudA5rvjGJSY7s4seITMVB7AJ9LRFv9QDUk6jpvapV13ZAaKnhDTxX5vNCfnJuWHXXWq0KyPF/Q== + dependencies: + "@npmcli/arborist" "6.2.3" + "@npmcli/run-script" "4.1.7" + "@nrwl/devkit" ">=15.5.2 < 16" + "@octokit/rest" "19.0.3" + byte-size "7.0.0" + chalk "4.1.0" + clone-deep "4.0.1" + cmd-shim "5.0.0" + columnify "1.6.0" + config-chain "1.1.12" + conventional-changelog-core "4.2.4" + conventional-recommended-bump "6.1.0" + cosmiconfig "7.0.0" + dedent "0.7.0" + dot-prop "6.0.1" + execa "5.0.0" + file-url "3.0.0" + find-up "5.0.0" + fs-extra "9.1.0" + get-port "5.1.1" + get-stream "6.0.0" + git-url-parse "13.1.0" + glob-parent "5.1.2" + globby "11.1.0" + graceful-fs "4.2.10" + has-unicode "2.0.1" + inquirer "8.2.4" + is-ci "2.0.0" + is-stream "2.0.0" + libnpmpublish "6.0.4" + load-json-file "6.2.0" + make-dir "3.1.0" + minimatch "3.0.5" + multimatch "5.0.0" + node-fetch "2.6.7" + npm-package-arg "8.1.1" + npm-packlist "5.1.1" + npm-registry-fetch "14.0.3" + npmlog "6.0.2" + p-map "4.0.0" + p-map-series "2.1.0" + p-queue "6.6.2" + p-waterfall "2.1.1" + pacote "13.6.2" + pify "5.0.0" + pretty-format "29.4.3" + read-cmd-shim "3.0.0" + read-package-json "5.0.1" + resolve-from "5.0.0" + semver "7.3.8" + signal-exit "3.0.7" + slash "3.0.0" + ssri "9.0.1" + strong-log-transformer "2.1.0" + tar "6.1.11" + temp-dir "1.0.0" + tempy "1.0.0" + upath "2.0.1" + uuid "8.3.2" + write-file-atomic "4.0.1" + write-pkg "4.0.0" + yargs "16.2.0" -"@lerna/validation-error@4.0.0": +"@lerna/package@4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" - integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== + resolved "https://registry.npmjs.org/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" + integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== dependencies: - npmlog "^4.1.2" + load-json-file "^6.2.0" + npm-package-arg "^8.1.0" + write-pkg "^4.0.0" -"@lerna/version@4.0.0": +"@lerna/project@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" - integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/conventional-commits" "4.0.0" - "@lerna/github-client" "4.0.0" - "@lerna/gitlab-client" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" + resolved "https://registry.npmjs.org/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" + integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== + dependencies: + "@lerna/package" "4.0.0" "@lerna/validation-error" "4.0.0" - chalk "^4.1.0" + cosmiconfig "^7.0.0" dedent "^0.7.0" + dot-prop "^6.0.1" + glob-parent "^5.1.1" + globby "^11.0.2" load-json-file "^6.2.0" - minimatch "^3.0.4" npmlog "^4.1.2" p-map "^4.0.0" - p-pipe "^3.1.0" - p-reduce "^2.1.0" - p-waterfall "^2.1.1" - semver "^7.3.4" - slash "^3.0.0" - temp-write "^4.0.0" + resolve-from "^5.0.0" write-json-file "^4.3.0" -"@lerna/write-log-file@4.0.0": +"@lerna/validation-error@4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" - integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== + resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" + integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== dependencies: npmlog "^4.1.2" - write-file-atomic "^3.0.3" "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1623,6 +1120,45 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/arborist@6.2.3": + version "6.2.3" + resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-6.2.3.tgz#31f8aed2588341864d3811151d929c01308f8e71" + integrity sha512-lpGOC2ilSJXcc2zfW9QtukcCTcMbl3fVI0z4wvFB2AFIl0C+Q6Wv7ccrpdrQa8rvJ1ZVuc6qkX7HVTyKlzGqKA== + dependencies: + "@isaacs/string-locale-compare" "^1.1.0" + "@npmcli/fs" "^3.1.0" + "@npmcli/installed-package-contents" "^2.0.0" + "@npmcli/map-workspaces" "^3.0.2" + "@npmcli/metavuln-calculator" "^5.0.0" + "@npmcli/name-from-folder" "^2.0.0" + "@npmcli/node-gyp" "^3.0.0" + "@npmcli/package-json" "^3.0.0" + "@npmcli/query" "^3.0.0" + "@npmcli/run-script" "^6.0.0" + bin-links "^4.0.1" + cacache "^17.0.4" + common-ancestor-path "^1.0.1" + hosted-git-info "^6.1.1" + json-parse-even-better-errors "^3.0.0" + json-stringify-nice "^1.1.4" + minimatch "^6.1.6" + nopt "^7.0.0" + npm-install-checks "^6.0.0" + npm-package-arg "^10.1.0" + npm-pick-manifest "^8.0.1" + npm-registry-fetch "^14.0.3" + npmlog "^7.0.1" + pacote "^15.0.8" + parse-conflict-json "^3.0.0" + proc-log "^3.0.0" + promise-all-reject-late "^1.0.0" + promise-call-limit "^1.0.1" + read-package-json-fast "^3.0.2" + semver "^7.3.7" + ssri "^10.0.1" + treeverse "^3.0.0" + walk-up-path "^1.0.0" + "@npmcli/arborist@^5.6.3": version "5.6.3" resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-5.6.3.tgz#40810080272e097b4a7a4f56108f4a31638a9874" @@ -1666,11 +1202,6 @@ treeverse "^2.0.0" walk-up-path "^1.0.0" -"@npmcli/ci-detect@^1.0.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" - integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== - "@npmcli/ci-detect@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-2.0.0.tgz#e63c91bcd4185ac1e85720a34fc48e164ece5b89" @@ -1697,14 +1228,6 @@ dependencies: ansi-styles "^4.3.0" -"@npmcli/fs@^1.0.0": - version "1.1.1" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" - integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== - dependencies: - "@gar/promisify" "^1.0.1" - semver "^7.3.5" - "@npmcli/fs@^2.1.0", "@npmcli/fs@^2.1.1": version "2.1.2" resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz#a9e2541a4a2fec2e69c29b35e6060973da79b865" @@ -1713,19 +1236,12 @@ "@gar/promisify" "^1.1.3" semver "^7.3.5" -"@npmcli/git@^2.1.0": - version "2.1.0" - resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" - integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== +"@npmcli/fs@^3.1.0": + version "3.1.0" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz#233d43a25a91d68c3a863ba0da6a3f00924a173e" + integrity sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w== dependencies: - "@npmcli/promise-spawn" "^1.3.2" - lru-cache "^6.0.0" - mkdirp "^1.0.4" - npm-pick-manifest "^6.1.1" - promise-inflight "^1.0.1" - promise-retry "^2.0.1" semver "^7.3.5" - which "^2.0.2" "@npmcli/git@^3.0.0": version "3.0.2" @@ -1742,7 +1258,21 @@ semver "^7.3.5" which "^2.0.2" -"@npmcli/installed-package-contents@^1.0.6", "@npmcli/installed-package-contents@^1.0.7": +"@npmcli/git@^4.0.0": + version "4.0.4" + resolved "https://registry.npmjs.org/@npmcli/git/-/git-4.0.4.tgz#cdf74f21b1d440c0756fb28159d935129d9daa33" + integrity sha512-5yZghx+u5M47LghaybLCkdSyFzV/w4OuH12d96HO389Ik9CDsLaDZJVynSGGVJOLn6gy/k7Dz5XYcplM3uxXRg== + dependencies: + "@npmcli/promise-spawn" "^6.0.0" + lru-cache "^7.4.4" + npm-pick-manifest "^8.0.0" + proc-log "^3.0.0" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^3.0.0" + +"@npmcli/installed-package-contents@^1.0.7": version "1.0.7" resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== @@ -1750,6 +1280,14 @@ npm-bundled "^1.1.1" npm-normalize-package-bin "^1.0.1" +"@npmcli/installed-package-contents@^2.0.0", "@npmcli/installed-package-contents@^2.0.1": + version "2.0.2" + resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz#bfd817eccd9e8df200919e73f57f9e3d9e4f9e33" + integrity sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ== + dependencies: + npm-bundled "^3.0.0" + npm-normalize-package-bin "^3.0.0" + "@npmcli/map-workspaces@^2.0.2", "@npmcli/map-workspaces@^2.0.3": version "2.0.4" resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.4.tgz#9e5e8ab655215a262aefabf139782b894e0504fc" @@ -1760,6 +1298,16 @@ minimatch "^5.0.1" read-package-json-fast "^2.0.3" +"@npmcli/map-workspaces@^3.0.2": + version "3.0.3" + resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.3.tgz#476944b63cd1f65bf83c6fdc7f4ca7be56906b1f" + integrity sha512-HlCvFuTzw4UNoKyZdqiNrln+qMF71QJkxy2dsusV8QQdoa89e2TF4dATCzBxbl4zzRzdDoWWyP5ADVrNAH9cRQ== + dependencies: + "@npmcli/name-from-folder" "^2.0.0" + glob "^9.3.1" + minimatch "^7.4.2" + read-package-json-fast "^3.0.0" + "@npmcli/metavuln-calculator@^3.0.1": version "3.1.1" resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-3.1.1.tgz#9359bd72b400f8353f6a28a25c8457b562602622" @@ -1770,13 +1318,15 @@ pacote "^13.0.3" semver "^7.3.5" -"@npmcli/move-file@^1.0.1": - version "1.1.2" - resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" - integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== +"@npmcli/metavuln-calculator@^5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-5.0.0.tgz#917c3be49ebed0b424b07f38060b929127e4c499" + integrity sha512-BBFQx4M12wiEuVwCgtX/Depx0B/+NHMwDWOlXT41/Pdy5W/1Fenk+hibUlMSrFWwASbX+fY90UbILAEIYH02/A== dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" + cacache "^17.0.0" + json-parse-even-better-errors "^3.0.0" + pacote "^15.0.0" + semver "^7.3.5" "@npmcli/move-file@^2.0.0": version "2.0.1" @@ -1791,16 +1341,21 @@ resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" integrity sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA== -"@npmcli/node-gyp@^1.0.2": - version "1.0.3" - resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" - integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== +"@npmcli/name-from-folder@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz#c44d3a7c6d5c184bb6036f4d5995eee298945815" + integrity sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg== "@npmcli/node-gyp@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz#8c20e53e34e9078d18815c1d2dda6f2420d75e35" integrity sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A== +"@npmcli/node-gyp@^3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz#101b2d0490ef1aa20ed460e4c0813f0db560545a" + integrity sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA== + "@npmcli/package-json@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-2.0.0.tgz#3bbcf4677e21055adbe673d9f08c9f9cde942e4a" @@ -1808,12 +1363,12 @@ dependencies: json-parse-even-better-errors "^2.3.1" -"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": - version "1.3.2" - resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" - integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== +"@npmcli/package-json@^3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-3.0.0.tgz#c9219a197e1be8dbf43c4ef8767a72277c0533b6" + integrity sha512-NnuPuM97xfiCpbTEJYtEuKz6CFbpUHtaT0+5via5pQeI25omvQDFbp1GcGJ/c4zvL/WX0qbde6YiLgfZbWFgvg== dependencies: - infer-owner "^1.0.4" + json-parse-even-better-errors "^3.0.0" "@npmcli/promise-spawn@^3.0.0": version "3.0.0" @@ -1822,6 +1377,13 @@ dependencies: infer-owner "^1.0.4" +"@npmcli/promise-spawn@^6.0.0", "@npmcli/promise-spawn@^6.0.1": + version "6.0.2" + resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz#c8bc4fa2bd0f01cb979d8798ba038f314cfa70f2" + integrity sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg== + dependencies: + which "^3.0.0" + "@npmcli/query@^1.2.0": version "1.2.0" resolved "https://registry.npmjs.org/@npmcli/query/-/query-1.2.0.tgz#46468d583cf013aa92102970700f9555314aabe4" @@ -1831,15 +1393,23 @@ postcss-selector-parser "^6.0.10" semver "^7.3.7" -"@npmcli/run-script@^1.8.2": - version "1.8.6" - resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" - integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== +"@npmcli/query@^3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@npmcli/query/-/query-3.0.0.tgz#51a0dfb85811e04f244171f164b6bc83b36113a7" + integrity sha512-MFNDSJNgsLZIEBVZ0Q9w9K7o07j5N4o4yjtdz2uEpuCZlXGMuPENiRaFYk0vRqAA64qVuUQwC05g27fRtfUgnA== + dependencies: + postcss-selector-parser "^6.0.10" + +"@npmcli/run-script@4.1.7": + version "4.1.7" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.7.tgz#b1a2f57568eb738e45e9ea3123fb054b400a86f7" + integrity sha512-WXr/MyM4tpKA4BotB81NccGAv8B48lNH0gRoILucbcAhTQXLCoi6HflMV3KdXubIqvP9SuLsFn68Z7r4jl+ppw== dependencies: - "@npmcli/node-gyp" "^1.0.2" - "@npmcli/promise-spawn" "^1.3.2" - node-gyp "^7.1.0" - read-package-json-fast "^2.0.1" + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/promise-spawn" "^3.0.0" + node-gyp "^9.0.0" + read-package-json-fast "^2.0.3" + which "^2.0.2" "@npmcli/run-script@^4.1.0", "@npmcli/run-script@^4.1.3", "@npmcli/run-script@^4.2.0", "@npmcli/run-script@^4.2.1": version "4.2.1" @@ -1852,6 +1422,113 @@ read-package-json-fast "^2.0.3" which "^2.0.2" +"@npmcli/run-script@^6.0.0": + version "6.0.0" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz#f89e322c729e26ae29db6cc8cc76559074aac208" + integrity sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ== + dependencies: + "@npmcli/node-gyp" "^3.0.0" + "@npmcli/promise-spawn" "^6.0.0" + node-gyp "^9.0.0" + read-package-json-fast "^3.0.0" + which "^3.0.0" + +"@nrwl/cli@15.9.1", "@nrwl/cli@^15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/cli/-/cli-15.9.1.tgz#4724f83c2286486fd416b169a1af73055af6aa65" + integrity sha512-zyMDiMxPhOGKmq9ivY6mV29pOsRCERKjBRfEYbFuqslxP1RNe9uiMxPUf9Gqm5VwxqKleKkwz92BMvO2Qbk+fA== + dependencies: + nx "15.9.1" + +"@nrwl/devkit@15.9.1", "@nrwl/devkit@>=15.5.2 < 16": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/devkit/-/devkit-15.9.1.tgz#c8c5fd52e4626f5ea9bd0d8de936ae7c868ef936" + integrity sha512-vEfmKoPnEbDmsvMto/ap4z2demcSJad3OyKPUBBpWJs4Hkxv/qg/XJUwoGZhKU/izVuO2FE1kMp9R5/8xV6WMQ== + dependencies: + ejs "^3.1.7" + ignore "^5.0.4" + semver "7.3.4" + tmp "~0.2.1" + tslib "^2.3.0" + +"@nrwl/nx-darwin-arm64@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-darwin-arm64/-/nx-darwin-arm64-15.9.1.tgz#ea27ec667e9237689b7f778d3116fcaa51a743f2" + integrity sha512-rwVQ+uxP12Bhltkawc2B7bKxh6RZR5S5Y8kKkxSx57wFniOslEqLr/s3XpTTceJUoKk5ZynGY/98HCG3FUqGyg== + +"@nrwl/nx-darwin-x64@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-darwin-x64/-/nx-darwin-x64-15.9.1.tgz#90f0f7881c46abd03c211bb10787d2a914685651" + integrity sha512-F1Pmj14xNcYlsJhDv0DOnBhGAgXTSOg6ayeCqnH3nR1IHB8ygcyBWKzaHWOJA/wyP16w+dEqCGkMVQUt2gNE3A== + +"@nrwl/nx-linux-arm-gnueabihf@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-15.9.1.tgz#845eb0b91ee72d8b552340efdf5a55eb89a00a89" + integrity sha512-RSt2siC4k1W0eLU658rVyGsMP1OxlkHmklapA3zfb7gASrKhZBy7HiAJjrpalqxj3D1n4c8cnpnn8NjjiLgyOg== + +"@nrwl/nx-linux-arm64-gnu@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-15.9.1.tgz#e34379243b61b4f46c0633277b4d2c7c6b6b057d" + integrity sha512-6T2uPk4teDLnkXhWfjmXmei3b3dC7g2OreGTwTl6jpIkhduQrQ3ipPGLkCAywjyckZtouv1mlOO0mBd7Hjst4w== + +"@nrwl/nx-linux-arm64-musl@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-linux-arm64-musl/-/nx-linux-arm64-musl-15.9.1.tgz#d5c9eb46993d4920dbf631d6da9068f0bf87635d" + integrity sha512-K8wvm7rAsw6fgbixC5PEaY/go3uqtX4regoNpnck9zZnybQP66a9DxHzfekCLOfXnlgoVxtHmV1iVZETZNmKGg== + +"@nrwl/nx-linux-x64-gnu@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-linux-x64-gnu/-/nx-linux-x64-gnu-15.9.1.tgz#aca6e40e48ab6ea1434b67ad0e1f5d6f9b5c0131" + integrity sha512-7kD9J86KhmYkHIrF2YuJWM1ltdiettOQ8ej9gAnqxQRKnVPazDSg56jFBosjow1mdilvTYONbFPSDEh0IrIE3g== + +"@nrwl/nx-linux-x64-musl@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-linux-x64-musl/-/nx-linux-x64-musl-15.9.1.tgz#beebac0f0b40fce0ef3bdcf7ca4c31d47e0ab655" + integrity sha512-WopD1Jf1CGHg/uCYfo40TEd/yawglMFCoNPc/WNFXNx9P2LMfp8cKyApdvfP32Ptaql3fJvJCHXUqcPxYy6cSg== + +"@nrwl/nx-win32-arm64-msvc@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-15.9.1.tgz#e48deea3d88df205ef3b6588019c10cd42f60064" + integrity sha512-ZU/QuUU1WPaIFdKqCWAm5TI+/zYAXbEyZKd/OhY67Gxaca98O4YXS6GmfF7WNHvQzsYoeuuLyRzZowSp22Rung== + +"@nrwl/nx-win32-x64-msvc@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/nx-win32-x64-msvc/-/nx-win32-x64-msvc-15.9.1.tgz#bb68010c852ccf644a6ca281b58f5097ac1d463c" + integrity sha512-te43yJPni7VIIM5DpZnGuWwEjZNMERdBAhHeKWobwvSQ4ogdpmDbOhsdHqU3mFLaiKP1pzRo17R5tNJ5Gmw5tA== + +"@nrwl/tao@15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/tao/-/tao-15.9.1.tgz#b276eb57fb40263659dc211302ee3b24601341fc" + integrity sha512-gb21eJ3VrZdUpg4MQ4rmOfLy+omHiXCEvWWFGYvFSxXGVeNaLzlvQ/+OOK0B/d0KTCuXKCgvVKJ3jobd+4s02A== + dependencies: + nx "15.9.1" + +"@nrwl/workspace@^15.9.1": + version "15.9.1" + resolved "https://registry.npmjs.org/@nrwl/workspace/-/workspace-15.9.1.tgz#c91896a83269cb72c1696f5f64a1385cf7007fb2" + integrity sha512-3M1zRrwgaYIZ20fgIsok1nGUrn9DkjZXmh9QVtgHVsLz2vRwrv1wzLAz7kVJpVMUk7gtxcEKLqb8lss4X1zWYQ== + dependencies: + "@nrwl/devkit" "15.9.1" + "@parcel/watcher" "2.0.4" + chalk "^4.1.0" + chokidar "^3.5.1" + cli-cursor "3.1.0" + cli-spinners "2.6.1" + dotenv "~10.0.0" + figures "3.2.0" + flat "^5.0.2" + glob "7.1.4" + ignore "^5.0.4" + minimatch "3.0.5" + npm-run-path "^4.0.1" + nx "15.9.1" + open "^8.4.0" + rxjs "^6.5.4" + tmp "~0.2.1" + tslib "^2.3.0" + yargs "^17.6.2" + yargs-parser "21.1.1" + "@octokit/auth-token@^2.4.4": version "2.5.0" resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" @@ -1859,6 +1536,13 @@ dependencies: "@octokit/types" "^6.0.3" +"@octokit/auth-token@^3.0.0": + version "3.0.3" + resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.3.tgz#ce7e48a3166731f26068d7a7a7996b5da58cbe0c" + integrity sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA== + dependencies: + "@octokit/types" "^9.0.0" + "@octokit/core@^3.5.1", "@octokit/core@^3.6.0": version "3.6.0" resolved "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" @@ -1872,6 +1556,19 @@ before-after-hook "^2.2.0" universal-user-agent "^6.0.0" +"@octokit/core@^4.0.0": + version "4.2.0" + resolved "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz#8c253ba9605aca605bc46187c34fcccae6a96648" + integrity sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg== + dependencies: + "@octokit/auth-token" "^3.0.0" + "@octokit/graphql" "^5.0.0" + "@octokit/request" "^6.0.0" + "@octokit/request-error" "^3.0.0" + "@octokit/types" "^9.0.0" + before-after-hook "^2.2.0" + universal-user-agent "^6.0.0" + "@octokit/endpoint@^6.0.1": version "6.0.12" resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" @@ -1881,6 +1578,15 @@ is-plain-object "^5.0.0" universal-user-agent "^6.0.0" +"@octokit/endpoint@^7.0.0": + version "7.0.5" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.5.tgz#2bb2a911c12c50f10014183f5d596ce30ac67dd1" + integrity sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA== + dependencies: + "@octokit/types" "^9.0.0" + is-plain-object "^5.0.0" + universal-user-agent "^6.0.0" + "@octokit/graphql@^4.5.8": version "4.8.0" resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" @@ -1890,12 +1596,31 @@ "@octokit/types" "^6.0.3" universal-user-agent "^6.0.0" +"@octokit/graphql@^5.0.0": + version "5.0.5" + resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.5.tgz#a4cb3ea73f83b861893a6370ee82abb36e81afd2" + integrity sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ== + dependencies: + "@octokit/request" "^6.0.0" + "@octokit/types" "^9.0.0" + universal-user-agent "^6.0.0" + "@octokit/openapi-types@^12.11.0": version "12.11.0" resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz#da5638d64f2b919bca89ce6602d059f1b52d3ef0" integrity sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ== -"@octokit/plugin-enterprise-rest@^6.0.1": +"@octokit/openapi-types@^14.0.0": + version "14.0.0" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz#949c5019028c93f189abbc2fb42f333290f7134a" + integrity sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw== + +"@octokit/openapi-types@^16.0.0": + version "16.0.0" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz#d92838a6cd9fb4639ca875ddb3437f1045cc625e" + integrity sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA== + +"@octokit/plugin-enterprise-rest@6.0.1": version "6.0.1" resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== @@ -1907,6 +1632,13 @@ dependencies: "@octokit/types" "^6.40.0" +"@octokit/plugin-paginate-rest@^3.0.0": + version "3.1.0" + resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-3.1.0.tgz#86f8be759ce2d6d7c879a31490fd2f7410b731f0" + integrity sha512-+cfc40pMzWcLkoDcLb1KXqjX0jTGYXjKuQdFQDc6UAknISJHnZTiBqld6HDwRJvD4DsouDKrWXNbNV0lE/3AXA== + dependencies: + "@octokit/types" "^6.41.0" + "@octokit/plugin-request-log@^1.0.4": version "1.0.4" resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" @@ -1920,6 +1652,14 @@ "@octokit/types" "^6.39.0" deprecation "^2.3.1" +"@octokit/plugin-rest-endpoint-methods@^6.0.0": + version "6.8.1" + resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.8.1.tgz#97391fda88949eb15f68dc291957ccbe1d3e8ad1" + integrity sha512-QrlaTm8Lyc/TbU7BL/8bO49vp+RZ6W3McxxmmQTgYxf2sWkO8ZKuj4dLhPNJD6VCUW1hetCmeIM0m6FTVpDiEg== + dependencies: + "@octokit/types" "^8.1.1" + deprecation "^2.3.1" + "@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" @@ -1929,6 +1669,15 @@ deprecation "^2.0.0" once "^1.4.0" +"@octokit/request-error@^3.0.0": + version "3.0.3" + resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz#ef3dd08b8e964e53e55d471acfe00baa892b9c69" + integrity sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ== + dependencies: + "@octokit/types" "^9.0.0" + deprecation "^2.0.0" + once "^1.4.0" + "@octokit/request@^5.6.0", "@octokit/request@^5.6.3": version "5.6.3" resolved "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" @@ -1941,7 +1690,29 @@ node-fetch "^2.6.7" universal-user-agent "^6.0.0" -"@octokit/rest@^18.1.0", "@octokit/rest@^18.12.0": +"@octokit/request@^6.0.0": + version "6.2.3" + resolved "https://registry.npmjs.org/@octokit/request/-/request-6.2.3.tgz#76d5d6d44da5c8d406620a4c285d280ae310bdb4" + integrity sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA== + dependencies: + "@octokit/endpoint" "^7.0.0" + "@octokit/request-error" "^3.0.0" + "@octokit/types" "^9.0.0" + is-plain-object "^5.0.0" + node-fetch "^2.6.7" + universal-user-agent "^6.0.0" + +"@octokit/rest@19.0.3": + version "19.0.3" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.3.tgz#b9a4e8dc8d53e030d611c053153ee6045f080f02" + integrity sha512-5arkTsnnRT7/sbI4fqgSJ35KiFaN7zQm0uQiQtivNQLI8RQx8EHwJCajcTUwmaCMNDg7tdCvqAnc7uvHHPxrtQ== + dependencies: + "@octokit/core" "^4.0.0" + "@octokit/plugin-paginate-rest" "^3.0.0" + "@octokit/plugin-request-log" "^1.0.4" + "@octokit/plugin-rest-endpoint-methods" "^6.0.0" + +"@octokit/rest@^18.12.0": version "18.12.0" resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== @@ -1951,13 +1722,27 @@ "@octokit/plugin-request-log" "^1.0.4" "@octokit/plugin-rest-endpoint-methods" "^5.12.0" -"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.39.0", "@octokit/types@^6.40.0": +"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.39.0", "@octokit/types@^6.40.0", "@octokit/types@^6.41.0": version "6.41.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz#e58ef78d78596d2fb7df9c6259802464b5f84a04" integrity sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg== dependencies: "@octokit/openapi-types" "^12.11.0" +"@octokit/types@^8.1.1": + version "8.2.1" + resolved "https://registry.npmjs.org/@octokit/types/-/types-8.2.1.tgz#a6de091ae68b5541f8d4fcf9a12e32836d4648aa" + integrity sha512-8oWMUji8be66q2B9PmEIUyQm00VPDPun07umUWSaCwxmeaquFBro4Hcc3ruVoDo3zkQyZBlRvhIMEYS3pBhanw== + dependencies: + "@octokit/openapi-types" "^14.0.0" + +"@octokit/types@^9.0.0": + version "9.0.0" + resolved "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz#6050db04ddf4188ec92d60e4da1a2ce0633ff635" + integrity sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw== + dependencies: + "@octokit/openapi-types" "^16.0.0" + "@oozcitak/dom@1.15.8": version "1.15.8" resolved "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.8.tgz#0c0c7bb54cfdaadc07fd637913e706101721d15d" @@ -1987,10 +1772,49 @@ resolved "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz#10f65fe1891fd8cde4957360835e78fd1936bfdd" integrity sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ== -"@sindresorhus/is@^0.14.0": - version "0.14.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" - integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== +"@parcel/watcher@2.0.4": + version "2.0.4" + resolved "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b" + integrity sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg== + dependencies: + node-addon-api "^3.2.1" + node-gyp-build "^4.3.0" + +"@pnpm/config.env-replace@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c" + integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w== + +"@pnpm/network.ca-file@^1.0.1": + version "1.0.2" + resolved "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983" + integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA== + dependencies: + graceful-fs "4.2.10" + +"@pnpm/npm-conf@^2.1.0": + version "2.1.1" + resolved "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.1.1.tgz#8e50c67c902d209d2a02f1a403fc8998fe706b4c" + integrity sha512-yfRcuupmxxeDOSxvw4g+wFCrGiPD0L32f5WMzqMXp7Rl93EOCdFiDcaSNnZ10Up9GdNqkj70UTa8hfhPFphaZA== + dependencies: + "@pnpm/config.env-replace" "^1.1.0" + "@pnpm/network.ca-file" "^1.0.1" + config-chain "^1.1.11" + +"@sigstore/protobuf-specs@^0.1.0": + version "0.1.0" + resolved "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz#957cb64ea2f5ce527cc9cf02a096baeb0d2b99b4" + integrity sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ== + +"@sinclair/typebox@^0.25.16": + version "0.25.24" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" + integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== + +"@sindresorhus/is@^5.2.0": + version "5.3.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-5.3.0.tgz#0ec9264cf54a527671d990eb874e030b55b70dcc" + integrity sha512-CX6t4SYQ37lzxicAqsBtxA3OseeoVrh9cSJ5PFYam0GksYlupRfy1A+Q4aYD3zvcfECLc0zO2u+ZnR2UYKvCrw== "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1", "@sinonjs/commons@^1.8.3": version "1.8.6" @@ -2027,13 +1851,6 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@sinonjs/fake-timers@^8.0.1": - version "8.1.0" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" - integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== - 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" @@ -2057,12 +1874,12 @@ resolved "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz#5981a8db18b56ba38ef0efb7d995b12aa7b51918" integrity sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ== -"@szmarczak/http-timer@^1.1.2": - version "1.1.2" - resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" - integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== +"@szmarczak/http-timer@^5.0.1": + version "5.0.1" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a" + integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw== dependencies: - defer-to-connect "^1.0.1" + defer-to-connect "^2.0.1" "@tootallnate/once@1": version "1.1.2" @@ -2094,6 +1911,13 @@ resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== +"@tufjs/models@1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@tufjs/models/-/models-1.0.1.tgz#cc8bb0478188b4b6e58d5528668212724aac87ac" + integrity sha512-AY0VoG/AXdlSOocuREfPoEW4SNhOPp/7fw6mpAxfVIny1uZ+0fEtMoCi7NhELSlqQIRLMu7RgfKhkxT+AJ+EXg== + dependencies: + minimatch "^7.4.2" + "@types/archiver@^5.3.1": version "5.3.1" resolved "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.1.tgz#02991e940a03dd1a32678fead4b4ca03d0e387ca" @@ -2106,7 +1930,7 @@ resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.111.tgz#9107c405f3011a5c423b5ac93fbf279439558571" integrity sha512-8HR9UjIKmoemEzE2BviVtFkeenxfbizSu8raFjnT2VXxguZZ2JTlNww7INOH7IA0J/zRa3TjOftkYq6hVNkxDA== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": +"@types/babel__core@^7.1.14": version "7.20.0" resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== @@ -2132,7 +1956,7 @@ "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" -"@types/babel__traverse@*", "@types/babel__traverse@7.18.2", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": +"@types/babel__traverse@*", "@types/babel__traverse@7.18.2", "@types/babel__traverse@^7.0.6": version "7.18.2" resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz#235bf339d17185bdec25e024ca19cce257cc7309" integrity sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg== @@ -2187,13 +2011,18 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/graceful-fs@^4.1.2": +"@types/graceful-fs@^4.1.3": version "4.1.6" resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== dependencies: "@types/node" "*" +"@types/http-cache-semantics@^4.0.1": + version "4.0.1" + resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" + integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" @@ -2213,13 +2042,13 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^27.5.2": - version "27.5.2" - resolved "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz#ec49d29d926500ffb9fd22b84262e862049c026c" - integrity sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA== +"@types/jest@^29.5.0": + version "29.5.0" + resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.0.tgz#337b90bbcfe42158f39c2fb5619ad044bbb518ac" + integrity sha512-3Emr5VOl/aoBwnWcH/EFQvlSAmjV+XtV9GGu5mwdYew5vhQh0IUZx/60x0TzHDu09Bi7HMx10t/namdJw5QIcg== dependencies: - jest-matcher-utils "^27.0.0" - pretty-format "^27.0.0" + expect "^29.0.0" + pretty-format "^29.0.0" "@types/json-schema@*", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.9": version "7.0.11" @@ -2295,6 +2124,11 @@ resolved "https://registry.npmjs.org/@types/node/-/node-18.11.19.tgz#35e26df9ec441ab99d73e99e9aca82935eea216d" integrity sha512-YUgMWAQBWLObABqrvx8qKO1enAvBUdjZOAWQ5grBAkp5LQv45jBvYKZ3oFS9iKRCQyFjqw6iuEa1vmFqtxYLZw== +"@types/node@^14": + version "14.18.42" + resolved "https://registry.npmjs.org/@types/node/-/node-14.18.42.tgz#fa39b2dc8e0eba61bdf51c66502f84e23b66e114" + integrity sha512-xefu+RBie4xWlK8hwAzGh3npDz/4VhF6icY/shU+zv/1fNn+ZVG7T7CRwe9LId9sAYRPxI+59QBPuKL3WpyGRg== + "@types/node@^16.9.2": version "16.18.14" resolved "https://registry.npmjs.org/@types/node/-/node-16.18.14.tgz#5465ce598486a703caddbefe8603f8a2cffa3461" @@ -2411,10 +2245,10 @@ dependencies: "@types/yargs-parser" "*" -"@types/yargs@^16.0.0": - version "16.0.5" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" - integrity sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ== +"@types/yargs@^17.0.8": + version "17.0.24" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902" + integrity sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw== dependencies: "@types/yargs-parser" "*" @@ -2587,6 +2421,21 @@ resolved "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== +"@yarnpkg/parsers@^3.0.0-rc.18": + version "3.0.0-rc.42" + resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.42.tgz#3814e90a81bb1f9c06cc83c6a009139c55efe94d" + integrity sha512-eW9Mbegmb5bJjwawJM9ghjUjUqciNMhC6L7XrQPF/clXS5bbP66MstsgCT5hy9VlfUh/CfBT+0Wucf531dMjHA== + dependencies: + js-yaml "^3.10.0" + tslib "^2.4.0" + +"@zkochan/js-yaml@0.0.6": + version "0.0.6" + resolved "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz#975f0b306e705e28b8068a07737fa46d3fc04826" + integrity sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg== + dependencies: + argparse "^2.0.1" + JSONStream@^1.0.4: version "1.3.5" resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -2595,45 +2444,39 @@ JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^2.0.3, abab@^2.0.5: - version "2.0.6" - resolved "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - abbrev@1, abbrev@^1.0.0, abbrev@~1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== +abbrev@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz#cf59829b8b4f03f89dda2771cb7f3653828c89bf" + integrity sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ== + +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" + event-target-shim "^5.0.0" acorn-jsx@^5.3.1, acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^7.1.1, acorn@^7.4.0: +acorn@^7.4.0: version "7.4.1" resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.7.0, acorn@^8.8.0: +acorn@^8.4.1, acorn@^8.7.0, acorn@^8.8.0: version "8.8.2" resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== @@ -2650,7 +2493,7 @@ agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: dependencies: debug "4" -agentkeepalive@^4.1.3, agentkeepalive@^4.2.1: +agentkeepalive@^4.2.1: version "4.3.0" resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz#bb999ff07412653c1803b3ced35e50729830a255" integrity sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg== @@ -2667,7 +2510,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4: +ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2687,7 +2530,7 @@ ajv@^8.0.1, ajv@^8.12.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ansi-align@^3.0.0: +ansi-align@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== @@ -2716,6 +2559,11 @@ ansi-regex@^5.0.1: resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -2735,6 +2583,11 @@ ansi-styles@^5.0.0: resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -2812,6 +2665,14 @@ are-we-there-yet@^3.0.0: delegates "^1.0.0" readable-stream "^3.6.0" +are-we-there-yet@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz#3ff397dc14f08b52dd8b2a64d3cee154ab8760d2" + integrity sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw== + dependencies: + delegates "^1.0.0" + readable-stream "^4.1.0" + are-we-there-yet@~1.1.2: version "1.1.7" resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" @@ -2893,17 +2754,6 @@ array.prototype.flatmap@^1.3.1: es-abstract "^1.20.4" es-shim-unscopables "^1.0.0" -array.prototype.reduce@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz#6b20b0daa9d9734dd6bc7ea66b5bbce395471eac" - integrity sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - es-array-method-boxes-properly "^1.0.0" - is-string "^1.0.7" - arrify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -2919,18 +2769,6 @@ asap@^2.0.0: resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== -asn1@~0.2.3: - version "0.2.6" - resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" - integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== - 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" @@ -3014,16 +2852,6 @@ aws-sdk@^2.1329.0, aws-sdk@^2.928.0: uuid "8.0.0" xml2js "0.4.19" -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== - -aws4@^1.8.0: - version "1.12.0" - resolved "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3" - integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg== - axios@^0.27.2: version "0.27.2" resolved "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972" @@ -3032,16 +2860,24 @@ axios@^0.27.2: follow-redirects "^1.14.9" form-data "^4.0.0" -babel-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" - integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== +axios@^1.0.0: + version "1.3.4" + resolved "https://registry.npmjs.org/axios/-/axios-1.3.4.tgz#f5760cefd9cfb51fd2481acf88c05f67c4523024" + integrity sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +babel-jest@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz#3fe3ddb109198e78b1c88f9ebdecd5e4fc2f50a5" + integrity sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q== dependencies: - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/transform" "^29.5.0" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^27.5.1" + babel-preset-jest "^29.5.0" chalk "^4.0.0" graceful-fs "^4.2.9" slash "^3.0.0" @@ -3057,14 +2893,14 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" - integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== +babel-plugin-jest-hoist@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz#a97db437936f441ec196990c9738d4b88538618a" + integrity sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" + "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" babel-preset-current-node-syntax@^1.0.0: @@ -3085,12 +2921,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" - integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== +babel-preset-jest@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz#57bc8cc88097af7ff6a5ab59d1cd29d52a5916e2" + integrity sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg== dependencies: - babel-plugin-jest-hoist "^27.5.1" + babel-plugin-jest-hoist "^29.5.0" babel-preset-current-node-syntax "^1.0.0" balanced-match@^1.0.0: @@ -3103,13 +2939,6 @@ base64-js@^1.0.2, base64-js@^1.3.1: resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== - dependencies: - tweetnacl "^0.14.3" - before-after-hook@^2.2.0: version "2.2.3" resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" @@ -3127,6 +2956,16 @@ bin-links@^3.0.3: rimraf "^3.0.0" write-file-atomic "^4.0.0" +bin-links@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/bin-links/-/bin-links-4.0.1.tgz#afeb0549e642f61ff889b58ea2f8dca78fb9d8d3" + integrity sha512-bmFEM39CyX336ZGGRsGPlc6jZHriIoHacOQcTt72MktIjpPhZoP4te2jOyUXF3BLILmJ8aNLncoPVeIIFlrDeA== + dependencies: + cmd-shim "^6.0.0" + npm-normalize-package-bin "^3.0.0" + read-cmd-shim "^4.0.0" + write-file-atomic "^5.0.0" + binary-extensions@^2.0.0, binary-extensions@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -3146,19 +2985,19 @@ bluebird@^3.5.0: resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== -boxen@^5.0.0: - version "5.1.2" - resolved "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" - integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== - dependencies: - ansi-align "^3.0.0" - camelcase "^6.2.0" - chalk "^4.1.0" - cli-boxes "^2.2.1" - string-width "^4.2.2" - type-fest "^0.20.2" - widest-line "^3.1.0" - wrap-ansi "^7.0.0" +boxen@^7.0.0: + version "7.0.2" + resolved "https://registry.npmjs.org/boxen/-/boxen-7.0.2.tgz#465dd03e846c11f2d4c7eb0d1b3a39d66bd7057e" + integrity sha512-1Z4UJabXUP1/R9rLpoU3O2lEMnG3pPLAs/ZD2lF3t2q7qD5lM8rqbtnvtvm4N0wEyNlE+9yZVTVAGmd1V5jabg== + dependencies: + ansi-align "^3.0.1" + camelcase "^7.0.0" + chalk "^5.0.1" + cli-boxes "^3.0.0" + string-width "^5.1.2" + type-fest "^2.13.0" + widest-line "^4.0.1" + wrap-ansi "^8.0.1" brace-expansion@^1.1.7: version "1.1.11" @@ -3182,11 +3021,6 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - browserslist@^4.21.3: version "4.21.5" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" @@ -3238,6 +3072,14 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + builtins@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" @@ -3250,45 +3092,16 @@ builtins@^5.0.0: dependencies: semver "^7.0.0" -byline@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" - integrity sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q== - -byte-size@^7.0.0: - version "7.0.1" - resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" - integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== +byte-size@7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.0.tgz#36528cd1ca87d39bd9abd51f5715dc93b6ceb032" + integrity sha512-NNiBxKgxybMBtWdmvx7ZITJi4ZG+CYUgwOSZTfqB1qogkRHrhbQE/R2r5Fh94X+InN5MCYz6SvB/ejHMj/HbsQ== bytes@3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cacache@^15.0.5, cacache@^15.2.0: - version "15.3.0" - resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" - integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== - dependencies: - "@npmcli/fs" "^1.0.0" - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.0.2" - unique-filename "^1.1.1" - cacache@^16.0.0, cacache@^16.1.0, cacache@^16.1.3: version "16.1.3" resolved "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz#a02b9f34ecfaf9a78c9f4bc16fceb94d5d67a38e" @@ -3313,18 +3126,42 @@ cacache@^16.0.0, cacache@^16.1.0, cacache@^16.1.3: tar "^6.1.11" unique-filename "^2.0.0" -cacheable-request@^6.0.0: - version "6.1.0" - resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" - integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== +cacache@^17.0.0, cacache@^17.0.4: + version "17.0.5" + resolved "https://registry.npmjs.org/cacache/-/cacache-17.0.5.tgz#6dbec26c11f1f6a2b558bc11ed3316577c339ebc" + integrity sha512-Y/PRQevNSsjAPWykl9aeGz8Pr+OI6BYM9fYDNMvOkuUiG9IhG4LEmaYrZZZvioMUEQ+cBCxT0v8wrnCURccyKA== dependencies: - clone-response "^1.0.2" - get-stream "^5.1.0" - http-cache-semantics "^4.0.0" - keyv "^3.0.0" - lowercase-keys "^2.0.0" - normalize-url "^4.1.0" - responselike "^1.0.2" + "@npmcli/fs" "^3.1.0" + fs-minipass "^3.0.0" + glob "^9.3.1" + lru-cache "^7.7.1" + minipass "^4.0.0" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + ssri "^10.0.0" + tar "^6.1.11" + unique-filename "^3.0.0" + +cacheable-lookup@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" + integrity sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w== + +cacheable-request@^10.2.8: + version "10.2.9" + resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.9.tgz#6375833d2b99921d8870df9fdc26cb703c56f356" + integrity sha512-CaAMr53AS1Tb9evO1BIWFnZjSr8A4pbXofpsNVWPMDZZj3ZQKHwsQG9BrTqQ4x5ZYJXz1T2b8LLtTZODxSpzbg== + dependencies: + "@types/http-cache-semantics" "^4.0.1" + get-stream "^6.0.1" + http-cache-semantics "^4.1.1" + keyv "^4.5.2" + mimic-response "^4.0.0" + normalize-url "^8.0.0" + responselike "^3.0.0" caching-transform@^4.0.0: version "4.0.0" @@ -3368,6 +3205,11 @@ camelcase@^6.2.0, camelcase@^6.3.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +camelcase@^7.0.0: + version "7.0.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" + integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== + caniuse-lite@^1.0.30001449: version "1.0.30001462" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001462.tgz#b2e801e37536d453731286857c8520d3dcee15fe" @@ -3378,11 +3220,6 @@ case@1.6.3, case@^1.6.3: resolved "https://registry.npmjs.org/case/-/case-1.6.3.tgz#0a4386e3e9825351ca2e6216c60467ff5f1ea1c9" integrity sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ== -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== - cdk-generate-synthetic-examples@^0.1.173: version "0.1.173" resolved "https://registry.npmjs.org/cdk-generate-synthetic-examples/-/cdk-generate-synthetic-examples-0.1.173.tgz#2792893986c57e9859e23a178c146736845bf51f" @@ -3411,6 +3248,14 @@ cdk8s@^2.7.15: follow-redirects "^1.15.2" yaml "2.0.0-7" +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -3420,7 +3265,7 @@ chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: +chalk@^4, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -3428,6 +3273,11 @@ chalk@^4, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^5.0.1, chalk@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" + integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA== + changelog-parser@^2.8.1: version "2.8.1" resolved "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz#1428998c275e4f7c0a855026dc60c66cde36bb87" @@ -3451,7 +3301,7 @@ charenc@0.0.2: resolved "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== -chokidar@^3.5.3: +chokidar@^3.5.1, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -3466,11 +3316,6 @@ chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - chownr@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" @@ -3493,11 +3338,6 @@ cidr-regex@^3.1.1: dependencies: ip-regex "^4.1.0" -cint@^8.2.1: - version "8.2.1" - resolved "https://registry.npmjs.org/cint/-/cint-8.2.1.tgz#70386b1b48e2773d0d63166a55aff94ef4456a12" - integrity sha512-gyWqJHXgDFPNx7PEyFJotutav+al92TTC3dWlMFyTETlOyKBQMZb7Cetqmj3GlrnSILHwSJRwf4mIGzc7C5lXw== - cjs-module-lexer@^1.0.0: version "1.2.2" resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" @@ -3508,10 +3348,10 @@ clean-stack@^2.0.0: resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-boxes@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" - integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== +cli-boxes@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz#71a10c716feeba005e4504f36329ef0b17cf3145" + integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g== cli-color@^2.0.0: version "2.0.3" @@ -3532,19 +3372,24 @@ cli-columns@^4.0.0: string-width "^4.2.3" strip-ansi "^6.0.1" -cli-cursor@^3.1.0: +cli-cursor@3.1.0, cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" +cli-spinners@2.6.1: + version "2.6.1" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" + integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== + cli-spinners@^2.5.0: version "2.7.0" resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== -cli-table3@^0.6.2: +cli-table3@^0.6.2, cli-table3@^0.6.3: version "0.6.3" resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz#61ab765aac156b52f222954ffc607a6f01dbeeb2" integrity sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg== @@ -3553,13 +3398,6 @@ cli-table3@^0.6.2: optionalDependencies: "@colors/colors" "1.5.0" -cli-table@^0.3.11: - version "0.3.11" - resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz#ac69cdecbe81dccdba4889b9a18b7da312a9d3ee" - integrity sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ== - dependencies: - colors "1.0.3" - cli-width@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" @@ -3592,7 +3430,7 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clone-deep@^4.0.1: +clone-deep@4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== @@ -3601,13 +3439,6 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone-response@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3" - integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== - dependencies: - mimic-response "^1.0.0" - clone@^1.0.2: version "1.0.4" resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" @@ -3618,20 +3449,18 @@ clone@^2.1.2: resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== -cmd-shim@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" - integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== - dependencies: - mkdirp-infer-owner "^2.0.0" - -cmd-shim@^5.0.0: +cmd-shim@5.0.0, cmd-shim@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== dependencies: mkdirp-infer-owner "^2.0.0" +cmd-shim@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.1.tgz#a65878080548e1dca760b3aea1e21ed05194da9d" + integrity sha512-S9iI9y0nKR4hwEQsVWpyxld/6kRfGepGfzff83FcaiEBpmvlbA2nnGe7Cylgrx2f/p1P5S5wpRm9oL8z1PbS3Q== + co@^4.6.0: version "4.6.0" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3680,12 +3509,12 @@ color-support@^1.1.3: resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -colors@1.0.3, colors@1.4.0: +colors@1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== -columnify@^1.5.4, columnify@^1.6.0: +columnify@1.6.0, columnify@^1.6.0: version "1.6.0" resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== @@ -3693,13 +3522,18 @@ columnify@^1.5.4, columnify@^1.6.0: strip-ansi "^6.0.1" wcwidth "^1.0.0" -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" +commander@^10.0.0: + version "10.0.0" + resolved "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1" + integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA== + 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" @@ -3710,11 +3544,6 @@ commander@^7.2.0: resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commander@^9.1.0: - version "9.5.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" - integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== - commander@~9.4.1: version "9.4.1" resolved "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz#d1dd8f2ce6faf93147295c0df13c7c21141cfbdd" @@ -3784,7 +3613,15 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -config-chain@^1.1.12: +config-chain@1.1.12: + version "1.1.12" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +config-chain@^1.1.11: version "1.1.13" resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== @@ -3792,17 +3629,16 @@ config-chain@^1.1.12: ini "^1.3.4" proto-list "~1.2.1" -configstore@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" - integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== +configstore@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz#49eca2ebc80983f77e09394a1a56e0aca8235566" + integrity sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA== dependencies: - dot-prop "^5.2.0" - graceful-fs "^4.1.2" - make-dir "^3.0.0" - unique-string "^2.0.0" - write-file-atomic "^3.0.0" - xdg-basedir "^4.0.0" + dot-prop "^6.0.1" + graceful-fs "^4.2.6" + unique-string "^3.0.0" + write-file-atomic "^3.0.3" + xdg-basedir "^5.0.1" console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0: version "1.1.0" @@ -3814,6 +3650,14 @@ constructs@^10.0.0: resolved "https://registry.npmjs.org/constructs/-/constructs-10.1.270.tgz#a9e55f33504b14561fe3dc971b9075b864610272" integrity sha512-EuPb/VI9q0pOy/deaddOIO0RKdJXpBv+qTo7AbYK2dcEq6Kd7PJ8TnDQ5XwotWgB7YaXuTPddIgFDyyIstHcsA== +conventional-changelog-angular@5.0.12: + version "5.0.12" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz#c979b8b921cbfe26402eb3da5bbfda02d865a2b9" + integrity sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== + dependencies: + compare-func "^2.0.0" + q "^1.5.1" + conventional-changelog-angular@^5.0.12: version "5.0.13" resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" @@ -3861,7 +3705,7 @@ conventional-changelog-conventionalcommits@4.6.3, conventional-changelog-convent lodash "^4.17.15" q "^1.5.1" -conventional-changelog-core@^4.2.1, conventional-changelog-core@^4.2.2: +conventional-changelog-core@4.2.4, conventional-changelog-core@^4.2.1: version "4.2.4" resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== @@ -3990,7 +3834,7 @@ conventional-commits-parser@^3.2.0, conventional-commits-parser@^3.2.4: split2 "^3.0.0" through2 "^4.0.0" -conventional-recommended-bump@6.1.0, conventional-recommended-bump@^6.1.0: +conventional-recommended-bump@6.1.0: version "6.1.0" resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== @@ -4004,21 +3848,32 @@ conventional-recommended-bump@6.1.0, conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -core-util-is@1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== core-util-is@^1.0.3, core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== +cosmiconfig@7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + cosmiconfig@^7.0.0: version "7.1.0" resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" @@ -4078,28 +3933,18 @@ crypto-random-string@^2.0.0: resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== +crypto-random-string@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2" + integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA== + dependencies: + type-fest "^1.0.1" + cssesc@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -4113,27 +3958,11 @@ dargs@^7.0.0: resolved "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== - dependencies: - assert-plus "^1.0.0" - data-uri-to-buffer@3: version "3.0.1" resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - date-format@^4.0.14: version "4.0.14" resolved "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz#7a8e584434fb169a521c8b7aa481f355810d9400" @@ -4181,24 +4010,14 @@ decamelize@^5.0.1: resolved "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz#db11a92e58c741ef339fb0a2868d8a06a9a7b1e9" integrity sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA== -decimal.js@^10.2.1: - version "10.4.3" - resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" - integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== - -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== +decompress-response@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: - mimic-response "^1.0.0" + mimic-response "^3.1.0" -dedent@^0.7.0: +dedent@0.7.0, dedent@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== @@ -4232,10 +4051,15 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -defer-to-connect@^1.0.1: - version "1.1.3" - resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" - integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== +defer-to-connect@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" + integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== + +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== define-properties@^1.1.3, define-properties@^1.1.4: version "1.2.0" @@ -4255,6 +4079,20 @@ degenerator@^3.0.2: esprima "^4.0.0" vm2 "^3.9.8" +del@^6.0.0: + version "6.1.1" + resolved "https://registry.npmjs.org/del/-/del-6.1.1.tgz#3b70314f1ec0aa325c6b14eb36b95786671edb7a" + integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg== + dependencies: + globby "^11.0.1" + graceful-fs "^4.2.4" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + 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" @@ -4403,10 +4241,10 @@ dezalgo@^1.0.0: asap "^2.0.0" wrappy "1" -diff-sequences@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" - integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== +diff-sequences@^29.4.3: + version "29.4.3" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" + integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== diff@^4.0.1, diff@^4.0.2: version "4.0.2" @@ -4446,27 +4284,20 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== +dot-prop@6.0.1, dot-prop@^6.0.1: + version "6.0.1" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== dependencies: - webidl-conversions "^5.0.0" + is-obj "^2.0.0" -dot-prop@^5.1.0, dot-prop@^5.2.0: +dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" -dot-prop@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" - integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== - dependencies: - is-obj "^2.0.0" - dotenv-json@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/dotenv-json/-/dotenv-json-1.0.0.tgz#fc7f672aafea04bed33818733b9f94662332815c" @@ -4477,6 +4308,11 @@ dotenv@^8.0.0: resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== +dotenv@~10.0.0: + version "10.0.0" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + dotgitignore@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz#a4b15a4e4ef3cf383598aaf1dfa4a04bcc089b7b" @@ -4501,47 +4337,41 @@ dreamopt@~0.8.0: dependencies: wordwrap ">=0.0.2" -duplexer3@^0.1.4: - version "0.1.5" - resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e" - integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== - duplexer@^0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== +ejs@^3.1.7: + version "3.1.9" + resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz#03c9e8777fe12686a9effcef22303ca3d8eeb361" + integrity sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ== dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" + jake "^10.8.5" electron-to-chromium@^1.4.284: version "1.4.322" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.322.tgz#e0afa1d115b66c1d47869db40d8f2f3729cecc16" integrity sha512-KovjizNC9XB7dno/2GjxX8VS0SlfPpCjtyoKft+bCO+UfD8bFy16hY4Sh9s0h9BDxbRH2U0zX5VBjpM1LTcNlg== -emittery@^0.8.1: - version "0.8.1" - resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" - integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== +emittery@^0.13.1: + version "0.13.1" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -encoding@^0.1.12, encoding@^0.1.13: +encoding@^0.1.13: version "0.1.13" resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" -end-of-stream@^1.1.0, end-of-stream@^1.4.1: +end-of-stream@^1.4.1: version "1.4.4" resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -4556,7 +4386,7 @@ enhanced-resolve@^5.8.3: graceful-fs "^4.2.4" tapable "^2.2.0" -enquirer@^2.3.5: +enquirer@^2.3.5, enquirer@~2.3.6: version "2.3.6" resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== @@ -4634,11 +4464,6 @@ es-abstract@^1.19.0, es-abstract@^1.20.4: unbox-primitive "^1.0.2" which-typed-array "^1.1.9" -es-array-method-boxes-properly@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" - integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== - es-set-tostringtag@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" @@ -4738,10 +4563,10 @@ escalade@^3.1.1: resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escape-goat@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" - integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== +escape-goat@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081" + integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg== escape-string-regexp@^1.0.5: version "1.0.5" @@ -5034,6 +4859,11 @@ event-emitter@^0.3.5: d "1" es5-ext "~0.10.14" +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + eventemitter3@^4.0.4: version "4.0.7" resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -5044,6 +4874,26 @@ events@1.1.1: resolved "https://registry.npmjs.org/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" integrity sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== +events@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +execa@5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" + integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + execa@^5.0.0: version "5.1.1" resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -5064,15 +4914,16 @@ exit@^0.1.2: resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== -expect@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" - integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== +expect@^29.0.0, expect@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/expect/-/expect-29.5.0.tgz#68c0509156cb2a0adb8865d413b137eeaae682f7" + integrity sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg== dependencies: - "@jest/types" "^27.5.1" - jest-get-type "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" + "@jest/expect-utils" "^29.5.0" + jest-get-type "^29.4.3" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-util "^29.5.0" ext@^1.1.2: version "1.7.0" @@ -5081,11 +4932,6 @@ ext@^1.1.2: dependencies: type "^2.7.2" -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - external-editor@^3.0.3: version "3.1.0" resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" @@ -5095,16 +4941,6 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== - -extsprintf@^1.2.0: - version "1.4.1" - resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" - integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== - fast-check@^2.25.0: version "2.25.0" resolved "https://registry.npmjs.org/fast-check/-/fast-check-2.25.0.tgz#5146601851bf3be0953bd17eb2b7d547936c6561" @@ -5117,6 +4953,17 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-glob@3.2.7: + version "3.2.7" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + fast-glob@^3.2.12, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" @@ -5133,7 +4980,7 @@ fast-json-patch@^3.1.1: resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz#85064ea1b1ebf97a3f7ad01e23f9337e72c66947" integrity sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ== -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -5167,12 +5014,7 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - -figures@^3.0.0, figures@^3.1.0: +figures@3.2.0, figures@^3.0.0, figures@^3.1.0: version "3.2.0" resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== @@ -5191,6 +5033,18 @@ file-uri-to-path@2: resolved "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba" integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg== +file-url@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/file-url/-/file-url-3.0.0.tgz#247a586a746ce9f7a8ed05560290968afc262a77" + integrity sha512-g872QGsHexznxkIAdK8UiZRe7SkE6kvylShU4Nsj8NvfvZag7S0QuQ4IgvPDkk75HxgjIVDwycFTDAgIiO4nDA== + +filelist@^1.0.1: + version "1.0.4" + resolved "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== + dependencies: + minimatch "^5.0.1" + filing-cabinet@^3.0.1: version "3.3.0" resolved "https://registry.npmjs.org/filing-cabinet/-/filing-cabinet-3.3.0.tgz#365294d2d3d6ab01b4273e62fb6d23388a70cc0f" @@ -5217,11 +5071,6 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -filter-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" - integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ== - find-cache-dir@^3.2.0: version "3.3.2" resolved "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" @@ -5276,6 +5125,11 @@ flat-cache@^3.0.4: flatted "^3.1.0" rimraf "^3.0.2" +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== + flatted@^3.1.0, flatted@^3.2.7: version "3.2.7" resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" @@ -5286,7 +5140,7 @@ flatten@^1.0.2: resolved "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== -follow-redirects@^1.14.9, follow-redirects@^1.15.2: +follow-redirects@^1.14.9, follow-redirects@^1.15.0, follow-redirects@^1.15.2: version "1.15.2" resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== @@ -5306,19 +5160,10 @@ foreground-child@^2.0.0: cross-spawn "^7.0.0" signal-exit "^3.0.2" -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== - -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" +form-data-encoder@^2.1.2: + version "2.1.4" + resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz#261ea35d2a70d48d30ec7a9603130fa5515e9cd5" + integrity sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw== form-data@^4.0.0: version "4.0.0" @@ -5329,15 +5174,6 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - fp-and-or@^0.1.3: version "0.1.3" resolved "https://registry.npmjs.org/fp-and-or/-/fp-and-or-0.1.3.tgz#e6fba83872a5853a56b3ebdf8d3167f5dfca1882" @@ -5353,6 +5189,16 @@ fs-constants@^1.0.0: resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== +fs-extra@9.1.0, fs-extra@^9.0.0, fs-extra@^9.1.0: + version "9.1.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^10.1.0: version "10.1.0" resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -5362,6 +5208,15 @@ fs-extra@^10.1.0: jsonfile "^6.0.1" universalify "^2.0.0" +fs-extra@^11.1.0: + version "11.1.1" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" + integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -5371,23 +5226,6 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.0.0, fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-minipass@^1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-minipass@^2.0.0, fs-minipass@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -5395,6 +5233,13 @@ fs-minipass@^2.0.0, fs-minipass@^2.1.0: dependencies: minipass "^3.0.0" +fs-minipass@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz#853809af15b6d03e27638d1ab6432e6b378b085d" + integrity sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw== + dependencies: + minipass "^4.0.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -5452,6 +5297,20 @@ gauge@^4.0.3: strip-ansi "^6.0.1" wide-align "^1.1.5" +gauge@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz#e270ca9d97dae84abf64e5277ef1ebddc7dd1e2f" + integrity sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" + gauge@~2.7.3: version "2.7.4" resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -5513,7 +5372,7 @@ get-pkg-repo@^4.0.0: through2 "^2.0.0" yargs "^16.2.0" -get-port@^5.1.1: +get-port@5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== @@ -5528,21 +5387,12 @@ get-stdin@~9.0.0: resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz#3983ff82e03d56f1b2ea0d3e60325f39d703a575" integrity sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA== -get-stream@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.1.0: - version "5.2.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" +get-stream@6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz#3e0012cb6827319da2706e601a1583e8629a6718" + integrity sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg== -get-stream@^6.0.0: +get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== @@ -5567,13 +5417,6 @@ get-uri@3: fs-extra "^8.1.0" ftp "^0.3.10" -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== - dependencies: - assert-plus "^1.0.0" - git-raw-commits@^2.0.11, git-raw-commits@^2.0.8: version "2.0.11" resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" @@ -5601,20 +5444,20 @@ git-semver-tags@^4.0.0, git-semver-tags@^4.1.1: meow "^8.0.0" semver "^6.0.0" -git-up@^4.0.0: - version "4.0.5" - resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" - integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== +git-up@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467" + integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ== dependencies: - is-ssh "^1.3.0" - parse-url "^6.0.0" + is-ssh "^1.4.0" + parse-url "^8.1.0" -git-url-parse@^11.4.4: - version "11.6.0" - resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" - integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== +git-url-parse@13.1.0: + version "13.1.0" + resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz#07e136b5baa08d59fabdf0e33170de425adf07b4" + integrity sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA== dependencies: - git-up "^4.0.0" + git-up "^7.0.0" gitconfiglocal@^1.0.0: version "1.0.0" @@ -5623,7 +5466,7 @@ gitconfiglocal@^1.0.0: dependencies: ini "^1.3.2" -glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@5.1.2, glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -5637,7 +5480,19 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, 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.4: + version "7.1.4" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.0, glob@^7.1.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: version "7.2.3" resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -5660,6 +5515,16 @@ glob@^8, glob@^8.0.1: minimatch "^5.0.1" once "^1.3.0" +glob@^9.2.0, glob@^9.3.0, glob@^9.3.1: + version "9.3.2" + resolved "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz#8528522e003819e63d11c979b30896e0eaf52eda" + integrity sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA== + dependencies: + fs.realpath "^1.0.0" + minimatch "^7.4.1" + minipass "^4.2.4" + path-scurry "^1.6.1" + glob@~8.0.3: version "8.0.3" resolved "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" @@ -5697,7 +5562,7 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" -globby@^11.0.2, globby@^11.0.3, globby@^11.0.4, globby@^11.1.0: +globby@11.1.0, globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, globby@^11.0.4, globby@^11.1.0: version "11.1.0" resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -5723,33 +5588,28 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -got@^9.6.0: - version "9.6.0" - resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" - integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== - dependencies: - "@sindresorhus/is" "^0.14.0" - "@szmarczak/http-timer" "^1.1.2" - cacheable-request "^6.0.0" - decompress-response "^3.3.0" - duplexer3 "^0.1.4" - get-stream "^4.1.0" - lowercase-keys "^1.0.1" - mimic-response "^1.0.1" - p-cancelable "^1.0.0" - to-readable-stream "^1.0.0" - url-parse-lax "^3.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +got@^12.1.0: + version "12.6.0" + resolved "https://registry.npmjs.org/got/-/got-12.6.0.tgz#8d382ee5de4432c086e83c133efdd474484f6ac7" + integrity sha512-WTcaQ963xV97MN3x0/CbAriXFZcXCfgxVp91I+Ze6pawQOa7SgzwSx2zIJJsX+kTajMnVs0xcFD1TxZKFqhdnQ== + dependencies: + "@sindresorhus/is" "^5.2.0" + "@szmarczak/http-timer" "^5.0.1" + cacheable-lookup "^7.0.0" + cacheable-request "^10.2.8" + decompress-response "^6.0.0" + form-data-encoder "^2.1.2" + get-stream "^6.0.1" + http2-wrapper "^2.1.10" + lowercase-keys "^3.0.0" + p-cancelable "^3.0.0" + responselike "^3.0.0" + +graceful-fs@4.2.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== -graceful-fs@^4.2.2, graceful-fs@^4.2.3: - version "4.2.11" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" - integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== - grapheme-splitter@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" @@ -5774,19 +5634,6 @@ handlebars@^4.7.6, handlebars@^4.7.7: optionalDependencies: uglify-js "^3.1.4" -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - hard-rejection@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" @@ -5836,15 +5683,15 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-unicode@^2.0.0, has-unicode@^2.0.1: +has-unicode@2.0.1, has-unicode@^2.0.0, has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== -has-yarn@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" - integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== +has-yarn@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d" + integrity sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA== has@^1.0.3: version "1.0.3" @@ -5871,6 +5718,13 @@ hosted-git-info@^2.1.4: resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== +hosted-git-info@^3.0.6: + version "3.0.8" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d" + integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== + dependencies: + lru-cache "^6.0.0" + hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: version "4.1.0" resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" @@ -5878,26 +5732,26 @@ hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" -hosted-git-info@^5.0.0, hosted-git-info@^5.2.1: +hosted-git-info@^5.0.0, hosted-git-info@^5.1.0, hosted-git-info@^5.2.1: version "5.2.1" resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz#0ba1c97178ef91f3ab30842ae63d6a272341156f" integrity sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw== dependencies: lru-cache "^7.5.1" -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== +hosted-git-info@^6.0.0, hosted-git-info@^6.1.1: + version "6.1.1" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz#629442c7889a69c05de604d52996b74fe6f26d58" + integrity sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w== dependencies: - whatwg-encoding "^1.0.5" + lru-cache "^7.5.1" html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: +http-cache-semantics@^4.1.0, http-cache-semantics@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== @@ -5931,14 +5785,13 @@ http-proxy-agent@^5.0.0: agent-base "6" debug "4" -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== +http2-wrapper@^2.1.10: + version "2.2.0" + resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.0.tgz#b80ad199d216b7d3680195077bd7b9060fa9d7f3" + integrity sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ== dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" + quick-lru "^5.1.1" + resolve-alpn "^1.2.0" https-proxy-agent@5, https-proxy-agent@^5.0.0: version "5.0.1" @@ -5979,18 +5832,11 @@ ieee754@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, ieee754@^1.1.4, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore-walk@^3.0.3: - version "3.0.4" - resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" - integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== - dependencies: - minimatch "^3.0.4" - ignore-walk@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz#5f199e23e1288f518d90358d461387788a154776" @@ -5998,12 +5844,19 @@ ignore-walk@^5.0.1: dependencies: minimatch "^5.0.1" +ignore-walk@^6.0.0: + version "6.0.2" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.2.tgz#c48f48397cf8ef6174fcc28aa5f8c1de6203d389" + integrity sha512-ezmQ1Dg2b3jVZh2Dh+ar6Eu2MqNSTkyb32HU2MAQQQX9tKM3q/UQ/9lf03lQ5hW+fOeoMnwxwkleZ0xcNp0/qg== + dependencies: + minimatch "^7.4.2" + ignore@^4.0.6: version "4.0.6" resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -ignore@^5.1.8, ignore@^5.2.0, ignore@^5.2.4, ignore@~5.2.4: +ignore@^5.0.4, ignore@^5.1.8, ignore@^5.2.0, ignore@^5.2.4, ignore@~5.2.4: version "5.2.4" resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== @@ -6021,10 +5874,10 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A== +import-lazy@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== import-local@^3.0.2: version "3.1.0" @@ -6072,7 +5925,7 @@ ini@2.0.0, ini@^2.0.0: resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== -ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: +ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: version "1.3.8" resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -6082,20 +5935,12 @@ ini@^3.0.0, ini@^3.0.1, ini@~3.0.0: resolved "https://registry.npmjs.org/ini/-/ini-3.0.1.tgz#c76ec81007875bc44d544ff7a11a55d12294102d" integrity sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ== -init-package-json@^2.0.2: - version "2.0.5" - resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" - integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== - dependencies: - npm-package-arg "^8.1.5" - promzard "^0.3.0" - read "~1.0.1" - read-package-json "^4.1.1" - semver "^7.3.5" - validate-npm-package-license "^3.0.4" - validate-npm-package-name "^3.0.0" +ini@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/ini/-/ini-4.1.0.tgz#3bca65a0ae224f07f8f8b3392d8c94a7f1bb007b" + integrity sha512-HLR38RSF2iulAzc3I/sma4CoYxQP844rPYCNfzGDOHqa/YqVlwuuZgBx6M50/X8dKgzk0cm1qRg3+47mK2N+cQ== -init-package-json@^3.0.2: +init-package-json@3.0.2, init-package-json@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-3.0.2.tgz#f5bc9bac93f2bdc005778bc2271be642fecfcd69" integrity sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A== @@ -6108,24 +5953,47 @@ init-package-json@^3.0.2: validate-npm-package-license "^3.0.4" validate-npm-package-name "^4.0.0" -inquirer@^7.3.3: - version "7.3.3" - resolved "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" - integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== +inquirer@8.2.4: + version "8.2.4" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" + integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== + dependencies: + ansi-escapes "^4.2.1" + chalk "^4.1.1" + cli-cursor "^3.1.0" + cli-width "^3.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.21" + mute-stream "0.0.8" + ora "^5.4.1" + run-async "^2.4.0" + rxjs "^7.5.5" + string-width "^4.1.0" + strip-ansi "^6.0.0" + through "^2.3.6" + wrap-ansi "^7.0.0" + +inquirer@^8.2.4: + version "8.2.5" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz#d8654a7542c35a9b9e069d27e2df4858784d54f8" + integrity sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ== dependencies: ansi-escapes "^4.2.1" - chalk "^4.1.0" + chalk "^4.1.1" cli-cursor "^3.1.0" cli-width "^3.0.0" external-editor "^3.0.3" figures "^3.0.0" - lodash "^4.17.19" + lodash "^4.17.21" mute-stream "0.0.8" + ora "^5.4.1" run-async "^2.4.0" - rxjs "^6.6.0" + rxjs "^7.5.5" string-width "^4.1.0" strip-ansi "^6.0.0" through "^2.3.6" + wrap-ansi "^7.0.0" internal-slot@^1.0.4: version "1.0.5" @@ -6210,13 +6078,20 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-ci@^2.0.0: +is-ci@2.0.0, is-ci@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== dependencies: ci-info "^2.0.0" +is-ci@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867" + integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ== + dependencies: + ci-info "^3.2.0" + is-cidr@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/is-cidr/-/is-cidr-4.0.2.tgz#94c7585e4c6c77ceabf920f8cde51b8c0fda8814" @@ -6238,7 +6113,7 @@ is-date-object@^1.0.1: dependencies: has-tostringtag "^1.0.0" -is-docker@^2.0.0: +is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== @@ -6295,10 +6170,10 @@ is-negative-zero@^2.0.2: resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== -is-npm@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8" - integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== +is-npm@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/is-npm/-/is-npm-6.0.0.tgz#b59e75e8915543ca5d881ecff864077cba095261" + integrity sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ== is-number-object@^1.0.4: version "1.0.7" @@ -6322,6 +6197,11 @@ is-obj@^2.0.0: resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== +is-path-cwd@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== + is-path-inside@^3.0.2, is-path-inside@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" @@ -6349,11 +6229,6 @@ is-plain-object@^5.0.0: resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - is-promise@^2.2.2: version "2.2.2" resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -6384,13 +6259,18 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" -is-ssh@^1.3.0: +is-ssh@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== dependencies: protocols "^2.0.1" +is-stream@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" + integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" @@ -6428,7 +6308,7 @@ is-typed-array@^1.1.10, is-typed-array@^1.1.3, is-typed-array@^1.1.9: gopd "^1.0.1" has-tostringtag "^1.0.0" -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== @@ -6460,17 +6340,17 @@ is-windows@^1.0.2: resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -is-wsl@^2.1.1: +is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: is-docker "^2.0.0" -is-yarn-global@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" - integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== +is-yarn-global@^0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.4.1.tgz#b312d902b313f81e4eaf98b6361ba2b45cd694bb" + integrity sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ== isarray@0.0.1: version "0.0.1" @@ -6492,11 +6372,6 @@ isobject@^3.0.1: resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== - istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" @@ -6568,189 +6443,160 @@ istanbul-reports@^3.0.2, istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jest-changed-files@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" - integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== +jake@^10.8.5: + version "10.8.5" + resolved "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" + integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== + dependencies: + async "^3.2.3" + chalk "^4.0.2" + filelist "^1.0.1" + minimatch "^3.0.4" + +jest-changed-files@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz#e88786dca8bf2aa899ec4af7644e16d9dcf9b23e" + integrity sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag== dependencies: - "@jest/types" "^27.5.1" execa "^5.0.0" - throat "^6.0.1" + p-limit "^3.1.0" -jest-circus@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" - integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== +jest-circus@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.5.0.tgz#b5926989449e75bff0d59944bae083c9d7fb7317" + integrity sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA== dependencies: - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/environment" "^29.5.0" + "@jest/expect" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.5.1" is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" + jest-each "^29.5.0" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-runtime "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" + p-limit "^3.1.0" + pretty-format "^29.5.0" + pure-rand "^6.0.0" slash "^3.0.0" stack-utils "^2.0.3" - throat "^6.0.1" -jest-cli@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" - integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== +jest-cli@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.5.0.tgz#b34c20a6d35968f3ee47a7437ff8e53e086b4a67" + integrity sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw== dependencies: - "@jest/core" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/core" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" + jest-config "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" prompts "^2.0.1" - yargs "^16.2.0" + yargs "^17.3.1" -jest-config@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" - integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== +jest-config@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.5.0.tgz#3cc972faec8c8aaea9ae158c694541b79f3748da" + integrity sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA== dependencies: - "@babel/core" "^7.8.0" - "@jest/test-sequencer" "^27.5.1" - "@jest/types" "^27.5.1" - babel-jest "^27.5.1" + "@babel/core" "^7.11.6" + "@jest/test-sequencer" "^29.5.0" + "@jest/types" "^29.5.0" + babel-jest "^29.5.0" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" - glob "^7.1.1" + glob "^7.1.3" graceful-fs "^4.2.9" - jest-circus "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-get-type "^27.5.1" - jest-jasmine2 "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runner "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" + jest-circus "^29.5.0" + jest-environment-node "^29.5.0" + jest-get-type "^29.4.3" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-runner "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" micromatch "^4.0.4" parse-json "^5.2.0" - pretty-format "^27.5.1" + pretty-format "^29.5.0" slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" - integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== +jest-diff@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.5.0.tgz#e0d83a58eb5451dcc1fa61b1c3ee4e8f5a290d63" + integrity sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw== dependencies: chalk "^4.0.0" - diff-sequences "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" + diff-sequences "^29.4.3" + jest-get-type "^29.4.3" + pretty-format "^29.5.0" -jest-docblock@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" - integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== +jest-docblock@^29.4.3: + version "29.4.3" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" + integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== dependencies: detect-newline "^3.0.0" -jest-each@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" - integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== +jest-each@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.5.0.tgz#fc6e7014f83eac68e22b7195598de8554c2e5c06" + integrity sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA== dependencies: - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" chalk "^4.0.0" - jest-get-type "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - -jest-environment-jsdom@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" - integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" - jsdom "^16.6.0" - -jest-environment-node@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" - integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" + jest-get-type "^29.4.3" + jest-util "^29.5.0" + pretty-format "^29.5.0" + +jest-environment-node@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967" + integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" + jest-mock "^29.5.0" + jest-util "^29.5.0" -jest-get-type@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" - integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== +jest-get-type@^29.4.3: + version "29.4.3" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" + integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== -jest-haste-map@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" - integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== +jest-haste-map@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.5.0.tgz#69bd67dc9012d6e2723f20a945099e972b2e94de" + integrity sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA== dependencies: - "@jest/types" "^27.5.1" - "@types/graceful-fs" "^4.1.2" + "@jest/types" "^29.5.0" + "@types/graceful-fs" "^4.1.3" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.9" - jest-regex-util "^27.5.1" - jest-serializer "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" + jest-regex-util "^29.4.3" + jest-util "^29.5.0" + jest-worker "^29.5.0" micromatch "^4.0.4" - walker "^1.0.7" + walker "^1.0.8" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" - integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^27.5.1" - is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - throat "^6.0.1" - jest-junit@^13, jest-junit@^13.2.0: version "13.2.0" resolved "https://registry.npmjs.org/jest-junit/-/jest-junit-13.2.0.tgz#66eeb86429aafac8c1745a70f44ace185aacb943" @@ -6771,227 +6617,222 @@ jest-junit@^14.0.1: uuid "^8.3.2" xml "^1.0.1" -jest-leak-detector@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" - integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== +jest-leak-detector@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz#cf4bdea9615c72bac4a3a7ba7e7930f9c0610c8c" + integrity sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow== dependencies: - jest-get-type "^27.5.1" - pretty-format "^27.5.1" + jest-get-type "^29.4.3" + pretty-format "^29.5.0" -jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" - integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== +jest-matcher-utils@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz#d957af7f8c0692c5453666705621ad4abc2c59c5" + integrity sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw== dependencies: chalk "^4.0.0" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" + jest-diff "^29.5.0" + jest-get-type "^29.4.3" + pretty-format "^29.5.0" -jest-message-util@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" - integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== +jest-message-util@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e" + integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^27.5.1" + pretty-format "^29.5.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" - integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== +jest-mock@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed" + integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw== dependencies: - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" "@types/node" "*" + jest-util "^29.5.0" jest-pnp-resolver@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== -jest-regex-util@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" - integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== +jest-regex-util@^29.4.3: + version "29.4.3" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" + integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== -jest-resolve-dependencies@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" - integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== +jest-resolve-dependencies@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz#f0ea29955996f49788bf70996052aa98e7befee4" + integrity sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg== dependencies: - "@jest/types" "^27.5.1" - jest-regex-util "^27.5.1" - jest-snapshot "^27.5.1" + jest-regex-util "^29.4.3" + jest-snapshot "^29.5.0" -jest-resolve@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" - integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== +jest-resolve@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.5.0.tgz#b053cc95ad1d5f6327f0ac8aae9f98795475ecdc" + integrity sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w== dependencies: - "@jest/types" "^27.5.1" chalk "^4.0.0" graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" + jest-haste-map "^29.5.0" jest-pnp-resolver "^1.2.2" - jest-util "^27.5.1" - jest-validate "^27.5.1" + jest-util "^29.5.0" + jest-validate "^29.5.0" resolve "^1.20.0" - resolve.exports "^1.1.0" + resolve.exports "^2.0.0" slash "^3.0.0" -jest-runner@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" - integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== +jest-runner@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.5.0.tgz#6a57c282eb0ef749778d444c1d758c6a7693b6f8" + integrity sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ== dependencies: - "@jest/console" "^27.5.1" - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/console" "^29.5.0" + "@jest/environment" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" - emittery "^0.8.1" + emittery "^0.13.1" graceful-fs "^4.2.9" - jest-docblock "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-haste-map "^27.5.1" - jest-leak-detector "^27.5.1" - jest-message-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runtime "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - source-map-support "^0.5.6" - throat "^6.0.1" - -jest-runtime@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" - integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/globals" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" + jest-docblock "^29.4.3" + jest-environment-node "^29.5.0" + jest-haste-map "^29.5.0" + jest-leak-detector "^29.5.0" + jest-message-util "^29.5.0" + jest-resolve "^29.5.0" + jest-runtime "^29.5.0" + jest-util "^29.5.0" + jest-watcher "^29.5.0" + jest-worker "^29.5.0" + p-limit "^3.1.0" + source-map-support "0.5.13" + +jest-runtime@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.5.0.tgz#c83f943ee0c1da7eb91fa181b0811ebd59b03420" + integrity sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/globals" "^29.5.0" + "@jest/source-map" "^29.4.3" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" - execa "^5.0.0" glob "^7.1.3" graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" + jest-haste-map "^29.5.0" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" slash "^3.0.0" strip-bom "^4.0.0" -jest-serializer@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" - integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.9" - -jest-snapshot@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" - integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== +jest-snapshot@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.5.0.tgz#c9c1ce0331e5b63cd444e2f95a55a73b84b1e8ce" + integrity sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g== dependencies: - "@babel/core" "^7.7.2" + "@babel/core" "^7.11.6" "@babel/generator" "^7.7.2" + "@babel/plugin-syntax-jsx" "^7.7.2" "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" - "@babel/types" "^7.0.0" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/babel__traverse" "^7.0.4" + "@babel/types" "^7.3.3" + "@jest/expect-utils" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/babel__traverse" "^7.0.6" "@types/prettier" "^2.1.5" babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^27.5.1" + expect "^29.5.0" graceful-fs "^4.2.9" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - jest-haste-map "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-util "^27.5.1" + jest-diff "^29.5.0" + jest-get-type "^29.4.3" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-util "^29.5.0" natural-compare "^1.4.0" - pretty-format "^27.5.1" - semver "^7.3.2" + pretty-format "^29.5.0" + semver "^7.3.5" -jest-util@^27.0.0, jest-util@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" - integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== +jest-util@^29.0.0, jest-util@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f" + integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ== dependencies: - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" - integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== +jest-validate@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.5.0.tgz#8e5a8f36178d40e47138dc00866a5f3bd9916ffc" + integrity sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ== dependencies: - "@jest/types" "^27.5.1" + "@jest/types" "^29.5.0" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.5.1" + jest-get-type "^29.4.3" leven "^3.1.0" - pretty-format "^27.5.1" + pretty-format "^29.5.0" -jest-watcher@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" - integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== +jest-watcher@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.5.0.tgz#cf7f0f949828ba65ddbbb45c743a382a4d911363" + integrity sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA== dependencies: - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.5.1" + emittery "^0.13.1" + jest-util "^29.5.0" string-length "^4.0.1" -jest-worker@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" - integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== +jest-worker@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz#bdaefb06811bd3384d93f009755014d8acb4615d" + integrity sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA== dependencies: "@types/node" "*" + jest-util "^29.5.0" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27, jest@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" - integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== +jest@^29, jest@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz#f75157622f5ce7ad53028f2f8888ab53e1f1f24e" + integrity sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ== dependencies: - "@jest/core" "^27.5.1" + "@jest/core" "^29.5.0" + "@jest/types" "^29.5.0" import-local "^3.0.2" - jest-cli "^27.5.1" + jest-cli "^29.5.0" jju@^1.1.0: version "1.4.0" @@ -7021,58 +6862,20 @@ js-yaml@3.14.0: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -js-yaml@^4.1.0: +js-yaml@4.1.0, js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== - -jsdom@^16.6.0: - version "16.7.0" - resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" +js-yaml@^3.10.0, js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" jsesc@^2.5.1: version "2.5.2" @@ -7262,10 +7065,10 @@ jsii@~5.0.2: typescript "~5.0.2" yargs "^17.7.1" -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== json-diff@^0.10.0: version "0.10.0" @@ -7286,6 +7089,11 @@ json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-parse-even-better-errors@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz#2cb2ee33069a78870a0c7e3da560026b89669cf7" + integrity sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA== + json-parse-helpfulerror@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz#13f14ce02eed4e981297b64eb9e3b932e2dd13dc" @@ -7303,11 +7111,6 @@ json-schema-traverse@^1.0.0: resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -json-schema@0.4.0, json-schema@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" - integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== - json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -7318,16 +7121,11 @@ json-stringify-nice@^1.1.4: resolved "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz#2c937962b80181d3f317dd39aa323e14f5a60a67" integrity sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw== -json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: +json-stringify-safe@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== -json5@2.x, json5@^2.2.2: - version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - json5@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" @@ -7335,7 +7133,12 @@ json5@^1.0.2: dependencies: minimist "^1.2.0" -jsonc-parser@~3.2.0: +json5@^2.2.2, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== + +jsonc-parser@3.2.0, jsonc-parser@~3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== @@ -7371,16 +7174,6 @@ jsonschema@^1.4.1: resolved "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz#cc4c3f0077fb4542982973d8a083b6b34f482dab" integrity sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ== -jsprim@^1.2.2: - version "1.4.2" - resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" - integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.4.0" - verror "1.10.0" - jszip@^3.10.1: version "3.10.1" resolved "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" @@ -7401,17 +7194,22 @@ just-diff@^5.0.1: resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.2.0.tgz#60dca55891cf24cd4a094e33504660692348a241" integrity sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw== +just-diff@^6.0.0: + version "6.0.2" + 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== -keyv@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" - integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== +keyv@^4.5.2: + version "4.5.2" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56" + integrity sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g== dependencies: - json-buffer "3.0.0" + json-buffer "3.0.1" kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" @@ -7430,6 +7228,11 @@ kleur@^3.0.3: resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== +kleur@^4.0.1: + version "4.1.5" + resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" + integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== + lambda-leak@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/lambda-leak/-/lambda-leak-2.0.0.tgz#771985d3628487f6e885afae2b54510dcfb2cd7e" @@ -7448,12 +7251,12 @@ lambda-tester@^3.6.0: uuid "^3.3.2" vandium-utils "^1.1.1" -latest-version@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" - integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== +latest-version@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da" + integrity sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg== dependencies: - package-json "^6.3.0" + package-json "^8.1.0" lazystream@^1.0.0: version "1.0.1" @@ -7462,29 +7265,87 @@ lazystream@^1.0.0: dependencies: readable-stream "^2.0.5" -lerna@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" - integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== - dependencies: - "@lerna/add" "4.0.0" - "@lerna/bootstrap" "4.0.0" - "@lerna/changed" "4.0.0" - "@lerna/clean" "4.0.0" - "@lerna/cli" "4.0.0" - "@lerna/create" "4.0.0" - "@lerna/diff" "4.0.0" - "@lerna/exec" "4.0.0" - "@lerna/import" "4.0.0" - "@lerna/info" "4.0.0" - "@lerna/init" "4.0.0" - "@lerna/link" "4.0.0" - "@lerna/list" "4.0.0" - "@lerna/publish" "4.0.0" - "@lerna/run" "4.0.0" - "@lerna/version" "4.0.0" +lerna@^6.6.1: + version "6.6.1" + resolved "https://registry.npmjs.org/lerna/-/lerna-6.6.1.tgz#4897171aed64e244a2d0f9000eef5c5b228f9332" + integrity sha512-WJtrvmbmR+6hMB9b5pvsxJzew0lRL6hARgW/My9BM4vYaxwPIA2I0riv3qQu5Zd7lYse7FEqJkTnl9Kn1bXhLA== + dependencies: + "@lerna/child-process" "6.6.1" + "@lerna/create" "6.6.1" + "@lerna/legacy-package-management" "6.6.1" + "@npmcli/arborist" "6.2.3" + "@npmcli/run-script" "4.1.7" + "@nrwl/devkit" ">=15.5.2 < 16" + "@octokit/plugin-enterprise-rest" "6.0.1" + "@octokit/rest" "19.0.3" + byte-size "7.0.0" + chalk "4.1.0" + clone-deep "4.0.1" + cmd-shim "5.0.0" + columnify "1.6.0" + config-chain "1.1.12" + conventional-changelog-angular "5.0.12" + conventional-changelog-core "4.2.4" + conventional-recommended-bump "6.1.0" + cosmiconfig "7.0.0" + dedent "0.7.0" + dot-prop "6.0.1" + envinfo "^7.7.4" + execa "5.0.0" + fs-extra "9.1.0" + get-port "5.1.1" + get-stream "6.0.0" + git-url-parse "13.1.0" + glob-parent "5.1.2" + globby "11.1.0" + graceful-fs "4.2.10" + has-unicode "2.0.1" import-local "^3.0.2" - npmlog "^4.1.2" + init-package-json "3.0.2" + inquirer "^8.2.4" + is-ci "2.0.0" + is-stream "2.0.0" + js-yaml "^4.1.0" + libnpmaccess "6.0.3" + libnpmpublish "6.0.4" + load-json-file "6.2.0" + make-dir "3.1.0" + minimatch "3.0.5" + multimatch "5.0.0" + node-fetch "2.6.7" + npm-package-arg "8.1.1" + npm-packlist "5.1.1" + npm-registry-fetch "^14.0.3" + npmlog "^6.0.2" + nx ">=15.5.2 < 16" + p-map "4.0.0" + p-map-series "2.1.0" + p-pipe "3.1.0" + p-queue "6.6.2" + p-reduce "2.1.0" + p-waterfall "2.1.1" + pacote "13.6.2" + pify "5.0.0" + read-cmd-shim "3.0.0" + read-package-json "5.0.1" + resolve-from "5.0.0" + rimraf "^4.4.1" + semver "^7.3.8" + signal-exit "3.0.7" + slash "3.0.0" + ssri "9.0.1" + strong-log-transformer "2.1.0" + tar "6.1.11" + temp-dir "1.0.0" + typescript "^3 || ^4" + upath "^2.0.1" + uuid "8.3.2" + validate-npm-package-license "3.0.4" + validate-npm-package-name "4.0.0" + write-file-atomic "4.0.1" + write-pkg "4.0.0" + yargs "16.2.0" + yargs-parser "20.2.4" leven@^3.1.0: version "3.1.0" @@ -7507,15 +7368,15 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -libnpmaccess@^4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" - integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== +libnpmaccess@6.0.3: + version "6.0.3" + resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-6.0.3.tgz#473cc3e4aadb2bc713419d92e45d23b070d8cded" + integrity sha512-4tkfUZprwvih2VUZYMozL7EMKgQ5q9VW2NtRyxWtQWlkLTAWHRklcAvBN49CVqEkhUw7vTX2fNgB5LzgUucgYg== dependencies: aproba "^2.0.0" minipass "^3.1.1" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" + npm-package-arg "^9.0.1" + npm-registry-fetch "^13.0.0" libnpmaccess@^6.0.4: version "6.0.4" @@ -7527,15 +7388,6 @@ libnpmaccess@^6.0.4: npm-package-arg "^9.0.1" npm-registry-fetch "^13.0.0" -libnpmconfig@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz#c0c2f793a74e67d4825e5039e7a02a0044dfcbc0" - integrity sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA== - dependencies: - figgy-pudding "^3.5.1" - find-up "^3.0.0" - ini "^1.3.5" - libnpmdiff@^4.0.5: version "4.0.5" resolved "https://registry.npmjs.org/libnpmdiff/-/libnpmdiff-4.0.5.tgz#ffaf93fa9440ea759444b8830fdb5c661b09a7c0" @@ -7602,16 +7454,16 @@ libnpmpack@^4.1.3: npm-package-arg "^9.0.1" pacote "^13.6.1" -libnpmpublish@^4.0.0: - version "4.0.2" - resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" - integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== +libnpmpublish@6.0.4: + version "6.0.4" + resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-6.0.4.tgz#adb41ec6b0c307d6f603746a4d929dcefb8f1a0b" + integrity sha512-lvAEYW8mB8QblL6Q/PI/wMzKNvIrF7Kpujf/4fGS/32a2i3jzUXi04TNyIBcK6dQJ34IgywfaKGh+Jq4HYPFmg== dependencies: - normalize-package-data "^3.0.2" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" - semver "^7.1.3" - ssri "^8.0.1" + normalize-package-data "^4.0.0" + npm-package-arg "^9.0.1" + npm-registry-fetch "^13.0.0" + semver "^7.3.7" + ssri "^9.0.0" libnpmpublish@^6.0.5: version "6.0.5" @@ -7683,6 +7535,11 @@ lines-and-columns@^1.1.6: resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +lines-and-columns@~2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b" + integrity sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w== + linkify-it@^3.0.1: version "3.0.3" resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" @@ -7690,6 +7547,16 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" +load-json-file@6.2.0, load-json-file@^6.2.0: + version "6.2.0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== + dependencies: + graceful-fs "^4.1.15" + parse-json "^5.0.0" + strip-bom "^4.0.0" + type-fest "^0.6.0" + load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -7700,16 +7567,6 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -load-json-file@^6.2.0: - version "6.2.0" - resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" - integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== - dependencies: - graceful-fs "^4.1.15" - parse-json "^5.0.0" - strip-bom "^4.0.0" - type-fest "^0.6.0" - locate-path@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -7740,11 +7597,6 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== - lodash.defaults@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" @@ -7790,21 +7642,6 @@ lodash.merge@^4.6.2: resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.template@^4.5.0: - version "4.5.0" - resolved "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.truncate@^4.4.2: version "4.4.2" resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" @@ -7815,7 +7652,7 @@ lodash.union@^4.6.0: resolved "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== -lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.7.0: +lodash@^4.17.15, lodash@^4.17.21: version "4.17.21" resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -7850,15 +7687,10 @@ log4js@^6.9.1: rfdc "^1.3.0" streamroller "^3.1.5" -lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" - integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== - -lowercase-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" - integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== +lowercase-keys@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2" + integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ== lru-cache@^5.1.1: version "5.1.1" @@ -7874,7 +7706,7 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: +lru-cache@^7.14.1, lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: version "7.18.3" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== @@ -7914,6 +7746,13 @@ madge@^5.0.2: typescript "^3.9.5" walkdir "^0.4.1" +make-dir@3.1.0, make-dir@^3.0.0, make-dir@^3.0.2: + version "3.1.0" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + make-dir@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -7922,13 +7761,6 @@ make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0, make-dir@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - make-error@1.x, make-error@^1.1.1: version "1.3.6" resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" @@ -7956,48 +7788,26 @@ make-fetch-happen@^10.0.3, make-fetch-happen@^10.0.6, make-fetch-happen@^10.2.0: socks-proxy-agent "^7.0.0" ssri "^9.0.0" -make-fetch-happen@^8.0.9: - version "8.0.14" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" - integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ== - dependencies: - agentkeepalive "^4.1.3" - cacache "^15.0.5" - http-cache-semantics "^4.1.0" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-lambda "^1.0.1" - lru-cache "^6.0.0" - minipass "^3.1.3" - minipass-collect "^1.0.2" - minipass-fetch "^1.3.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - promise-retry "^2.0.1" - socks-proxy-agent "^5.0.0" - ssri "^8.0.0" - -make-fetch-happen@^9.0.1: - version "9.1.0" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" - integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== +make-fetch-happen@^11.0.0, make-fetch-happen@^11.0.1: + version "11.0.3" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz#ed83dd3685b97f75607156d2721848f6eca561b9" + integrity sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA== dependencies: - agentkeepalive "^4.1.3" - cacache "^15.2.0" - http-cache-semantics "^4.1.0" - http-proxy-agent "^4.0.1" + agentkeepalive "^4.2.1" + cacache "^17.0.0" + http-cache-semantics "^4.1.1" + http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" is-lambda "^1.0.1" - lru-cache "^6.0.0" - minipass "^3.1.3" - minipass-collect "^1.0.2" - minipass-fetch "^1.3.2" + lru-cache "^7.7.1" + minipass "^4.0.0" + minipass-fetch "^3.0.0" minipass-flush "^1.0.5" minipass-pipeline "^1.2.4" - negotiator "^0.6.2" + negotiator "^0.6.3" promise-retry "^2.0.1" - socks-proxy-agent "^6.0.0" - ssri "^8.0.0" + socks-proxy-agent "^7.0.0" + ssri "^10.0.0" make-runnable@^1.4.1: version "1.4.1" @@ -8125,7 +7935,7 @@ mime-db@1.52.0: resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@~2.1.19: +mime-types@^2.1.12: version "2.1.35" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -8142,16 +7952,28 @@ mimic-fn@^2.1.0: resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -mimic-response@^1.0.0, mimic-response@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" - integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== +mimic-response@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== + +mimic-response@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f" + integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg== min-indent@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +minimatch@3.0.5: + version "3.0.5" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3" + integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw== + dependencies: + brace-expansion "^1.1.7" + minimatch@>=3.1: version "7.4.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-7.4.2.tgz#157e847d79ca671054253b840656720cb733f10f" @@ -8173,6 +7995,27 @@ minimatch@^5.0.1, minimatch@^5.1.0, minimatch@~5.1.2: dependencies: brace-expansion "^2.0.1" +minimatch@^6.1.6: + version "6.2.0" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz#2b70fd13294178c69c04dfc05aebdb97a4e79e42" + integrity sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^7.4.1, minimatch@^7.4.2: + version "7.4.3" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-7.4.3.tgz#012cbf110a65134bb354ae9773b55256cdb045a2" + integrity sha512-5UB4yYusDtkRPbRiy1cqZ1IpGNcJCGlEMG17RKzPddpyiPKoCdwohbED8g4QXT0ewCt8LTkQXuljsUfQ3FKM4A== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^8.0.3: + version "8.0.4" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz#847c1b25c014d4e9a7f68aaf63dedd668a626229" + integrity sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -8194,17 +8037,6 @@ minipass-collect@^1.0.2: dependencies: minipass "^3.0.0" -minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: - version "1.4.1" - resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" - integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== - dependencies: - minipass "^3.1.0" - minipass-sized "^1.0.3" - minizlib "^2.0.0" - optionalDependencies: - encoding "^0.1.12" - minipass-fetch@^2.0.3: version "2.1.2" resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz#95560b50c472d81a3bc76f20ede80eaed76d8add" @@ -8216,6 +8048,17 @@ minipass-fetch@^2.0.3: optionalDependencies: encoding "^0.1.13" +minipass-fetch@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz#bae3789f668d82ffae3ea47edc6b78b8283b3656" + integrity sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw== + dependencies: + minipass "^4.0.0" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -8231,7 +8074,7 @@ minipass-json-stream@^1.0.1: jsonparse "^1.3.1" minipass "^3.0.0" -minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: +minipass-pipeline@^1.2.4: version "1.2.4" resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== @@ -8245,15 +8088,7 @@ minipass-sized@^1.0.3: dependencies: minipass "^3.0.0" -minipass@^2.6.0, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: +minipass@^3.0.0, minipass@^3.1.1, minipass@^3.1.6: version "3.3.6" resolved "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== @@ -8265,14 +8100,12 @@ minipass@^4.0.0: resolved "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz#7d0d97434b6a19f59c5c3221698b48bbf3b2cd06" integrity sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ== -minizlib@^1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" +minipass@^4.0.2, minipass@^4.2.4: + version "4.2.5" + resolved "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz#9e0e5256f1e3513f8c34691dd68549e85b2c8ceb" + integrity sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q== -minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: +minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== @@ -8289,7 +8122,7 @@ mkdirp-infer-owner@^2.0.0: infer-owner "^1.0.4" mkdirp "^1.0.3" -mkdirp@^0.5.1, mkdirp@^0.5.5: +mkdirp@^0.5.1: version "0.5.6" resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -8345,7 +8178,7 @@ ms@^2.0.0, ms@^2.1.1, ms@^2.1.2: resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -multimatch@^5.0.0: +multimatch@5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== @@ -8376,7 +8209,7 @@ natural-compare@^1.4.0: resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -negotiator@^0.6.2, negotiator@^0.6.3: +negotiator@^0.6.3: version "0.6.3" resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -8433,45 +8266,29 @@ nock@^13.3.0: lodash "^4.17.21" propagate "^2.0.0" -node-fetch@^2.6.1, node-fetch@^2.6.7: +node-addon-api@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== + +node-fetch@2.6.7: + version "2.6.7" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" + +node-fetch@^2.6.7: version "2.6.9" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== dependencies: whatwg-url "^5.0.0" -node-gyp@^5.0.2: - version "5.1.1" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" - integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.1.2" - request "^2.88.0" - rimraf "^2.6.3" - semver "^5.7.1" - tar "^4.4.12" - which "^1.3.1" - -node-gyp@^7.1.0: - version "7.1.2" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" - rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" - which "^2.0.2" +node-gyp-build@^4.3.0: + version "4.6.0" + resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055" + integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ== node-gyp@^9.0.0, node-gyp@^9.1.0: version "9.3.1" @@ -8515,18 +8332,11 @@ node-source-walk@^4.0.0, node-source-walk@^4.2.0, node-source-walk@^4.2.2: nopt@^4.0.1: version "4.0.3" - resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - -nopt@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" - integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" + integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== dependencies: abbrev "1" + osenv "^0.1.4" nopt@^6.0.0: version "6.0.0" @@ -8535,6 +8345,13 @@ nopt@^6.0.0: dependencies: abbrev "^1.0.0" +nopt@^7.0.0: + version "7.1.0" + resolved "https://registry.npmjs.org/nopt/-/nopt-7.1.0.tgz#91f6a3366182176e72ecab93a09c19b63b485f28" + integrity sha512-ZFPLe9Iu0tnx7oWhFxAo4s7QTn8+NNDDxYNaKLjE7Dp0tbakQ3M1QhQzsnzXHQBTUO3K9BmwaxnyO8Ayn2I95Q== + dependencies: + abbrev "^2.0.0" + normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -8545,7 +8362,7 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: +normalize-package-data@^3.0.0: version "3.0.3" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== @@ -8565,20 +8382,25 @@ normalize-package-data@^4.0.0: semver "^7.3.5" validate-npm-package-license "^3.0.4" +normalize-package-data@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz#abcb8d7e724c40d88462b84982f7cbf6859b4588" + integrity sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q== + dependencies: + hosted-git-info "^6.0.0" + is-core-module "^2.8.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-url@^4.1.0: - version "4.5.1" - resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" - integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== - -normalize-url@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" - integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== +normalize-url@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.0.tgz#593dbd284f743e8dcf6a5ddf8fadff149c82701a" + integrity sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw== npm-audit-report@^3.0.0: version "3.0.0" @@ -8601,47 +8423,48 @@ npm-bundled@^2.0.0: dependencies: npm-normalize-package-bin "^2.0.0" -npm-check-updates@^12: - version "12.5.12" - resolved "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-12.5.12.tgz#fdcf746b352236dcf3d0885d4462af3abd6da9eb" - integrity sha512-JAFs+kKokZmYPRzhSHgIpKashX6vSGGXYo0VJXNaKV/nLnq3ZKI0nTVou9OwTix+PFfLAWTEJ6T/byGxkDlhWA== +npm-bundled@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz#7e8e2f8bb26b794265028491be60321a25a39db7" + integrity sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ== + dependencies: + npm-normalize-package-bin "^3.0.0" + +npm-check-updates@^16: + version "16.10.8" + resolved "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.10.8.tgz#a8b9cb3a7bfecad4d95e2b5a51ed2431d162478e" + integrity sha512-e+p3rUCvaU0iKOvi+/Xiyx+mLe9/aRTu9Zrc7+TR6H2q+uFgmXEwqbXYN9Ngqsta8gdTjpn751UD5MEOogO5cA== dependencies: - chalk "^4.1.2" - cint "^8.2.1" - cli-table "^0.3.11" - commander "^9.1.0" + chalk "^5.2.0" + cli-table3 "^0.6.3" + commander "^10.0.0" fast-memoize "^2.5.2" find-up "5.0.0" fp-and-or "^0.1.3" get-stdin "^8.0.0" globby "^11.0.4" - hosted-git-info "^5.0.0" + hosted-git-info "^5.1.0" + ini "^4.0.0" + js-yaml "^4.1.0" json-parse-helpfulerror "^1.0.3" jsonlines "^0.1.1" - libnpmconfig "^1.2.1" lodash "^4.17.21" - minimatch "^5.0.1" + minimatch "^8.0.3" p-map "^4.0.0" - pacote "^13.0.5" + pacote "15.1.1" parse-github-url "^1.0.2" progress "^2.0.3" - prompts "^2.4.2" - rc-config-loader "^4.1.0" + prompts-ncu "^3.0.0" + rc-config-loader "^4.1.2" remote-git-tags "^3.0.0" - rimraf "^3.0.2" - semver "^7.3.5" + rimraf "^4.4.1" + semver "^7.3.8" semver-utils "^1.1.4" source-map-support "^0.5.21" - spawn-please "^1.0.0" - update-notifier "^5.1.0" - yaml "^1.10.2" - -npm-install-checks@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" - integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== - dependencies: - semver "^7.1.1" + spawn-please "^2.0.1" + strip-json-comments "^5.0.0" + untildify "^4.0.0" + update-notifier "^6.0.2" npm-install-checks@^5.0.0: version "5.0.0" @@ -8650,19 +8473,12 @@ npm-install-checks@^5.0.0: dependencies: semver "^7.1.1" -npm-lifecycle@^3.1.5: - version "3.1.5" - resolved "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" - integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== +npm-install-checks@^6.0.0: + version "6.1.0" + resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.0.tgz#7221210d9d746a40c37bf6c9b6c7a39f85e92998" + integrity sha512-udSGENih/5xKh3Ex+L0PtZcOt0Pa+6ppDLnpG5D49/EhMja3LupaY9E/DtJTxyFBwE09ot7Fc+H4DywnZNWTVA== dependencies: - byline "^5.0.0" - graceful-fs "^4.1.15" - node-gyp "^5.0.2" - resolve-from "^4.0.0" - slide "^1.1.6" - uid-number "0.0.6" - umask "^1.1.0" - which "^1.3.1" + semver "^7.1.1" npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: version "1.0.1" @@ -8674,7 +8490,31 @@ npm-normalize-package-bin@^2.0.0: resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz#9447a1adaaf89d8ad0abe24c6c84ad614a675fff" integrity sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ== -npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: +npm-normalize-package-bin@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz#6097436adb4ef09e2628b59a7882576fe53ce485" + integrity sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q== + +npm-package-arg@8.1.1: + version "8.1.1" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.1.tgz#00ebf16ac395c63318e67ce66780a06db6df1b04" + integrity sha512-CsP95FhWQDwNqiYS+Q0mZ7FAEDytDZAkNxQqea6IaAFJTAY9Lhhqyl0irU/6PMc7BGfUmnsbHcqxJD7XuVM/rg== + dependencies: + hosted-git-info "^3.0.6" + semver "^7.0.0" + validate-npm-package-name "^3.0.0" + +npm-package-arg@^10.0.0, npm-package-arg@^10.1.0: + version "10.1.0" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz#827d1260a683806685d17193073cc152d3c7e9b1" + integrity sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA== + dependencies: + hosted-git-info "^6.0.0" + proc-log "^3.0.0" + semver "^7.3.5" + validate-npm-package-name "^5.0.0" + +npm-package-arg@^8.1.0: version "8.1.5" resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== @@ -8693,14 +8533,14 @@ npm-package-arg@^9.0.0, npm-package-arg@^9.0.1, npm-package-arg@^9.1.0: semver "^7.3.5" validate-npm-package-name "^4.0.0" -npm-packlist@^2.1.4: - version "2.2.2" - resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" - integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== +npm-packlist@5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz#79bcaf22a26b6c30aa4dd66b976d69cc286800e0" + integrity sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw== dependencies: - glob "^7.1.6" - ignore-walk "^3.0.3" - npm-bundled "^1.1.1" + glob "^8.0.1" + ignore-walk "^5.0.1" + npm-bundled "^1.1.2" npm-normalize-package-bin "^1.0.1" npm-packlist@^5.1.0: @@ -8713,15 +8553,12 @@ npm-packlist@^5.1.0: npm-bundled "^2.0.0" npm-normalize-package-bin "^2.0.0" -npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: - version "6.1.1" - resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" - integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== +npm-packlist@^7.0.0: + version "7.0.4" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz#033bf74110eb74daf2910dc75144411999c5ff32" + integrity sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q== dependencies: - npm-install-checks "^4.0.0" - npm-normalize-package-bin "^1.0.1" - npm-package-arg "^8.1.2" - semver "^7.3.4" + ignore-walk "^6.0.0" npm-pick-manifest@^7.0.0, npm-pick-manifest@^7.0.2: version "7.0.2" @@ -8733,6 +8570,16 @@ npm-pick-manifest@^7.0.0, npm-pick-manifest@^7.0.2: npm-package-arg "^9.0.0" semver "^7.3.5" +npm-pick-manifest@^8.0.0, npm-pick-manifest@^8.0.1: + version "8.0.1" + resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz#c6acd97d1ad4c5dbb80eac7b386b03ffeb289e5f" + integrity sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA== + dependencies: + npm-install-checks "^6.0.0" + npm-normalize-package-bin "^3.0.0" + npm-package-arg "^10.0.0" + semver "^7.3.5" + npm-profile@^6.2.0: version "6.2.1" resolved "https://registry.npmjs.org/npm-profile/-/npm-profile-6.2.1.tgz#975c31ec75a6ae029ab5b8820ffdcbae3a1e3d5e" @@ -8741,17 +8588,18 @@ npm-profile@^6.2.0: npm-registry-fetch "^13.0.1" proc-log "^2.0.0" -npm-registry-fetch@^11.0.0: - version "11.0.0" - resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" - integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== +npm-registry-fetch@14.0.3, npm-registry-fetch@^14.0.0, npm-registry-fetch@^14.0.3: + version "14.0.3" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz#8545e321c2b36d2c6fe6e009e77e9f0e527f547b" + integrity sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA== dependencies: - make-fetch-happen "^9.0.1" - minipass "^3.1.3" - minipass-fetch "^1.3.0" + make-fetch-happen "^11.0.0" + minipass "^4.0.0" + minipass-fetch "^3.0.0" minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" + minizlib "^2.1.2" + npm-package-arg "^10.0.0" + proc-log "^3.0.0" npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1, npm-registry-fetch@^13.3.1: version "13.3.1" @@ -8766,20 +8614,6 @@ npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1, npm-registry-fetch@^13.3 npm-package-arg "^9.0.1" proc-log "^2.0.0" -npm-registry-fetch@^9.0.0: - version "9.0.0" - resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" - integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA== - dependencies: - "@npmcli/ci-detect" "^1.0.0" - lru-cache "^6.0.0" - make-fetch-happen "^8.0.9" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" - npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -8871,6 +8705,16 @@ npm@^8.19.4: which "^2.0.2" write-file-atomic "^4.0.1" +npmlog@6.0.2, npmlog@^6.0.0, npmlog@^6.0.2: + version "6.0.2" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + dependencies: + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" + npmlog@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" @@ -8881,20 +8725,66 @@ npmlog@^4.1.2: gauge "~2.7.3" set-blocking "~2.0.0" -npmlog@^6.0.0, npmlog@^6.0.2: - version "6.0.2" - resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" - integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== +npmlog@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz#7372151a01ccb095c47d8bf1d0771a4ff1f53ac8" + integrity sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg== dependencies: - are-we-there-yet "^3.0.0" + are-we-there-yet "^4.0.0" console-control-strings "^1.1.0" - gauge "^4.0.3" + gauge "^5.0.0" set-blocking "^2.0.0" -nwsapi@^2.2.0: - version "2.2.2" - resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" - integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== +nx@15.9.1, "nx@>=15.5.2 < 16", nx@^15.9.1: + version "15.9.1" + resolved "https://registry.npmjs.org/nx/-/nx-15.9.1.tgz#c6a923cc29a869feeeab5768fc18a314fb696a84" + integrity sha512-4PXqQ45JPUBTYqVkVFmUg+mGj+qYkn89Cf+T1n+V1EC8p0pdavqPNaMaTxJTJDOP0TyF+yZ780Kujbarzae8bg== + dependencies: + "@nrwl/cli" "15.9.1" + "@nrwl/tao" "15.9.1" + "@parcel/watcher" "2.0.4" + "@yarnpkg/lockfile" "^1.1.0" + "@yarnpkg/parsers" "^3.0.0-rc.18" + "@zkochan/js-yaml" "0.0.6" + axios "^1.0.0" + chalk "^4.1.0" + cli-cursor "3.1.0" + cli-spinners "2.6.1" + cliui "^7.0.2" + dotenv "~10.0.0" + enquirer "~2.3.6" + fast-glob "3.2.7" + figures "3.2.0" + flat "^5.0.2" + fs-extra "^11.1.0" + glob "7.1.4" + ignore "^5.0.4" + js-yaml "4.1.0" + jsonc-parser "3.2.0" + lines-and-columns "~2.0.3" + minimatch "3.0.5" + npm-run-path "^4.0.1" + open "^8.4.0" + semver "7.3.4" + string-width "^4.2.3" + strong-log-transformer "^2.1.0" + tar-stream "~2.2.0" + tmp "~0.2.1" + tsconfig-paths "^4.1.2" + tslib "^2.3.0" + v8-compile-cache "2.3.0" + yargs "^17.6.2" + yargs-parser "21.1.1" + optionalDependencies: + "@nrwl/nx-darwin-arm64" "15.9.1" + "@nrwl/nx-darwin-x64" "15.9.1" + "@nrwl/nx-linux-arm-gnueabihf" "15.9.1" + "@nrwl/nx-linux-arm64-gnu" "15.9.1" + "@nrwl/nx-linux-arm64-musl" "15.9.1" + "@nrwl/nx-linux-x64-gnu" "15.9.1" + "@nrwl/nx-linux-x64-musl" "15.9.1" + "@nrwl/nx-win32-arm64-msvc" "15.9.1" + "@nrwl/nx-win32-x64-msvc" "15.9.1" nyc@^15.1.0: version "15.1.0" @@ -8929,11 +8819,6 @@ nyc@^15.1.0: test-exclude "^6.0.0" yargs "^15.0.2" -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - object-assign@^4.1.0: version "4.1.1" resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -8959,16 +8844,6 @@ object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.getownpropertydescriptors@^2.0.3: - version "2.1.5" - resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz#db5a9002489b64eef903df81d6623c07e5b4b4d3" - integrity sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw== - dependencies: - array.prototype.reduce "^1.0.5" - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - object.values@^1.1.6: version "1.1.6" resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" @@ -8978,7 +8853,7 @@ object.values@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -9010,6 +8885,15 @@ open@^7.4.2: is-docker "^2.0.0" is-wsl "^2.1.1" +open@^8.4.0: + version "8.4.2" + resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" + integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + opener@^1.5.2: version "1.5.2" resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" @@ -9072,10 +8956,10 @@ osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" -p-cancelable@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" - integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== +p-cancelable@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" + integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw== p-finally@^1.0.0: version "1.0.0" @@ -9096,7 +8980,7 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2: +p-limit@^3.0.2, p-limit@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -9131,11 +9015,18 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" -p-map-series@^2.1.0: +p-map-series@2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== +p-map@4.0.0, p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + p-map@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" @@ -9143,19 +9034,12 @@ p-map@^3.0.0: dependencies: aggregate-error "^3.0.0" -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-pipe@^3.1.0: +p-pipe@3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== -p-queue@^6.6.2: +p-queue@6.6.2, p-queue@^6.6.2: version "6.6.2" resolved "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== @@ -9163,7 +9047,7 @@ p-queue@^6.6.2: eventemitter3 "^4.0.4" p-timeout "^3.2.0" -p-reduce@^2.0.0, p-reduce@^2.1.0: +p-reduce@2.1.0, p-reduce@^2.0.0, p-reduce@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== @@ -9185,7 +9069,7 @@ p-try@^2.0.0: resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -p-waterfall@^2.1.1: +p-waterfall@2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== @@ -9226,42 +9110,17 @@ package-hash@^4.0.0: lodash.flattendeep "^4.4.0" release-zalgo "^1.0.0" -package-json@^6.3.0: - version "6.5.0" - resolved "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" - integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== - dependencies: - got "^9.6.0" - registry-auth-token "^4.0.0" - registry-url "^5.0.0" - semver "^6.2.0" - -pacote@^11.2.6: - version "11.3.5" - resolved "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" - integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== - dependencies: - "@npmcli/git" "^2.1.0" - "@npmcli/installed-package-contents" "^1.0.6" - "@npmcli/promise-spawn" "^1.2.0" - "@npmcli/run-script" "^1.8.2" - cacache "^15.0.5" - chownr "^2.0.0" - fs-minipass "^2.1.0" - infer-owner "^1.0.4" - minipass "^3.1.3" - mkdirp "^1.0.3" - npm-package-arg "^8.0.1" - npm-packlist "^2.1.4" - npm-pick-manifest "^6.0.0" - npm-registry-fetch "^11.0.0" - promise-retry "^2.0.1" - read-package-json-fast "^2.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.1.0" +package-json@^8.1.0: + version "8.1.0" + resolved "https://registry.npmjs.org/package-json/-/package-json-8.1.0.tgz#2a22806f1ed7c786c8e6ff26cfe20003bf4c6850" + integrity sha512-hySwcV8RAWeAfPsXb9/HGSPn8lwDnv6fabH+obUZKX169QknRkRhPxd1yMubpKDskLFATkl3jHpNtVtDPFA0Wg== + dependencies: + got "^12.1.0" + registry-auth-token "^5.0.1" + registry-url "^6.0.0" + semver "^7.3.7" -pacote@^13.0.3, pacote@^13.0.5, pacote@^13.6.1, pacote@^13.6.2: +pacote@13.6.2, pacote@^13.0.3, pacote@^13.6.1, pacote@^13.6.2: version "13.6.2" resolved "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz#0d444ba3618ab3e5cd330b451c22967bbd0ca48a" integrity sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg== @@ -9288,6 +9147,30 @@ pacote@^13.0.3, pacote@^13.0.5, pacote@^13.6.1, pacote@^13.6.2: ssri "^9.0.0" tar "^6.1.11" +pacote@15.1.1, pacote@^15.0.0, pacote@^15.0.8: + version "15.1.1" + resolved "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz#94d8c6e0605e04d427610b3aacb0357073978348" + integrity sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ== + dependencies: + "@npmcli/git" "^4.0.0" + "@npmcli/installed-package-contents" "^2.0.1" + "@npmcli/promise-spawn" "^6.0.1" + "@npmcli/run-script" "^6.0.0" + cacache "^17.0.0" + fs-minipass "^3.0.0" + minipass "^4.0.0" + npm-package-arg "^10.0.0" + npm-packlist "^7.0.0" + npm-pick-manifest "^8.0.0" + npm-registry-fetch "^14.0.0" + proc-log "^3.0.0" + promise-retry "^2.0.1" + read-package-json "^6.0.0" + read-package-json-fast "^3.0.0" + sigstore "^1.0.0" + ssri "^10.0.0" + tar "^6.1.11" + pako@~1.0.2: version "1.0.11" resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -9309,6 +9192,15 @@ parse-conflict-json@^2.0.1, parse-conflict-json@^2.0.2: just-diff "^5.0.1" just-diff-apply "^5.2.0" +parse-conflict-json@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz#67dc55312781e62aa2ddb91452c7606d1969960c" + integrity sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw== + dependencies: + json-parse-even-better-errors "^3.0.0" + just-diff "^6.0.0" + just-diff-apply "^5.2.0" + parse-github-url@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/parse-github-url/-/parse-github-url-1.0.2.tgz#242d3b65cbcdda14bb50439e3242acf6971db395" @@ -9337,30 +9229,19 @@ parse-ms@^2.1.0: resolved "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz#348565a753d4391fa524029956b172cb7753097d" integrity sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA== -parse-path@^4.0.0: - version "4.0.4" - resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.4.tgz#4bf424e6b743fb080831f03b536af9fc43f0ffea" - integrity sha512-Z2lWUis7jlmXC1jeOG9giRO2+FsuyNipeQ43HAjqAZjwSe3SEf+q/84FGPHoso3kyntbxa4c4i77t3m6fGf8cw== +parse-path@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b" + integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog== dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" - qs "^6.9.4" - query-string "^6.13.8" + protocols "^2.0.0" -parse-url@^6.0.0: - version "6.0.5" - resolved "https://registry.npmjs.org/parse-url/-/parse-url-6.0.5.tgz#4acab8982cef1846a0f8675fa686cef24b2f6f9b" - integrity sha512-e35AeLTSIlkw/5GFq70IN7po8fmDUjpDPY1rIK+VubRfsUvBonjQ+PBZG+vWMACnQSmNlvl524IucoDmcioMxA== +parse-url@^8.1.0: + version "8.1.0" + resolved "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d" + integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w== dependencies: - is-ssh "^1.3.0" - normalize-url "^6.1.0" - parse-path "^4.0.0" - protocols "^1.4.0" - -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + parse-path "^7.0.0" patch-package@^6.5.1: version "6.5.1" @@ -9417,6 +9298,14 @@ path-parse@^1.0.7: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.6.1: + version "1.6.3" + resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.3.tgz#4eba7183d64ef88b63c7d330bddc3ba279dc6c40" + integrity sha512-RAmB+n30SlN+HnNx6EbcpoDy9nwdpcGPnEKrJnu6GZoDWBdIjo1UQMVtW2ybtC7LC2oKLcMq8y5g8WnKLiod9g== + dependencies: + lru-cache "^7.14.1" + minipass "^4.0.2" + path-to-regexp@^1.7.0: version "1.8.0" resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" @@ -9436,11 +9325,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== -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== - picocolors@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -9451,6 +9335,11 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +pify@5.0.0, pify@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== + pify@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -9466,11 +9355,6 @@ pify@^4.0.1: resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pify@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" - integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== - pirates@^4.0.4: version "4.0.5" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" @@ -9552,19 +9436,23 @@ prelude-ls@~1.1.2: resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== +pretty-format@29.4.3: + version "29.4.3" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz#25500ada21a53c9e8423205cf0337056b201244c" + integrity sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA== + dependencies: + "@jest/schemas" "^29.4.3" + ansi-styles "^5.0.0" + react-is "^18.0.0" -pretty-format@^27.0.0, pretty-format@^27.5.1: - version "27.5.1" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" - integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== +pretty-format@^29.0.0, pretty-format@^29.5.0: + version "29.5.0" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a" + integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw== dependencies: - ansi-regex "^5.0.1" + "@jest/schemas" "^29.4.3" ansi-styles "^5.0.0" - react-is "^17.0.1" + react-is "^18.0.0" pretty-ms@^7.0.1: version "7.0.1" @@ -9578,6 +9466,11 @@ proc-log@^2.0.0, proc-log@^2.0.1: resolved "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz#8f3f69a1f608de27878f91f5c688b225391cb685" integrity sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw== +proc-log@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8" + integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A== + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -9590,6 +9483,11 @@ process-on-spawn@^1.0.0: dependencies: fromentries "^1.2.0" +process@^0.11.10: + version "0.11.10" + resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== + progress@^2.0.0, progress@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" @@ -9646,7 +9544,15 @@ promptly@^3.2.0: dependencies: read "^1.0.4" -prompts@^2.0.1, prompts@^2.4.2: +prompts-ncu@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/prompts-ncu/-/prompts-ncu-3.0.0.tgz#716feb4874fca3dbe00af0f3de17a15d43d2228d" + integrity sha512-qyz9UxZ5MlPKWVhWrCmSZ1ahm2GVYdjLb8og2sg0IPth1KRuhcggHGuijz0e41dkx35p1t1q3GRISGH7QGALFA== + dependencies: + kleur "^4.0.1" + sisteransi "^1.0.5" + +prompts@^2.0.1: version "2.4.2" resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== @@ -9671,12 +9577,7 @@ proto-list@~1.2.1: resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== -protocols@^1.4.0: - version "1.4.8" - resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" - integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== - -protocols@^2.0.1: +protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== @@ -9695,46 +9596,38 @@ proxy-agent@^5.0.0: proxy-from-env "^1.0.0" socks-proxy-agent "^5.0.0" -proxy-from-env@^1.0.0: +proxy-from-env@^1.0.0, proxy-from-env@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -psl@^1.1.28, psl@^1.1.33: - version "1.9.0" - resolved "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - 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.1.1, punycode@^2.3.0: +punycode@^2.1.0, punycode@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== -pupa@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" - integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== +pupa@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/pupa/-/pupa-3.1.0.tgz#f15610274376bbcc70c9a3aa8b505ea23f41c579" + integrity sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug== dependencies: - escape-goat "^2.0.0" + escape-goat "^4.0.0" pure-rand@^5.0.1: version "5.0.5" resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.5.tgz#bda2a7f6a1fc0f284d78d78ca5902f26f2ad35cf" integrity sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw== +pure-rand@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.1.tgz#31207dddd15d43f299fdcdb2f572df65030c19af" + integrity sha512-t+x1zEHDjBwkDGY5v5ApnZ/utcd4XYDiJsaQQoptTXgUXX95sDg1elCdJghzicm7n2mbCBJ3uYWr6M22SO19rg== + q@^1.5.1: version "1.5.1" resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" @@ -9745,38 +9638,11 @@ qrcode-terminal@^0.12.0: resolved "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" integrity sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ== -qs@^6.9.4: - version "6.11.1" - resolved "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" - integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== - dependencies: - side-channel "^1.0.4" - -qs@~6.5.2: - version "6.5.3" - resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" - integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== - -query-string@^6.13.8: - version "6.14.1" - resolved "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" - integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== - dependencies: - decode-uri-component "^0.2.0" - filter-obj "^1.1.0" - split-on-first "^1.0.0" - strict-uri-encode "^2.0.0" - 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== -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -9787,6 +9653,11 @@ quick-lru@^4.0.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== +quick-lru@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== + quote-unquote@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/quote-unquote/-/quote-unquote-1.0.0.tgz#67a9a77148effeaf81a4d428404a710baaac8a0b" @@ -9802,7 +9673,7 @@ raw-body@^2.2.0: iconv-lite "0.4.24" unpipe "1.0.0" -rc-config-loader@^4.1.0: +rc-config-loader@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-4.1.2.tgz#e57fc874bde9b1e48d8a8564f2f824f91eafd920" integrity sha512-qKTnVWFl9OQYKATPzdfaZIbTxcHziQl92zYSxYC6umhOqyAsoj8H8Gq/+aFjAso68sBdjTz3A7omqeAkkF1MWg== @@ -9812,7 +9683,7 @@ rc-config-loader@^4.1.0: json5 "^2.2.2" require-from-string "^2.0.2" -rc@1.2.8, rc@^1.2.7, rc@^1.2.8: +rc@1.2.8, rc@^1.2.7: version "1.2.8" resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -9822,21 +9693,26 @@ rc@1.2.8, rc@^1.2.7, rc@^1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== +react-is@^18.0.0: + version "18.2.0" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -read-cmd-shim@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" - integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== +read-cmd-shim@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz#62b8c638225c61e6cc607f8f4b779f3b8238f155" + integrity sha512-KQDVjGqhZk92PPNRj9ZEXEuqg8bUobSKRw+q0YQ3TKI5xkce7bUJobL4Z/OtiEbAAv70yEpYIXp4iQ9L8oPVog== read-cmd-shim@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.1.tgz#868c235ec59d1de2db69e11aec885bc095aea087" integrity sha512-kEmDUoYf/CDy8yZbLTmhB1X9kkjf9Q80PCNsDMb7ufrGd6zZSQA1+UyjrO+pZm5K/S4OXCWJeiIt1JA8kAsa6g== +read-cmd-shim@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz#640a08b473a49043e394ae0c7a34dd822c73b9bb" + integrity sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q== + read-installed@~4.0.3: version "4.0.3" resolved "https://registry.npmjs.org/read-installed/-/read-installed-4.0.3.tgz#ff9b8b67f187d1e4c29b9feb31f6b223acd19067" @@ -9851,7 +9727,7 @@ read-installed@~4.0.3: optionalDependencies: graceful-fs "^4.1.2" -read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: +read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== @@ -9859,6 +9735,24 @@ read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json- json-parse-even-better-errors "^2.3.0" npm-normalize-package-bin "^1.0.1" +read-package-json-fast@^3.0.0, read-package-json-fast@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz#394908a9725dc7a5f14e70c8e7556dff1d2b1049" + integrity sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw== + dependencies: + json-parse-even-better-errors "^3.0.0" + npm-normalize-package-bin "^3.0.0" + +read-package-json@5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz#1ed685d95ce258954596b13e2e0e76c7d0ab4c26" + integrity sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg== + dependencies: + glob "^8.0.1" + json-parse-even-better-errors "^2.3.1" + normalize-package-data "^4.0.0" + npm-normalize-package-bin "^1.0.1" + read-package-json@^2.0.0: version "2.1.2" resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" @@ -9869,26 +9763,6 @@ read-package-json@^2.0.0: normalize-package-data "^2.0.0" npm-normalize-package-bin "^1.0.0" -read-package-json@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" - integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-json@^4.1.1: - version "4.1.2" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-4.1.2.tgz#b444d047de7c75d4a160cb056d00c0693c1df703" - integrity sha512-Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - read-package-json@^5.0.0, read-package-json@^5.0.2: version "5.0.2" resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz#b8779ccfd169f523b67208a89cc912e3f663f3fa" @@ -9899,14 +9773,15 @@ read-package-json@^5.0.0, read-package-json@^5.0.2: normalize-package-data "^4.0.0" npm-normalize-package-bin "^2.0.0" -read-package-tree@^5.3.1: - version "5.3.1" - resolved "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" - integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== +read-package-json@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.1.tgz#566cb06bc05dbddefba4607e9096d5a9efbcd836" + integrity sha512-AaHqXxfAVa+fNL07x8iAghfKOds/XXsu7zoouIVsbm7PEbQ3nMWXlvjcbrNLjElnUHWQtAo4QEa0RXuvD4XlpA== dependencies: - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - util-promisify "^2.1.0" + glob "^9.3.0" + json-parse-even-better-errors "^3.0.0" + normalize-package-data "^5.0.0" + npm-normalize-package-bin "^3.0.0" read-pkg-up@^3.0.0: version "3.0.0" @@ -9944,7 +9819,7 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -read@1, read@^1.0.4, read@^1.0.7, read@~1.0.1, read@~1.0.7: +read@1, read@^1.0.4, read@^1.0.7, read@~1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== @@ -9983,6 +9858,16 @@ readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.0.6, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^4.1.0: + version "4.3.0" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz#0914d0c72db03b316c9733bb3461d64a3cc50cba" + integrity sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ== + dependencies: + abort-controller "^3.0.0" + buffer "^6.0.3" + events "^3.3.0" + process "^0.11.10" + readdir-glob@^1.0.0: version "1.1.2" resolved "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.2.tgz#b185789b8e6a43491635b6953295c5c5e3fd224c" @@ -10036,19 +9921,19 @@ regexpp@^3.1.0, regexpp@^3.2.0: resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== -registry-auth-token@^4.0.0: - version "4.2.2" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz#f02d49c3668884612ca031419491a13539e21fac" - integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== +registry-auth-token@^5.0.1: + version "5.0.2" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.2.tgz#8b026cc507c8552ebbe06724136267e63302f756" + integrity sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ== dependencies: - rc "1.2.8" + "@pnpm/npm-conf" "^2.1.0" -registry-url@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" - integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== +registry-url@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/registry-url/-/registry-url-6.0.1.tgz#056d9343680f2f64400032b1e199faa692286c58" + integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q== dependencies: - rc "^1.2.8" + rc "1.2.8" release-zalgo@^1.0.0: version "1.0.0" @@ -10072,32 +9957,6 @@ repeat-string@^1.6.1: resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== -request@^2.88.0, request@^2.88.2: - version "2.88.2" - resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -10126,10 +9985,10 @@ requirejs@^2.3.5: resolved "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz#e5093d9601c2829251258c0b9445d4d19fa9e7c9" integrity sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg== -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== +resolve-alpn@^1.2.0: + version "1.2.1" + resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" + integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== resolve-cwd@^3.0.0: version "3.0.0" @@ -10143,20 +10002,20 @@ resolve-dependency-path@^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" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve.exports@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" - integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== +resolve.exports@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" + integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== resolve@^1.1.6, resolve@^1.10.0, resolve@^1.20.0, resolve@^1.21.0, resolve@^1.22.0, resolve@^1.22.1: version "1.22.1" @@ -10167,12 +10026,12 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.20.0, resolve@^1.21.0, resolve@^1.22 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -responselike@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== +responselike@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz#20decb6c298aff0dbee1c355ca95461d42823626" + integrity sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg== dependencies: - lowercase-keys "^1.0.0" + lowercase-keys "^3.0.0" restore-cursor@^3.1.0: version "3.1.0" @@ -10211,6 +10070,13 @@ rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@^4.4.1: + version "4.4.1" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz#bd33364f67021c5b79e93d7f4fa0568c7c21b755" + integrity sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og== + dependencies: + glob "^9.2.0" + run-async@^2.4.0: version "2.4.1" resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" @@ -10233,23 +10099,30 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rxjs@^6.6.0: +rxjs@^6.5.4: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +rxjs@^7.5.5: + version "7.8.0" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" + integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== + dependencies: + tslib "^2.1.0" safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + safe-regex-test@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" @@ -10264,7 +10137,7 @@ safe-stable-stringify@^2.2.0: resolved "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz#ec7b037768098bf65310d1d64370de0dc02353aa" integrity sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA== -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -10283,22 +10156,15 @@ sax@1.2.1: sax@>=0.6.0, sax@^1.2.4: version "1.2.4" - resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" + resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -semver-diff@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" - integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== +semver-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5" + integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA== dependencies: - semver "^6.3.0" + semver "^7.3.5" semver-intersect@^1.4.0: version "1.4.0" @@ -10312,19 +10178,26 @@ semver-utils@^1.1.4: resolved "https://registry.npmjs.org/semver-utils/-/semver-utils-1.1.4.tgz#cf0405e669a57488913909fc1c3f29bf2a4871e2" integrity sha512-EjnoLE5OGmDAVV/8YDoN5KiajNadjzIp9BAHOhYeQHt7j0UWxjmgsx4YD48wp4Ue1Qogq38F1GNUJNqF1kKKxA== -"semver@2 || 3 || 4 || 5", semver@^5.0.0, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.0.0, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.x, semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: +semver@7.3.4: + version "7.3.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" + +semver@7.3.8, semver@7.x, semver@^7.0.0, semver@^7.1.1, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: version "7.3.8" resolved "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" -semver@^6.0.0, semver@^6.1.1, semver@^6.2.0, semver@^6.3.0: +semver@^6.0.0, semver@^6.1.1, semver@^6.3.0: version "6.3.0" resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -10406,11 +10279,20 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: +signal-exit@3.0.7, signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +sigstore@^1.0.0: + version "1.2.0" + resolved "https://registry.npmjs.org/sigstore/-/sigstore-1.2.0.tgz#ae5b31dac75c2d31e7873897e2862f0d0b205bce" + integrity sha512-Fr9+W1nkBSIZCkJQR7jDn/zI0UXNsVpp+7mDQkCnZOIxG9p6yNXBx9xntHsfUyYHE55XDkkVV3+rYbrkzAeesA== + dependencies: + "@sigstore/protobuf-specs" "^0.1.0" + make-fetch-happen "^11.0.1" + tuf-js "^1.0.0" + sinon@^11.1.1: version "11.1.2" resolved "https://registry.npmjs.org/sinon/-/sinon-11.1.2.tgz#9e78850c747241d5c59d1614d8f9cbe8840e8674" @@ -10440,16 +10322,16 @@ sisteransi@^1.0.5: resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== +slash@3.0.0, slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + slash@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - slice-ansi@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" @@ -10459,7 +10341,7 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -slide@^1.1.6, slide@~1.1.3: +slide@~1.1.3: version "1.1.6" resolved "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" integrity sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw== @@ -10478,15 +10360,6 @@ socks-proxy-agent@5, socks-proxy-agent@^5.0.0: debug "4" socks "^2.3.3" -socks-proxy-agent@^6.0.0: - version "6.2.1" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz#2687a31f9d7185e38d530bef1944fe1f1496d6ce" - integrity sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ== - dependencies: - agent-base "^6.0.2" - debug "^4.3.3" - socks "^2.6.2" - socks-proxy-agent@^7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz#dc069ecf34436621acb41e3efa66ca1b5fed15b6" @@ -10532,7 +10405,15 @@ source-map-js@^1.0.2: resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== -source-map-support@^0.5.21, source-map-support@^0.5.6: +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" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@^0.5.21: version "0.5.21" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -10545,15 +10426,12 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3: - version "0.7.4" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" - integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== - -spawn-please@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/spawn-please/-/spawn-please-1.0.0.tgz#51cf5831ba2bf418aa3ec2102d40b75cfd48b6f2" - integrity sha512-Kz33ip6NRNKuyTRo3aDWyWxeGeM0ORDO552Fs6E1nj4pLWPkl37SrRtTnq+MEopVaqgmaO6bAvVS+v64BJ5M/A== +spawn-please@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/spawn-please/-/spawn-please-2.0.1.tgz#13d76566ca5e9ac0537a90853ca4f53f27489ae0" + integrity sha512-W+cFbZR2q2mMTfjz5ZGvhBAiX+e/zczFCNlbS9mxiSdYswBXwUuBUT+a0urH+xZZa8f/bs0mXHyZsZHR9hKogA== + dependencies: + cross-spawn "^7.0.3" spawn-wrap@^2.0.0: version "2.0.0" @@ -10621,11 +10499,6 @@ spdx-satisfies@^4.0.0: spdx-expression-parse "^3.0.0" spdx-ranges "^2.0.0" -split-on-first@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" - integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== - split2@^3.0.0: version "3.2.2" resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" @@ -10645,35 +10518,20 @@ sprintf-js@~1.0.2: resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -sshpk@^1.7.0: - version "1.17.0" - resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" - integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^8.0.0, ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== - dependencies: - minipass "^3.1.1" - -ssri@^9.0.0, ssri@^9.0.1: +ssri@9.0.1, ssri@^9.0.0, ssri@^9.0.1: version "9.0.1" resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057" integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q== dependencies: minipass "^3.1.1" +ssri@^10.0.0, ssri@^10.0.1: + version "10.0.1" + resolved "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz#c61f85894bbc6929fc3746f05e31cf5b44c030d5" + integrity sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw== + dependencies: + minipass "^4.0.0" + stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -10715,11 +10573,6 @@ streamroller@^3.1.5: debug "^4.3.4" fs-extra "^8.1.0" -strict-uri-encode@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" - integrity sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ== - string-length@^4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" @@ -10728,7 +10581,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -string-width@*, string-width@^1.0.1, "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: +string-width@*, string-width@^1.0.1, "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3, string-width@^5.0.1, string-width@^5.1.2: version "4.2.3" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -10807,6 +10660,13 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-ansi@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" + integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== + dependencies: + ansi-regex "^6.0.1" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -10834,12 +10694,17 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1, strip-json-comments@~3.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@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.0.tgz#ec101b766476a703031bc607e3c712569de2aa06" + integrity sha512-V1LGY4UUo0jgwC+ELQ2BNWfPa17TIuwBLg+j1AA/9RPzKINl1lhxVEu2r+ZTTO8aetIsUzE5Qj6LMSBkoGYKKw== + 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== -strong-log-transformer@^2.1.0: +strong-log-transformer@2.1.0, strong-log-transformer@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== @@ -10863,7 +10728,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: +supports-color@^7.1.0, supports-color@^7.2.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== @@ -10877,24 +10742,11 @@ supports-color@^8.0.0: dependencies: has-flag "^4.0.0" -supports-hyperlinks@^2.0.0: - version "2.3.0" - resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" - integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" - supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - table@*, table@^6.0.9, table@^6.8.1: version "6.8.1" resolved "https://registry.npmjs.org/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" @@ -10911,7 +10763,7 @@ tapable@^2.2.0: resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar-stream@^2.2.0: +tar-stream@^2.2.0, tar-stream@~2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== @@ -10922,20 +10774,19 @@ tar-stream@^2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^4.4.12: - version "4.4.19" - resolved "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" - integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== +tar@6.1.11: + version "6.1.11" + resolved "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" + integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== dependencies: - chownr "^1.1.4" - fs-minipass "^1.2.7" - minipass "^2.9.0" - minizlib "^1.3.3" - mkdirp "^0.5.5" - safe-buffer "^5.2.1" - yallist "^3.1.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" -tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: +tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: version "6.1.13" resolved "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== @@ -10947,7 +10798,7 @@ tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: mkdirp "^1.0.3" yallist "^4.0.0" -temp-dir@^1.0.0: +temp-dir@1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" integrity sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ== @@ -10957,17 +10808,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-write@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" - integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== - dependencies: - graceful-fs "^4.1.15" - is-stream "^2.0.0" - make-dir "^3.0.0" - temp-dir "^1.0.0" - uuid "^3.3.2" - temp@~0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/temp/-/temp-0.4.0.tgz#671ad63d57be0fe9d7294664b3fc400636678a60" @@ -10981,13 +10821,16 @@ tempfile@^3.0.0: temp-dir "^2.0.0" uuid "^3.3.2" -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== +tempy@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/tempy/-/tempy-1.0.0.tgz#4f192b3ee3328a2684d0e3fc5c491425395aab65" + integrity sha512-eLXG5B1G0mRPHmgH2WydPl5v4jH35qEn3y/rA/aahKhIa91Pn119SsU7n7v/433gtT9ONzC8ISvNHIh2JSTm0w== dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" + del "^6.0.0" + is-stream "^2.0.0" + temp-dir "^2.0.0" + type-fest "^0.16.0" + unique-string "^2.0.0" test-exclude@^6.0.0: version "6.0.0" @@ -11008,11 +10851,6 @@ text-table@^0.2.0, text-table@~0.2.0: resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -throat@^6.0.1: - version "6.0.2" - resolved "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" - integrity sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ== - through2@^2.0.0: version "2.0.5" resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -11053,6 +10891,13 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" +tmp@~0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== + dependencies: + rimraf "^3.0.0" + tmpl@1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" @@ -11063,11 +10908,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-readable-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" - integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -11080,31 +10920,6 @@ toidentifier@1.0.1: resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== -tough-cookie@^4.0.0: - version "4.1.2" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" - integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -11125,24 +10940,29 @@ treeverse@^2.0.0: resolved "https://registry.npmjs.org/treeverse/-/treeverse-2.0.0.tgz#036dcef04bc3fd79a9b79a68d4da03e882d8a9ca" integrity sha512-N5gJCkLu1aXccpOTtqV6ddSEi6ZmGkh3hjmbu1IjcavJK4qyOVQmi0myQKM7z5jVGmD68SJoliaVrMmVObhj6A== +treeverse@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz#dd82de9eb602115c6ebd77a574aae67003cb48c8" + integrity sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ== + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -ts-jest@^27, ts-jest@^27.1.5: - version "27.1.5" - resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-27.1.5.tgz#0ddf1b163fbaae3d5b7504a1e65c914a95cff297" - integrity sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA== +ts-jest@^29, ts-jest@^29.1.0: + version "29.1.0" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.0.tgz#4a9db4104a49b76d2b368ea775b6c9535c603891" + integrity sha512-ZhNr7Z4PcYa+JjMl62ir+zPiNJfXJN6E8hSLnaUKhOgqcn8vb3e537cpkd0FuAfRK3sR1LSqM1MOhliXNgOFPA== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" - jest-util "^27.0.0" - json5 "2.x" + jest-util "^29.0.0" + json5 "^2.2.3" lodash.memoize "4.x" make-error "1.x" semver "7.x" - yargs-parser "20.x" + yargs-parser "^21.0.1" ts-mock-imports@^1.3.8: version "1.3.8" @@ -11178,12 +10998,21 @@ tsconfig-paths@^3.10.1, tsconfig-paths@^3.14.1: minimist "^1.2.6" strip-bom "^3.0.0" +tsconfig-paths@^4.1.2: + version "4.2.0" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c" + integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg== + dependencies: + json5 "^2.2.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + tslib@^1.8.1, tslib@^1.9.0: 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.1, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0: version "2.5.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== @@ -11195,23 +11024,19 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== +tuf-js@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.2.tgz#09ca04a89783b739e67dd796f6562e3940628aea" + integrity sha512-gBfbnS6khluxjvoFCpRV0fhWT265xNfpiNXOcBX0Ze6HGbPhe93UG5V5DdKcgm/aXsMadnY76l/h6j63GmJS5g== dependencies: - safe-buffer "^5.0.1" + "@tufjs/models" "1.0.1" + make-fetch-happen "^11.0.1" tunnel@^0.0.6: version "0.0.6" resolved "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -11231,6 +11056,11 @@ type-detect@4.0.8, 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-fest@^0.16.0: + version "0.16.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860" + integrity sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -11261,6 +11091,16 @@ type-fest@^0.8.0, type-fest@^0.8.1: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== +type-fest@^1.0.1: + version "1.4.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== + +type-fest@^2.13.0: + version "2.19.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" + integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== + type@^1.0.1: version "1.2.0" resolved "https://registry.npmjs.org/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" @@ -11306,16 +11146,16 @@ typescript-json-schema@^0.55.0: typescript "~4.8.2" yargs "^17.1.1" +"typescript@^3 || ^4", typescript@^4.5.5, typescript@~4.9.5: + version "4.9.5" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + typescript@^3.9.10, typescript@^3.9.5, typescript@^3.9.7, typescript@~3.9.10: version "3.9.10" resolved "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== -typescript@^4.5.5, typescript@~4.9.5: - version "4.9.5" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== - typescript@next: version "5.1.0-dev.20230307" resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.0-dev.20230307.tgz#64cde6497b61b894af9b9a0547ee273f11bd34ce" @@ -11341,16 +11181,6 @@ uglify-js@^3.1.4: resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== -uid-number@0.0.6: - version "0.0.6" - resolved "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha512-c461FXIljswCuscZn67xq9PpszkPT6RjheWFQTgCyabJrTUozElanb0YEqv2UGgk247YpcJkFBuSGNvBlpXM9w== - -umask@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" - integrity sha512-lE/rxOhmiScJu9L6RTNVgB/zZbF+vGC0/p6D3xnkAePI2o0sMyFG966iR5Ki50OI/0mNi2yaRnxfLsPmEZF/JA== - unbox-primitive@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" @@ -11366,13 +11196,6 @@ uniq@^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@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - unique-filename@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" @@ -11380,12 +11203,12 @@ unique-filename@^2.0.0: dependencies: unique-slug "^3.0.0" -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== +unique-filename@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea" + integrity sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g== dependencies: - imurmurhash "^0.1.4" + unique-slug "^4.0.0" unique-slug@^3.0.0: version "3.0.0" @@ -11394,6 +11217,13 @@ unique-slug@^3.0.0: dependencies: imurmurhash "^0.1.4" +unique-slug@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz#6bae6bb16be91351badd24cdce741f892a6532e3" + integrity sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ== + dependencies: + imurmurhash "^0.1.4" + unique-string@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" @@ -11401,6 +11231,13 @@ unique-string@^2.0.0: dependencies: crypto-random-string "^2.0.0" +unique-string@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a" + integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ== + dependencies: + crypto-random-string "^4.0.0" + universal-user-agent@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" @@ -11411,11 +11248,6 @@ universalify@^0.1.0: resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - universalify@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -11426,7 +11258,12 @@ unpipe@1.0.0: resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -upath@^2.0.1: +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +upath@2.0.1, upath@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== @@ -11439,25 +11276,25 @@ update-browserslist-db@^1.0.10: escalade "^3.1.1" picocolors "^1.0.0" -update-notifier@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9" - integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw== - dependencies: - boxen "^5.0.0" - chalk "^4.1.0" - configstore "^5.0.1" - has-yarn "^2.1.0" - import-lazy "^2.1.0" - is-ci "^2.0.0" +update-notifier@^6.0.2: + version "6.0.2" + resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-6.0.2.tgz#a6990253dfe6d5a02bd04fbb6a61543f55026b60" + integrity sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og== + dependencies: + boxen "^7.0.0" + chalk "^5.0.1" + configstore "^6.0.0" + has-yarn "^3.0.0" + import-lazy "^4.0.0" + is-ci "^3.0.1" is-installed-globally "^0.4.0" - is-npm "^5.0.0" - is-yarn-global "^0.3.0" - latest-version "^5.1.0" - pupa "^2.1.1" - semver "^7.3.4" - semver-diff "^3.1.1" - xdg-basedir "^4.0.0" + is-npm "^6.0.0" + is-yarn-global "^0.4.0" + latest-version "^7.0.0" + pupa "^3.1.0" + semver "^7.3.7" + semver-diff "^4.0.0" + xdg-basedir "^5.1.0" uri-js@^4.2.2: version "4.4.1" @@ -11466,21 +11303,6 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== - dependencies: - prepend-http "^2.0.0" - -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - url@0.10.3: version "0.10.3" resolved "https://registry.npmjs.org/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" @@ -11499,13 +11321,6 @@ util-extend@^1.0.1: resolved "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" integrity sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA== -util-promisify@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" - integrity sha512-K+5eQPYs14b3+E+hmE2J6gCZ4JmMl9DbYS6BeP2CHq6WMuNxErxf5B/n0fz85L8zUuoO6rIzNNmIQDu/j+1OcA== - dependencies: - object.getownpropertydescriptors "^2.0.3" - util@^0.12.4: version "0.12.5" resolved "https://registry.npmjs.org/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" @@ -11522,36 +11337,36 @@ uuid@8.0.0: resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== +uuid@8.3.2, uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + 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== -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - v8-compile-cache-lib@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== -v8-compile-cache@^2.0.3: +v8-compile-cache@2.3.0, v8-compile-cache@^2.0.3: version "2.3.0" resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== -v8-to-istanbul@^8.1.0: - version "8.1.1" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" - integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== +v8-to-istanbul@^9.0.1: + version "9.1.0" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265" + integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA== dependencies: + "@jridgewell/trace-mapping" "^0.3.12" "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" - source-map "^0.7.3" -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: +validate-npm-package-license@3.0.4, validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -11559,6 +11374,13 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +validate-npm-package-name@4.0.0, validate-npm-package-name@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" + integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== + dependencies: + builtins "^5.0.0" + validate-npm-package-name@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" @@ -11566,10 +11388,10 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" -validate-npm-package-name@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" - integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== +validate-npm-package-name@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz#f16afd48318e6f90a1ec101377fa0384cfc8c713" + integrity sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ== dependencies: builtins "^5.0.0" @@ -11578,15 +11400,6 @@ vandium-utils@^1.1.1: resolved "https://registry.npmjs.org/vandium-utils/-/vandium-utils-1.2.0.tgz#44735de4b7641a05de59ebe945f174e582db4f59" integrity sha512-yxYUDZz4BNo0CW/z5w4mvclitt5zolY7zjW97i6tTE+sU63cxYs1A6Bl9+jtIQa3+0hkeqY87k+7ptRvmeHe3g== -verror@1.10.0: - version "1.10.0" - resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - vm2@^3.9.8: version "3.9.14" resolved "https://registry.npmjs.org/vm2/-/vm2-3.9.14.tgz#964042b474cf1e6e4f475a39144773cdb9deb734" @@ -11595,20 +11408,6 @@ vm2@^3.9.8: acorn "^8.7.0" acorn-walk "^8.2.0" -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - walk-up-path@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e" @@ -11619,7 +11418,7 @@ walkdir@^0.4.1: resolved "https://registry.npmjs.org/walkdir/-/walkdir-0.4.1.tgz#dc119f83f4421df52e3061e514228a2db20afa39" integrity sha512-3eBwRyEln6E1MSzcxcVpQIhRG8Q1jLvEqRmCZqS3dsfXEDR/AhOF4d+jHg1qvDCpYaVRZjENPQyrVxAkQqxPgQ== -walker@^1.0.7: +walker@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== @@ -11638,28 +11437,6 @@ webidl-conversions@^3.0.0: resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -11668,15 +11445,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -11705,7 +11473,7 @@ which-typed-array@^1.1.2, which-typed-array@^1.1.9: has-tostringtag "^1.0.0" is-typed-array "^1.1.10" -which@^1.2.9, which@^1.3.1: +which@^1.2.9: version "1.3.1" resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -11719,6 +11487,13 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" +which@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/which/-/which-3.0.0.tgz#a9efd016db59728758a390d23f1687b6e8f59f8e" + integrity sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ== + dependencies: + isexe "^2.0.0" + wide-align@^1.1.0, wide-align@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" @@ -11726,12 +11501,12 @@ wide-align@^1.1.0, wide-align@^1.1.5: dependencies: string-width "^1.0.2 || 2 || 3 || 4" -widest-line@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" - integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== +widest-line@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz#a0fc673aaba1ea6f0a0d35b3c2795c9a9cc2ebf2" + integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig== dependencies: - string-width "^4.0.0" + string-width "^5.0.1" word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" @@ -11766,11 +11541,28 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.0.1: + version "8.1.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +write-file-atomic@4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz#9faa33a964c1c85ff6f849b80b42a88c2c537c8f" + integrity sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + write-file-atomic@^2.4.2: version "2.4.3" resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" @@ -11790,7 +11582,7 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -write-file-atomic@^4.0.0, write-file-atomic@^4.0.1: +write-file-atomic@^4.0.0, write-file-atomic@^4.0.1, write-file-atomic@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== @@ -11798,6 +11590,14 @@ write-file-atomic@^4.0.0, write-file-atomic@^4.0.1: imurmurhash "^0.1.4" signal-exit "^3.0.7" +write-file-atomic@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz#54303f117e109bf3d540261125c8ea5a7320fab0" + integrity sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + write-json-file@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" @@ -11822,7 +11622,7 @@ write-json-file@^4.3.0: sort-keys "^4.0.0" write-file-atomic "^3.0.0" -write-pkg@^4.0.0: +write-pkg@4.0.0, write-pkg@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== @@ -11831,15 +11631,10 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -ws@^7.4.6: - version "7.5.9" - resolved "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== +xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9" + integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ== xml-js@^1.6.11: version "1.6.11" @@ -11848,11 +11643,6 @@ xml-js@^1.6.11: dependencies: sax "^1.2.4" -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - xml2js@0.4.19: version "0.4.19" resolved "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" @@ -11887,11 +11677,6 @@ xmlbuilder@~9.0.1: resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" integrity sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ== -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - xregexp@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" @@ -11912,7 +11697,7 @@ y18n@^5.0.5: resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== @@ -11942,10 +11727,10 @@ yargs-parser@20.2.4: resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== -yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3: - version "20.2.9" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== +yargs-parser@21.1.1, yargs-parser@^21.0.1, yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-parser@^18.1.2: version "18.1.3" @@ -11955,10 +11740,23 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^21.1.1: - version "21.1.1" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" - integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== +yargs-parser@^20.2.2, yargs-parser@^20.2.3: + version "20.2.9" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@16.2.0, yargs@^16.0.0, yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" yargs@^15.0.2: version "15.4.1" @@ -11977,20 +11775,7 @@ yargs@^15.0.2: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^16.0.0, yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yargs@^17.1.1, yargs@^17.7.1: +yargs@^17.1.1, yargs@^17.3.1, yargs@^17.6.2, yargs@^17.7.1: version "17.7.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==