aws-cdk-lib 2.173.3__py3-none-any.whl → 2.174.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.

Files changed (88) hide show
  1. aws_cdk/__init__.py +210 -181
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.173.3.jsii.tgz → aws-cdk-lib@2.174.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +127 -168
  5. aws_cdk/aws_appconfig/__init__.py +498 -1
  6. aws_cdk/aws_applicationautoscaling/__init__.py +4 -1
  7. aws_cdk/aws_appsync/__init__.py +4 -0
  8. aws_cdk/aws_autoscaling/__init__.py +96 -0
  9. aws_cdk/aws_batch/__init__.py +1084 -233
  10. aws_cdk/aws_bedrock/__init__.py +2119 -181
  11. aws_cdk/aws_cassandra/__init__.py +476 -4
  12. aws_cdk/aws_cleanrooms/__init__.py +543 -17
  13. aws_cdk/aws_cloudformation/__init__.py +172 -169
  14. aws_cdk/aws_cloudfront/__init__.py +773 -26
  15. aws_cdk/aws_cloudtrail/__init__.py +8 -2
  16. aws_cdk/aws_codebuild/__init__.py +83 -0
  17. aws_cdk/aws_codepipeline/__init__.py +2 -1
  18. aws_cdk/aws_cognito/__init__.py +232 -200
  19. aws_cdk/aws_connect/__init__.py +187 -36
  20. aws_cdk/aws_connectcampaignsv2/__init__.py +106 -12
  21. aws_cdk/aws_databrew/__init__.py +69 -1
  22. aws_cdk/aws_datasync/__init__.py +33 -28
  23. aws_cdk/aws_datazone/__init__.py +141 -41
  24. aws_cdk/aws_dlm/__init__.py +20 -10
  25. aws_cdk/aws_dms/__init__.py +722 -30
  26. aws_cdk/aws_dynamodb/__init__.py +76 -4
  27. aws_cdk/aws_ec2/__init__.py +1233 -65
  28. aws_cdk/aws_ecr/__init__.py +31 -0
  29. aws_cdk/aws_ecr_assets/__init__.py +5 -0
  30. aws_cdk/aws_ecs/__init__.py +88 -11
  31. aws_cdk/aws_efs/__init__.py +15 -8
  32. aws_cdk/aws_eks/__init__.py +114 -45
  33. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  34. aws_cdk/aws_emrserverless/__init__.py +143 -0
  35. aws_cdk/aws_events/__init__.py +50 -30
  36. aws_cdk/aws_fis/__init__.py +33 -33
  37. aws_cdk/aws_fsx/__init__.py +20 -10
  38. aws_cdk/aws_glue/__init__.py +34 -11
  39. aws_cdk/aws_greengrass/__init__.py +8 -8
  40. aws_cdk/aws_guardduty/__init__.py +1 -1
  41. aws_cdk/aws_imagebuilder/__init__.py +45 -47
  42. aws_cdk/aws_internetmonitor/__init__.py +3 -3
  43. aws_cdk/aws_invoicing/__init__.py +55 -30
  44. aws_cdk/aws_iot/__init__.py +1117 -4
  45. aws_cdk/aws_iot1click/__init__.py +17 -7
  46. aws_cdk/aws_kendra/__init__.py +4 -6
  47. aws_cdk/aws_lambda/__init__.py +15 -1
  48. aws_cdk/aws_logs/__init__.py +4011 -86
  49. aws_cdk/aws_m2/__init__.py +41 -0
  50. aws_cdk/aws_mediaconnect/__init__.py +202 -7
  51. aws_cdk/aws_memorydb/__init__.py +22 -22
  52. aws_cdk/aws_networkmanager/__init__.py +758 -0
  53. aws_cdk/aws_opensearchservice/__init__.py +222 -0
  54. aws_cdk/aws_organizations/__init__.py +5 -3
  55. aws_cdk/aws_pcs/__init__.py +3038 -0
  56. aws_cdk/aws_pipes/__init__.py +10 -10
  57. aws_cdk/aws_qbusiness/__init__.py +415 -140
  58. aws_cdk/aws_quicksight/__init__.py +15932 -6448
  59. aws_cdk/aws_ram/__init__.py +5 -11
  60. aws_cdk/aws_rbin/__init__.py +28 -16
  61. aws_cdk/aws_rds/__init__.py +184 -24
  62. aws_cdk/aws_redshiftserverless/__init__.py +156 -0
  63. aws_cdk/aws_resiliencehub/__init__.py +2 -1
  64. aws_cdk/aws_route53_targets/__init__.py +5 -5
  65. aws_cdk/aws_s3/__init__.py +25 -15
  66. aws_cdk/aws_s3express/__init__.py +7 -7
  67. aws_cdk/aws_s3tables/__init__.py +683 -0
  68. aws_cdk/aws_sagemaker/__init__.py +574 -189
  69. aws_cdk/aws_secretsmanager/__init__.py +2 -0
  70. aws_cdk/aws_securityhub/__init__.py +41 -165
  71. aws_cdk/aws_servicediscovery/__init__.py +10 -3
  72. aws_cdk/aws_ses/__init__.py +190 -5
  73. aws_cdk/aws_sns/__init__.py +7 -3
  74. aws_cdk/aws_synthetics/__init__.py +29 -4
  75. aws_cdk/aws_transfer/__init__.py +8 -0
  76. aws_cdk/aws_vpclattice/__init__.py +147 -77
  77. aws_cdk/aws_wafv2/__init__.py +20 -8
  78. aws_cdk/aws_wisdom/__init__.py +162 -111
  79. aws_cdk/aws_workspaces/__init__.py +10 -4
  80. aws_cdk/cloud_assembly_schema/__init__.py +22 -0
  81. aws_cdk/custom_resources/__init__.py +31 -0
  82. aws_cdk/cx_api/__init__.py +19 -0
  83. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/LICENSE +1 -1
  84. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/METADATA +2 -2
  85. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/NOTICE +1 -1
  86. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/RECORD +88 -86
  87. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/WHEEL +0 -0
  88. {aws_cdk_lib-2.173.3.dist-info → aws_cdk_lib-2.174.0.dist-info}/top_level.txt +0 -0
aws_cdk/__init__.py CHANGED
@@ -5732,7 +5732,7 @@ class CfnHookTypeConfigProps:
5732
5732
  '''Properties for defining a ``CfnHookTypeConfig``.
5733
5733
 
5734
5734
  :param configuration: Specifies the activated Hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
5735
- :param configuration_alias: Specifies the activated Hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
5735
+ :param configuration_alias: An alias by which to refer to this configuration data. Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
5736
5736
  :param type_arn: The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
5737
5737
  :param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
5738
5738
 
@@ -5784,7 +5784,7 @@ class CfnHookTypeConfigProps:
5784
5784
 
5785
5785
  @builtins.property
5786
5786
  def configuration_alias(self) -> typing.Optional[builtins.str]:
5787
- '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .
5787
+ '''An alias by which to refer to this configuration data.
5788
5788
 
5789
5789
  Defaults to ``default`` alias. Hook types currently support default configuration alias.
5790
5790
 
@@ -5852,7 +5852,7 @@ class CfnHookVersionProps:
5852
5852
  ) -> None:
5853
5853
  '''Properties for defining a ``CfnHookVersion``.
5854
5854
 
5855
- :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
5855
+ :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* . .. epigraph:: To register the Hook, you must have ``s3:GetObject`` permissions to access the S3 objects.
5856
5856
  :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
5857
5857
  :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
5858
5858
  :param logging_config: Contains logging configuration information for an extension.
@@ -5897,10 +5897,10 @@ class CfnHookVersionProps:
5897
5897
  def schema_handler_package(self) -> builtins.str:
5898
5898
  '''A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register.
5899
5899
 
5900
- For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* .
5900
+ For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* .
5901
5901
  .. epigraph::
5902
5902
 
5903
- The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
5903
+ To register the Hook, you must have ``s3:GetObject`` permissions to access the S3 objects.
5904
5904
 
5905
5905
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-schemahandlerpackage
5906
5906
  '''
@@ -6249,11 +6249,11 @@ class CfnMacroProps:
6249
6249
  ) -> None:
6250
6250
  '''Properties for defining a ``CfnMacro``.
6251
6251
 
6252
- :param function_name: The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.
6252
+ :param function_name: The Amazon Resource Name (ARN) of the underlying Lambda function that you want CloudFormation to invoke when the macro is run.
6253
6253
  :param name: The name of the macro. The name of the macro must be unique across all macros in the account.
6254
6254
  :param description: A description of the macro.
6255
- :param log_group_name: The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.
6256
- :param log_role_arn: The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .
6255
+ :param log_group_name: The CloudWatch Logs group to which CloudFormation sends error logging information when invoking the macro's underlying Lambda function.
6256
+ :param log_role_arn: The ARN of the role CloudFormation should assume when sending log entries to CloudWatch Logs .
6257
6257
 
6258
6258
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html
6259
6259
  :exampleMetadata: fixture=_generated
@@ -6294,7 +6294,7 @@ class CfnMacroProps:
6294
6294
 
6295
6295
  @builtins.property
6296
6296
  def function_name(self) -> builtins.str:
6297
- '''The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.
6297
+ '''The Amazon Resource Name (ARN) of the underlying Lambda function that you want CloudFormation to invoke when the macro is run.
6298
6298
 
6299
6299
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-functionname
6300
6300
  '''
@@ -6325,7 +6325,7 @@ class CfnMacroProps:
6325
6325
 
6326
6326
  @builtins.property
6327
6327
  def log_group_name(self) -> typing.Optional[builtins.str]:
6328
- '''The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.
6328
+ '''The CloudWatch Logs group to which CloudFormation sends error logging information when invoking the macro's underlying Lambda function.
6329
6329
 
6330
6330
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-loggroupname
6331
6331
  '''
@@ -6334,7 +6334,7 @@ class CfnMacroProps:
6334
6334
 
6335
6335
  @builtins.property
6336
6336
  def log_role_arn(self) -> typing.Optional[builtins.str]:
6337
- '''The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .
6337
+ '''The ARN of the role CloudFormation should assume when sending log entries to CloudWatch Logs .
6338
6338
 
6339
6339
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-logrolearn
6340
6340
  '''
@@ -6542,7 +6542,7 @@ class CfnModuleVersionProps:
6542
6542
  '''Properties for defining a ``CfnModuleVersion``.
6543
6543
 
6544
6544
  :param module_name: The name of the module being registered.
6545
- :param module_package: A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. .. epigraph:: The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
6545
+ :param module_package: A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the module version, you must have ``s3:GetObject`` permissions to access the S3 objects.
6546
6546
 
6547
6547
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html
6548
6548
  :exampleMetadata: fixture=_generated
@@ -6581,9 +6581,10 @@ class CfnModuleVersionProps:
6581
6581
  def module_package(self) -> builtins.str:
