aws-cdk-lib 2.159.1__py3-none-any.whl → 2.161.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +281 -33
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.159.1.jsii.tgz → aws-cdk-lib@2.161.0.jsii.tgz} +0 -0
- aws_cdk/aws_apigatewayv2/__init__.py +13 -14
- aws_cdk/aws_autoscaling/__init__.py +2 -2
- aws_cdk/aws_b2bi/__init__.py +2283 -672
- aws_cdk/aws_batch/__init__.py +9 -5
- aws_cdk/aws_bedrock/__init__.py +52 -20
- aws_cdk/aws_cloudformation/__init__.py +9 -9
- aws_cdk/aws_cloudtrail/__init__.py +97 -183
- aws_cdk/aws_cloudwatch/__init__.py +38 -42
- aws_cdk/aws_codepipeline_actions/__init__.py +4 -4
- aws_cdk/aws_cognito/__init__.py +18 -0
- aws_cdk/aws_datasync/__init__.py +1 -1
- aws_cdk/aws_dynamodb/__init__.py +4 -4
- aws_cdk/aws_ec2/__init__.py +138 -12
- aws_cdk/aws_ecs/__init__.py +517 -6
- aws_cdk/aws_eks/__init__.py +118 -2
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +5 -3
- aws_cdk/aws_glue/__init__.py +386 -0
- aws_cdk/aws_iotfleetwise/__init__.py +49 -49
- aws_cdk/aws_iottwinmaker/__init__.py +4 -4
- aws_cdk/aws_iotwireless/__init__.py +2 -1
- aws_cdk/aws_kinesisfirehose/__init__.py +52 -76
- aws_cdk/aws_kms/__init__.py +4 -4
- aws_cdk/aws_lambda/__init__.py +385 -244
- aws_cdk/aws_logs/__init__.py +455 -24
- aws_cdk/aws_mediaconnect/__init__.py +6 -4
- aws_cdk/aws_medialive/__init__.py +36 -0
- aws_cdk/aws_organizations/__init__.py +4 -3
- aws_cdk/aws_pipes/__init__.py +2 -2
- aws_cdk/aws_quicksight/__init__.py +1086 -6
- aws_cdk/aws_rds/__init__.py +182 -3
- aws_cdk/aws_route53resolver/__init__.py +3 -17
- aws_cdk/aws_s3/__init__.py +24 -15
- aws_cdk/aws_s3_deployment/__init__.py +45 -0
- aws_cdk/aws_s3express/__init__.py +314 -4
- aws_cdk/aws_sagemaker/__init__.py +44 -4
- aws_cdk/aws_secretsmanager/__init__.py +14 -7
- aws_cdk/aws_securityhub/__init__.py +16 -14
- aws_cdk/aws_ses/__init__.py +52 -18
- aws_cdk/aws_sqs/__init__.py +16 -14
- aws_cdk/aws_ssm/__init__.py +6 -2
- aws_cdk/aws_stepfunctions/__init__.py +412 -32
- aws_cdk/aws_synthetics/__init__.py +46 -0
- aws_cdk/aws_waf/__init__.py +33 -22
- aws_cdk/aws_wafregional/__init__.py +36 -24
- aws_cdk/aws_workspacesweb/__init__.py +54 -3
- aws_cdk/cloud_assembly_schema/__init__.py +1304 -417
- aws_cdk/cloudformation_include/__init__.py +28 -0
- aws_cdk/cx_api/__init__.py +129 -0
- aws_cdk/pipelines/__init__.py +4 -4
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/METADATA +4 -4
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/RECORD +58 -58
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.159.1.dist-info → aws_cdk_lib-2.161.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_s3/__init__.py
CHANGED
|
@@ -183,8 +183,8 @@ To use a bucket in a different stack in the same CDK application, pass the objec
|
|
|
183
183
|
#
|
|
184
184
|
class Producer(Stack):
|
|
185
185
|
|
|
186
|
-
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
|
|
187
|
-
super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
|
|
186
|
+
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
|
|
187
|
+
super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
|
|
188
188
|
|
|
189
189
|
bucket = s3.Bucket(self, "MyBucket",
|
|
190
190
|
removal_policy=cdk.RemovalPolicy.DESTROY
|
|
@@ -195,8 +195,8 @@ class Producer(Stack):
|
|
|
195
195
|
# Stack that consumes the bucket
|
|
196
196
|
#
|
|
197
197
|
class Consumer(Stack):
|
|
198
|
-
def __init__(self, scope, id, *, userBucket, description=None, env=None, stackName=None, tags=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
|
|
199
|
-
super().__init__(scope, id, userBucket=userBucket, description=description, env=env, stackName=stackName, tags=tags, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
|
|
198
|
+
def __init__(self, scope, id, *, userBucket, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
|
|
199
|
+
super().__init__(scope, id, userBucket=userBucket, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
|
|
200
200
|
|
|
201
201
|
user = iam.User(self, "MyUser")
|
|
202
202
|
user_bucket.grant_read_write(user)
|
|
@@ -9426,13 +9426,15 @@ class CfnBucket(
|
|
|
9426
9426
|
) -> None:
|
|
9427
9427
|
'''Describes the default server-side encryption to apply to new objects in the bucket.
|
|
9428
9428
|
|
|
9429
|
-
If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.
|
|
9429
|
+
If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see `PutBucketEncryption <https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html>`_ .
|
|
9430
9430
|
.. epigraph::
|
|
9431
9431
|
|
|
9432
|
-
If you'
|
|
9432
|
+
- *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key ( ``aws/s3`` ) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
|
|
9433
|
+
- *Directory buckets* - Your SSE-KMS configuration can only support 1 `customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk>`_ per directory bucket for the lifetime of the bucket. `AWS managed key <https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk>`_ ( ``aws/s3`` ) isn't supported.
|
|
9434
|
+
- *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.
|
|
9433
9435
|
|
|
9434
|
-
:param sse_algorithm: Server-side encryption algorithm to use for the default encryption.
|
|
9435
|
-
:param kms_master_key_id: AWS Key Management Service (KMS) customer
|
|
9436
|
+
:param sse_algorithm: Server-side encryption algorithm to use for the default encryption. .. epigraph:: For directory buckets, there are only two supported values for server-side encryption: ``AES256`` and ``aws:kms`` .
|
|
9437
|
+
:param kms_master_key_id: AWS Key Management Service (KMS) customer managed key ID to use for the default encryption. .. epigraph:: - *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse`` . - *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` . You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key. - Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab`` - Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`` - Key Alias: ``alias/alias-name`` If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see `Using encryption for cross-account operations <https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy>`_ . .. epigraph:: - *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then AWS KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log. - *Directory buckets* - When you specify an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk>`_ for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported. > Amazon S3 only supports symmetric encryption KMS keys. For more information, see `Asymmetric keys in AWS KMS <https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html>`_ in the *AWS Key Management Service Developer Guide* .
|
|
9436
9438
|
|
|
9437
9439
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html
|
|
9438
9440
|
:exampleMetadata: fixture=_generated
|
|
@@ -9464,6 +9466,10 @@ class CfnBucket(
|
|
|
9464
9466
|
def sse_algorithm(self) -> builtins.str:
|
|
9465
9467
|
'''Server-side encryption algorithm to use for the default encryption.
|
|
9466
9468
|
|
|
9469
|
+
.. epigraph::
|
|
9470
|
+
|
|
9471
|
+
For directory buckets, there are only two supported values for server-side encryption: ``AES256`` and ``aws:kms`` .
|
|
9472
|
+
|
|
9467
9473
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm
|
|
9468
9474
|
'''
|
|
9469
9475
|
result = self._values.get("sse_algorithm")
|
|
@@ -9472,9 +9478,12 @@ class CfnBucket(
|
|
|
9472
9478
|
|
|
9473
9479
|
@builtins.property
|
|
9474
9480
|
def kms_master_key_id(self) -> typing.Optional[builtins.str]:
|
|
9475
|
-
'''AWS Key Management Service (KMS) customer
|
|
9481
|
+
'''AWS Key Management Service (KMS) customer managed key ID to use for the default encryption.
|
|
9476
9482
|
|
|
9477
|
-
|
|
9483
|
+
.. epigraph::
|
|
9484
|
+
|
|
9485
|
+
- *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse`` .
|
|
9486
|
+
- *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` .
|
|
9478
9487
|
|
|
9479
9488
|
You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.
|
|
9480
9489
|
|
|
@@ -9482,12 +9491,11 @@ class CfnBucket(
|
|
|
9482
9491
|
- Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab``
|
|
9483
9492
|
- Key Alias: ``alias/alias-name``
|
|
9484
9493
|
|
|
9485
|
-
If you
|
|
9486
|
-
|
|
9487
|
-
If you are using encryption with cross-account or AWS service operations you must use a fully qualified KMS key ARN. For more information, see `Using encryption for cross-account operations <https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy>`_ .
|
|
9494
|
+
If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see `Using encryption for cross-account operations <https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy>`_ .
|
|
9488
9495
|
.. epigraph::
|
|
9489
9496
|
|
|
9490
|
-
|
|
9497
|
+
- *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then AWS KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log.
|
|
9498
|
+
- *Directory buckets* - When you specify an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk>`_ for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported. > Amazon S3 only supports symmetric encryption KMS keys. For more information, see `Asymmetric keys in AWS KMS <https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html>`_ in the *AWS Key Management Service Developer Guide* .
|
|
9491
9499
|
|
|
9492
9500
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid
|
|
9493
9501
|
'''
|
|
@@ -9524,7 +9532,8 @@ class CfnBucket(
|
|
|
9524
9532
|
|
|
9525
9533
|
.. epigraph::
|
|
9526
9534
|
|
|
9527
|
-
If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then AWS KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
|
|
9535
|
+
- *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then AWS KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
|
|
9536
|
+
- *Directory buckets* - When you specify an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk>`_ for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.
|
|
9528
9537
|
|
|
9529
9538
|
:param bucket_key_enabled: Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the ``BucketKeyEnabled`` element to ``true`` causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. For more information, see `Amazon S3 Bucket Keys <https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html>`_ in the *Amazon S3 User Guide* .
|
|
9530
9539
|
:param server_side_encryption_by_default: Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.
|
|
@@ -478,6 +478,27 @@ cdk.CfnOutput(self, "ObjectKey",
|
|
|
478
478
|
)
|
|
479
479
|
```
|
|
480
480
|
|
|
481
|
+
## Controlling the Output of Source Object Keys
|
|
482
|
+
|
|
483
|
+
By default, the keys of the source objects copied to the destination bucket are returned in the Data property of the custom resource. However, you can disable this behavior by setting the outputObjectKeys property to false. This is particularly useful when the number of objects is too large and might exceed the size limit of the responseData property.
|
|
484
|
+
|
|
485
|
+
```python
|
|
486
|
+
import aws_cdk as cdk
|
|
487
|
+
|
|
488
|
+
# destination_bucket: s3.Bucket
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
my_bucket_deployment = s3deploy.BucketDeployment(self, "DeployMeWithoutExtractingFilesOnDestination",
|
|
492
|
+
sources=[s3deploy.Source.asset(path.join(__dirname, "my-website"))],
|
|
493
|
+
destination_bucket=destination_bucket,
|
|
494
|
+
output_object_keys=False
|
|
495
|
+
)
|
|
496
|
+
|
|
497
|
+
cdk.CfnOutput(self, "ObjectKey",
|
|
498
|
+
value=cdk.Fn.select(0, my_bucket_deployment.object_keys)
|
|
499
|
+
)
|
|
500
|
+
```
|
|
501
|
+
|
|
481
502
|
## Notes
|
|
482
503
|
|
|
483
504
|
* This library uses an AWS CloudFormation custom resource which is about 10MiB in
|
|
@@ -619,6 +640,7 @@ class BucketDeployment(
|
|
|
619
640
|
log_retention: typing.Optional[_RetentionDays_070f99f0] = None,
|
|
620
641
|
memory_limit: typing.Optional[jsii.Number] = None,
|
|
621
642
|
metadata: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
643
|
+
output_object_keys: typing.Optional[builtins.bool] = None,
|
|
622
644
|
prune: typing.Optional[builtins.bool] = None,
|
|
623
645
|
retain_on_delete: typing.Optional[builtins.bool] = None,
|
|
624
646
|
role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -655,6 +677,7 @@ class BucketDeployment(
|
|
|
655
677
|
:param log_retention: The number of days that the lambda function's log events are kept in CloudWatch Logs. This is a legacy API and we strongly recommend you migrate to ``logGroup`` if you can. ``logGroup`` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it. Default: logs.RetentionDays.INFINITE
|
|
656
678
|
:param memory_limit: The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. If you are deploying large files, you will need to increase this number accordingly. Default: 128
|
|
657
679
|
:param metadata: User-defined object metadata to be set on all objects in the deployment. Default: - No user metadata is set
|
|
680
|
+
:param output_object_keys: If set to false, the custom resource will not send back the SourceObjectKeys. This is useful when you are facing the error ``Response object is too long`` See https://github.com/aws/aws-cdk/issues/28579 Default: true
|
|
658
681
|
:param prune: If this is set to false, files in the destination bucket that do not exist in the asset, will NOT be deleted during deployment (create/update). Default: true
|
|
659
682
|
:param retain_on_delete: If this is set to "false", the destination files will be deleted when the resource is deleted or the destination is updated. NOTICE: Configuring this to "false" might have operational implications. Please visit to the package documentation referred below to make sure you fully understand those implications. Default: true - when resource is deleted/updated, files are retained
|
|
660
683
|
:param role: Execution role associated with this function. Default: - A role is automatically created
|
|
@@ -693,6 +716,7 @@ class BucketDeployment(
|
|
|
693
716
|
log_retention=log_retention,
|
|
694
717
|
memory_limit=memory_limit,
|
|
695
718
|
metadata=metadata,
|
|
719
|
+
output_object_keys=output_object_keys,
|
|
696
720
|
prune=prune,
|
|
697
721
|
retain_on_delete=retain_on_delete,
|
|
698
722
|
role=role,
|
|
@@ -793,6 +817,7 @@ class BucketDeployment(
|
|
|
793
817
|
"log_retention": "logRetention",
|
|
794
818
|
"memory_limit": "memoryLimit",
|
|
795
819
|
"metadata": "metadata",
|
|
820
|
+
"output_object_keys": "outputObjectKeys",
|
|
796
821
|
"prune": "prune",
|
|
797
822
|
"retain_on_delete": "retainOnDelete",
|
|
798
823
|
"role": "role",
|
|
@@ -831,6 +856,7 @@ class BucketDeploymentProps:
|
|
|
831
856
|
log_retention: typing.Optional[_RetentionDays_070f99f0] = None,
|
|
832
857
|
memory_limit: typing.Optional[jsii.Number] = None,
|
|
833
858
|
metadata: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
859
|
+
output_object_keys: typing.Optional[builtins.bool] = None,
|
|
834
860
|
prune: typing.Optional[builtins.bool] = None,
|
|
835
861
|
retain_on_delete: typing.Optional[builtins.bool] = None,
|
|
836
862
|
role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -866,6 +892,7 @@ class BucketDeploymentProps:
|
|
|
866
892
|
:param log_retention: The number of days that the lambda function's log events are kept in CloudWatch Logs. This is a legacy API and we strongly recommend you migrate to ``logGroup`` if you can. ``logGroup`` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it. Default: logs.RetentionDays.INFINITE
|
|
867
893
|
:param memory_limit: The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. If you are deploying large files, you will need to increase this number accordingly. Default: 128
|
|
868
894
|
:param metadata: User-defined object metadata to be set on all objects in the deployment. Default: - No user metadata is set
|
|
895
|
+
:param output_object_keys: If set to false, the custom resource will not send back the SourceObjectKeys. This is useful when you are facing the error ``Response object is too long`` See https://github.com/aws/aws-cdk/issues/28579 Default: true
|
|
869
896
|
:param prune: If this is set to false, files in the destination bucket that do not exist in the asset, will NOT be deleted during deployment (create/update). Default: true
|
|
870
897
|
:param retain_on_delete: If this is set to "false", the destination files will be deleted when the resource is deleted or the destination is updated. NOTICE: Configuring this to "false" might have operational implications. Please visit to the package documentation referred below to make sure you fully understand those implications. Default: true - when resource is deleted/updated, files are retained
|
|
871
898
|
:param role: Execution role associated with this function. Default: - A role is automatically created
|
|
@@ -922,6 +949,7 @@ class BucketDeploymentProps:
|
|
|
922
949
|
check_type(argname="argument log_retention", value=log_retention, expected_type=type_hints["log_retention"])
|
|
923
950
|
check_type(argname="argument memory_limit", value=memory_limit, expected_type=type_hints["memory_limit"])
|
|
924
951
|
check_type(argname="argument metadata", value=metadata, expected_type=type_hints["metadata"])
|
|
952
|
+
check_type(argname="argument output_object_keys", value=output_object_keys, expected_type=type_hints["output_object_keys"])
|
|
925
953
|
check_type(argname="argument prune", value=prune, expected_type=type_hints["prune"])
|
|
926
954
|
check_type(argname="argument retain_on_delete", value=retain_on_delete, expected_type=type_hints["retain_on_delete"])
|
|
927
955
|
check_type(argname="argument role", value=role, expected_type=type_hints["role"])
|
|
@@ -974,6 +1002,8 @@ class BucketDeploymentProps:
|
|
|
974
1002
|
self._values["memory_limit"] = memory_limit
|
|
975
1003
|
if metadata is not None:
|
|
976
1004
|
self._values["metadata"] = metadata
|
|
1005
|
+
if output_object_keys is not None:
|
|
1006
|
+
self._values["output_object_keys"] = output_object_keys
|
|
977
1007
|
if prune is not None:
|
|
978
1008
|
self._values["prune"] = prune
|
|
979
1009
|
if retain_on_delete is not None:
|
|
@@ -1220,6 +1250,19 @@ class BucketDeploymentProps:
|
|
|
1220
1250
|
result = self._values.get("metadata")
|
|
1221
1251
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
1222
1252
|
|
|
1253
|
+
@builtins.property
|
|
1254
|
+
def output_object_keys(self) -> typing.Optional[builtins.bool]:
|
|
1255
|
+
'''If set to false, the custom resource will not send back the SourceObjectKeys.
|
|
1256
|
+
|
|
1257
|
+
This is useful when you are facing the error ``Response object is too long``
|
|
1258
|
+
|
|
1259
|
+
See https://github.com/aws/aws-cdk/issues/28579
|
|
1260
|
+
|
|
1261
|
+
:default: true
|
|
1262
|
+
'''
|
|
1263
|
+
result = self._values.get("output_object_keys")
|
|
1264
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
1265
|
+
|
|
1223
1266
|
@builtins.property
|
|
1224
1267
|
def prune(self) -> typing.Optional[builtins.bool]:
|
|
1225
1268
|
'''If this is set to false, files in the destination bucket that do not exist in the asset, will NOT be deleted during deployment (create/update).
|
|
@@ -2253,6 +2296,7 @@ def _typecheckingstub__2544491e92aa50a255b927ef16b9cde2961eae48803afca3b5d1105bf
|
|
|
2253
2296
|
log_retention: typing.Optional[_RetentionDays_070f99f0] = None,
|
|
2254
2297
|
memory_limit: typing.Optional[jsii.Number] = None,
|
|
2255
2298
|
metadata: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2299
|
+
output_object_keys: typing.Optional[builtins.bool] = None,
|
|
2256
2300
|
prune: typing.Optional[builtins.bool] = None,
|
|
2257
2301
|
retain_on_delete: typing.Optional[builtins.bool] = None,
|
|
2258
2302
|
role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -2297,6 +2341,7 @@ def _typecheckingstub__cbabf07e8b4adfb2b2058c075c4f35512ebc580f80a6db9bf13e90589
|
|
|
2297
2341
|
log_retention: typing.Optional[_RetentionDays_070f99f0] = None,
|
|
2298
2342
|
memory_limit: typing.Optional[jsii.Number] = None,
|
|
2299
2343
|
metadata: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2344
|
+
output_object_keys: typing.Optional[builtins.bool] = None,
|
|
2300
2345
|
prune: typing.Optional[builtins.bool] = None,
|
|
2301
2346
|
retain_on_delete: typing.Optional[builtins.bool] = None,
|
|
2302
2347
|
role: typing.Optional[_IRole_235f5d8e] = None,
|