aws-cdk-lib 2.114.0__py3-none-any.whl → 2.115.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 (47) hide show
  1. aws_cdk/__init__.py +7 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.114.0.jsii.tgz → aws-cdk-lib@2.115.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +6 -0
  5. aws_cdk/aws_apigatewayv2/__init__.py +223 -574
  6. aws_cdk/aws_autoscaling/__init__.py +99 -86
  7. aws_cdk/aws_bedrock/__init__.py +355 -0
  8. aws_cdk/aws_billingconductor/__init__.py +41 -0
  9. aws_cdk/aws_cleanrooms/__init__.py +46 -20
  10. aws_cdk/aws_cloudformation/__init__.py +5 -1
  11. aws_cdk/aws_cloudtrail/__init__.py +89 -0
  12. aws_cdk/aws_codedeploy/__init__.py +233 -1
  13. aws_cdk/aws_connect/__init__.py +49 -2
  14. aws_cdk/aws_dlm/__init__.py +8 -11
  15. aws_cdk/aws_dms/__init__.py +3861 -1643
  16. aws_cdk/aws_ec2/__init__.py +91 -47
  17. aws_cdk/aws_ecs/__init__.py +18 -0
  18. aws_cdk/aws_efs/__init__.py +1 -1
  19. aws_cdk/aws_eks/__init__.py +26 -13
  20. aws_cdk/aws_elasticloadbalancingv2/__init__.py +110 -54
  21. aws_cdk/aws_emr/__init__.py +287 -18
  22. aws_cdk/aws_eventschemas/__init__.py +1 -1
  23. aws_cdk/aws_fis/__init__.py +466 -34
  24. aws_cdk/aws_iam/__init__.py +47 -35
  25. aws_cdk/aws_internetmonitor/__init__.py +10 -12
  26. aws_cdk/aws_lightsail/__init__.py +4 -2
  27. aws_cdk/aws_logs/__init__.py +5 -4
  28. aws_cdk/aws_opensearchservice/__init__.py +47 -0
  29. aws_cdk/aws_osis/__init__.py +272 -32
  30. aws_cdk/aws_rds/__init__.py +205 -87
  31. aws_cdk/aws_resiliencehub/__init__.py +9 -14
  32. aws_cdk/aws_rolesanywhere/__init__.py +41 -53
  33. aws_cdk/aws_route53/__init__.py +3 -3
  34. aws_cdk/aws_route53_targets/__init__.py +2 -2
  35. aws_cdk/aws_s3/__init__.py +2 -6
  36. aws_cdk/aws_s3express/__init__.py +3 -3
  37. aws_cdk/aws_sagemaker/__init__.py +82 -11
  38. aws_cdk/aws_sns/__init__.py +181 -0
  39. aws_cdk/aws_stepfunctions/__init__.py +16 -8
  40. aws_cdk/aws_stepfunctions_tasks/__init__.py +975 -139
  41. aws_cdk/aws_workspacesthinclient/__init__.py +44 -35
  42. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/METADATA +2 -2
  43. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/RECORD +47 -46
  44. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/LICENSE +0 -0
  45. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/NOTICE +0 -0
  46. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/WHEEL +0 -0
  47. {aws_cdk_lib-2.114.0.dist-info → aws_cdk_lib-2.115.0.dist-info}/top_level.txt +0 -0
@@ -12081,6 +12081,7 @@ class CfnFeatureGroup(
12081
12081
  name_mapping={
12082
12082
  "enable_online_store": "enableOnlineStore",
12083
12083
  "security_config": "securityConfig",
12084
+ "storage_type": "storageType",
12084
12085
  },
12085
12086
  )
12086
12087
  class OnlineStoreConfigProperty:
@@ -12089,6 +12090,7 @@ class CfnFeatureGroup(
12089
12090
  *,
12090
12091
  enable_online_store: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
12091
12092
  security_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFeatureGroup.OnlineStoreSecurityConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
12093
+ storage_type: typing.Optional[builtins.str] = None,
12092
12094
  ) -> None:
12093
12095
  '''Use this to specify the AWS Key Management Service (KMS) Key ID, or ``KMSKeyId`` , for at rest data encryption.
12094
12096
 
@@ -12098,6 +12100,7 @@ class CfnFeatureGroup(
12098
12100
 
12099
12101
  :param enable_online_store: Turn ``OnlineStore`` off by specifying ``False`` for the ``EnableOnlineStore`` flag. Turn ``OnlineStore`` on by specifying ``True`` for the ``EnableOnlineStore`` flag. The default value is ``False`` .
12100
12102
  :param security_config: Use to specify KMS Key ID ( ``KMSKeyId`` ) for at-rest encryption of your ``OnlineStore`` .
12103
+ :param storage_type:
12101
12104
 
12102
12105
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html
12103
12106
  :exampleMetadata: fixture=_generated
@@ -12112,18 +12115,22 @@ class CfnFeatureGroup(
12112
12115
  enable_online_store=False,
12113
12116
  security_config=sagemaker.CfnFeatureGroup.OnlineStoreSecurityConfigProperty(
12114
12117
  kms_key_id="kmsKeyId"
12115
- )
12118
+ ),
12119
+ storage_type="storageType"
12116
12120
  )
12117
12121
  '''