6582
6582
  '''A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register.
6583
6583
 
6584
+ For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
6584
6585
  .. epigraph::
6585
6586
 
6586
- The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
6587
+ To register the module version, you must have ``s3:GetObject`` permissions to access the S3 objects.
6587
6588
 
6588
6589
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulepackage
6589
6590
  '''
@@ -7439,7 +7440,7 @@ class CfnPublicTypeVersionProps:
7439
7440
  '''Properties for defining a ``CfnPublicTypeVersion``.
7440
7441
 
7441
7442
  :param arn: The Amazon Resource Number (ARN) of the extension. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
7442
- :param log_delivery_bucket: The S3 bucket to which CloudFormation delivers the contract test execution logs. CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of ``PASSED`` or ``FAILED`` . The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: - GetObject - PutObject For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
7443
+ :param log_delivery_bucket: The S3 bucket to which CloudFormation delivers the contract test execution logs. CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of ``PASSED`` or ``FAILED`` . The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: - s3:GetObject - s3:PutObject
7443
7444
  :param public_version_number: The version number to assign to this version of the extension. Use the following format, and adhere to semantic versioning when assigning a version number to your extension: ``MAJOR.MINOR.PATCH`` For more information, see `Semantic Versioning 2.0.0 <https://docs.aws.amazon.com/https://semver.org/>`_ . If you don't specify a version number, CloudFormation increments the version number by one minor version release. You cannot specify a version number the first time you publish a type. CloudFormation automatically sets the first version number to be ``1.0.0`` .
7444
7445
  :param type: The type of the extension to test. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
7445
7446
  :param type_name: The name of the extension to test. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
@@ -7499,10 +7500,8 @@ class CfnPublicTypeVersionProps:
7499
7500
 
7500
7501
  The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions:
7501
7502
 
7502
- - GetObject
7503
- - PutObject
7504
-
7505
- For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
7503
+ - s3:GetObject
7504
+ - s3:PutObject
7506
7505
 
7507
7506
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-logdeliverybucket
7508
7507
  '''
@@ -8430,9 +8429,9 @@ class CfnResourceVersionProps:
8430
8429
  ) -> None:
8431
8430
  '''Properties for defining a ``CfnResourceVersion``.
8432
8431
 
8433
- :param schema_handler_package: A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
8432
+ :param schema_handler_package: A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the resource version, you must have ``s3:GetObject`` permissions to access the S3 objects.
8434
8433
  :param type_name: The name of the resource being registered. We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . .. epigraph:: The following organization namespaces are reserved and can't be used in your resource names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``AWS`` - ``Custom`` - ``Dev``
8435
- :param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an *`IAM execution role <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html>`_* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
8434
+ :param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
8436
8435
  :param logging_config: Logging configuration information for a resource.
8437
8436
 
8438
8437
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html
@@ -8475,10 +8474,10 @@ class CfnResourceVersionProps:
8475
8474
  def schema_handler_package(self) -> builtins.str:
8476
8475
  '''A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register.
8477
8476
 
8478
- For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide* .
8477
+ For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
8479
8478
  .. epigraph::
8480
8479
 
8481
- The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
8480
+ To register the resource version, you must have ``s3:GetObject`` permissions to access the S3 objects.
8482
8481
 
8483
8482
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-schemahandlerpackage
8484
8483
  '''
@@ -8512,7 +8511,7 @@ class CfnResourceVersionProps:
8512
8511
  def execution_role_arn(self) -> typing.Optional[builtins.str]:
8513
8512
  '''The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource.
8514
8513
 
8515
- If your resource calls AWS APIs in any of its handlers, you must create an *`IAM execution role <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html>`_* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
8514
+ If your resource calls AWS APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
8516
8515
 
8517
8516
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-executionrolearn
8518
8517
  '''
@@ -8799,7 +8798,7 @@ class CfnStackProps:
8799
8798
  :param notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
8800
8799
  :param parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. .. epigraph:: If you use the ``Ref`` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type ``String`` . In other words, you can't pass values that are of type ``CommaDelimitedList`` to nested stacks. Conditional. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
8801
8800
  :param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
8802
- :param template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see `Template anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
8801
+ :param template_url: The URL of a file containing the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
8803
8802
  :param timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the ``CREATE_COMPLETE`` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the ``CREATE_COMPLETE`` state, it marks the nested stack resource as ``CREATE_COMPLETE`` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches ``CREATE_COMPLETE`` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. Updates aren't supported.
8804
8803
 
8805
8804
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html
@@ -8887,9 +8886,9 @@ class CfnStackProps:
8887
8886
 
8888
8887
  @builtins.property
8889
8888
  def template_url(self) -> typing.Optional[builtins.str]:
8890
- '''Location of file containing the template body.
8889
+ '''The URL of a file containing the template body.
8891
8890
 
8892
- The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see `Template anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ .
8891
+ The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` .
8893
8892
 
8894
8893
  Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
8895
8894
 
@@ -8966,21 +8965,21 @@ class CfnStackSetProps:
8966
8965
  ) -> None:
8967
8966
  '''Properties for defining a ``CfnStackSet``.
8968
8967
 
8969
- :param permission_model: Describes how the IAM roles required for stack set operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant Self-Managed Stack Set Permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations .
8968
+ :param permission_model: Describes how the IAM roles required for stack set operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for stack sets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
8970
8969
  :param stack_set_name: The name to associate with the stack set. The name must be unique in the Region where you create your stack set. .. epigraph:: The ``StackSetName`` property is required.
8971
- :param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Prerequisites: Granting Permissions for Stack Set Operations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html>`_ in the *AWS CloudFormation User Guide* . *Minimum* : ``20`` *Maximum* : ``2048``
8970
+ :param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . *Minimum* : ``20`` *Maximum* : ``2048``
8972
8971
  :param auto_deployment: [ ``Service-managed`` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
8973
8972
  :param call_as: [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for stack sets with self-managed permissions. - To create a stack set with service-managed permissions while signed in to the management account, specify ``SELF`` . - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify ``DELEGATED_ADMIN`` . Your AWS account must be registered as a delegated admin in the management account. For more information, see `Register a delegated administrator <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html>`_ in the *AWS CloudFormation User Guide* . Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators. *Valid Values* : ``SELF`` | ``DELEGATED_ADMIN``
8974
- :param capabilities: The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see `Acknowledging IAM Resources in AWS CloudFormation Templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities>`_ .
8973
+ :param capabilities: The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
8975
8974
  :param description: A description of the stack set. *Minimum* : ``1`` *Maximum* : ``1024``
8976
- :param execution_role_name: The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, AWS CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation. *Minimum* : ``1`` *Maximum* : ``64`` *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
8975
+ :param execution_role_name: The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation. *Minimum* : ``1`` *Maximum* : ``64`` *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
8977
8976
  :param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your stack set's execution configuration while there are running or queued operations for that stack set. When inactive (default), StackSets performs one operation at a time in request order.
8978
- :param operation_preferences: The user-specified preferences for how AWS CloudFormation performs a stack set operation.
8977
+ :param operation_preferences: The user-specified preferences for how CloudFormation performs a stack set operation.
8979
8978
  :param parameters: The input parameters for the stack set template.
8980
8979
  :param stack_instances_group: A group of stack instances with parameters in some specific accounts and Regions.
8981
8980
  :param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 50 tags. If you don't specify this parameter, CloudFormation doesn't modify the stack's tags. If you specify an empty value, CloudFormation removes all associated tags.
8982
8981
  :param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through ``TemplateUrl`` instead.
8983
- :param template_url: Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to `Template Anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ in the AWS CloudFormation User Guide. Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
8982
+ :param template_url: The URL of a file containing the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` . Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
8984
8983
 
8985
8984
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html
8986
8985
  :exampleMetadata: fixture=_generated
@@ -9096,8 +9095,8 @@ class CfnStackSetProps:
9096
9095
  def permission_model(self) -> builtins.str:
9097
9096
  '''Describes how the IAM roles required for stack set operations are created.
9098
9097
 
9099
- - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant Self-Managed Stack Set Permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ .
9100
- - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations .
9098
+ - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* .
9099
+ - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for stack sets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
9101
9100
 
9102
9101
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-permissionmodel
9103
9102
  '''
@@ -9126,7 +9125,7 @@ class CfnStackSetProps:
9126
9125
 
9127
9126
  Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account.
9128
9127
 
9129
- Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Prerequisites: Granting Permissions for Stack Set Operations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html>`_ in the *AWS CloudFormation User Guide* .
9128
+ Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* .
9130
9129
 
9131
9130
  *Minimum* : ``20``
9132
9131
 
@@ -9172,7 +9171,7 @@ class CfnStackSetProps:
9172
9171
  def capabilities(self) -> typing.Optional[typing.List[builtins.str]]:
9173
9172
  '''The capabilities that are allowed in the stack set.
9174
9173
 
9175
- Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see `Acknowledging IAM Resources in AWS CloudFormation Templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities>`_ .
9174
+ Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
9176
9175
 
9177
9176
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-capabilities
9178
9177
  '''
@@ -9196,7 +9195,7 @@ class CfnStackSetProps:
9196
9195
  def execution_role_name(self) -> typing.Optional[builtins.str]:
9197
9196
  '''The name of the IAM execution role to use to create the stack set.
9198
9197
 
9199
- If you don't specify an execution role, AWS CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation.
9198
+ If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation.
9200
9199
 
9201
9200
  *Minimum* : ``1``
9202
9201
 
@@ -9231,7 +9230,7 @@ class CfnStackSetProps:
9231
9230
  def operation_preferences(
9232
9231
  self,
9233
9232
  ) -> typing.Optional[typing.Union["IResolvable", "CfnStackSet.OperationPreferencesProperty"]]:
9234
- '''The user-specified preferences for how AWS CloudFormation performs a stack set operation.
9233
+ '''The user-specified preferences for how CloudFormation performs a stack set operation.
9235
9234
 
9236
9235
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-operationpreferences
9237
9236
  '''
@@ -9286,9 +9285,9 @@ class CfnStackSetProps:
9286
9285
 
9287
9286
  @builtins.property
9288
9287
  def template_url(self) -> typing.Optional[builtins.str]:
9289
- '''Location of file containing the template body.
9288
+ '''The URL of a file containing the template body.
9290
9289
 
9291
- The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to `Template Anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ in the AWS CloudFormation User Guide.
9290
+ The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` .
9292
9291
 
9293
9292
  Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
9294
9293
 
@@ -10242,7 +10241,7 @@ class CfnWaitConditionProps:
10242
10241
  '''Properties for defining a ``CfnWaitCondition``.
10243
10242
 
10244
10243
  :param count: The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. Updates aren't supported.
10245
- :param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an ```AWS::CloudFormation::WaitConditionHandle`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
10244
+ :param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
10246
10245
  :param timeout: The length of time (in seconds) to wait for the number of signals that the ``Count`` property specifies. ``Timeout`` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). Updates aren't supported.
10247
10246
 
10248
10247
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html
@@ -10290,7 +10289,7 @@ class CfnWaitConditionProps:
10290
10289
  def handle(self) -> typing.Optional[builtins.str]:
10291
10290
  '''A reference to the wait condition handle used to signal this wait condition.
