aws-cdk-lib 2.165.0__py3-none-any.whl → 2.167.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 (60) hide show
  1. aws_cdk/__init__.py +1 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.165.0.jsii.tgz → aws-cdk-lib@2.167.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +9 -0
  5. aws_cdk/aws_appsync/__init__.py +2271 -359
  6. aws_cdk/aws_backup/__init__.py +57 -31
  7. aws_cdk/aws_bedrock/__init__.py +994 -197
  8. aws_cdk/aws_cleanrooms/__init__.py +66 -5
  9. aws_cdk/aws_cloudfront/__init__.py +21 -3
  10. aws_cdk/aws_cloudfront/experimental/__init__.py +3 -3
  11. aws_cdk/aws_codebuild/__init__.py +59 -29
  12. aws_cdk/aws_codepipeline/__init__.py +98 -5
  13. aws_cdk/aws_codestar/__init__.py +1 -1
  14. aws_cdk/aws_cognito/__init__.py +0 -8
  15. aws_cdk/aws_connect/__init__.py +1 -1
  16. aws_cdk/aws_datasync/__init__.py +60 -7
  17. aws_cdk/aws_devopsguru/__init__.py +2 -2
  18. aws_cdk/aws_dms/__init__.py +762 -0
  19. aws_cdk/aws_dynamodb/__init__.py +13 -8
  20. aws_cdk/aws_ec2/__init__.py +316 -11
  21. aws_cdk/aws_ecs/__init__.py +20 -7
  22. aws_cdk/aws_elasticache/__init__.py +16 -9
  23. aws_cdk/aws_elasticloadbalancingv2/__init__.py +73 -46
  24. aws_cdk/aws_emrserverless/__init__.py +35 -33
  25. aws_cdk/aws_events/__init__.py +25 -30
  26. aws_cdk/aws_gamelift/__init__.py +52 -40
  27. aws_cdk/aws_inspectorv2/__init__.py +6 -12
  28. aws_cdk/aws_kinesis/__init__.py +297 -1
  29. aws_cdk/aws_kms/__init__.py +2 -0
  30. aws_cdk/aws_lambda/__init__.py +339 -22
  31. aws_cdk/aws_lambda_nodejs/__init__.py +3 -3
  32. aws_cdk/aws_logs/__init__.py +214 -0
  33. aws_cdk/aws_m2/__init__.py +58 -58
  34. aws_cdk/aws_mediapackagev2/__init__.py +191 -0
  35. aws_cdk/aws_networkfirewall/__init__.py +14 -5
  36. aws_cdk/aws_nimblestudio/__init__.py +6 -103
  37. aws_cdk/aws_opensearchservice/__init__.py +969 -0
  38. aws_cdk/aws_pipes/__init__.py +1 -1
  39. aws_cdk/aws_qbusiness/__init__.py +2 -0
  40. aws_cdk/aws_quicksight/__init__.py +481 -10
  41. aws_cdk/aws_rds/__init__.py +667 -16
  42. aws_cdk/aws_route53/__init__.py +38 -12
  43. aws_cdk/aws_s3_assets/__init__.py +37 -0
  44. aws_cdk/aws_s3_deployment/__init__.py +18 -7
  45. aws_cdk/aws_sagemaker/__init__.py +61 -25
  46. aws_cdk/aws_secretsmanager/__init__.py +2 -1
  47. aws_cdk/aws_servicecatalog/__init__.py +52 -4
  48. aws_cdk/aws_ses/__init__.py +22 -1
  49. aws_cdk/aws_sqs/__init__.py +12 -9
  50. aws_cdk/aws_stepfunctions/__init__.py +8 -0
  51. aws_cdk/aws_synthetics/__init__.py +133 -1
  52. aws_cdk/aws_timestream/__init__.py +41 -0
  53. aws_cdk/aws_wisdom/__init__.py +2348 -54
  54. aws_cdk/triggers/__init__.py +3 -3
  55. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/METADATA +1 -1
  56. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/RECORD +60 -60
  57. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/WHEEL +1 -1
  58. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/LICENSE +0 -0
  59. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/NOTICE +0 -0
  60. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/top_level.txt +0 -0
