diff --git a/packages/@aws-cdk/cloudformation-diff/package.json b/packages/@aws-cdk/cloudformation-diff/package.json index dc8dd140b8a04..64629c4a9c32c 100644 --- a/packages/@aws-cdk/cloudformation-diff/package.json +++ b/packages/@aws-cdk/cloudformation-diff/package.json @@ -23,8 +23,8 @@ }, "license": "Apache-2.0", "dependencies": { - "@aws-cdk/aws-service-spec": "^0.0.32", - "@aws-cdk/service-spec-types": "^0.0.32", + "@aws-cdk/aws-service-spec": "^0.0.33", + "@aws-cdk/service-spec-types": "^0.0.33", "chalk": "^4", "diff": "^5.1.0", "fast-deep-equal": "^3.1.3", diff --git a/packages/@aws-cdk/integ-runner/package.json b/packages/@aws-cdk/integ-runner/package.json index b36f93b472583..2c67dec4191bd 100644 --- a/packages/@aws-cdk/integ-runner/package.json +++ b/packages/@aws-cdk/integ-runner/package.json @@ -74,7 +74,7 @@ "@aws-cdk/cloud-assembly-schema": "0.0.0", "@aws-cdk/cloudformation-diff": "0.0.0", "@aws-cdk/cx-api": "0.0.0", - "@aws-cdk/aws-service-spec": "^0.0.32", + "@aws-cdk/aws-service-spec": "^0.0.33", "cdk-assets": "0.0.0", "@aws-cdk/cdk-cli-wrapper": "0.0.0", "aws-cdk": "0.0.0", diff --git a/packages/aws-cdk-lib/aws-s3express/.jsiirc.json b/packages/aws-cdk-lib/aws-s3express/.jsiirc.json new file mode 100644 index 0000000000000..f1abcc3f196fe --- /dev/null +++ b/packages/aws-cdk-lib/aws-s3express/.jsiirc.json @@ -0,0 +1,13 @@ +{ + "targets": { + "java": { + "package": "software.amazon.awscdk.services.s3express" + }, + "dotnet": { + "package": "Amazon.CDK.AWS.S3Express" + }, + "python": { + "module": "aws_cdk.aws_s3express" + } + } +} diff --git a/packages/aws-cdk-lib/aws-s3express/README.md b/packages/aws-cdk-lib/aws-s3express/README.md new file mode 100644 index 0000000000000..b3353a2a53015 --- /dev/null +++ b/packages/aws-cdk-lib/aws-s3express/README.md @@ -0,0 +1,39 @@ +# AWS::S3Express Construct Library + + +--- + +![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge) + +> All classes with the `Cfn` prefix in this module ([CFN Resources]) are always stable and safe to use. +> +> [CFN Resources]: https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib + +--- + + + +This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. + +```ts nofixture +import * as s3express from 'aws-cdk-lib/aws-s3express'; +``` + + + +There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. Here are some suggestions on how to proceed: + +- Search [Construct Hub for S3Express construct libraries](https://constructs.dev/search?q=s3express) +- Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::S3Express resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_S3Express.html) directly. + + + + +There are no hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. +However, you can still use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, and use this service exactly as you would using CloudFormation directly. + +For more information on the resources and properties available for this service, see the [CloudFormation documentation for AWS::S3Express](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_S3Express.html). + +(Read the [CDK Contributing Guide](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and submit an RFC if you are interested in contributing to this construct library.) + + diff --git a/packages/aws-cdk-lib/aws-s3express/index.ts b/packages/aws-cdk-lib/aws-s3express/index.ts new file mode 100644 index 0000000000000..f41a696fd204d --- /dev/null +++ b/packages/aws-cdk-lib/aws-s3express/index.ts @@ -0,0 +1 @@ +export * from './lib'; diff --git a/packages/aws-cdk-lib/aws-s3express/lib/index.ts b/packages/aws-cdk-lib/aws-s3express/lib/index.ts new file mode 100644 index 0000000000000..1564cb049dc98 --- /dev/null +++ b/packages/aws-cdk-lib/aws-s3express/lib/index.ts @@ -0,0 +1,2 @@ +// AWS::S3Express Cloudformation Resources +export * from './s3express.generated'; diff --git a/packages/aws-cdk-lib/index.ts b/packages/aws-cdk-lib/index.ts index c38671acddfdc..968ccfcdddbff 100644 --- a/packages/aws-cdk-lib/index.ts +++ b/packages/aws-cdk-lib/index.ts @@ -210,6 +210,7 @@ export * as aws_s3 from './aws-s3'; export * as aws_s3_assets from './aws-s3-assets'; export * as aws_s3_deployment from './aws-s3-deployment'; export * as aws_s3_notifications from './aws-s3-notifications'; +export * as aws_s3express from './aws-s3express'; export * as aws_s3objectlambda from './aws-s3objectlambda'; export * as aws_s3outposts from './aws-s3outposts'; export * as aws_sagemaker from './aws-sagemaker'; diff --git a/packages/aws-cdk-lib/package.json b/packages/aws-cdk-lib/package.json index f2c3afd3a8cd6..18e02bc9a6ce8 100644 --- a/packages/aws-cdk-lib/package.json +++ b/packages/aws-cdk-lib/package.json @@ -133,7 +133,7 @@ "yaml": "1.10.2" }, "devDependencies": { - "@aws-cdk/aws-service-spec": "^0.0.32", + "@aws-cdk/aws-service-spec": "^0.0.33", "@aws-cdk/cdk-build-tools": "0.0.0", "@aws-cdk/custom-resource-handlers": "0.0.0", "@aws-cdk/pkglint": "0.0.0", @@ -425,6 +425,7 @@ "./aws-s3-assets": "./aws-s3-assets/index.js", "./aws-s3-deployment": "./aws-s3-deployment/index.js", "./aws-s3-notifications": "./aws-s3-notifications/index.js", + "./aws-s3express": "./aws-s3express/index.js", "./aws-s3objectlambda": "./aws-s3objectlambda/index.js", "./aws-s3outposts": "./aws-s3outposts/index.js", "./aws-sagemaker": "./aws-sagemaker/index.js", diff --git a/packages/aws-cdk-lib/scripts/scope-map.json b/packages/aws-cdk-lib/scripts/scope-map.json index fbb975fb1936d..7082492d74e38 100644 --- a/packages/aws-cdk-lib/scripts/scope-map.json +++ b/packages/aws-cdk-lib/scripts/scope-map.json @@ -570,6 +570,9 @@ "aws-s3": [ "AWS::S3" ], + "aws-s3express": [ + "AWS::S3Express" + ], "aws-s3objectlambda": [ "AWS::S3ObjectLambda" ], diff --git a/tools/@aws-cdk/spec2cdk/package.json b/tools/@aws-cdk/spec2cdk/package.json index 10b4e91f09c65..32a8585945e6e 100644 --- a/tools/@aws-cdk/spec2cdk/package.json +++ b/tools/@aws-cdk/spec2cdk/package.json @@ -32,9 +32,9 @@ }, "license": "Apache-2.0", "dependencies": { - "@aws-cdk/aws-service-spec": "^0.0.32", - "@aws-cdk/service-spec-importers": "^0.0.8", - "@aws-cdk/service-spec-types": "^0.0.32", + "@aws-cdk/aws-service-spec": "^0.0.33", + "@aws-cdk/service-spec-importers": "^0.0.9", + "@aws-cdk/service-spec-types": "^0.0.33", "@cdklabs/tskb": "^0.0.3", "@cdklabs/typewriter": "^0.0.3", "camelcase": "^6", diff --git a/yarn.lock b/yarn.lock index 78304c02fad44..b9f1491dcb6ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -56,12 +56,12 @@ resolved "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.0.1.tgz#6dc9b7cdb22ff622a7176141197962360c33e9ac" integrity sha512-DDt4SLdLOwWCjGtltH4VCST7hpOI5DzieuhGZsBpZ+AgJdSI2GCjklCXm0GCTwJG/SolkL5dtQXyUKgg9luBDg== -"@aws-cdk/aws-service-spec@^0.0.32": - version "0.0.32" - resolved "https://registry.npmjs.org/@aws-cdk/aws-service-spec/-/aws-service-spec-0.0.32.tgz#62ccf477e252ec2abb6014adb877279612dbc15d" - integrity sha512-CuqaM4IWszz+vhapYiXP6GCJhOkJWIjJvFHAOWp+Bef21YVPFjajK6tPVFg7/7J9UJMVqe9Po6PjXFWItqAwGw== +"@aws-cdk/aws-service-spec@^0.0.33": + version "0.0.33" + resolved "https://registry.npmjs.org/@aws-cdk/aws-service-spec/-/aws-service-spec-0.0.33.tgz#65f426e956b199d477baa8ff38f2630e39eecdd9" + integrity sha512-8YFeFWfvlZiwl7BSU4dAoVmt79d+mevzul6io5Javjm1uWy9g8GEHxJHOOdGAdk/tZ9K20DxmDy9NiMb2bCbww== dependencies: - "@aws-cdk/service-spec-types" "^0.0.32" + "@aws-cdk/service-spec-types" "^0.0.33" "@cdklabs/tskb" "^0.0.3" "@aws-cdk/lambda-layer-kubectl-v24@^2.0.242": @@ -69,33 +69,26 @@ resolved "https://registry.npmjs.org/@aws-cdk/lambda-layer-kubectl-v24/-/lambda-layer-kubectl-v24-2.0.242.tgz#4273a5ad7714f933a7eba155eb9280823086db71" integrity sha512-7/wIOo685tmrEe4hh6zqDELhBZh5OQGf3Hd2FU2Vnwy2ZubW8qTmEw5gqJCsCrGKeYDoa1BcVhDRZ/nzjkaqyA== -"@aws-cdk/service-spec-importers@^0.0.8": - version "0.0.8" - resolved "https://registry.npmjs.org/@aws-cdk/service-spec-importers/-/service-spec-importers-0.0.8.tgz#762fde4ed53999780398e564f835ab35585b193c" - integrity sha512-o54tGGwgau5iUDdZTnfusI7gTIqz13fV9DjuB6I7yLNVOhx+axxf6rDUhOThOzTN75n4dHGMB7LlLqF6vn5XZQ== +"@aws-cdk/service-spec-importers@^0.0.9": + version "0.0.9" + resolved "https://registry.npmjs.org/@aws-cdk/service-spec-importers/-/service-spec-importers-0.0.9.tgz#4fbc483e023dfe465e99ead3998b46abad0b541d" + integrity sha512-Y1dNhHDrjPrmnu7sy1M3A4UK70MsD+786OTyouLELOIzUxRlUq+S4rRd/BKOzOJvzHcloPuOzViWlLahRu7VnQ== dependencies: - "@aws-cdk/service-spec-types" "^0.0.31" + "@aws-cdk/service-spec-types" "^0.0.33" "@cdklabs/tskb" "^0.0.3" ajv "^6" canonicalize "^2.0.0" chalk "^4" commander "^11.1.0" fast-json-patch "^3.1.1" - fs-extra "^11.1.1" + fs-extra "^11.2.0" glob "^8" sort-json "^2.0.1" -"@aws-cdk/service-spec-types@^0.0.31": - version "0.0.31" - resolved "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.31.tgz#66b31193740c880810ae401826370b24c786f97e" - integrity sha512-Fzcfyi49Jr4+BrICfAt5K7pViovJNRG0W+/iSOFpQMFGQrK3DEtAGVVwy26ZFVJHWtUBuG5Fqhqs+DDJpsxeeA== - dependencies: - "@cdklabs/tskb" "^0.0.3" - -"@aws-cdk/service-spec-types@^0.0.32": - version "0.0.32" - resolved "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.32.tgz#cade90f4654d6bf1f5c3ef9fd297cb0544774abb" - integrity sha512-iNrBA8U85N3+7Nq9nSxn15f800iDjS3g2MU02kNTY7KEKhqRP3vohzbzPJW0m/wypUyIUOcjxbQ0v/hHEp9rLg== +"@aws-cdk/service-spec-types@^0.0.33": + version "0.0.33" + resolved "https://registry.npmjs.org/@aws-cdk/service-spec-types/-/service-spec-types-0.0.33.tgz#a1a0e53f551f4270c0a4d7f08d506783812e67c8" + integrity sha512-fTavmsR2lMfl3TJ3RAyWpopik1N67TGGHD62i5p7JroiAqiaXPRQvBkGrr7MubvtqNhcp2DK2Hwa88xRdk+xFw== dependencies: "@cdklabs/tskb" "^0.0.3" @@ -8390,6 +8383,15 @@ fs-extra@^11.1.0, fs-extra@^11.1.1: jsonfile "^6.0.1" universalify "^2.0.0" +fs-extra@^11.2.0: + version "11.2.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" + integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== + 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"