10292
10291
 
10293
- Use the ``Ref`` intrinsic function to specify an ```AWS::CloudFormation::WaitConditionHandle`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html>`_ resource.
10292
+ Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html>`_ resource.
10294
10293
 
10295
10294
  Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command.
10296
10295
 
@@ -10637,6 +10636,7 @@ class CopyOptions:
10637
10636
  "properties": "properties",
10638
10637
  "removal_policy": "removalPolicy",
10639
10638
  "resource_type": "resourceType",
10639
+ "service_timeout": "serviceTimeout",
10640
10640
  },
10641
10641
  )
10642
10642
  class CustomResourceProps:
@@ -10648,6 +10648,7 @@ class CustomResourceProps:
10648
10648
  properties: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
10649
10649
  removal_policy: typing.Optional["RemovalPolicy"] = None,
10650
10650
  resource_type: typing.Optional[builtins.str] = None,
10651
+ service_timeout: typing.Optional["Duration"] = None,
10651
10652
  ) -> None:
10652
10653
  '''Properties to provide a Lambda-backed custom resource.
10653
10654
 
@@ -10656,6 +10657,7 @@ class CustomResourceProps:
10656
10657
  :param properties: Properties to pass to the Lambda. Default: - No properties.
10657
10658
  :param removal_policy: The policy to apply when this resource is removed from the application. Default: cdk.RemovalPolicy.Destroy
10658
10659
  :param resource_type: For custom resources, you can specify AWS::CloudFormation::CustomResource (the default) as the resource type, or you can specify your own resource type name. For example, you can use "Custom::MyCustomResourceTypeName". Custom resource type names must begin with "Custom::" and can include alphanumeric characters and the following characters: _@-. You can specify a custom resource type name up to a maximum length of 60 characters. You cannot change the type during an update. Using your own resource type names helps you quickly differentiate the types of custom resources in your stack. For example, if you had two custom resources that conduct two different ping tests, you could name their type as Custom::PingTester to make them easily identifiable as ping testers (instead of using AWS::CloudFormation::CustomResource). Default: - AWS::CloudFormation::CustomResource
10660
+ :param service_timeout: The maximum time that can elapse before a custom resource operation times out. The value must be between 1 second and 3600 seconds. Default: Duration.seconds(3600)
10659
10661
 
10660
10662
  :exampleMetadata: infused
10661
10663
 
@@ -10679,6 +10681,7 @@ class CustomResourceProps:
10679
10681
  check_type(argname="argument properties", value=properties, expected_type=type_hints["properties"])
10680
10682
  check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
10681
10683
  check_type(argname="argument resource_type", value=resource_type, expected_type=type_hints["resource_type"])
10684
+ check_type(argname="argument service_timeout", value=service_timeout, expected_type=type_hints["service_timeout"])
10682
10685
  self._values: typing.Dict[builtins.str, typing.Any] = {
10683
10686
  "service_token": service_token,
10684
10687
  }
@@ -10690,6 +10693,8 @@ class CustomResourceProps:
10690
10693
  self._values["removal_policy"] = removal_policy
10691
10694
  if resource_type is not None:
10692
10695
  self._values["resource_type"] = resource_type
10696
+ if service_timeout is not None:
10697
+ self._values["service_timeout"] = service_timeout
10693
10698
 
10694
10699
  @builtins.property
10695
10700
  def service_token(self) -> builtins.str:
@@ -10783,6 +10788,17 @@ class CustomResourceProps:
10783
10788
  result = self._values.get("resource_type")
10784
10789
  return typing.cast(typing.Optional[builtins.str], result)
10785
10790
 
10791
+ @builtins.property
10792
+ def service_timeout(self) -> typing.Optional["Duration"]:
10793
+ '''The maximum time that can elapse before a custom resource operation times out.
10794
+
10795
+ The value must be between 1 second and 3600 seconds.
10796
+
10797
+ :default: Duration.seconds(3600)
10798
+ '''
10799
+ result = self._values.get("service_timeout")
10800
+ return typing.cast(typing.Optional["Duration"], result)
10801
+
10786
10802
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
10787
10803
  return isinstance(rhs, self.__class__) and rhs._values == self._values
10788
10804
 
@@ -12943,19 +12959,19 @@ class Duration(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Duration"):
12943
12959
 
12944
12960
  Example::
12945
12961
 
12946
- # application: appconfig.Application
12947
- # bucket: s3.Bucket
12948
-
12962
+ # my_role: iam.Role
12949
12963
 
12950
- appconfig.SourcedConfiguration(self, "MySourcedConfiguration",
12951
- application=application,
12952
- location=appconfig.ConfigurationSource.from_bucket(bucket, "path/to/file.json"),
12953
- deployment_strategy=appconfig.DeploymentStrategy(self, "MyDeploymentStrategy",
12954
- rollout_strategy=appconfig.RolloutStrategy.linear(
12955
- growth_factor=15,
12956
- deployment_duration=Duration.minutes(30),
12957
- final_bake_time=Duration.minutes(15)
12958
- )
12964
+ cr.AwsCustomResource(self, "Customized",
12965
+ role=my_role, # must be assumable by the `lambda.amazonaws.com` service principal
12966
+ timeout=Duration.minutes(10), # defaults to 2 minutes
12967
+ memory_size=1025, # defaults to 512 if installLatestAwsSdk is true
12968
+ log_group=logs.LogGroup(self, "AwsCustomResourceLogs",
12969
+ retention=logs.RetentionDays.ONE_DAY
12970
+ ),
12971
+ function_name="my-custom-name", # defaults to a CloudFormation generated name
12972
+ removal_policy=RemovalPolicy.RETAIN, # defaults to `RemovalPolicy.DESTROY`
12973
+ policy=cr.AwsCustomResourcePolicy.from_sdk_calls(
12974
+ resources=cr.AwsCustomResourcePolicy.ANY_RESOURCE
12959
12975
  )
12960
12976
  )
12961
12977
  '''
@@ -28010,12 +28026,14 @@ class CfnCustomResource(
28010
28026
  metaclass=jsii.JSIIMeta,
28011
28027
  jsii_type="aws-cdk-lib.CfnCustomResource",
28012
28028
  ):
28013
- '''In a CloudFormation template, you use the ``AWS::CloudFormation::CustomResource`` or ``Custom:: *String*`` resource type to specify custom resources.
28029
+ '''The ``AWS::CloudFormation::CustomResource`` resource creates a custom resource.
28030
+
28031
+ Custom resources provide a way for you to write custom provisioning logic into your CloudFormation templates and have CloudFormation run it anytime you create, update (if you changed the custom resource), or delete a stack.
28014
28032
 
28015
- Custom resources provide a way for you to write custom provisioning logic in CloudFormation template and have CloudFormation run it during a stack operation, such as when you create, update or delete a stack. For more information, see `Custom resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html>`_ .
28033
+ For more information, see `Create custom provisioning logic with custom resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html>`_ in the *AWS CloudFormation User Guide* .
28016
28034
  .. epigraph::
28017
28035
 
28018
- If you use the `VPC endpoints <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html>`_ feature, custom resources in the VPC must have access to CloudFormation -specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Custom resources must send responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see `Setting up VPC endpoints for AWS CloudFormation <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html>`_ .
28036
+ If you use AWS PrivateLink , custom resources in the VPC must have access to CloudFormation -specific Amazon S3 buckets. Custom resources must send responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see `Access CloudFormation using an interface endpoint ( AWS PrivateLink ) <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/vpc-interface-endpoints.html>`_ in the *AWS CloudFormation User Guide* .
28019
28037
 
28020
28038
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html
28021
28039
  :cloudformationResource: AWS::CloudFormation::CustomResource
@@ -28165,9 +28183,11 @@ class CfnGuardHook(
28165
28183
  metaclass=jsii.JSIIMeta,
28166
28184
  jsii_type="aws-cdk-lib.CfnGuardHook",
28167
28185
  ):
28168
- '''The ``AWS::CloudFormation::GuardHook`` resource creates a Guard Hook with the specified attributes within your CloudFormation template.
28186
+ '''The ``AWS::CloudFormation::GuardHook`` resource creates and activates a Guard Hook.
28169
28187
 
28170
- Using the Guard domain specific language (DSL), you can author Hooks to evaluate your resources before allowing stack creation, modification, or deletion. For more information, see `Guard Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/guard-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
28188
+ Using the Guard domain specific language (DSL), you can author Guard Hooks to evaluate your resources before allowing stack operations.
28189
+
28190
+ For more information, see `Guard Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/guard-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
28171
28191
 
28172
28192
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html
28173
28193
  :cloudformationResource: AWS::CloudFormation::GuardHook
@@ -28892,7 +28912,7 @@ class CfnGuardHook(
28892
28912
  ) -> None:
28893
28913
  '''The ``TargetFilters`` property type specifies the target filters for the Hook.
28894
28914
 
28895
- For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/specify-hook-configuration-targetfilters.html>`_ .
28915
+ For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-target-filtering.html>`_ .
28896
28916
 
28897
28917
  :param actions: List of actions that the hook is going to target.
28898
28918
  :param invocation_points: List of invocation points that the hook is going to target.
@@ -28971,10 +28991,14 @@ class CfnHookDefaultVersion(
28971
28991
  metaclass=jsii.JSIIMeta,
28972
28992
  jsii_type="aws-cdk-lib.CfnHookDefaultVersion",
28973
28993
  ):
28974
- '''The ``HookDefaultVersion`` resource specifies the default version of the Hook.
28994
+ '''The ``AWS::CloudFormation::HookDefaultVersion`` resource specifies the default version of a Hook.
28975
28995
 
28976
28996
  The default version of the Hook is used in CloudFormation operations for this AWS account and AWS Region .
28977
28997
 
28998
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
28999
+
29000
+ This resource type is not compatible with Guard and Lambda Hooks.
29001
+
28978
29002
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html
28979
29003
  :cloudformationResource: AWS::CloudFormation::HookDefaultVersion
28980
29004
  :exampleMetadata: fixture=_generated
@@ -29053,7 +29077,7 @@ class CfnHookDefaultVersion(
29053
29077
  @builtins.property
29054
29078
  @jsii.member(jsii_name="attrArn")
29055
29079
  def attr_arn(self) -> builtins.str:
29056
- '''The Amazon Resource Number (ARN) of the activated extension, in this account and Region.
29080
+ '''The Amazon Resource Number (ARN) of the activated Hook, in this account and Region.
29057
29081
 
29058
29082
  :cloudformationAttribute: Arn
29059
29083
  '''
@@ -29110,7 +29134,9 @@ class CfnHookTypeConfig(
29110
29134
  metaclass=jsii.JSIIMeta,
29111
29135
  jsii_type="aws-cdk-lib.CfnHookTypeConfig",
29112
29136
  ):