@@ -6325,7 +6325,7 @@ class CfnDomain(
6325
6325
  :param vpc_id: The ID of the Amazon Virtual Private Cloud (Amazon VPC) that Studio uses for communication. *Length Constraints* : Maximum length of 32. *Pattern* : ``[-0-9a-zA-Z]+``
6326
6326
  :param app_network_access_type: Specifies the VPC used for non-EFS traffic. The default value is ``PublicInternetOnly`` . - ``PublicInternetOnly`` - Non-EFS traffic is through a VPC managed by Amazon SageMaker , which allows direct internet access - ``VpcOnly`` - All Studio traffic is through the specified VPC and subnets *Valid Values* : ``PublicInternetOnly | VpcOnly``
6327
6327
  :param app_security_group_management: The entity that creates and manages the required security groups for inter-app communication in ``VpcOnly`` mode. Required when ``CreateDomain.AppNetworkAccessType`` is ``VpcOnly`` and ``DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn`` is provided. If setting up the domain for use with RStudio, this value must be set to ``Service`` . *Allowed Values* : ``Service`` | ``Customer``
6328
- :param default_space_settings: A collection of settings that apply to spaces created in the domain.
6328
+ :param default_space_settings: The default settings for shared spaces that users create in the domain. SageMaker applies these settings only to shared spaces. It doesn't apply them to private spaces.
6329
6329
  :param domain_settings: A collection of settings that apply to the ``SageMaker Domain`` . These settings are specified through the ``CreateDomain`` API call.
6330
6330
  :param kms_key_id: SageMaker uses AWS KMS to encrypt the EFS volume attached to the Domain with an AWS managed customer master key (CMK) by default. For more control, specify a customer managed CMK. *Length Constraints* : Maximum length of 2048. *Pattern* : ``.*``
6331
6331
  :param tag_propagation: Indicates whether the tags added to Domain, User Profile and Space entity is propagated to all SageMaker resources.
@@ -6565,7 +6565,7 @@ class CfnDomain(
6565
6565
  def default_space_settings(
6566
6566
  self,
6567
6567
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.DefaultSpaceSettingsProperty"]]:
6568
- '''A collection of settings that apply to spaces created in the domain.'''
6568
+ '''The default settings for shared spaces that users create in the domain.'''
6569
6569
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.DefaultSpaceSettingsProperty"]], jsii.get(self, "defaultSpaceSettings"))
6570
6570
 
6571
6571
  @default_space_settings.setter
@@ -7207,7 +7207,9 @@ class CfnDomain(
7207
7207
  security_groups: typing.Optional[typing.Sequence[builtins.str]] = None,
7208
7208
  space_storage_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDomain.DefaultSpaceStorageSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7209
7209
  ) -> None:
7210
- '''A collection of settings that apply to spaces created in the domain.
7210
+ '''The default settings for shared spaces that users create in the domain.
7211
+
7212
+ SageMaker applies these settings only to shared spaces. It doesn't apply them to private spaces.
7211
7213
 
7212
7214
  :param execution_role: The ARN of the execution role for the space.
7213
7215
  :param custom_file_system_configs: The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio.
@@ -7588,7 +7590,7 @@ class CfnDomain(
7588
7590
  These settings are specified through the ``CreateDomain`` API call.
7589
7591
 
7590
7592
  :param docker_settings: A collection of settings that configure the domain's Docker interaction.
7591
- :param execution_role_identity_config: The configuration for attaching a SageMaker user profile name to the execution role as a sts:SourceIdentity key.
7593
+ :param execution_role_identity_config: The configuration for attaching a SageMaker user profile name to the execution role as a `sts:SourceIdentity key <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html>`_ .
7592
7594
  :param r_studio_server_pro_domain_settings: A collection of settings that configure the ``RStudioServerPro`` Domain-level app.
7593
7595
  :param security_group_ids: The security groups for the Amazon Virtual Private Cloud that the ``Domain`` uses for communication between Domain-level apps and user apps.
7594
7596
 
@@ -7652,7 +7654,7 @@ class CfnDomain(
7652
7654
 
7653
7655
  @builtins.property
7654
7656
  def execution_role_identity_config(self) -> typing.Optional[builtins.str]:
7655
- '''The configuration for attaching a SageMaker user profile name to the execution role as a sts:SourceIdentity key.
7657
+ '''The configuration for attaching a SageMaker user profile name to the execution role as a `sts:SourceIdentity key <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html>`_ .
7656
7658
 
7657
7659
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-domainsettings.html#cfn-sagemaker-domain-domainsettings-executionroleidentityconfig
7658
7660
  '''
@@ -8822,19 +8824,19 @@ class CfnDomain(
8822
8824
 
8823
8825
  ``SecurityGroups`` is aggregated when specified in both calls. For all other settings in ``UserSettings`` , the values specified in ``CreateUserProfile`` take precedence over those specified in ``CreateDomain`` .
8824
8826
 
8825
- :param execution_role: The execution role for the user.
8826
- :param code_editor_app_settings: The Code Editor application settings.
8827
- :param custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.
8828
- :param custom_posix_user_config: Details about the POSIX identity that is used for file system operations.
8827
+ :param execution_role: The execution role for the user. SageMaker applies this setting only to private spaces that the user creates in the domain. SageMaker doesn't apply this setting to shared spaces.
8828
+ :param code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8829
+ :param custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8830
+ :param custom_posix_user_config: Details about the POSIX identity that is used for file system operations. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8829
8831
  :param default_landing_uri: The default experience that the user is directed to when accessing the domain. The supported values are:. - ``studio::`` : Indicates that Studio is the default experience. This value can only be passed if ``StudioWebPortal`` is set to ``ENABLED`` . - ``app:JupyterServer:`` : Indicates that Studio Classic is the default experience.
8830
- :param jupyter_lab_app_settings: The settings for the JupyterLab application.
8832
+ :param jupyter_lab_app_settings: The settings for the JupyterLab application. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8831
8833
  :param jupyter_server_app_settings: The Jupyter server's app settings.
8832
8834
  :param kernel_gateway_app_settings: The kernel gateway app settings.
8833
8835
  :param r_session_app_settings: A collection of settings that configure the ``RSessionGateway`` app.
8834
8836
  :param r_studio_server_pro_app_settings: A collection of settings that configure user interaction with the ``RStudioServerPro`` app.
8835
- :param security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that the domain uses for communication. Optional when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``PublicInternetOnly`` . Required when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``VpcOnly`` , unless specified as part of the ``DefaultUserSettings`` for the domain. Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.
8837
+ :param security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that the domain uses for communication. Optional when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``PublicInternetOnly`` . Required when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``VpcOnly`` , unless specified as part of the ``DefaultUserSettings`` for the domain. Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8836
8838
  :param sharing_settings: Specifies options for sharing Amazon SageMaker Studio notebooks.
8837
- :param space_storage_settings: The storage settings for a space.
8839
+ :param space_storage_settings: The storage settings for a space. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
8838
8840
  :param studio_web_portal: Whether the user can access Studio. If this value is set to ``DISABLED`` , the user cannot access Studio, even if that is the default experience for the domain.
8839
8841
  :param studio_web_portal_settings: Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.
8840
8842
 
@@ -9031,6 +9033,8 @@ class CfnDomain(
9031
9033
  def execution_role(self) -> builtins.str:
9032
9034
  '''The execution role for the user.
9033
9035
 
9036
+ SageMaker applies this setting only to private spaces that the user creates in the domain. SageMaker doesn't apply this setting to shared spaces.
9037
+
9034
9038
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-executionrole
9035
9039
  '''
9036
9040
  result = self._values.get("execution_role")
@@ -9043,6 +9047,8 @@ class CfnDomain(
9043
9047
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.CodeEditorAppSettingsProperty"]]:
9044
9048
  '''The Code Editor application settings.
9045
9049
 
9050
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9051
+
9046
9052
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-codeeditorappsettings
9047
9053
  '''
9048
9054
  result = self._values.get("code_editor_app_settings")
@@ -9056,6 +9062,8 @@ class CfnDomain(
9056
9062
 
9057
9063
  Permitted users can access this file system in Amazon SageMaker Studio.
9058
9064
 
9065
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9066
+
9059
9067
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-customfilesystemconfigs
9060
9068
  '''
9061
9069
  result = self._values.get("custom_file_system_configs")
@@ -9067,6 +9075,8 @@ class CfnDomain(
9067
9075
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.CustomPosixUserConfigProperty"]]:
9068
9076
  '''Details about the POSIX identity that is used for file system operations.
9069
9077
 
9078
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9079
+
9070
9080
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-customposixuserconfig
9071
9081
  '''
9072
9082
  result = self._values.get("custom_posix_user_config")
@@ -9090,6 +9100,8 @@ class CfnDomain(
9090
9100
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.JupyterLabAppSettingsProperty"]]:
9091
9101
  '''The settings for the JupyterLab application.
9092
9102
 
9103
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9104
+
9093
9105
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-jupyterlabappsettings
9094
9106
  '''
9095
9107
  result = self._values.get("jupyter_lab_app_settings")
@@ -9149,6 +9161,8 @@ class CfnDomain(
9149
9161
 
9150
9162
  Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.
9151
9163
 
9164
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9165
+
9152
9166
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-securitygroups
9153
9167
  '''
9154
9168
  result = self._values.get("security_groups")
@@ -9171,6 +9185,8 @@ class CfnDomain(
9171
9185
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDomain.DefaultSpaceStorageSettingsProperty"]]:
9172
9186
  '''The storage settings for a space.
9173
9187
 
9188
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
9189
+
9174
9190
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-usersettings.html#cfn-sagemaker-domain-usersettings-spacestoragesettings
9175
9191
  '''
9176
9192
  result = self._values.get("space_storage_settings")
@@ -9256,7 +9272,7 @@ class CfnDomainProps:
9256
9272
  :param vpc_id: The ID of the Amazon Virtual Private Cloud (Amazon VPC) that Studio uses for communication. *Length Constraints* : Maximum length of 32. *Pattern* : ``[-0-9a-zA-Z]+``
9257
9273
  :param app_network_access_type: Specifies the VPC used for non-EFS traffic. The default value is ``PublicInternetOnly`` . - ``PublicInternetOnly`` - Non-EFS traffic is through a VPC managed by Amazon SageMaker , which allows direct internet access - ``VpcOnly`` - All Studio traffic is through the specified VPC and subnets *Valid Values* : ``PublicInternetOnly | VpcOnly``
9258
9274
  :param app_security_group_management: The entity that creates and manages the required security groups for inter-app communication in ``VpcOnly`` mode. Required when ``CreateDomain.AppNetworkAccessType`` is ``VpcOnly`` and ``DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn`` is provided. If setting up the domain for use with RStudio, this value must be set to ``Service`` . *Allowed Values* : ``Service`` | ``Customer``
9259
- :param default_space_settings: A collection of settings that apply to spaces created in the domain.
9275
+ :param default_space_settings: The default settings for shared spaces that users create in the domain. SageMaker applies these settings only to shared spaces. It doesn't apply them to private spaces.
9260
9276
  :param domain_settings: A collection of settings that apply to the ``SageMaker Domain`` . These settings are specified through the ``CreateDomain`` API call.
9261
9277
  :param kms_key_id: SageMaker uses AWS KMS to encrypt the EFS volume attached to the Domain with an AWS managed customer master key (CMK) by default. For more control, specify a customer managed CMK. *Length Constraints* : Maximum length of 2048. *Pattern* : ``.*``
9262
9278
  :param tag_propagation: Indicates whether the tags added to Domain, User Profile and Space entity is propagated to all SageMaker resources.
@@ -9646,7 +9662,9 @@ class CfnDomainProps:
9646
9662
  def default_space_settings(
9647
9663
  self,
9648
9664
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDomain.DefaultSpaceSettingsProperty]]:
9649
- '''A collection of settings that apply to spaces created in the domain.
9665
+ '''The default settings for shared spaces that users create in the domain.
9666
+
9667
+ SageMaker applies these settings only to shared spaces. It doesn't apply them to private spaces.
9650
9668
 
9651
9669
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html#cfn-sagemaker-domain-defaultspacesettings
9652
9670
  '''
@@ -44453,9 +44471,9 @@ class CfnStudioLifecycleConfig(
44453
44471
  :param scope: Scope in which this resource is defined.
44454
44472
  :param id: Construct identifier for this resource (unique in its scope).
44455
44473
  :param studio_lifecycle_config_app_type: The App type to which the Lifecycle Configuration is attached.
44456
- :param studio_lifecycle_config_content: The content of your Amazon SageMaker Studio Lifecycle Configuration script.
44474
+ :param studio_lifecycle_config_content: The content of your Amazon SageMaker Studio Lifecycle Configuration script. This content must be base64 encoded.
44457
44475
  :param studio_lifecycle_config_name: The name of the Amazon SageMaker Studio Lifecycle Configuration.
44458
- :param tags: Tags to be associated with the Lifecycle Configuration.
44476
+ :param tags: Tags to be associated with the Lifecycle Configuration. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.
44459
44477
  '''
44460
44478
  if __debug__:
44461
44479
  type_hints = typing.get_type_hints(_typecheckingstub__781a43111dd6adef34feca5cebbdb6b17f5e2425b368d8e007d51d833843916c)
@@ -44595,9 +44613,9 @@ class CfnStudioLifecycleConfigProps:
44595
44613
  '''Properties for defining a ``CfnStudioLifecycleConfig``.
44596
44614
 
44597
44615
  :param studio_lifecycle_config_app_type: The App type to which the Lifecycle Configuration is attached.
44598
- :param studio_lifecycle_config_content: The content of your Amazon SageMaker Studio Lifecycle Configuration script.
44616
+ :param studio_lifecycle_config_content: The content of your Amazon SageMaker Studio Lifecycle Configuration script. This content must be base64 encoded.
44599
44617
  :param studio_lifecycle_config_name: The name of the Amazon SageMaker Studio Lifecycle Configuration.
44600
- :param tags: Tags to be associated with the Lifecycle Configuration.
44618
+ :param tags: Tags to be associated with the Lifecycle Configuration. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.
44601
44619
 
44602
44620
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html
44603
44621
  :exampleMetadata: fixture=_generated
@@ -44648,6 +44666,8 @@ class CfnStudioLifecycleConfigProps:
44648
44666
  def studio_lifecycle_config_content(self) -> builtins.str:
44649
44667
  '''The content of your Amazon SageMaker Studio Lifecycle Configuration script.
44650
44668
 
44669
+ This content must be base64 encoded.
44670
+
44651
44671
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html#cfn-sagemaker-studiolifecycleconfig-studiolifecycleconfigcontent
44652
44672
  '''
44653
44673
  result = self._values.get("studio_lifecycle_config_content")
@@ -44668,6 +44688,8 @@ class CfnStudioLifecycleConfigProps:
44668
44688
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
44669
44689
  '''Tags to be associated with the Lifecycle Configuration.
44670
44690
 
44691
+ Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.
44692
+
44671
44693
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html#cfn-sagemaker-studiolifecycleconfig-tags
44672
44694
  '''
44673
44695
  result = self._values.get("tags")
@@ -46540,18 +46562,18 @@ class CfnUserProfile(
46540
46562
 
46541
46563
  ``SecurityGroups`` is aggregated when specified in both calls. For all other settings in ``UserSettings`` , the values specified in ``CreateUserProfile`` take precedence over those specified in ``CreateDomain`` .
46542
46564
 
46543
- :param code_editor_app_settings: The Code Editor application settings.
46544
- :param custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.
46545
- :param custom_posix_user_config: Details about the POSIX identity that is used for file system operations.
46565
+ :param code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46566
+ :param custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46567
+ :param custom_posix_user_config: Details about the POSIX identity that is used for file system operations. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46546
46568
  :param default_landing_uri: The default experience that the user is directed to when accessing the domain. The supported values are:. - ``studio::`` : Indicates that Studio is the default experience. This value can only be passed if ``StudioWebPortal`` is set to ``ENABLED`` . - ``app:JupyterServer:`` : Indicates that Studio Classic is the default experience.
46547
- :param execution_role: The execution role for the user.
46548
- :param jupyter_lab_app_settings: The settings for the JupyterLab application.
46569
+ :param execution_role: The execution role for the user. SageMaker applies this setting only to private spaces that the user creates in the domain. SageMaker doesn't apply this setting to shared spaces.
46570
+ :param jupyter_lab_app_settings: The settings for the JupyterLab application. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46549
46571
  :param jupyter_server_app_settings: The Jupyter server's app settings.
46550
46572
  :param kernel_gateway_app_settings: The kernel gateway app settings.
46551
46573
  :param r_studio_server_pro_app_settings: A collection of settings that configure user interaction with the ``RStudioServerPro`` app.
46552
- :param security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that the domain uses for communication. Optional when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``PublicInternetOnly`` . Required when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``VpcOnly`` , unless specified as part of the ``DefaultUserSettings`` for the domain. Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.
46574
+ :param security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that the domain uses for communication. Optional when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``PublicInternetOnly`` . Required when the ``CreateDomain.AppNetworkAccessType`` parameter is set to ``VpcOnly`` , unless specified as part of the ``DefaultUserSettings`` for the domain. Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46553
46575
  :param sharing_settings: Specifies options for sharing Amazon SageMaker Studio notebooks.
46554
- :param space_storage_settings: The storage settings for a space.
46576
+ :param space_storage_settings: The storage settings for a space. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46555
46577
  :param studio_web_portal: Whether the user can access Studio. If this value is set to ``DISABLED`` , the user cannot access Studio, even if that is the default experience for the domain.
46556
46578
  :param studio_web_portal_settings: Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.
46557
46579
 
@@ -46730,6 +46752,8 @@ class CfnUserProfile(
46730
46752
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserProfile.CodeEditorAppSettingsProperty"]]:
46731
46753
  '''The Code Editor application settings.
46732
46754
 
46755
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46756
+
46733
46757
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-codeeditorappsettings
46734
46758
  '''
46735
46759
  result = self._values.get("code_editor_app_settings")
@@ -46743,6 +46767,8 @@ class CfnUserProfile(
46743
46767
 
46744
46768
  Permitted users can access this file system in Amazon SageMaker Studio.
46745
46769
 
46770
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46771
+
46746
46772
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-customfilesystemconfigs
46747
46773
  '''
46748
46774
  result = self._values.get("custom_file_system_configs")
@@ -46754,6 +46780,8 @@ class CfnUserProfile(
46754
46780
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserProfile.CustomPosixUserConfigProperty"]]:
46755
46781
  '''Details about the POSIX identity that is used for file system operations.
46756
46782
 
46783
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46784
+
46757
46785
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-customposixuserconfig
46758
46786
  '''
46759
46787
  result = self._values.get("custom_posix_user_config")
@@ -46775,6 +46803,8 @@ class CfnUserProfile(
46775
46803
  def execution_role(self) -> typing.Optional[builtins.str]:
46776
46804
  '''The execution role for the user.
46777
46805
 
46806
+ SageMaker applies this setting only to private spaces that the user creates in the domain. SageMaker doesn't apply this setting to shared spaces.
46807
+
46778
46808
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-executionrole
46779
46809
  '''
46780
46810
  result = self._values.get("execution_role")
@@ -46786,6 +46816,8 @@ class CfnUserProfile(
46786
46816
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserProfile.JupyterLabAppSettingsProperty"]]:
46787
46817
  '''The settings for the JupyterLab application.
46788
46818
 
46819
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46820
+
46789
46821
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-jupyterlabappsettings
46790
46822
  '''
46791
46823
  result = self._values.get("jupyter_lab_app_settings")
@@ -46834,6 +46866,8 @@ class CfnUserProfile(
46834
46866
 
46835
46867
  Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.
46836
46868
 
46869
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46870
+
46837
46871
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-securitygroups
46838
46872
  '''
46839
46873
  result = self._values.get("security_groups")
@@ -46856,6 +46890,8 @@ class CfnUserProfile(
46856
46890
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserProfile.DefaultSpaceStorageSettingsProperty"]]:
46857
46891
  '''The storage settings for a space.
46858
46892
 
46893
+ SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces.
46894
+
46859
46895
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-userprofile-usersettings.html#cfn-sagemaker-userprofile-usersettings-spacestoragesettings
46860
46896
  '''
46861
46897
  result = self._values.get("space_storage_settings")
@@ -819,7 +819,8 @@ class CfnRotationSchedule(
819
819
  @builtins.property
820
820
  @jsii.member(jsii_name="attrId")
821
821
  def attr_id(self) -> builtins.str:
822
- '''
822
+ '''The ARN of the secret.
823
+
823
824
  :cloudformationAttribute: Id
824
825
  '''
825
826
  return typing.cast(builtins.str, jsii.get(self, "attrId"))
@@ -182,8 +182,8 @@ from aws_cdk.aws_s3 import Bucket
182
182
 
183
183
 
184
184
  class LambdaProduct(servicecatalog.ProductStack):
185
- def __init__(self, scope, id, *, assetBucket=None, serverSideEncryption=None, serverSideEncryptionAwsKmsKeyId=None, memoryLimit=None):
186
- super().__init__(scope, id, assetBucket=assetBucket, serverSideEncryption=serverSideEncryption, serverSideEncryptionAwsKmsKeyId=serverSideEncryptionAwsKmsKeyId, memoryLimit=memoryLimit)
185
+ def __init__(self, scope, id, *, assetBucket=None, serverSideEncryption=None, serverSideEncryptionAwsKmsKeyId=None, memoryLimit=None, description=None, analyticsReporting=None):
186
+ super().__init__(scope, id, assetBucket=assetBucket, serverSideEncryption=serverSideEncryption, serverSideEncryptionAwsKmsKeyId=serverSideEncryptionAwsKmsKeyId, memoryLimit=memoryLimit, description=description, analyticsReporting=analyticsReporting)
187
187
 
188
188
  lambda_.Function(self, "LambdaProduct",
189
189
  runtime=lambda_.Runtime.PYTHON_3_9,
@@ -629,6 +629,7 @@ from ..aws_iam import (
629
629
  IRole as _IRole_235f5d8e,
630
630
  IUser as _IUser_c32311f7,
631
631
  )
632
+ from ..aws_kms import IKey as _IKey_5f11635f
632
633
  from ..aws_s3 import IBucket as _IBucket_42e086fd
633
634
  from ..aws_s3_assets import AssetOptions as _AssetOptions_2aa69621
634
635
  from ..aws_s3_deployment import ServerSideEncryption as _ServerSideEncryption_50ddf705
@@ -7038,6 +7039,7 @@ class CloudFormationTemplate(
7038
7039
  *,
7039
7040
  deploy_time: typing.Optional[builtins.bool] = None,
7040
7041
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
7042
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
7041
7043
  asset_hash: typing.Optional[builtins.str] = None,
7042
7044
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
7043
7045
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -7050,6 +7052,7 @@ class CloudFormationTemplate(
7050
7052
  :param path: A file containing the provisioning artifacts.
7051
7053
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
7052
7054
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
7055
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
7053
7056
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
7054
7057
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
7055
7058
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -7063,6 +7066,7 @@ class CloudFormationTemplate(
7063
7066
  options = _AssetOptions_2aa69621(
7064
7067
  deploy_time=deploy_time,
7065
7068
  readers=readers,
7069
+ source_kms_key=source_kms_key,
7066
7070
  asset_hash=asset_hash,
7067
7071
  asset_hash_type=asset_hash_type,
7068
7072
  bundling=bundling,
@@ -8696,7 +8700,9 @@ class ProductStack(
8696
8700
  scope: _constructs_77d1e7e8.Construct,
8697
8701
  id: builtins.str,
8698
8702
  *,
8703
+ analytics_reporting: typing.Optional[builtins.bool] = None,
8699
8704
  asset_bucket: typing.Optional[_IBucket_42e086fd] = None,
8705
+ description: typing.Optional[builtins.str] = None,
8700
8706
  memory_limit: typing.Optional[jsii.Number] = None,
8701
8707
  server_side_encryption: typing.Optional[_ServerSideEncryption_50ddf705] = None,
8702
8708
  server_side_encryption_aws_kms_key_id: typing.Optional[builtins.str] = None,
@@ -8704,7 +8710,9 @@ class ProductStack(
8704
8710
  '''
8705
8711
  :param scope: -
8706
8712
  :param id: -
8713
+ :param analytics_reporting: Include runtime versioning information in this Stack. Default: - ``analyticsReporting`` setting of containing ``App``, or value of 'aws:cdk:version-reporting' context key
8707
8714
  :param asset_bucket: A Bucket can be passed to store assets, enabling ProductStack Asset support. Default: - No Bucket provided and Assets will not be supported.
8715
+ :param description: A description of the stack. Default: - No description.
8708
8716
  :param memory_limit: The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. If you are deploying large files, you will need to increase this number accordingly. Default: 128
8709
8717
  :param server_side_encryption: A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket. Default: - No encryption is used
8710
8718
  :param server_side_encryption_aws_kms_key_id: For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets. Default: - No KMS KeyId and SSE_KMS encryption cannot be used
@@ -8714,7 +8722,9 @@ class ProductStack(
8714
8722
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
8715
8723
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
8716
8724
  props = ProductStackProps(
8725
+ analytics_reporting=analytics_reporting,
8717
8726
  asset_bucket=asset_bucket,
8727
+ description=description,
8718
8728
  memory_limit=memory_limit,
8719
8729
  server_side_encryption=server_side_encryption,
8720
8730
  server_side_encryption_aws_kms_key_id=server_side_encryption_aws_kms_key_id,
@@ -8963,7 +8973,9 @@ class ProductStackHistoryProps:
8963
8973
  jsii_type="aws-cdk-lib.aws_servicecatalog.ProductStackProps",
8964
8974
  jsii_struct_bases=[],
8965
8975
  name_mapping={
8976
+ "analytics_reporting": "analyticsReporting",
8966
8977
  "asset_bucket": "assetBucket",
8978
+ "description": "description",
8967
8979
  "memory_limit": "memoryLimit",
8968
8980
  "server_side_encryption": "serverSideEncryption",
8969
8981
  "server_side_encryption_aws_kms_key_id": "serverSideEncryptionAwsKmsKeyId",
@@ -8973,14 +8985,18 @@ class ProductStackProps:
8973
8985
  def __init__(
8974
8986
  self,
8975
8987
  *,
8988
+ analytics_reporting: typing.Optional[builtins.bool] = None,
8976
8989
  asset_bucket: typing.Optional[_IBucket_42e086fd] = None,
8990
+ description: typing.Optional[builtins.str] = None,
8977
8991
  memory_limit: typing.Optional[jsii.Number] = None,
8978
8992
  server_side_encryption: typing.Optional[_ServerSideEncryption_50ddf705] = None,
8979
8993
  server_side_encryption_aws_kms_key_id: typing.Optional[builtins.str] = None,
8980
8994
  ) -> None:
8981
8995
  '''Product stack props.
8982
8996
 
8997
+ :param analytics_reporting: Include runtime versioning information in this Stack. Default: - ``analyticsReporting`` setting of containing ``App``, or value of 'aws:cdk:version-reporting' context key
8983
8998
  :param asset_bucket: A Bucket can be passed to store assets, enabling ProductStack Asset support. Default: - No Bucket provided and Assets will not be supported.
8999
+ :param description: A description of the stack. Default: - No description.
8984
9000
  :param memory_limit: The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. If you are deploying large files, you will need to increase this number accordingly. Default: 128
8985
9001
  :param server_side_encryption: A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket. Default: - No encryption is used
8986
9002
  :param server_side_encryption_aws_kms_key_id: For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets. Default: - No KMS KeyId and SSE_KMS encryption cannot be used
@@ -8995,8 +9011,8 @@ class ProductStackProps:
8995
9011
 
8996
9012
 
8997
9013
  class LambdaProduct(servicecatalog.ProductStack):
8998
- def __init__(self, scope, id, *, assetBucket=None, serverSideEncryption=None, serverSideEncryptionAwsKmsKeyId=None, memoryLimit=None):
8999
- super().__init__(scope, id, assetBucket=assetBucket, serverSideEncryption=serverSideEncryption, serverSideEncryptionAwsKmsKeyId=serverSideEncryptionAwsKmsKeyId, memoryLimit=memoryLimit)
9014
+ def __init__(self, scope, id, *, assetBucket=None, serverSideEncryption=None, serverSideEncryptionAwsKmsKeyId=None, memoryLimit=None, description=None, analyticsReporting=None):
9015
+ super().__init__(scope, id, assetBucket=assetBucket, serverSideEncryption=serverSideEncryption, serverSideEncryptionAwsKmsKeyId=serverSideEncryptionAwsKmsKeyId, memoryLimit=memoryLimit, description=description, analyticsReporting=analyticsReporting)
9000
9016
 
9001
9017
  lambda_.Function(self, "LambdaProduct",
9002
9018
  runtime=lambda_.Runtime.PYTHON_3_9,
@@ -9022,13 +9038,19 @@ class ProductStackProps:
9022
9038
  '''
9023
9039
  if __debug__:
9024
9040
  type_hints = typing.get_type_hints(_typecheckingstub__ecbfd6177b5d6f8d80ee31c2897d6968897a0abd05a9f5a7d209806206868801)
9041
+ check_type(argname="argument analytics_reporting", value=analytics_reporting, expected_type=type_hints["analytics_reporting"])
9025
9042
  check_type(argname="argument asset_bucket", value=asset_bucket, expected_type=type_hints["asset_bucket"])
9043
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
9026
9044
  check_type(argname="argument memory_limit", value=memory_limit, expected_type=type_hints["memory_limit"])
9027
9045
  check_type(argname="argument server_side_encryption", value=server_side_encryption, expected_type=type_hints["server_side_encryption"])
9028
9046
  check_type(argname="argument server_side_encryption_aws_kms_key_id", value=server_side_encryption_aws_kms_key_id, expected_type=type_hints["server_side_encryption_aws_kms_key_id"])
9029
9047
  self._values: typing.Dict[builtins.str, typing.Any] = {}
9048
+ if analytics_reporting is not None:
9049
+ self._values["analytics_reporting"] = analytics_reporting
9030
9050
  if asset_bucket is not None:
9031
9051
  self._values["asset_bucket"] = asset_bucket
9052
+ if description is not None:
9053
+ self._values["description"] = description
9032
9054
  if memory_limit is not None:
9033
9055
  self._values["memory_limit"] = memory_limit
9034
9056
  if server_side_encryption is not None:
@@ -9036,6 +9058,18 @@ class ProductStackProps:
9036
9058
  if server_side_encryption_aws_kms_key_id is not None:
9037
9059
  self._values["server_side_encryption_aws_kms_key_id"] = server_side_encryption_aws_kms_key_id
9038
9060
 
9061
+ @builtins.property
9062
+ def analytics_reporting(self) -> typing.Optional[builtins.bool]:
9063
+ '''Include runtime versioning information in this Stack.
9064
+
9065
+ :default:
9066
+
9067
+ - ``analyticsReporting`` setting of containing ``App``, or value of
9068
+ 'aws:cdk:version-reporting' context key
9069
+ '''
9070
+ result = self._values.get("analytics_reporting")
9071
+ return typing.cast(typing.Optional[builtins.bool], result)
9072
+
9039
9073
  @builtins.property
9040
9074
  def asset_bucket(self) -> typing.Optional[_IBucket_42e086fd]:
9041
9075
  '''A Bucket can be passed to store assets, enabling ProductStack Asset support.
@@ -9045,6 +9079,15 @@ class ProductStackProps:
9045
9079
  result = self._values.get("asset_bucket")
9046
9080
  return typing.cast(typing.Optional[_IBucket_42e086fd], result)
9047
9081
 
9082
+ @builtins.property
9083
+ def description(self) -> typing.Optional[builtins.str]:
9084
+ '''A description of the stack.
9085
+
9086
+ :default: - No description.
9087
+ '''
9088
+ result = self._values.get("description")
9089
+ return typing.cast(typing.Optional[builtins.str], result)
9090
+
9048
9091
  @builtins.property
9049
9092
  def memory_limit(self) -> typing.Optional[jsii.Number]:
9050
9093
  '''The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket.
@@ -11086,6 +11129,7 @@ def _typecheckingstub__8e0d542f4ba87cd0da3d994035ba4c030fc0e065bd6d2e49190b0063a
11086
11129
  *,
11087
11130
  deploy_time: typing.Optional[builtins.bool] = None,
11088
11131
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
11132
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
11089
11133
  asset_hash: typing.Optional[builtins.str] = None,
11090
11134
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
11091
11135
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -11438,7 +11482,9 @@ def _typecheckingstub__cf14756a9e6c7e2a58f04e1077a464a1b706954bb40fbda6658fac963
11438
11482
  scope: _constructs_77d1e7e8.Construct,
11439
11483
  id: builtins.str,
11440
11484
  *,
11485
+ analytics_reporting: typing.Optional[builtins.bool] = None,
11441
11486
  asset_bucket: typing.Optional[_IBucket_42e086fd] = None,
11487
+ description: typing.Optional[builtins.str] = None,
11442
11488
  memory_limit: typing.Optional[jsii.Number] = None,
11443
11489
  server_side_encryption: typing.Optional[_ServerSideEncryption_50ddf705] = None,
11444
11490
  server_side_encryption_aws_kms_key_id: typing.Optional[builtins.str] = None,
@@ -11480,7 +11526,9 @@ def _typecheckingstub__14ff2199f395b44b32757ccbaa6927f0bf434a9370c673216c8f69e57
11480
11526
 
11481
11527
  def _typecheckingstub__ecbfd6177b5d6f8d80ee31c2897d6968897a0abd05a9f5a7d209806206868801(
11482
11528
  *,
11529
+ analytics_reporting: typing.Optional[builtins.bool] = None,
11483
11530
  asset_bucket: typing.Optional[_IBucket_42e086fd] = None,
11531
+ description: typing.Optional[builtins.str] = None,
11484
11532
  memory_limit: typing.Optional[jsii.Number] = None,
11485
11533
  server_side_encryption: typing.Optional[_ServerSideEncryption_50ddf705] = None,
11486
11534
  server_side_encryption_aws_kms_key_id: typing.Optional[builtins.str] = None,
@@ -715,6 +715,7 @@ class CfnConfigurationSet(
715
715
 
716
716
  cfn_configuration_set = ses.CfnConfigurationSet(self, "MyCfnConfigurationSet",
717
717
  delivery_options=ses.CfnConfigurationSet.DeliveryOptionsProperty(
718
+ max_delivery_seconds=123,
718
719
  sending_pool_name="sendingPoolName",
719
720
  tls_policy="tlsPolicy"
720
721
  ),
@@ -1000,6 +1001,7 @@ class CfnConfigurationSet(
1000
1001
  jsii_type="aws-cdk-lib.aws_ses.CfnConfigurationSet.DeliveryOptionsProperty",
1001
1002
  jsii_struct_bases=[],
1002
1003
  name_mapping={
1004
+ "max_delivery_seconds": "maxDeliverySeconds",
1003
1005
  "sending_pool_name": "sendingPoolName",
1004
1006
  "tls_policy": "tlsPolicy",
1005
1007
  },
@@ -1008,11 +1010,13 @@ class CfnConfigurationSet(
1008
1010
  def __init__(
1009
1011
  self,
1010
1012
  *,
1013
+ max_delivery_seconds: typing.Optional[jsii.Number] = None,
1011
1014
  sending_pool_name: typing.Optional[builtins.str] = None,
1012
1015
  tls_policy: typing.Optional[builtins.str] = None,
1013
1016
  ) -> None:
1014
1017
  '''Specifies the name of the dedicated IP pool to associate with the configuration set and whether messages that use the configuration set are required to use Transport Layer Security (TLS).
1015
1018
 
1019
+ :param max_delivery_seconds: The maximum amount of time, in seconds, that Amazon SES API v2 will attempt delivery of email. If specified, the value must greater than or equal to 300 seconds (5 minutes) and less than or equal to 50400 seconds (840 minutes).
1016
1020
  :param sending_pool_name: The name of the dedicated IP pool to associate with the configuration set.
1017
1021
  :param tls_policy: Specifies whether messages that use the configuration set are required to use Transport Layer Security (TLS). If the value is ``REQUIRE`` , messages are only delivered if a TLS connection can be established. If the value is ``OPTIONAL`` , messages can be delivered in plain text if a TLS connection can't be established. Valid Values: ``REQUIRE | OPTIONAL``
1018
1022
 
@@ -1026,20 +1030,35 @@ class CfnConfigurationSet(
1026
1030
  from aws_cdk import aws_ses as ses
1027
1031
 
1028
1032
  delivery_options_property = ses.CfnConfigurationSet.DeliveryOptionsProperty(
1033
+ max_delivery_seconds=123,
1029
1034
  sending_pool_name="sendingPoolName",
1030
1035
  tls_policy="tlsPolicy"
1031
1036
  )
1032
1037
  '''
1033
1038
  if __debug__:
1034
1039
  type_hints = typing.get_type_hints(_typecheckingstub__cad65d433b7328c2fe1d15052509478ad394628f7bbce8157ed352a3291b5d6f)
1040
+ check_type(argname="argument max_delivery_seconds", value=max_delivery_seconds, expected_type=type_hints["max_delivery_seconds"])
1035
1041
  check_type(argname="argument sending_pool_name", value=sending_pool_name, expected_type=type_hints["sending_pool_name"])
1036
1042
  check_type(argname="argument tls_policy", value=tls_policy, expected_type=type_hints["tls_policy"])
1037
1043
  self._values: typing.Dict[builtins.str, typing.Any] = {}
1044
+ if max_delivery_seconds is not None:
1045
+ self._values["max_delivery_seconds"] = max_delivery_seconds
1038
1046
  if sending_pool_name is not None:
1039
1047
  self._values["sending_pool_name"] = sending_pool_name
1040
1048
  if tls_policy is not None:
1041
1049
  self._values["tls_policy"] = tls_policy
1042
1050
 
1051
+ @builtins.property
1052
+ def max_delivery_seconds(self) -> typing.Optional[jsii.Number]:
1053
+ '''The maximum amount of time, in seconds, that Amazon SES API v2 will attempt delivery of email.
1054
+
1055
+ If specified, the value must greater than or equal to 300 seconds (5 minutes) and less than or equal to 50400 seconds (840 minutes).
1056
+
1057
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-deliveryoptions.html#cfn-ses-configurationset-deliveryoptions-maxdeliveryseconds
1058
+ '''
1059
+ result = self._values.get("max_delivery_seconds")
1060
+ return typing.cast(typing.Optional[jsii.Number], result)
1061
+
1043
1062
  @builtins.property
1044
1063
  def sending_pool_name(self) -> typing.Optional[builtins.str]:
1045
1064
  '''The name of the dedicated IP pool to associate with the configuration set.
@@ -2304,6 +2323,7 @@ class CfnConfigurationSetProps:
2304
2323
 
2305
2324
  cfn_configuration_set_props = ses.CfnConfigurationSetProps(
2306
2325
  delivery_options=ses.CfnConfigurationSet.DeliveryOptionsProperty(
2326
+ max_delivery_seconds=123,
2307
2327
  sending_pool_name="sendingPoolName",
2308
2328
  tls_policy="tlsPolicy"
2309
2329
  ),
@@ -11719,7 +11739,7 @@ class CfnTemplate(
11719
11739
  ) -> None:
11720
11740
  '''An object that defines the email template to use for an email message, and the values to use for any message variables in that template.
11721
11741
 
11722
- An *email template* is a type of message template that contains content that you want to define, save, and reuse in email messages that you send.
11742
+ An *email template* is a type of message template that contains content that you want to reuse in email messages that you send. You can specifiy the email template by providing the name or ARN of an *email template* previously saved in your Amazon SES account or by providing the full template content.
11723
11743
 
11724
11744
  :param subject_part: The subject line of the email.
11725
11745
  :param html_part: The HTML body of the email.
@@ -16518,6 +16538,7 @@ def _typecheckingstub__e8d48d16888f580be3782790c85806d5e5ef5c592f9390a1048567593
16518
16538
 
16519
16539
  def _typecheckingstub__cad65d433b7328c2fe1d15052509478ad394628f7bbce8157ed352a3291b5d6f(
16520
16540
  *,
16541
+ max_delivery_seconds: typing.Optional[jsii.Number] = None,
16521
16542
  sending_pool_name: typing.Optional[builtins.str] = None,
16522
16543
  tls_policy: typing.Optional[builtins.str] = None,
16523
16544
  ) -> None:
@@ -3829,19 +3829,22 @@ class Queue(QueueBase, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_sqs.Q
3829
3829
 
3830
3830
  Example::
3831
3831
 
3832
- # source_queue: sqs.Queue
3833
- # target_queue: sqs.Queue
3832
+ import aws_cdk.aws_redshiftserverless as redshiftserverless
3834
3833
 
3834
+ # workgroup: redshiftserverless.CfnWorkgroup
3835
3835
 
3836
- pipe_source = sources.SqsSource(source_queue,
3837
- batch_size=10,
3838
- maximum_batching_window=cdk.Duration.seconds(10)
3839
- )
3840
3836
 
3841
- pipe = pipes.Pipe(self, "Pipe",
3842
- source=pipe_source,
3843
- target=SomeTarget(target_queue)
3837
+ rule = events.Rule(self, "Rule",
3838
+ schedule=events.Schedule.rate(cdk.Duration.hours(1))
3844
3839
  )
3840
+
3841
+ dlq = sqs.Queue(self, "DeadLetterQueue")
3842
+
3843
+ rule.add_target(targets.RedshiftQuery(workgroup.attr_workgroup_workgroup_arn,
3844
+ database="dev",
3845
+ dead_letter_queue=dlq,
3846
+ sql=["SELECT * FROM foo", "SELECT * FROM baz"]
3847
+ ))
3845
3848
  '''
3846
3849
 
3847
3850
  def __init__(