12118
12122
  if __debug__:
12119
12123
  type_hints = typing.get_type_hints(_typecheckingstub__4068ec17c64be821371cb37a174b97e325a38220882aa92f5b086d22af6c9c9b)
12120
12124
  check_type(argname="argument enable_online_store", value=enable_online_store, expected_type=type_hints["enable_online_store"])
12121
12125
  check_type(argname="argument security_config", value=security_config, expected_type=type_hints["security_config"])
12126
+ check_type(argname="argument storage_type", value=storage_type, expected_type=type_hints["storage_type"])
12122
12127
  self._values: typing.Dict[builtins.str, typing.Any] = {}
12123
12128
  if enable_online_store is not None:
12124
12129
  self._values["enable_online_store"] = enable_online_store
12125
12130
  if security_config is not None:
12126
12131
  self._values["security_config"] = security_config
12132
+ if storage_type is not None:
12133
+ self._values["storage_type"] = storage_type
12127
12134
 
12128
12135
  @builtins.property
12129
12136
  def enable_online_store(
@@ -12151,6 +12158,14 @@ class CfnFeatureGroup(
12151
12158
  result = self._values.get("security_config")
12152
12159
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFeatureGroup.OnlineStoreSecurityConfigProperty"]], result)
12153
12160
 
12161
+ @builtins.property
12162
+ def storage_type(self) -> typing.Optional[builtins.str]:
12163
+ '''
12164
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html#cfn-sagemaker-featuregroup-onlinestoreconfig-storagetype
12165
+ '''
12166
+ result = self._values.get("storage_type")
12167
+ return typing.cast(typing.Optional[builtins.str], result)
12168
+
12154
12169
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
12155
12170
  return isinstance(rhs, self.__class__) and rhs._values == self._values
12156
12171
 
@@ -16384,7 +16399,7 @@ class CfnModel(
16384
16399
  :param image_config: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For information about storing containers in a private Docker registry, see `Use a Private Docker Registry for Real-Time Inference Containers <https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html>`_ . .. epigraph:: The model artifacts in an Amazon S3 bucket and the Docker image for inference container in Amazon EC2 Container Registry must be in the same region as the model or endpoint you are creating.
16385
16400
  :param inference_specification_name: The inference specification name in the model package version.
16386
16401
  :param mode: Whether the container hosts a single model or multiple models.
16387
- :param model_data_source:
16402
+ :param model_data_source: Specifies the location of ML model data to deploy. .. epigraph:: Currently you cannot use ``ModelDataSource`` in conjunction with SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker Marketplace.
16388
16403
  :param model_data_url: The S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix). The S3 path is required for SageMaker built-in algorithms, but not if you use your own algorithms. For more information on built-in algorithms, see `Common Parameters <https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html>`_ . .. epigraph:: The model artifacts must be in an S3 bucket that is in the same region as the model or endpoint you are creating. If you provide a value for this parameter, SageMaker uses AWS Security Token Service to download model artifacts from the S3 path you provide. AWS STS is activated in your AWS account by default. If you previously deactivated AWS STS for a region, you need to reactivate AWS STS for that region. For more information, see `Activating and Deactivating AWS STS in an AWS Region <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html>`_ in the *AWS Identity and Access Management User Guide* . .. epigraph:: If you use a built-in algorithm to create a model, SageMaker requires that you provide a S3 path to the model artifacts in ``ModelDataUrl`` .
16389
16404
  :param model_package_name: The name or Amazon Resource Name (ARN) of the model package to use to create the model.
16390
16405
  :param multi_model_config: Specifies additional configuration for multi-model endpoints.
@@ -16536,7 +16551,12 @@ class CfnModel(
16536
16551
  def model_data_source(
16537
16552
  self,
16538
16553
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnModel.ModelDataSourceProperty"]]:
16539
- '''
16554
+ '''Specifies the location of ML model data to deploy.
16555
+
16556
+ .. epigraph::
16557
+
16558
+ Currently you cannot use ``ModelDataSource`` in conjunction with SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker Marketplace.
16559
+
16540
16560
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modeldatasource
16541
16561
  '''
16542
16562
  result = self._values.get("model_data_source")
@@ -16743,8 +16763,11 @@ class CfnModel(
16743
16763
  *,
16744
16764
  s3_data_source: typing.Union[_IResolvable_da3f097b, typing.Union["CfnModel.S3DataSourceProperty", typing.Dict[builtins.str, typing.Any]]],
16745
16765
  ) -> None:
16746
- '''
16747
- :param s3_data_source:
16766
+ '''Specifies the location of ML model data to deploy.
16767
+
16768
+ If specified, you must specify one and only one of the available data sources.
16769
+
16770
+ :param s3_data_source: Specifies the S3 location of ML model data to deploy.
16748
16771
 
16749
16772
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-modeldatasource.html
16750
16773
  :exampleMetadata: fixture=_generated
@@ -16774,7 +16797,8 @@ class CfnModel(
16774
16797
  def s3_data_source(
16775
16798
  self,
16776
16799
  ) -> typing.Union[_IResolvable_da3f097b, "CfnModel.S3DataSourceProperty"]:
16777
- '''
16800
+ '''Specifies the S3 location of ML model data to deploy.
16801
+
16778
16802
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-modeldatasource.html#cfn-sagemaker-model-modeldatasource-s3datasource
16779
16803
  '''
16780
16804
  result = self._values.get("s3_data_source")
@@ -16928,10 +16952,13 @@ class CfnModel(
16928
16952
  s3_data_type: builtins.str,
16929
16953
  s3_uri: builtins.str,
16930
16954
  ) -> None:
16931
- '''
16955
+ '''Describes the S3 data source.
16956
+
16957
+ Your input bucket must be in the same AWS region as your training job.
16958
+
16932
16959
  :param compression_type:
16933
- :param s3_data_type:
16934
- :param s3_uri:
16960
+ :param s3_data_type: If you choose ``S3Prefix`` , ``S3Uri`` identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix for model training. If you choose ``ManifestFile`` , ``S3Uri`` identifies an object that is a manifest file containing a list of object keys that you want SageMaker to use for model training. If you choose ``AugmentedManifestFile`` , S3Uri identifies an object that is an augmented manifest file in JSON lines format. This file contains the data you want to use for model training. ``AugmentedManifestFile`` can only be used if the Channel's input mode is ``Pipe`` .
16961
+ :param s3_uri: Depending on the value specified for the ``S3DataType`` , identifies either a key name prefix or a manifest. For example: - A key name prefix might look like this: ``s3://bucketname/exampleprefix`` - A manifest might look like this: ``s3://bucketname/example.manifest`` A manifest is an S3 object which is a JSON file consisting of an array of elements. The first element is a prefix which is followed by one or more suffixes. SageMaker appends the suffix elements to the prefix to get a full set of ``S3Uri`` . Note that the prefix must be a valid non-empty ``S3Uri`` that precludes users from specifying a manifest whose individual ``S3Uri`` is sourced from different S3 buckets. The following code example shows a valid manifest format: ``[ {"prefix": "s3://customer_bucket/some/prefix/"},`` ``"relative/path/to/custdata-1",`` ``"relative/path/custdata-2",`` ``...`` ``"relative/path/custdata-N"`` ``]`` This JSON is equivalent to the following ``S3Uri`` list: ``s3://customer_bucket/some/prefix/relative/path/to/custdata-1`` ``s3://customer_bucket/some/prefix/relative/path/custdata-2`` ``...`` ``s3://customer_bucket/some/prefix/relative/path/custdata-N`` The complete set of ``S3Uri`` in this manifest is the input data for the channel for this data source. The object that each ``S3Uri`` points to must be readable by the IAM role that SageMaker uses to perform tasks on your behalf. Your input bucket must be located in same AWS region as your training job.
16935
16962
 
16936
16963
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-s3datasource.html
16937
16964
  :exampleMetadata: fixture=_generated
@@ -16970,7 +16997,14 @@ class CfnModel(
16970
16997
 
16971
16998
  @builtins.property
16972
16999
  def s3_data_type(self) -> builtins.str:
16973
- '''
17000
+ '''If you choose ``S3Prefix`` , ``S3Uri`` identifies a key name prefix.
17001
+
17002
+ SageMaker uses all objects that match the specified key name prefix for model training.
17003
+
17004
+ If you choose ``ManifestFile`` , ``S3Uri`` identifies an object that is a manifest file containing a list of object keys that you want SageMaker to use for model training.
17005
+
17006
+ If you choose ``AugmentedManifestFile`` , S3Uri identifies an object that is an augmented manifest file in JSON lines format. This file contains the data you want to use for model training. ``AugmentedManifestFile`` can only be used if the Channel's input mode is ``Pipe`` .
17007
+
16974
17008
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-s3datasource.html#cfn-sagemaker-model-s3datasource-s3datatype
16975
17009
  '''
16976
17010
  result = self._values.get("s3_data_type")
@@ -16979,7 +17013,43 @@ class CfnModel(
16979
17013
 
16980
17014
  @builtins.property
16981
17015
  def s3_uri(self) -> builtins.str:
16982
- '''
17016
+ '''Depending on the value specified for the ``S3DataType`` , identifies either a key name prefix or a manifest.
17017
+
17018
+ For example:
17019
+
17020
+ - A key name prefix might look like this: ``s3://bucketname/exampleprefix``
17021
+ - A manifest might look like this: ``s3://bucketname/example.manifest``
17022
+
17023
+ A manifest is an S3 object which is a JSON file consisting of an array of elements. The first element is a prefix which is followed by one or more suffixes. SageMaker appends the suffix elements to the prefix to get a full set of ``S3Uri`` . Note that the prefix must be a valid non-empty ``S3Uri`` that precludes users from specifying a manifest whose individual ``S3Uri`` is sourced from different S3 buckets.
17024
+
17025
+ The following code example shows a valid manifest format:
17026
+
17027
+ ``[ {"prefix": "s3://customer_bucket/some/prefix/"},``
17028
+
17029
+ ``"relative/path/to/custdata-1",``
17030
+
17031
+ ``"relative/path/custdata-2",``
17032
+
17033
+ ``...``
17034
+
17035
+ ``"relative/path/custdata-N"``
17036
+
17037
+ ``]``
17038
+
17039
+ This JSON is equivalent to the following ``S3Uri`` list:
17040
+
17041
+ ``s3://customer_bucket/some/prefix/relative/path/to/custdata-1``
17042
+
17043
+ ``s3://customer_bucket/some/prefix/relative/path/custdata-2``
17044
+
17045
+ ``...``
17046
+
17047
+ ``s3://customer_bucket/some/prefix/relative/path/custdata-N``
17048
+
17049
+ The complete set of ``S3Uri`` in this manifest is the input data for the channel for this data source. The object that each ``S3Uri`` points to must be readable by the IAM role that SageMaker uses to perform tasks on your behalf.
17050
+
17051
+ Your input bucket must be located in same AWS region as your training job.
17052
+
16983
17053
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-s3datasource.html#cfn-sagemaker-model-s3datasource-s3uri
16984
17054
  '''
16985
17055
  result = self._values.get("s3_uri")
@@ -43619,6 +43689,7 @@ def _typecheckingstub__4068ec17c64be821371cb37a174b97e325a38220882aa92f5b086d22a
43619
43689
  *,
43620
43690
  enable_online_store: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
43621
43691
  security_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFeatureGroup.OnlineStoreSecurityConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
43692
+ storage_type: typing.Optional[builtins.str] = None,
43622
43693
  ) -> None:
43623
43694
  """Type checking stubs"""
43624
43695
  pass
@@ -878,6 +878,14 @@ class CfnTopic(
878
878
  archive_policy=archive_policy,
879
879
  content_based_deduplication=False,
880
880
  data_protection_policy=data_protection_policy,
881
+ delivery_status_logging=[sns.CfnTopic.LoggingConfigProperty(
882
+ protocol="protocol",
883
+
884
+ # the properties below are optional
885
+ failure_feedback_role_arn="failureFeedbackRoleArn",
886
+ success_feedback_role_arn="successFeedbackRoleArn",
887
+ success_feedback_sample_rate="successFeedbackSampleRate"
888
+ )],
881
889
  display_name="displayName",
882
890
  fifo_topic=False,
883
891
  kms_master_key_id="kmsMasterKeyId",
@@ -903,6 +911,7 @@ class CfnTopic(
903
911
  archive_policy: typing.Any = None,
904
912
  content_based_deduplication: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
905
913
  data_protection_policy: typing.Any = None,
914
+ delivery_status_logging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTopic.LoggingConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
906
915
  display_name: typing.Optional[builtins.str] = None,
907
916
  fifo_topic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
908
917
  kms_master_key_id: typing.Optional[builtins.str] = None,
@@ -918,6 +927,7 @@ class CfnTopic(
918
927
  :param archive_policy: The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days.
919
928
  :param content_based_deduplication: Enables content-based deduplication for FIFO topics. - By default, ``ContentBasedDeduplication`` is set to ``false`` . If you create a FIFO topic and this attribute is ``false`` , you must specify a value for the ``MessageDeduplicationId`` parameter for the `Publish <https://docs.aws.amazon.com/sns/latest/api/API_Publish.html>`_ action. - When you set ``ContentBasedDeduplication`` to ``true`` , Amazon SNS uses a SHA-256 hash to generate the ``MessageDeduplicationId`` using the body of the message (but not the attributes of the message). (Optional) To override the generated value, you can specify a value for the the ``MessageDeduplicationId`` parameter for the ``Publish`` action.
920
929
  :param data_protection_policy: The body of the policy document you want to use for this topic. You can only add one policy per topic. The policy must be in JSON string format. Length Constraints: Maximum length of 30,720.
930
+ :param delivery_status_logging: Delivery status logging configuration for supported protocols for an Amazon SNS topic.
921
931
  :param display_name: The display name to use for an Amazon SNS topic with SMS subscriptions. The display name must be maximum 100 characters long, including hyphens (-), underscores (_), spaces, and tabs.
922
932
  :param fifo_topic: Set to true to create a FIFO topic.
923
933
  :param kms_master_key_id: The ID of an AWS managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see `Key terms <https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms>`_ . For more examples, see ``[KeyId](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)`` in the *AWS Key Management Service API Reference* . This property applies only to `server-side-encryption <https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html>`_ .
@@ -935,6 +945,7 @@ class CfnTopic(
935
945
  archive_policy=archive_policy,
936
946
  content_based_deduplication=content_based_deduplication,
937
947
  data_protection_policy=data_protection_policy,
948
+ delivery_status_logging=delivery_status_logging,
938
949
  display_name=display_name,
939
950
  fifo_topic=fifo_topic,
940
951
  kms_master_key_id=kms_master_key_id,
@@ -1050,6 +1061,24 @@ class CfnTopic(
1050
1061
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1051
1062
  jsii.set(self, "dataProtectionPolicy", value)
1052
1063
 
1064
+ @builtins.property
1065
+ @jsii.member(jsii_name="deliveryStatusLogging")
1066
+ def delivery_status_logging(
1067
+ self,
1068
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTopic.LoggingConfigProperty"]]]]:
1069
+ '''Delivery status logging configuration for supported protocols for an Amazon SNS topic.'''
1070
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTopic.LoggingConfigProperty"]]]], jsii.get(self, "deliveryStatusLogging"))
1071
+
1072
+ @delivery_status_logging.setter
1073
+ def delivery_status_logging(
1074
+ self,
1075
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTopic.LoggingConfigProperty"]]]],
1076
+ ) -> None:
1077
+ if __debug__:
1078
+ type_hints = typing.get_type_hints(_typecheckingstub__c45e4d025e306c26000e7fa2d0ac2f744ec4393a8a4418f9a397a2f5c010e0cf)
1079
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1080
+ jsii.set(self, "deliveryStatusLogging", value)
1081
+
1053
1082
  @builtins.property
1054
1083
  @jsii.member(jsii_name="displayName")
1055
1084
  def display_name(self) -> typing.Optional[builtins.str]:
@@ -1164,6 +1193,115 @@ class CfnTopic(
1164
1193
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1165
1194
  jsii.set(self, "tracingConfig", value)
1166
1195
 
1196
+ @jsii.data_type(
1197
+ jsii_type="aws-cdk-lib.aws_sns.CfnTopic.LoggingConfigProperty",
1198
+ jsii_struct_bases=[],
1199
+ name_mapping={
1200
+ "protocol": "protocol",
1201
+ "failure_feedback_role_arn": "failureFeedbackRoleArn",
1202
+ "success_feedback_role_arn": "successFeedbackRoleArn",
1203
+ "success_feedback_sample_rate": "successFeedbackSampleRate",
1204
+ },
1205
+ )
1206
+ class LoggingConfigProperty:
1207
+ def __init__(
1208
+ self,
1209
+ *,
1210
+ protocol: builtins.str,
1211
+ failure_feedback_role_arn: typing.Optional[builtins.str] = None,
1212
+ success_feedback_role_arn: typing.Optional[builtins.str] = None,
1213
+ success_feedback_sample_rate: typing.Optional[builtins.str] = None,
1214
+ ) -> None:
1215
+ '''
1216
+ :param protocol: Indicates one of the supported protocols for the SNS topic.
1217
+ :param failure_feedback_role_arn: The IAM role ARN to be used when logging failed message deliveries in Amazon CloudWatch.
1218
+ :param success_feedback_role_arn: The IAM role ARN to be used when logging successful message deliveries in Amazon CloudWatch.
1219
+ :param success_feedback_sample_rate: The percentage of successful message deliveries to be logged in Amazon CloudWatch. Valid percentage values range from 0 to 100
1220
+
1221
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html
1222
+ :exampleMetadata: fixture=_generated
1223
+
1224
+ Example::
1225
+
1226
+ # The code below shows an example of how to instantiate this type.
1227
+ # The values are placeholders you should change.
1228
+ from aws_cdk import aws_sns as sns
1229
+
1230
+ logging_config_property = sns.CfnTopic.LoggingConfigProperty(
1231
+ protocol="protocol",
1232
+
1233
+ # the properties below are optional
1234
+ failure_feedback_role_arn="failureFeedbackRoleArn",
1235
+ success_feedback_role_arn="successFeedbackRoleArn",
1236
+ success_feedback_sample_rate="successFeedbackSampleRate"
1237
+ )
1238
+ '''
1239
+ if __debug__:
1240
+ type_hints = typing.get_type_hints(_typecheckingstub__504f5c0a818ef27c6f26af4cf94e85376e3929a210ed0fc76e17575e3a997054)
1241
+ check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
1242
+ check_type(argname="argument failure_feedback_role_arn", value=failure_feedback_role_arn, expected_type=type_hints["failure_feedback_role_arn"])
1243
+ check_type(argname="argument success_feedback_role_arn", value=success_feedback_role_arn, expected_type=type_hints["success_feedback_role_arn"])
1244
+ check_type(argname="argument success_feedback_sample_rate", value=success_feedback_sample_rate, expected_type=type_hints["success_feedback_sample_rate"])
1245
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1246
+ "protocol": protocol,
1247
+ }
1248
+ if failure_feedback_role_arn is not None:
1249
+ self._values["failure_feedback_role_arn"] = failure_feedback_role_arn
1250
+ if success_feedback_role_arn is not None:
1251
+ self._values["success_feedback_role_arn"] = success_feedback_role_arn
1252
+ if success_feedback_sample_rate is not None:
1253
+ self._values["success_feedback_sample_rate"] = success_feedback_sample_rate
1254
+
1255
+ @builtins.property
1256
+ def protocol(self) -> builtins.str:
1257
+ '''Indicates one of the supported protocols for the SNS topic.
1258
+
1259
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html#cfn-sns-topic-loggingconfig-protocol
1260
+ '''
1261
+ result = self._values.get("protocol")
1262
+ assert result is not None, "Required property 'protocol' is missing"
1263
+ return typing.cast(builtins.str, result)
1264
+
1265
+ @builtins.property
1266
+ def failure_feedback_role_arn(self) -> typing.Optional[builtins.str]:
1267
+ '''The IAM role ARN to be used when logging failed message deliveries in Amazon CloudWatch.
1268
+
1269
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html#cfn-sns-topic-loggingconfig-failurefeedbackrolearn
1270
+ '''
1271
+ result = self._values.get("failure_feedback_role_arn")
1272
+ return typing.cast(typing.Optional[builtins.str], result)
1273
+
1274
+ @builtins.property
1275
+ def success_feedback_role_arn(self) -> typing.Optional[builtins.str]:
1276
+ '''The IAM role ARN to be used when logging successful message deliveries in Amazon CloudWatch.
1277
+
1278
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html#cfn-sns-topic-loggingconfig-successfeedbackrolearn
1279
+ '''
1280
+ result = self._values.get("success_feedback_role_arn")
1281
+ return typing.cast(typing.Optional[builtins.str], result)
1282
+
1283
+ @builtins.property
1284
+ def success_feedback_sample_rate(self) -> typing.Optional[builtins.str]:
1285
+ '''The percentage of successful message deliveries to be logged in Amazon CloudWatch.
1286
+
1287
+ Valid percentage values range from 0 to 100
1288
+
1289
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html#cfn-sns-topic-loggingconfig-successfeedbacksamplerate
1290
+ '''
1291
+ result = self._values.get("success_feedback_sample_rate")
1292
+ return typing.cast(typing.Optional[builtins.str], result)
1293
+
1294
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1295
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1296
+
1297
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1298
+ return not (rhs == self)
1299
+
1300
+ def __repr__(self) -> str:
1301
+ return "LoggingConfigProperty(%s)" % ", ".join(
1302
+ k + "=" + repr(v) for k, v in self._values.items()
1303
+ )
1304
+
1167
1305
  @jsii.data_type(
1168
1306
  jsii_type="aws-cdk-lib.aws_sns.CfnTopic.SubscriptionProperty",
1169
1307
  jsii_struct_bases=[],
@@ -1624,6 +1762,7 @@ class CfnTopicPolicyProps:
1624
1762
  "archive_policy": "archivePolicy",
1625
1763
  "content_based_deduplication": "contentBasedDeduplication",
1626
1764
  "data_protection_policy": "dataProtectionPolicy",
1765
+ "delivery_status_logging": "deliveryStatusLogging",
1627
1766
  "display_name": "displayName",
1628
1767
  "fifo_topic": "fifoTopic",
1629
1768
  "kms_master_key_id": "kmsMasterKeyId",
@@ -1641,6 +1780,7 @@ class CfnTopicProps:
1641
1780
  archive_policy: typing.Any = None,
1642
1781
  content_based_deduplication: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1643
1782
  data_protection_policy: typing.Any = None,
1783
+ delivery_status_logging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTopic.LoggingConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1644
1784
  display_name: typing.Optional[builtins.str] = None,
1645
1785
  fifo_topic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1646
1786
  kms_master_key_id: typing.Optional[builtins.str] = None,
@@ -1655,6 +1795,7 @@ class CfnTopicProps:
1655
1795
  :param archive_policy: The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days.
1656
1796
  :param content_based_deduplication: Enables content-based deduplication for FIFO topics. - By default, ``ContentBasedDeduplication`` is set to ``false`` . If you create a FIFO topic and this attribute is ``false`` , you must specify a value for the ``MessageDeduplicationId`` parameter for the `Publish <https://docs.aws.amazon.com/sns/latest/api/API_Publish.html>`_ action. - When you set ``ContentBasedDeduplication`` to ``true`` , Amazon SNS uses a SHA-256 hash to generate the ``MessageDeduplicationId`` using the body of the message (but not the attributes of the message). (Optional) To override the generated value, you can specify a value for the the ``MessageDeduplicationId`` parameter for the ``Publish`` action.
1657
1797
  :param data_protection_policy: The body of the policy document you want to use for this topic. You can only add one policy per topic. The policy must be in JSON string format. Length Constraints: Maximum length of 30,720.
1798
+ :param delivery_status_logging: Delivery status logging configuration for supported protocols for an Amazon SNS topic.
1658
1799
  :param display_name: The display name to use for an Amazon SNS topic with SMS subscriptions. The display name must be maximum 100 characters long, including hyphens (-), underscores (_), spaces, and tabs.
1659
1800
  :param fifo_topic: Set to true to create a FIFO topic.
1660
1801
  :param kms_master_key_id: The ID of an AWS managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see `Key terms <https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms>`_ . For more examples, see ``[KeyId](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)`` in the *AWS Key Management Service API Reference* . This property applies only to `server-side-encryption <https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html>`_ .
@@ -1680,6 +1821,14 @@ class CfnTopicProps:
1680
1821
  archive_policy=archive_policy,
1681
1822
  content_based_deduplication=False,
1682
1823
  data_protection_policy=data_protection_policy,
1824
+ delivery_status_logging=[sns.CfnTopic.LoggingConfigProperty(
1825
+ protocol="protocol",
1826
+
1827
+ # the properties below are optional
1828
+ failure_feedback_role_arn="failureFeedbackRoleArn",
1829
+ success_feedback_role_arn="successFeedbackRoleArn",
1830
+ success_feedback_sample_rate="successFeedbackSampleRate"
1831
+ )],
1683
1832
  display_name="displayName",
1684
1833
  fifo_topic=False,
1685
1834
  kms_master_key_id="kmsMasterKeyId",
@@ -1701,6 +1850,7 @@ class CfnTopicProps:
1701
1850
  check_type(argname="argument archive_policy", value=archive_policy, expected_type=type_hints["archive_policy"])
1702
1851
  check_type(argname="argument content_based_deduplication", value=content_based_deduplication, expected_type=type_hints["content_based_deduplication"])
1703
1852
  check_type(argname="argument data_protection_policy", value=data_protection_policy, expected_type=type_hints["data_protection_policy"])
1853
+ check_type(argname="argument delivery_status_logging", value=delivery_status_logging, expected_type=type_hints["delivery_status_logging"])
1704
1854
  check_type(argname="argument display_name", value=display_name, expected_type=type_hints["display_name"])
1705
1855
  check_type(argname="argument fifo_topic", value=fifo_topic, expected_type=type_hints["fifo_topic"])
1706
1856
  check_type(argname="argument kms_master_key_id", value=kms_master_key_id, expected_type=type_hints["kms_master_key_id"])
@@ -1716,6 +1866,8 @@ class CfnTopicProps:
1716
1866
  self._values["content_based_deduplication"] = content_based_deduplication
1717
1867
  if data_protection_policy is not None:
1718
1868
  self._values["data_protection_policy"] = data_protection_policy
1869
+ if delivery_status_logging is not None:
1870
+ self._values["delivery_status_logging"] = delivery_status_logging
1719
1871
  if display_name is not None:
1720
1872
  self._values["display_name"] = display_name
1721
1873
  if fifo_topic is not None:
@@ -1775,6 +1927,17 @@ class CfnTopicProps:
1775
1927
  result = self._values.get("data_protection_policy")
1776
1928
  return typing.cast(typing.Any, result)
1777
1929
 
1930
+ @builtins.property
1931
+ def delivery_status_logging(
1932
+ self,
1933
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTopic.LoggingConfigProperty]]]]:
1934
+ '''Delivery status logging configuration for supported protocols for an Amazon SNS topic.
1935
+
1936
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html#cfn-sns-topic-deliverystatuslogging
1937
+ '''
1938
+ result = self._values.get("delivery_status_logging")
1939
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTopic.LoggingConfigProperty]]]], result)
1940
+
1778
1941
  @builtins.property
1779
1942
  def display_name(self) -> typing.Optional[builtins.str]:
1780
1943
  '''The display name to use for an Amazon SNS topic with SMS subscriptions.
@@ -5205,6 +5368,7 @@ def _typecheckingstub__3c3e689eaa6b740299fa6db2e53acc51021bc5deb0a8dd6d7bc29e8a3
5205
5368
  archive_policy: typing.Any = None,
5206
5369
  content_based_deduplication: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5207
5370
  data_protection_policy: typing.Any = None,
5371
+ delivery_status_logging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTopic.LoggingConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
5208
5372
  display_name: typing.Optional[builtins.str] = None,
5209
5373
  fifo_topic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5210
5374
  kms_master_key_id: typing.Optional[builtins.str] = None,
@@ -5247,6 +5411,12 @@ def _typecheckingstub__0fa01cdb622f9c1239adaa1d51fb0035fbf98f9f42d4c5cf2e419e59e
5247
5411
  """Type checking stubs"""
5248
5412
  pass
5249
5413
 
5414
+ def _typecheckingstub__c45e4d025e306c26000e7fa2d0ac2f744ec4393a8a4418f9a397a2f5c010e0cf(
5415
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTopic.LoggingConfigProperty]]]],
5416
+ ) -> None:
5417
+ """Type checking stubs"""
5418
+ pass
5419
+
5250
5420
  def _typecheckingstub__7e672f7b6cfea2a409a715963f8ef1b01848153bb4867f8ad868e0bcb32a4fe4(
5251
5421
  value: typing.Optional[builtins.str],
5252
5422
  ) -> None:
@@ -5295,6 +5465,16 @@ def _typecheckingstub__cca8ae0da10f9d461cb6a1d8687e3d2ee9214548942dacdad4fbbf396
5295
5465
  """Type checking stubs"""
5296
5466
  pass
5297
5467
 
5468
+ def _typecheckingstub__504f5c0a818ef27c6f26af4cf94e85376e3929a210ed0fc76e17575e3a997054(
5469
+ *,
5470
+ protocol: builtins.str,
5471
+ failure_feedback_role_arn: typing.Optional[builtins.str] = None,
5472
+ success_feedback_role_arn: typing.Optional[builtins.str] = None,
5473
+ success_feedback_sample_rate: typing.Optional[builtins.str] = None,
5474
+ ) -> None:
5475
+ """Type checking stubs"""
5476
+ pass
5477
+
5298
5478
  def _typecheckingstub__b0e99e91f630467ca29bdde2bfed1506da130d5f3e0cae1685b42e10bf0537dc(
5299
5479
  *,
5300
5480
  endpoint: builtins.str,
@@ -5392,6 +5572,7 @@ def _typecheckingstub__39eaeffb1fed865d99c7cf51cdf720d8471aec20b2163161ef50035fb
5392
5572
  archive_policy: typing.Any = None,
5393
5573
  content_based_deduplication: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5394
5574
  data_protection_policy: typing.Any = None,
5575
+ delivery_status_logging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTopic.LoggingConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
5395
5576
  display_name: typing.Optional[builtins.str] = None,
5396
5577
  fifo_topic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5397
5578
  kms_master_key_id: typing.Optional[builtins.str] = None,
@@ -9984,15 +9984,23 @@ class TaskInput(
9984
9984
 
9985
9985
  Example::
9986
9986
 
9987
- # fn: lambda.Function
9987
+ import aws_cdk.aws_bedrock as bedrock
9988
9988
 
9989
- tasks.LambdaInvoke(self, "Invoke with callback",
9990
- lambda_function=fn,
9991
- integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN,
9992
- payload=sfn.TaskInput.from_object({
9993
- "token": sfn.JsonPath.task_token,
9994
- "input": sfn.JsonPath.string_at("$.someField")
9995
- })
9989
+
9990
+ model = bedrock.FoundationModel.from_foundation_model_id(self, "Model", bedrock.FoundationModelIdentifier.AMAZON_TITAN_TEXT_G1_EXPRESS_V1)
9991
+
9992
+ task = tasks.BedrockInvokeModel(self, "Prompt Model",
9993
+ model=model,
9994
+ body=sfn.TaskInput.from_object({
9995
+ "input_text": "Generate a list of five first names.",
9996
+ "text_generation_config": {
9997
+ "max_token_count": 100,
9998
+ "temperature": 1
9999
+ }
10000
+ }),
10001
+ result_selector={
10002
+ "names": sfn.JsonPath.string_at("$.Body.results[0].outputText")
10003
+ }
9996
10004
  )
9997
10005
  '''
9998
10006