29113
- '''The ``HookTypeConfig`` resource specifies the configuration of a Hook.
29137
+ '''The ``AWS::CloudFormation::HookTypeConfig`` resource specifies the configuration of an activated Hook.
29138
+
29139
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
29114
29140
 
29115
29141
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html
29116
29142
  :cloudformationResource: AWS::CloudFormation::HookTypeConfig
@@ -29146,7 +29172,7 @@ class CfnHookTypeConfig(
29146
29172
  :param scope: Scope in which this resource is defined.
29147
29173
  :param id: Construct identifier for this resource (unique in its scope).
29148
29174
  :param configuration: Specifies the activated Hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
29149
- :param configuration_alias: Specifies the activated Hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
29175
+ :param configuration_alias: An alias by which to refer to this configuration data. Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
29150
29176
  :param type_arn: The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
29151
29177
  :param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
29152
29178
  '''
@@ -29223,7 +29249,7 @@ class CfnHookTypeConfig(
29223
29249
  @builtins.property
29224
29250
  @jsii.member(jsii_name="configurationAlias")
29225
29251
  def configuration_alias(self) -> typing.Optional[builtins.str]:
29226
- '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .'''
29252
+ '''An alias by which to refer to this configuration data.'''
29227
29253
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "configurationAlias"))
29228
29254
 
29229
29255
  @configuration_alias.setter
@@ -29266,7 +29292,11 @@ class CfnHookVersion(
29266
29292
  metaclass=jsii.JSIIMeta,
29267
29293
  jsii_type="aws-cdk-lib.CfnHookVersion",
29268
29294
  ):
29269
- '''The ``HookVersion`` resource publishes new or first Hook version to the AWS CloudFormation registry.
29295
+ '''The ``AWS::CloudFormation::HookVersion`` resource publishes new or first version of a Hook to the CloudFormation registry.
29296
+
29297
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
29298
+
29299
+ This resource type is not compatible with Guard and Lambda Hooks.
29270
29300
 
29271
29301
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html
29272
29302
  :cloudformationResource: AWS::CloudFormation::HookVersion
@@ -29304,7 +29334,7 @@ class CfnHookVersion(
29304
29334
  '''
29305
29335
  :param scope: Scope in which this resource is defined.
29306
29336
  :param id: Construct identifier for this resource (unique in its scope).
29307
- :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
29337
+ :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* . .. epigraph:: To register the Hook, you must have ``s3:GetObject`` permissions to access the S3 objects.
29308
29338
  :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
29309
29339
  :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
29310
29340
  :param logging_config: Contains logging configuration information for an extension.
@@ -29391,12 +29421,12 @@ class CfnHookVersion(
29391
29421
  @builtins.property
29392
29422
  @jsii.member(jsii_name="attrVisibility")
29393
29423
  def attr_visibility(self) -> builtins.str:
29394
- '''The scope at which the resource is visible and usable in CloudFormation operations.
29424
+ '''The scope at which the Hook is visible and usable in CloudFormation operations.
29395
29425
 
29396
29426
  Valid values include:
29397
29427
 
29398
- - ``PRIVATE`` : The resource is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as ``PRIVATE`` .
29399
- - ``PUBLIC`` : The resource is publicly visible and usable within any Amazon account.
29428
+ - ``PRIVATE`` : The extension (Hook) is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as ``PRIVATE`` .
29429
+ - ``PUBLIC`` : The extension (Hook) is publicly visible and usable within any AWS account.
29400
29430
 
29401
29431
  :cloudformationAttribute: Visibility
29402
29432
  '''
@@ -29635,9 +29665,11 @@ class CfnLambdaHook(
29635
29665
  metaclass=jsii.JSIIMeta,
29636
29666
  jsii_type="aws-cdk-lib.CfnLambdaHook",
29637
29667
  ):
29638
- '''The ``AWS::CloudFormation::LambdaHook`` resource creates a Lambda Hook with the specified attributes within your CloudFormation template.
29668
+ '''The ``AWS::CloudFormation::LambdaHook`` resource creates and activates a Lambda Hook.
29639
29669
 
29640
- You can use a Lambda Hook to evaluate your resources before allowing stack creation, modification, or deletion. This resource forwards requests for resource evaluation to a Lambda function. For more information, see `Lambda Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/lambda-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
29670
+ You can use a Lambda Hook to evaluate your resources before allowing stack operations. This resource forwards requests for resource evaluation to a Lambda function.
29671
+
29672
+ For more information, see `Lambda Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/lambda-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
29641
29673
 
29642
29674
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html
29643
29675
  :cloudformationResource: AWS::CloudFormation::LambdaHook
@@ -30168,7 +30200,7 @@ class CfnLambdaHook(
30168
30200
  ) -> None:
30169
30201
  '''The ``TargetFilters`` property type specifies the target filters for the Hook.
30170
30202
 
30171
- For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/specify-hook-configuration-targetfilters.html>`_ .
30203
+ For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-target-filtering.html>`_ .
30172
30204
 
30173
30205
  :param actions: List of actions that the hook is going to target.
30174
30206
  :param invocation_points: List of invocation points that the hook is going to target.
@@ -30245,7 +30277,7 @@ class CfnLambdaHook(
30245
30277
  class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnMacro"):
30246
30278
  '''The ``AWS::CloudFormation::Macro`` resource is a CloudFormation resource type that creates a CloudFormation macro to perform custom processing on CloudFormation templates.
30247
30279
 
30248
- For more information, see `Using AWS CloudFormation macros to perform custom processing on templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html>`_ .
30280
+ For more information, see `Perform custom processing on CloudFormation templates with template macros <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html>`_ in the *AWS CloudFormation User Guide* .
30249
30281
 
30250
30282
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html
30251
30283
  :cloudformationResource: AWS::CloudFormation::Macro
@@ -30282,11 +30314,11 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
30282
30314
  '''
30283
30315
  :param scope: Scope in which this resource is defined.
30284
30316
  :param id: Construct identifier for this resource (unique in its scope).
30285
- :param function_name: The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.
30317
+ :param function_name: The Amazon Resource Name (ARN) of the underlying Lambda function that you want CloudFormation to invoke when the macro is run.
30286
30318
  :param name: The name of the macro. The name of the macro must be unique across all macros in the account.
30287
30319
  :param description: A description of the macro.
30288
- :param log_group_name: The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.
30289
- :param log_role_arn: The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .
30320
+ :param log_group_name: The CloudWatch Logs group to which CloudFormation sends error logging information when invoking the macro's underlying Lambda function.
30321
+ :param log_role_arn: The ARN of the role CloudFormation should assume when sending log entries to CloudWatch Logs .
30290
30322
  '''
30291
30323
  if __debug__:
30292
30324
  type_hints = typing.get_type_hints(_typecheckingstub__dc859919966f6642a4883e84f492e0de28e635475707930c6f38943dee6f461c)
@@ -30348,7 +30380,7 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
30348
30380
  @builtins.property
30349
30381
  @jsii.member(jsii_name="functionName")
30350
30382
  def function_name(self) -> builtins.str:
30351
- '''The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.'''
30383
+ '''The Amazon Resource Name (ARN) of the underlying Lambda function that you want CloudFormation to invoke when the macro is run.'''
30352
30384
  return typing.cast(builtins.str, jsii.get(self, "functionName"))
30353
30385
 
30354
30386
  @function_name.setter
@@ -30387,7 +30419,7 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
30387
30419
  @builtins.property
30388
30420
  @jsii.member(jsii_name="logGroupName")
30389
30421
  def log_group_name(self) -> typing.Optional[builtins.str]:
30390
- '''The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.'''
30422
+ '''The CloudWatch Logs group to which CloudFormation sends error logging information when invoking the macro's underlying Lambda function.'''
30391
30423
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "logGroupName"))
30392
30424
 
30393
30425
  @log_group_name.setter
@@ -30400,7 +30432,7 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
30400
30432
  @builtins.property
30401
30433
  @jsii.member(jsii_name="logRoleArn")
30402
30434
  def log_role_arn(self) -> typing.Optional[builtins.str]:
30403
- '''The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .'''
30435
+ '''The ARN of the role CloudFormation should assume when sending log entries to CloudWatch Logs .'''
30404
30436
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "logRoleArn"))
30405
30437
 
30406
30438
  @log_role_arn.setter
@@ -30513,9 +30545,9 @@ class CfnModuleDefaultVersion(
30513
30545
 
30514
30546
  The default version of the module will be used in CloudFormation operations for this account and Region.
30515
30547
 
30516
- To register a module version, use the ``[``AWS::CloudFormation::ModuleVersion``](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)`` resource.
30548
+ For more information, see `Create reusable resource configurations that can be included across templates with CloudFormation modules <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html>`_ in the *AWS CloudFormation User Guide* .
30517
30549
 
30518
- For more information using modules, see `Using modules to encapsulate and reuse resource configurations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html>`_ and `Registering extensions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register>`_ in the *AWS CloudFormation User Guide* . For information on developing modules, see `Developing modules <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html>`_ in the *AWS CloudFormation CLI User Guide* .
30550
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
30519
30551
 
30520
30552
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html
30521
30553
  :cloudformationResource: AWS::CloudFormation::ModuleDefaultVersion
@@ -30641,13 +30673,13 @@ class CfnModuleVersion(
30641
30673
  metaclass=jsii.JSIIMeta,
30642
30674
  jsii_type="aws-cdk-lib.CfnModuleVersion",
30643
30675
  ):
30644
- '''Registers the specified version of the module with the CloudFormation service.
30676
+ '''The ``AWS::CloudFormation::ModuleVersion`` resource registers the specified version of the module with the CloudFormation registry.
30645
30677
 
30646
30678
  Registering a module makes it available for use in CloudFormation templates in your AWS account and Region.
30647
30679
 
30648
- To specify a module version as the default version, use the ``[``AWS::CloudFormation::ModuleDefaultVersion``](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)`` resource.
30680
+ For more information, see `Create reusable resource configurations that can be included across templates with CloudFormation modules <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html>`_ in the *CloudFormation User Guide* .
30649
30681
 
30650
- For more information using modules, see `Using modules to encapsulate and reuse resource configurations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html>`_ and `Registering extensions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register>`_ in the *CloudFormation User Guide* . For information on developing modules, see `Developing modules <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html>`_ in the *CloudFormation CLI User Guide* .
30682
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
30651
30683
 
30652
30684
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html
30653
30685
  :cloudformationResource: AWS::CloudFormation::ModuleVersion
@@ -30677,7 +30709,7 @@ class CfnModuleVersion(
30677
30709
  :param scope: Scope in which this resource is defined.
30678
30710
  :param id: Construct identifier for this resource (unique in its scope).
30679
30711
  :param module_name: The name of the module being registered.
30680
- :param module_package: A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. .. epigraph:: The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
30712
+ :param module_package: A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the module version, you must have ``s3:GetObject`` permissions to access the S3 objects.
30681
30713
  '''
30682
30714
  if __debug__:
30683
30715
  type_hints = typing.get_type_hints(_typecheckingstub__3d780aabbd07e1197c5165344069ba0f46d2e4740d74a296d922fbcbf26044c2)
@@ -30722,7 +30754,7 @@ class CfnModuleVersion(
30722
30754
  @builtins.property
30723
30755
  @jsii.member(jsii_name="attrArn")
30724
30756
  def attr_arn(self) -> builtins.str:
30725
- '''The Amazon Resource Name (ARN) of the extension.
30757
+ '''The Amazon Resource Name (ARN) of the module.
30726
30758
 
30727
30759
  :cloudformationAttribute: Arn
30728
30760
  '''
@@ -30731,7 +30763,7 @@ class CfnModuleVersion(
30731
30763
  @builtins.property
30732
30764
  @jsii.member(jsii_name="attrDescription")
30733
30765
  def attr_description(self) -> builtins.str:
30734
- '''The description of the extension.
30766
+ '''The description of the module.
30735
30767
 
30736
30768
  :cloudformationAttribute: Description
30737
30769
  '''
@@ -30749,7 +30781,7 @@ class CfnModuleVersion(
30749
30781
  @builtins.property
30750
30782
  @jsii.member(jsii_name="attrIsDefaultVersion")
30751
30783
  def attr_is_default_version(self) -> IResolvable:
30752
- '''Whether the specified extension version is set as the default version.
30784
+ '''Whether the specified module version is set as the default version.
30753
30785
 
30754
30786
  This applies only to private extensions you have registered in your account, and extensions published by AWS . For public third-party extensions, whether they are activated in your account, CloudFormation returns ``null`` .
30755
30787
 
@@ -30760,9 +30792,7 @@ class CfnModuleVersion(
30760
30792
  @builtins.property
30761
30793
  @jsii.member(jsii_name="attrSchema")
30762
30794
  def attr_schema(self) -> builtins.str:
30763
- '''The schema that defines the extension.
30764
-
30765
- For more information about extension schemas, see `Resource type schema <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
30795
+ '''The schema that defines the module.
30766
30796
 
30767
30797
  :cloudformationAttribute: Schema
30768
30798
  '''
@@ -30771,7 +30801,7 @@ class CfnModuleVersion(
30771
30801
  @builtins.property
30772
30802
  @jsii.member(jsii_name="attrTimeCreated")
30773
30803
  def attr_time_created(self) -> builtins.str:
30774
- '''When the specified private extension version was registered or activated in your account.
30804
+ '''When the specified private module version was registered or activated in your account.
30775
30805
 
30776
30806
  :cloudformationAttribute: TimeCreated
30777
30807
  '''
@@ -30789,12 +30819,12 @@ class CfnModuleVersion(
30789
30819
  @builtins.property
30790
30820
  @jsii.member(jsii_name="attrVisibility")
30791
30821
  def attr_visibility(self) -> builtins.str:
30792
- '''The scope at which the extension is visible and usable in CloudFormation operations.
30822
+ '''The scope at which the module is visible and usable in CloudFormation operations.
30793
30823
 
30794
30824
  Valid values include:
30795
30825
 
30796
- - ``PRIVATE`` : The extension is only visible and usable within the account in which it is registered. CloudFormation marks any extensions you register as ``PRIVATE`` .
30797
- - ``PUBLIC`` : The extension is publicly visible and usable within any AWS account.
30826
+ - ``PRIVATE`` : The extension (module) is only visible and usable within the account in which it is registered. CloudFormation marks any extensions you register as ``PRIVATE`` .
30827
+ - ``PUBLIC`` : The extension (module) is publicly visible and usable within any AWS account.
30798
30828
 
30799
30829
  :cloudformationAttribute: Visibility
30800
30830
  '''
@@ -30838,20 +30868,20 @@ class CfnPublicTypeVersion(
30838
30868
  metaclass=jsii.JSIIMeta,
30839
30869
  jsii_type="aws-cdk-lib.CfnPublicTypeVersion",
30840
30870
  ):
30841
- '''Tests and publishes a registered extension as a public, third-party extension.
30871
+ '''The ``AWS::CloudFormation::PublicTypeVersion`` resource tests and publishes a registered extension as a public, third-party extension.
30842
30872
 
30843
30873
  CloudFormation first tests the extension to make sure it meets all necessary requirements for being published in the CloudFormation registry. If it does, CloudFormation then publishes it to the registry as a public third-party extension in this Region. Public extensions are available for use by all CloudFormation users.
30844
30874
 
30845
30875
  - For resource types, testing includes passing all contracts tests defined for the type.
30846
30876
  - For modules, testing includes determining if the module's model meets all necessary requirements.
30847
30877
 
30848
- For more information, see `Testing your public extension prior to publishing <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing>`_ in the *CloudFormation CLI User Guide* .
30878
+ For more information, see `Testing your public extension prior to publishing <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
30849
30879
 
30850
30880
  If you don't specify a version, CloudFormation uses the default version of the extension in your account and Region for testing.
30851
30881
 
30852
30882
  To perform testing, CloudFormation assumes the execution role specified when the type was registered.
30853
30883
 
30854
- An extension must have a test status of ``PASSED`` before it can be published. For more information, see `Publishing extensions to make them available for public use <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html>`_ in the *CloudFormation CLI User Guide* .
30884
+ An extension must have a test status of ``PASSED`` before it can be published. For more information, see `Publishing extensions to make them available for public use <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
30855
30885
 
30856
30886
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html
30857
30887
  :cloudformationResource: AWS::CloudFormation::PublicTypeVersion
@@ -30887,7 +30917,7 @@ class CfnPublicTypeVersion(
30887
30917
  :param scope: Scope in which this resource is defined.
30888
30918
  :param id: Construct identifier for this resource (unique in its scope).
30889
30919
  :param arn: The Amazon Resource Number (ARN) of the extension. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
30890
- :param log_delivery_bucket: The S3 bucket to which CloudFormation delivers the contract test execution logs. CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of ``PASSED`` or ``FAILED`` . The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: - GetObject - PutObject For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
30920
+ :param log_delivery_bucket: The S3 bucket to which CloudFormation delivers the contract test execution logs. CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of ``PASSED`` or ``FAILED`` . The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: - s3:GetObject - s3:PutObject
30891
30921
  :param public_version_number: The version number to assign to this version of the extension. Use the following format, and adhere to semantic versioning when assigning a version number to your extension: ``MAJOR.MINOR.PATCH`` For more information, see `Semantic Versioning 2.0.0 <https://docs.aws.amazon.com/https://semver.org/>`_ . If you don't specify a version number, CloudFormation increments the version number by one minor version release. You cannot specify a version number the first time you publish a type. CloudFormation automatically sets the first version number to be ``1.0.0`` .
30892
30922
  :param type: The type of the extension to test. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
30893
30923
  :param type_name: The name of the extension to test. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
@@ -31042,11 +31072,11 @@ class CfnPublisher(
31042
31072
  metaclass=jsii.JSIIMeta,
31043
31073
  jsii_type="aws-cdk-lib.CfnPublisher",
31044
31074
  ):
31045
- '''Registers your account as a publisher of public extensions in the CloudFormation registry.
31075
+ '''The ``AWS::CloudFormation::Publisher`` resource registers your account as a publisher of public extensions in the CloudFormation registry.
31046
31076
 
31047
31077
  Public extensions are available for use by all CloudFormation users.
31048
31078
 
31049
- For information on requirements for registering as a public extension publisher, see `Registering your account to publish CloudFormation extensions <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs>`_ in the *CloudFormation CLI User Guide* .
31079
+ For information on requirements for registering as a public extension publisher, see `Publishing extensions to make them available for public use <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.htm>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
31050
31080
 
31051
31081
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html
31052
31082
  :cloudformationResource: AWS::CloudFormation::Publisher
@@ -31200,10 +31230,12 @@ class CfnResourceDefaultVersion(
31200
31230
  metaclass=jsii.JSIIMeta,
31201
31231
  jsii_type="aws-cdk-lib.CfnResourceDefaultVersion",
31202
31232
  ):
31203
- '''Specifies the default version of a resource.
31233
+ '''The ``AWS::CloudFormation::ResourceDefaultVersion`` resource specifies the default version of a resource.
31204
31234
 
31205
31235
  The default version of a resource will be used in CloudFormation operations.
31206
31236
 
31237
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
31238
+
31207
31239
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html
31208
31240
  :cloudformationResource: AWS::CloudFormation::ResourceDefaultVersion
31209
31241
  :exampleMetadata: fixture=_generated
@@ -31339,7 +31371,7 @@ class CfnResourceVersion(
31339
31371
  metaclass=jsii.JSIIMeta,
31340
31372
  jsii_type="aws-cdk-lib.CfnResourceVersion",
31341
31373
  ):
31342
- '''Registers a resource version with the CloudFormation service.
31374
+ '''The ``AWS::CloudFormation::ResourceVersion`` resource registers a resource version with the CloudFormation registry.
31343
31375
 
31344
31376
  Registering a resource version makes it available for use in CloudFormation templates in your AWS account , and includes:
31345
31377
 
@@ -31347,7 +31379,7 @@ class CfnResourceVersion(
31347
31379
  - Determining which handlers, if any, have been specified for the resource.
31348
31380
  - Making the resource available for use in your account.
31349
31381
 
31350
- For more information on how to develop resources and ready them for registration, see `Creating Resource Providers <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html>`_ in the *CloudFormation CLI User Guide* .
31382
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
31351
31383
 
31352
31384
  You can have a maximum of 50 resource versions registered at a time. This maximum is per account and per Region.
31353
31385
 
@@ -31387,9 +31419,9 @@ class CfnResourceVersion(
31387
31419
  '''
31388
31420
  :param scope: Scope in which this resource is defined.
31389
31421
  :param id: Construct identifier for this resource (unique in its scope).
31390
- :param schema_handler_package: A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
31422
+ :param schema_handler_package: A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the resource version, you must have ``s3:GetObject`` permissions to access the S3 objects.
31391
31423
  :param type_name: The name of the resource being registered. We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . .. epigraph:: The following organization namespaces are reserved and can't be used in your resource names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``AWS`` - ``Custom`` - ``Dev``
31392
- :param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an *`IAM execution role <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html>`_* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
31424
+ :param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
31393
31425
  :param logging_config: Logging configuration information for a resource.
31394
31426
  '''
31395
31427
  if __debug__:
@@ -31438,7 +31470,7 @@ class CfnResourceVersion(
31438
31470
  @builtins.property
31439
31471
  @jsii.member(jsii_name="attrArn")
31440
31472
  def attr_arn(self) -> builtins.str:
31441
- '''The Amazon Resource Name (ARN) of the extension.
31473
+ '''The Amazon Resource Name (ARN) of the resource.
31442
31474
 
31443
31475
  :cloudformationAttribute: Arn
31444
31476
  '''
@@ -31447,7 +31479,7 @@ class CfnResourceVersion(
31447
31479
  @builtins.property
31448
31480
  @jsii.member(jsii_name="attrIsDefaultVersion")
31449
31481
  def attr_is_default_version(self) -> IResolvable:
31450
- '''Whether the specified extension version is set as the default version.
31482
+ '''Whether the specified resource version is set as the default version.
31451
31483
 
31452
31484
  This applies only to private extensions you have registered in your account, and extensions published by AWS . For public third-party extensions, whether they are activated in your account, CloudFormation returns ``null`` .
31453
31485
 
@@ -31478,7 +31510,7 @@ class CfnResourceVersion(
31478
31510
  @builtins.property
31479
31511
  @jsii.member(jsii_name="attrTypeArn")
31480
31512
  def attr_type_arn(self) -> builtins.str:
31481
- '''The Amazon Resource Name (ARN) of the extension.
31513
+ '''The Amazon Resource Name (ARN) for the extension.
31482
31514
 
31483
31515
  :cloudformationAttribute: TypeArn
31484
31516
  '''
@@ -31487,11 +31519,9 @@ class CfnResourceVersion(
31487
31519
  @builtins.property
31488
31520
  @jsii.member(jsii_name="attrVersionId")
31489
31521
  def attr_version_id(self) -> builtins.str:
31490
- '''The ID of a specific version of the extension.
31491
-
31492
- The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the extension version when it is registered.
31522
+ '''The ID of a specific version of the resource.
31493
31523
 
31494
- If you specify a ``VersionId`` , ``DescribeType`` returns information about that specific extension version. Otherwise, it returns information about the default extension version.
31524
+ The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it is registered.
31495
31525
 
31496
31526
  :cloudformationAttribute: VersionId
31497
31527
  '''
@@ -31500,12 +31530,12 @@ class CfnResourceVersion(
31500
31530
  @builtins.property
31501
31531
  @jsii.member(jsii_name="attrVisibility")
31502
31532
  def attr_visibility(self) -> builtins.str:
31503
- '''The scope at which the extension is visible and usable in CloudFormation operations.
31533
+ '''The scope at which the resource is visible and usable in CloudFormation operations.
31504
31534
 
31505
31535
  Valid values include:
31506
31536
 
31507
- - ``PRIVATE`` : The extension is only visible and usable within the account in which it is registered. CloudFormation marks any extensions you register as ``PRIVATE`` .
31508
- - ``PUBLIC`` : The extension is publicly visible and usable within any AWS account.
31537
+ - ``PRIVATE`` : The extension (resource) is only visible and usable within the account in which it is registered. CloudFormation marks any extensions you register as ``PRIVATE`` .
31538
+ - ``PUBLIC`` : The extension (resource) is publicly visible and usable within any AWS account.
31509
31539
 
31510
31540
  :cloudformationAttribute: Visibility
31511
31541
  '''
@@ -31648,15 +31678,18 @@ class CfnResourceVersion(
31648
31678
  class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnStack"):
31649
31679
  '''The ``AWS::CloudFormation::Stack`` resource nests a stack as a resource in a top-level template.
31650
31680
 
31681
+ For more information, see `Embed stacks within other stacks using nested stacks <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html>`_ in the *AWS CloudFormation User Guide* .
31682
+
31651
31683
  You can add output values from a nested stack within the containing template. You use the `GetAtt <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html>`_ function with the nested stack's logical name and the name of the output value in the nested stack in the format ``Outputs. *NestedStackOutputName*`` .
31652
- .. epigraph::
31653
31684
 
31654
- We strongly recommend that updates to nested stacks are run from the parent stack.
31685
+ We strongly recommend that updates to nested stacks are run from the parent stack.
31655
31686
 
31656
- When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but doesn't update the resources of unmodified nested stacks. For more information, see `CloudFormation stack updates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html>`_ .
31687
+ When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but doesn't update the resources of unmodified nested stacks.
31688
+
31689
+ You must acknowledge IAM capabilities for nested stacks that contain IAM resources. Also, verify that you have cancel update stack permissions, which is required if an update rolls back. For more information about IAM and CloudFormation , see `Controlling access with AWS Identity and Access Management <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html>`_ in the *AWS CloudFormation User Guide* .
31657
31690
  .. epigraph::
31658
31691
 
31659
- You must acknowledge IAM capabilities for nested stacks that contain IAM resources. Also, verify that you have cancel update stack permissions, which is required if an update rolls back. For more information about IAM and CloudFormation , see `Controlling access with AWS Identity and Access Management <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html>`_ . > A subset of ``AWS::CloudFormation::Stack`` resource type properties listed below are available to customers using AWS CloudFormation , AWS CDK , and AWS Cloud Control API to configure.
31692
+ A subset of ``AWS::CloudFormation::Stack`` resource type properties listed below are available to customers using CloudFormation , AWS CDK , and AWS Cloud Control API to configure.
31660
31693
 
31661
31694
  - ``NotificationARNs``
31662
31695
  - ``Parameters``
@@ -31664,7 +31697,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31664
31697
  - ``TemplateURL``
31665
31698
  - ``TimeoutInMinutes``
31666
31699
 
31667
- These properties can be configured only when using AWS Cloud Control API . This is because the below properties are set by the parent stack, and thus cannot be configured using AWS CloudFormation or AWS CDK but only AWS Cloud Control API .
31700
+ These properties can be configured only when using AWS Cloud Control API . This is because the below properties are set by the parent stack, and thus cannot be configured using CloudFormation or AWS CDK but only AWS Cloud Control API .
31668
31701
 
31669
31702
  - ``Capabilities``
31670
31703
  - ``Description``
@@ -31677,7 +31710,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31677
31710
  - ``StackStatusReason``
31678
31711
  - ``TemplateBody``
31679
31712
 
31680
- Customers that configure ``AWS::CloudFormation::Stack`` using AWS CloudFormation and AWS CDK can do so for nesting a CloudFormation stack as a resource in their top-level template.
31713
+ Customers that configure ``AWS::CloudFormation::Stack`` using CloudFormation and AWS CDK can do so for nesting a CloudFormation stack as a resource in their top-level template.
31681
31714
 
31682
31715
  These read-only properties can be accessed only when using AWS Cloud Control API .
31683
31716
 
@@ -31731,7 +31764,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31731
31764
  :param notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
31732
31765
  :param parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. .. epigraph:: If you use the ``Ref`` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type ``String`` . In other words, you can't pass values that are of type ``CommaDelimitedList`` to nested stacks. Conditional. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
31733
31766
  :param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
31734
- :param template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see `Template anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
31767
+ :param template_url: The URL of a file containing the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
31735
31768
  :param timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the ``CREATE_COMPLETE`` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the ``CREATE_COMPLETE`` state, it marks the nested stack resource as ``CREATE_COMPLETE`` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches ``CREATE_COMPLETE`` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. Updates aren't supported.
31736
31769
  '''
31737
31770
  if __debug__:
@@ -31823,8 +31856,6 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31823
31856
 
31824
31857
  For the first level of nested stacks, the root stack is also the parent stack.
31825
31858
 
31826
- For more information, see `Working with Nested Stacks <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html>`_ in the *AWS CloudFormation User Guide* .
31827
-
31828
31859
  :cloudformationAttribute: ParentId
31829
31860
  '''
31830
31861
  return typing.cast(builtins.str, jsii.get(self, "attrParentId"))
@@ -31834,8 +31865,6 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31834
31865
  def attr_root_id(self) -> builtins.str:
31835
31866
  '''For nested stacks--stacks created as resources for another stack--returns the stack ID of the top-level stack to which the nested stack ultimately belongs.
31836
31867
 
31837
- For more information, see `Working with Nested Stacks <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html>`_ in the *AWS CloudFormation User Guide* .
31838
-
31839
31868
  :cloudformationAttribute: RootId
31840
31869
  '''
31841
31870
  return typing.cast(builtins.str, jsii.get(self, "attrRootId"))
@@ -31919,7 +31948,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
31919
31948
  @builtins.property
31920
31949
  @jsii.member(jsii_name="templateUrl")
31921
31950
  def template_url(self) -> typing.Optional[builtins.str]:
31922
- '''Location of file containing the template body.'''
31951
+ '''The URL of a file containing the template body.'''
31923
31952
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "templateUrl"))
31924
31953
 
31925
31954
  @template_url.setter
@@ -32054,7 +32083,7 @@ class CfnStackSet(
32054
32083
  metaclass=jsii.JSIIMeta,
32055
32084
  jsii_type="aws-cdk-lib.CfnStackSet",
32056
32085
  ):
32057
- '''The ``AWS::CloudFormation::StackSet`` enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template.
32086
+ '''The ``AWS::CloudFormation::StackSet`` resource enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template.
32058
32087
 
32059
32088
  In the stack set, you specify the template to use, in addition to any parameters and capabilities that the template requires.
32060
32089
  .. epigraph::
@@ -32149,21 +32178,21 @@ class CfnStackSet(
32149
32178
  '''
32150
32179
  :param scope: Scope in which this resource is defined.
32151
32180
  :param id: Construct identifier for this resource (unique in its scope).
32152
- :param permission_model: Describes how the IAM roles required for stack set operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant Self-Managed Stack Set Permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations .
32181
+ :param permission_model: Describes how the IAM roles required for stack set operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for stack sets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
32153
32182
  :param stack_set_name: The name to associate with the stack set. The name must be unique in the Region where you create your stack set. .. epigraph:: The ``StackSetName`` property is required.
32154
- :param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Prerequisites: Granting Permissions for Stack Set Operations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html>`_ in the *AWS CloudFormation User Guide* . *Minimum* : ``20`` *Maximum* : ``2048``
32183
+ :param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . *Minimum* : ``20`` *Maximum* : ``2048``
32155
32184
  :param auto_deployment: [ ``Service-managed`` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
32156
32185
  :param call_as: [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for stack sets with self-managed permissions. - To create a stack set with service-managed permissions while signed in to the management account, specify ``SELF`` . - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify ``DELEGATED_ADMIN`` . Your AWS account must be registered as a delegated admin in the management account. For more information, see `Register a delegated administrator <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html>`_ in the *AWS CloudFormation User Guide* . Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators. *Valid Values* : ``SELF`` | ``DELEGATED_ADMIN``
32157
- :param capabilities: The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see `Acknowledging IAM Resources in AWS CloudFormation Templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities>`_ .
32186
+ :param capabilities: The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
32158
32187
  :param description: A description of the stack set. *Minimum* : ``1`` *Maximum* : ``1024``
32159
- :param execution_role_name: The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, AWS CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation. *Minimum* : ``1`` *Maximum* : ``64`` *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
32188
+ :param execution_role_name: The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the stack set operation. *Minimum* : ``1`` *Maximum* : ``64`` *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
32160
32189
  :param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your stack set's execution configuration while there are running or queued operations for that stack set. When inactive (default), StackSets performs one operation at a time in request order.
32161
- :param operation_preferences: The user-specified preferences for how AWS CloudFormation performs a stack set operation.
32190
+ :param operation_preferences: The user-specified preferences for how CloudFormation performs a stack set operation.
32162
32191
  :param parameters: The input parameters for the stack set template.
32163
32192
  :param stack_instances_group: A group of stack instances with parameters in some specific accounts and Regions.
32164
32193
  :param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 50 tags. If you don't specify this parameter, CloudFormation doesn't modify the stack's tags. If you specify an empty value, CloudFormation removes all associated tags.
32165
32194
  :param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through ``TemplateUrl`` instead.
32166
- :param template_url: Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to `Template Anatomy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html>`_ in the AWS CloudFormation User Guide. Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
32195
+ :param template_url: The URL of a file containing the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` . Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
32167
32196
  '''
32168
32197
  if __debug__:
32169
32198
  type_hints = typing.get_type_hints(_typecheckingstub__18f5cbcbd69d140eff69172745aeef070057c3c18635b8197f16a411bf031298)
@@ -32366,7 +32395,7 @@ class CfnStackSet(
32366
32395
  def operation_preferences(
32367
32396
  self,
32368
32397
  ) -> typing.Optional[typing.Union[IResolvable, "CfnStackSet.OperationPreferencesProperty"]]:
32369
- '''The user-specified preferences for how AWS CloudFormation performs a stack set operation.'''
32398
+ '''The user-specified preferences for how CloudFormation performs a stack set operation.'''
32370
32399
  return typing.cast(typing.Optional[typing.Union[IResolvable, "CfnStackSet.OperationPreferencesProperty"]], jsii.get(self, "operationPreferences"))
32371
32400
 
32372
32401
  @operation_preferences.setter
@@ -32444,7 +32473,7 @@ class CfnStackSet(
32444
32473
  @builtins.property
32445
32474
  @jsii.member(jsii_name="templateUrl")
32446
32475
  def template_url(self) -> typing.Optional[builtins.str]:
32447
- '''Location of file containing the template body.'''
32476
+ '''The URL of a file containing the template body.'''
32448
32477
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "templateUrl"))
32449
32478
 
32450
32479
  @template_url.setter
@@ -32555,9 +32584,9 @@ class CfnStackSet(
32555
32584
  '''The AWS OrganizationalUnitIds or Accounts for which to create stack instances in the specified Regions.
32556
32585
 
32557
32586
  :param account_filter_type: Limit deployment targets to individual accounts or include additional accounts with provided OUs. The following is a list of possible values for the ``AccountFilterType`` operation. - ``INTERSECTION`` : StackSet deploys to the accounts specified in the ``Accounts`` parameter. - ``DIFFERENCE`` : StackSet deploys to the OU, excluding the accounts specified in the ``Accounts`` parameter. - ``UNION`` StackSet deploys to the OU, and the accounts specified in the ``Accounts`` parameter. ``UNION`` is not supported for create operations when using StackSet as a resource.
32558
- :param accounts: The names of one or more AWS accounts for which you want to deploy stack set updates. *Pattern* : ``^[0-9]{12}$``
32559
- :param accounts_url: Returns the value of the ``AccountsUrl`` property.
32560
- :param organizational_unit_ids: The organization root ID or organizational unit (OU) IDs to which StackSets deploys. *Pattern* : ``^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$``
32587
+ :param accounts: The account IDs of the AWS accounts . If you have many account numbers, you can provide those accounts using the ``AccountsUrl`` property instead. *Pattern* : ``^[0-9]{12}$``
32588
+ :param accounts_url: The Amazon S3 URL path to a file that contains a list of AWS account IDs. The file format must be either ``.csv`` or ``.txt`` , and the data can be comma-separated or new-line-separated. There is currently a 10MB limit for the data (approximately 800,000 accounts).
32589
+ :param organizational_unit_ids: The organization root ID or organizational unit (OU) IDs. *Pattern* : ``^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$``
32561
32590
 
32562
32591
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html
32563
32592
  :exampleMetadata: fixture=_generated
@@ -32608,7 +32637,9 @@ class CfnStackSet(
32608
32637
 
32609
32638
  @builtins.property
32610
32639
  def accounts(self) -> typing.Optional[typing.List[builtins.str]]:
32611
- '''The names of one or more AWS accounts for which you want to deploy stack set updates.
32640
+ '''The account IDs of the AWS accounts .
32641
+
32642
+ If you have many account numbers, you can provide those accounts using the ``AccountsUrl`` property instead.
32612
32643
 
32613
32644
  *Pattern* : ``^[0-9]{12}$``
32614
32645
 
@@ -32619,7 +32650,9 @@ class CfnStackSet(
32619
32650
 
32620
32651
  @builtins.property
32621
32652
  def accounts_url(self) -> typing.Optional[builtins.str]:
32622
- '''Returns the value of the ``AccountsUrl`` property.
32653
+ '''The Amazon S3 URL path to a file that contains a list of AWS account IDs.
32654
+
32655
+ The file format must be either ``.csv`` or ``.txt`` , and the data can be comma-separated or new-line-separated. There is currently a 10MB limit for the data (approximately 800,000 accounts).
32623
32656
 
32624
32657
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accountsurl
32625
32658
  '''
@@ -32628,7 +32661,7 @@ class CfnStackSet(
32628
32661
 
32629
32662
  @builtins.property
32630
32663
  def organizational_unit_ids(self) -> typing.Optional[typing.List[builtins.str]]:
32631
- '''The organization root ID or organizational unit (OU) IDs to which StackSets deploys.
32664
+ '''The organization root ID or organizational unit (OU) IDs.
32632
32665
 
32633
32666
  *Pattern* : ``^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$``
32634
32667
 
@@ -32737,15 +32770,15 @@ class CfnStackSet(
32737
32770
  region_concurrency_type: typing.Optional[builtins.str] = None,
32738
32771
  region_order: typing.Optional[typing.Sequence[builtins.str]] = None,
32739
32772
  ) -> None:
32740
- '''The user-specified preferences for how AWS CloudFormation performs a stack set operation.
32773
+ '''The user-specified preferences for how CloudFormation performs a stack set operation.
32741
32774
 
32742
- For more information on maximum concurrent accounts and failure tolerance, see `Stack set operation options <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options>`_ .
32775
+ For more information on maximum concurrent accounts and failure tolerance, see `Stack set operation options <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options>`_ in the *AWS CloudFormation User Guide* .
32743
32776
 
32744
32777
  :param concurrency_mode: Specifies how the concurrency level behaves during the operation execution. - ``STRICT_FAILURE_TOLERANCE`` : This option dynamically lowers the concurrency level to ensure the number of failed accounts never exceeds the value of ``FailureToleranceCount`` +1. The initial actual concurrency is set to the lower of either the value of the ``MaxConcurrentCount`` , or the value of ``FailureToleranceCount`` +1. The actual concurrency is then reduced proportionally by the number of failures. This is the default behavior. If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. - ``SOFT_FAILURE_TOLERANCE`` : This option decouples ``FailureToleranceCount`` from the actual concurrency. This allows stack set operations to run at the concurrency level set by the ``MaxConcurrentCount`` value, or ``MaxConcurrentPercentage`` , regardless of the number of failures.
32745
- :param failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` (but not both).
32746
- :param failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` , but not both.
32778
+ :param failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` (but not both).
32779
+ :param failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` , but not both.
32747
32780
  :param max_concurrent_count: The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of ``FailureToleranceCount`` . ``MaxConcurrentCount`` is at most one more than the ``FailureToleranceCount`` . Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. Conditional: You must specify either ``MaxConcurrentCount`` or ``MaxConcurrentPercentage`` , but not both.
32748
- :param max_concurrent_percentage: The maximum percentage of accounts in which to perform this operation at one time. When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. Conditional: You must specify either ``MaxConcurrentCount`` or ``MaxConcurrentPercentage`` , but not both.
32781
+ :param max_concurrent_percentage: The maximum percentage of accounts in which to perform this operation at one time. When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. Conditional: You must specify either ``MaxConcurrentCount`` or ``MaxConcurrentPercentage`` , but not both.
32749
32782
  :param region_concurrency_type: The concurrency type of deploying StackSets operations in Regions, could be in parallel or one Region at a time.
32750
32783
  :param region_order: The order of the Regions where you want to perform the stack operation. .. epigraph:: ``RegionOrder`` isn't followed if ``AutoDeployment`` is enabled.
32751
32784
 
@@ -32810,9 +32843,9 @@ class CfnStackSet(
32810
32843
 
32811
32844
  @builtins.property
32812
32845
  def failure_tolerance_count(self) -> typing.Optional[jsii.Number]:
32813
- '''The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region.
32846
+ '''The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region.
32814
32847
 
32815
- If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.
32848
+ If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
32816
32849
 
32817
32850
  Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` (but not both).
32818
32851
 
@@ -32823,11 +32856,11 @@ class CfnStackSet(
32823
32856
 
32824
32857
  @builtins.property
32825
32858
  def failure_tolerance_percentage(self) -> typing.Optional[jsii.Number]:
32826
- '''The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region.
32859
+ '''The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region.
32827
32860
 
32828
- If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.
32861
+ If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
32829
32862
 
32830
- When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number.
32863
+ When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number.
32831
32864
 
32832
32865
  Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` , but not both.
32833
32866
 
@@ -32855,7 +32888,7 @@ class CfnStackSet(
32855
32888
  def max_concurrent_percentage(self) -> typing.Optional[jsii.Number]:
32856
32889
  '''The maximum percentage of accounts in which to perform this operation at one time.
32857
32890
 
32858
- When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.
32891
+ When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.
32859
32892
 
32860
32893
  Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.
32861
32894
 
@@ -32916,7 +32949,7 @@ class CfnStackSet(
32916
32949
  ) -> None:
32917
32950
  '''The Parameter data type.
32918
32951
 
32919
- :param parameter_key: The key associated with the parameter. If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that's specified in your template.
32952
+ :param parameter_key: The key associated with the parameter. If you don't specify a key and value for a particular parameter, CloudFormation uses the default value that's specified in your template.
32920
32953
  :param parameter_value: The input value associated with the parameter.
32921
32954
 
32922
32955
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html
@@ -32946,7 +32979,7 @@ class CfnStackSet(
32946
32979
  def parameter_key(self) -> builtins.str:
32947
32980
  '''The key associated with the parameter.
32948
32981
 
32949
- If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that's specified in your template.
32982
+ If you don't specify a key and value for a particular parameter, CloudFormation uses the default value that's specified in your template.
32950
32983
 
32951
32984
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html#cfn-cloudformation-stackset-parameter-parameterkey
32952
32985
  '''
@@ -33086,9 +33119,9 @@ class CfnTypeActivation(
33086
33119
  metaclass=jsii.JSIIMeta,
33087
33120
  jsii_type="aws-cdk-lib.CfnTypeActivation",
33088
33121
  ):
33089
- '''Activates a public third-party extension, making it available for use in stack templates.
33122
+ '''The ``AWS::CloudFormation::TypeActivation`` resource activates a public third-party extension, making it available for use in stack templates.
33090
33123
 
33091
- Once you have activated a public third-party extension in your account and Region, use `SetTypeConfiguration <https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html>`_ to specify configuration properties for the extension. For more information, see `Using public extensions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html>`_ in the *AWS CloudFormation User Guide* .
33124
+ For information about the CloudFormation registry, see `Managing extensions with the CloudFormation registry <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html>`_ in the *AWS CloudFormation User Guide* .
33092
33125
 
33093
33126
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html
33094
33127
  :cloudformationResource: AWS::CloudFormation::TypeActivation
@@ -33425,21 +33458,12 @@ class CfnWaitCondition(
33425
33458
  metaclass=jsii.JSIIMeta,
33426
33459
  jsii_type="aws-cdk-lib.CfnWaitCondition",
33427
33460
  ):
33428
- '''.. epigraph::
33461
+ '''The ``AWS::CloudFormation::WaitCondition`` resource provides a way to coordinate stack resource creation with configuration actions that are external to the stack creation or to track the status of a configuration process.
33429
33462
 
33430
- For Amazon EC2 and Auto Scaling resources, we recommend that you use a ``CreationPolicy`` attribute instead of wait conditions.
33431
-
33432
- Add a CreationPolicy attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully.
33433
-
33434
- You can use a wait condition for situations like the following:
33435
-
33436
- - To coordinate stack resource creation with configuration actions that are external to the stack creation.
33437
- - To track the status of a configuration process.
33438
-
33439
- For these situations, we recommend that you associate a `CreationPolicy <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html>`_ attribute with the wait condition so that you don't have to use a wait condition handle. For more information and an example, see `Creating wait conditions in a template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html>`_ . If you use a CreationPolicy with a wait condition, don't specify any of the wait condition's properties.
33463
+ In these situations, we recommend that you associate a ``CreationPolicy`` attribute with the wait condition instead of using a wait condition handle. For more information and an example, see `CreationPolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html>`_ in the *AWS CloudFormation User Guide* . If you use a ``CreationPolicy`` with a wait condition, don't specify any of the wait condition's properties.
33440
33464
  .. epigraph::
33441
33465
 
33442
- If you use the `VPC endpoints <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html>`_ feature, resources in the VPC that respond to wait conditions must have access to CloudFormation , specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Resources must send wait condition responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see `Setting up VPC endpoints for AWS CloudFormation <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html>`_ .
33466
+ If you use AWS PrivateLink , resources in the VPC that respond to wait conditions must have access to CloudFormation , specific Amazon S3 buckets. Resources must send wait condition responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see `Access CloudFormation using an interface endpoint ( AWS PrivateLink ) <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/vpc-interface-endpoints.html>`_ in the *AWS CloudFormation User Guide* . > For Amazon EC2 and Auto Scaling resources, we recommend that you use a ``CreationPolicy`` attribute instead of wait conditions. Add a ``CreationPolicy`` attribute to those resources, and use the ``cfn-signal`` helper script to signal when an instance creation process has completed successfully.
33443
33467
 
33444
33468
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html
33445
33469
  :cloudformationResource: AWS::CloudFormation::WaitCondition
@@ -33471,7 +33495,7 @@ class CfnWaitCondition(
33471
33495
  :param scope: Scope in which this resource is defined.
33472
33496
  :param id: Construct identifier for this resource (unique in its scope).
33473
33497
  :param count: The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. Updates aren't supported.
33474
- :param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an ```AWS::CloudFormation::WaitConditionHandle`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
33498
+ :param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
33475
33499
  :param timeout: The length of time (in seconds) to wait for the number of signals that the ``Count`` property specifies. ``Timeout`` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). Updates aren't supported.
33476
33500
  '''
33477
33501
  if __debug__:
@@ -33579,19 +33603,15 @@ class CfnWaitConditionHandle(
33579
33603
  metaclass=jsii.JSIIMeta,
33580
33604
  jsii_type="aws-cdk-lib.CfnWaitConditionHandle",
33581
33605
  ):
33582
- '''.. epigraph::
33606
+ '''The ``AWS::CloudFormation::WaitConditionHandle`` type has no properties.
33583
33607
 
33584
- For Amazon EC2 and Auto Scaling resources, we recommend that you use a ``CreationPolicy`` attribute instead of wait conditions.
33608
+ When you reference the ``WaitConditionHandle`` resource by using the ``Ref`` function, CloudFormation returns a presigned URL. You pass this URL to applications or scripts that are running on your Amazon EC2 instances to send signals to that URL. An associated ``AWS::CloudFormation::WaitCondition`` resource checks the URL for the required number of success signals or for a failure signal.
33585
33609
 
33586
- Add a ``CreationPolicy`` attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully.
33587
- .. epigraph::
33588
-
33589
- For more information, see `Deploying applications on Amazon EC2 with AWS CloudFormation <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/deploying.applications.html>`_ .
33610
+ For more information, see `Create wait conditions in a CloudFormation template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html>`_ in the *AWS CloudFormation User Guide* .
33590
33611
 
33591
- The ``AWS::CloudFormation::WaitConditionHandle`` type has no properties. When you reference the ``WaitConditionHandle`` resource by using the ``Ref`` function, AWS CloudFormation returns a presigned URL. You pass this URL to applications or scripts that are running on your Amazon EC2 instances to send signals to that URL. An associated ``AWS::CloudFormation::WaitCondition`` resource checks the URL for the required number of success signals or for a failure signal.
33592
- .. epigraph::
33612
+ Anytime you add a ``WaitCondition`` resource during a stack update or update a resource with a wait condition, you must associate the wait condition with a new ``WaitConditionHandle`` resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command.
33593
33613
 
33594
- Anytime you add a ``WaitCondition`` resource during a stack update or update a resource with a wait condition, you must associate the wait condition with a new ``WaitConditionHandle`` resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. > Updates aren't supported for this resource.
33614
+ Updates aren't supported for this resource.
33595
33615
 
33596
33616
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html
33597
33617
  :cloudformationResource: AWS::CloudFormation::WaitConditionHandle
@@ -33716,6 +33736,7 @@ class CustomResource(
33716
33736
  properties: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
33717
33737
  removal_policy: typing.Optional[RemovalPolicy] = None,
33718
33738
  resource_type: typing.Optional[builtins.str] = None,
33739
+ service_timeout: typing.Optional[Duration] = None,
33719
33740
  ) -> None:
33720
33741
  '''
33721
33742
  :param scope: -
@@ -33725,6 +33746,7 @@ class CustomResource(
33725
33746
  :param properties: Properties to pass to the Lambda. Default: - No properties.
33726
33747
  :param removal_policy: The policy to apply when this resource is removed from the application. Default: cdk.RemovalPolicy.Destroy
33727
33748
  :param resource_type: For custom resources, you can specify AWS::CloudFormation::CustomResource (the default) as the resource type, or you can specify your own resource type name. For example, you can use "Custom::MyCustomResourceTypeName". Custom resource type names must begin with "Custom::" and can include alphanumeric characters and the following characters: _@-. You can specify a custom resource type name up to a maximum length of 60 characters. You cannot change the type during an update. Using your own resource type names helps you quickly differentiate the types of custom resources in your stack. For example, if you had two custom resources that conduct two different ping tests, you could name their type as Custom::PingTester to make them easily identifiable as ping testers (instead of using AWS::CloudFormation::CustomResource). Default: - AWS::CloudFormation::CustomResource
33749
+ :param service_timeout: The maximum time that can elapse before a custom resource operation times out. The value must be between 1 second and 3600 seconds. Default: Duration.seconds(3600)
33728
33750
  '''
33729
33751
  if __debug__:
33730
33752
  type_hints = typing.get_type_hints(_typecheckingstub__5c89cdcdef1901fae8effe187c732f9fbf4ec5793ae2938cebb924671df2c26f)
@@ -33736,6 +33758,7 @@ class CustomResource(
33736
33758
  properties=properties,
33737
33759
  removal_policy=removal_policy,
33738
33760
  resource_type=resource_type,
33761
+ service_timeout=service_timeout,
33739
33762
  )
33740
33763
 
33741
33764
  jsii.create(self.__class__, self, [scope, id, props])
@@ -36390,6 +36413,7 @@ __all__ = [
36390
36413
  "aws_paymentcryptography",
36391
36414
  "aws_pcaconnectorad",
36392
36415
  "aws_pcaconnectorscep",
36416
+ "aws_pcs",
36393
36417
  "aws_personalize",
36394
36418
  "aws_pinpoint",
36395
36419
  "aws_pinpointemail",
@@ -36425,6 +36449,7 @@ __all__ = [
36425
36449
  "aws_s3express",
36426
36450
  "aws_s3objectlambda",
36427
36451
  "aws_s3outposts",
36452
+ "aws_s3tables",
36428
36453
  "aws_sagemaker",
36429
36454
  "aws_sam",
36430
36455
  "aws_scheduler",
@@ -36681,6 +36706,7 @@ from . import aws_panorama
36681
36706
  from . import aws_paymentcryptography
36682
36707
  from . import aws_pcaconnectorad
36683
36708
  from . import aws_pcaconnectorscep
36709
+ from . import aws_pcs
36684
36710
  from . import aws_personalize
36685
36711
  from . import aws_pinpoint
36686
36712
  from . import aws_pinpointemail
@@ -36716,6 +36742,7 @@ from . import aws_s3_notifications
36716
36742
  from . import aws_s3express
36717
36743
  from . import aws_s3objectlambda
36718
36744
  from . import aws_s3outposts
36745
+ from . import aws_s3tables
36719
36746
  from . import aws_sagemaker
36720
36747
  from . import aws_sam
36721
36748
  from . import aws_scheduler
@@ -37835,6 +37862,7 @@ def _typecheckingstub__9dc07c260551c6e828a1b20303b5a44e226e85166f6249c94e31d0271
37835
37862
  properties: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
37836
37863
  removal_policy: typing.Optional[RemovalPolicy] = None,
37837
37864
  resource_type: typing.Optional[builtins.str] = None,
37865
+ service_timeout: typing.Optional[Duration] = None,
37838
37866
  ) -> None:
37839
37867
  """Type checking stubs"""
37840
37868
  pass
@@ -41098,6 +41126,7 @@ def _typecheckingstub__5c89cdcdef1901fae8effe187c732f9fbf4ec5793ae2938cebb924671
41098
41126
  properties: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
41099
41127
  removal_policy: typing.Optional[RemovalPolicy] = None,
41100
41128
  resource_type: typing.Optional[builtins.str] = None,
41129
+ service_timeout: typing.Optional[Duration] = None,
41101
41130
  ) -> None:
41102
41131
  """Type checking stubs"""
41103
41132
  pass