aws-cdk-lib 2.133.0__py3-none-any.whl → 2.135.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.
Files changed (282) hide show
  1. aws_cdk/__init__.py +14 -1
  2. aws_cdk/_jsii/__init__.py +4 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.133.0.jsii.tgz → aws-cdk-lib@2.135.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +3 -0
  5. aws_cdk/assertions/__init__.py +3 -0
  6. aws_cdk/aws_accessanalyzer/__init__.py +3 -0
  7. aws_cdk/aws_acmpca/__init__.py +3 -0
  8. aws_cdk/aws_amazonmq/__init__.py +3 -0
  9. aws_cdk/aws_amplify/__init__.py +3 -0
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +3 -0
  11. aws_cdk/aws_apigateway/__init__.py +3 -0
  12. aws_cdk/aws_apigatewayv2/__init__.py +108 -3
  13. aws_cdk/aws_apigatewayv2_authorizers/__init__.py +3 -0
  14. aws_cdk/aws_apigatewayv2_integrations/__init__.py +158 -3
  15. aws_cdk/aws_appconfig/__init__.py +189 -8
  16. aws_cdk/aws_appflow/__init__.py +3 -0
  17. aws_cdk/aws_appintegrations/__init__.py +560 -0
  18. aws_cdk/aws_applicationautoscaling/__init__.py +4 -1
  19. aws_cdk/aws_applicationinsights/__init__.py +3 -0
  20. aws_cdk/aws_appmesh/__init__.py +4 -1
  21. aws_cdk/aws_apprunner/__init__.py +3 -0
  22. aws_cdk/aws_appstream/__init__.py +3 -0
  23. aws_cdk/aws_appsync/__init__.py +74 -0
  24. aws_cdk/aws_aps/__init__.py +805 -1
  25. aws_cdk/aws_arczonalshift/__init__.py +3 -0
  26. aws_cdk/aws_athena/__init__.py +3 -0
  27. aws_cdk/aws_auditmanager/__init__.py +3 -0
  28. aws_cdk/aws_autoscaling/__init__.py +9 -4
  29. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  30. aws_cdk/aws_autoscaling_hooktargets/__init__.py +3 -0
  31. aws_cdk/aws_autoscalingplans/__init__.py +3 -0
  32. aws_cdk/aws_b2bi/__init__.py +3 -0
  33. aws_cdk/aws_backup/__init__.py +26 -12
  34. aws_cdk/aws_backupgateway/__init__.py +3 -0
  35. aws_cdk/aws_batch/__init__.py +426 -73
  36. aws_cdk/aws_bedrock/__init__.py +200 -2
  37. aws_cdk/aws_billingconductor/__init__.py +3 -0
  38. aws_cdk/aws_budgets/__init__.py +3 -0
  39. aws_cdk/aws_cassandra/__init__.py +3 -0
  40. aws_cdk/aws_ce/__init__.py +3 -0
  41. aws_cdk/aws_certificatemanager/__init__.py +3 -0
  42. aws_cdk/aws_chatbot/__init__.py +3 -0
  43. aws_cdk/aws_cleanrooms/__init__.py +183 -6
  44. aws_cdk/aws_cloud9/__init__.py +3 -0
  45. aws_cdk/aws_cloudformation/__init__.py +4 -1
  46. aws_cdk/aws_cloudfront/__init__.py +5 -2
  47. aws_cdk/aws_cloudfront/experimental/__init__.py +3 -0
  48. aws_cdk/aws_cloudfront_origins/__init__.py +3 -0
  49. aws_cdk/aws_cloudtrail/__init__.py +47 -14
  50. aws_cdk/aws_cloudwatch/__init__.py +21 -0
  51. aws_cdk/aws_cloudwatch_actions/__init__.py +3 -0
  52. aws_cdk/aws_codeartifact/__init__.py +815 -2
  53. aws_cdk/aws_codebuild/__init__.py +38 -16
  54. aws_cdk/aws_codecommit/__init__.py +3 -0
  55. aws_cdk/aws_codedeploy/__init__.py +3 -0
  56. aws_cdk/aws_codeguruprofiler/__init__.py +3 -0
  57. aws_cdk/aws_codegurureviewer/__init__.py +3 -0
  58. aws_cdk/aws_codepipeline/__init__.py +27 -8
  59. aws_cdk/aws_codepipeline_actions/__init__.py +3 -0
  60. aws_cdk/aws_codestar/__init__.py +3 -0
  61. aws_cdk/aws_codestarconnections/__init__.py +91 -2
  62. aws_cdk/aws_codestarnotifications/__init__.py +3 -0
  63. aws_cdk/aws_cognito/__init__.py +44 -40
  64. aws_cdk/aws_comprehend/__init__.py +3 -0
  65. aws_cdk/aws_config/__init__.py +3 -0
  66. aws_cdk/aws_connect/__init__.py +277 -0
  67. aws_cdk/aws_connectcampaigns/__init__.py +3 -0
  68. aws_cdk/aws_controltower/__init__.py +3 -0
  69. aws_cdk/aws_cur/__init__.py +3 -0
  70. aws_cdk/aws_customerprofiles/__init__.py +3 -0
  71. aws_cdk/aws_databrew/__init__.py +3 -0
  72. aws_cdk/aws_datapipeline/__init__.py +3 -0
  73. aws_cdk/aws_datasync/__init__.py +396 -13
  74. aws_cdk/aws_datazone/__init__.py +3 -0
  75. aws_cdk/aws_dax/__init__.py +3 -0
  76. aws_cdk/aws_detective/__init__.py +3 -0
  77. aws_cdk/aws_devicefarm/__init__.py +3 -0
  78. aws_cdk/aws_devopsguru/__init__.py +3 -0
  79. aws_cdk/aws_directoryservice/__init__.py +3 -0
  80. aws_cdk/aws_dlm/__init__.py +5 -2
  81. aws_cdk/aws_dms/__init__.py +30 -9
  82. aws_cdk/aws_docdb/__init__.py +3 -0
  83. aws_cdk/aws_docdbelastic/__init__.py +128 -0
  84. aws_cdk/aws_dynamodb/__init__.py +419 -5
  85. aws_cdk/aws_ec2/__init__.py +3530 -504
  86. aws_cdk/aws_ecr/__init__.py +3 -0
  87. aws_cdk/aws_ecr_assets/__init__.py +3 -0
  88. aws_cdk/aws_ecs/__init__.py +12 -4
  89. aws_cdk/aws_ecs_patterns/__init__.py +3 -0
  90. aws_cdk/aws_efs/__init__.py +3 -0
  91. aws_cdk/aws_eks/__init__.py +69 -47
  92. aws_cdk/aws_elasticache/__init__.py +3 -0
  93. aws_cdk/aws_elasticbeanstalk/__init__.py +3 -0
  94. aws_cdk/aws_elasticloadbalancing/__init__.py +3 -0
  95. aws_cdk/aws_elasticloadbalancingv2/__init__.py +431 -72
  96. aws_cdk/aws_elasticloadbalancingv2_actions/__init__.py +3 -0
  97. aws_cdk/aws_elasticloadbalancingv2_targets/__init__.py +3 -0
  98. aws_cdk/aws_elasticsearch/__init__.py +3 -0
  99. aws_cdk/aws_emr/__init__.py +3 -0
  100. aws_cdk/aws_emrcontainers/__init__.py +3 -0
  101. aws_cdk/aws_emrserverless/__init__.py +3 -0
  102. aws_cdk/aws_entityresolution/__init__.py +96 -66
  103. aws_cdk/aws_events/__init__.py +3 -0
  104. aws_cdk/aws_events_targets/__init__.py +3 -0
  105. aws_cdk/aws_eventschemas/__init__.py +3 -0
  106. aws_cdk/aws_evidently/__init__.py +3 -0
  107. aws_cdk/aws_finspace/__init__.py +3 -0
  108. aws_cdk/aws_fis/__init__.py +3 -0
  109. aws_cdk/aws_fms/__init__.py +3 -0
  110. aws_cdk/aws_forecast/__init__.py +3 -0
  111. aws_cdk/aws_frauddetector/__init__.py +3 -0
  112. aws_cdk/aws_fsx/__init__.py +3 -0
  113. aws_cdk/aws_gamelift/__init__.py +3 -0
  114. aws_cdk/aws_globalaccelerator/__init__.py +5 -2
  115. aws_cdk/aws_globalaccelerator_endpoints/__init__.py +3 -0
  116. aws_cdk/aws_glue/__init__.py +147 -3
  117. aws_cdk/aws_grafana/__init__.py +3 -0
  118. aws_cdk/aws_greengrass/__init__.py +3 -0
  119. aws_cdk/aws_greengrassv2/__init__.py +3 -0
  120. aws_cdk/aws_groundstation/__init__.py +3 -0
  121. aws_cdk/aws_guardduty/__init__.py +3 -0
  122. aws_cdk/aws_healthimaging/__init__.py +3 -0
  123. aws_cdk/aws_healthlake/__init__.py +3 -0
  124. aws_cdk/aws_iam/__init__.py +12 -10
  125. aws_cdk/aws_identitystore/__init__.py +3 -0
  126. aws_cdk/aws_imagebuilder/__init__.py +3 -0
  127. aws_cdk/aws_inspector/__init__.py +3 -0
  128. aws_cdk/aws_inspectorv2/__init__.py +3 -0
  129. aws_cdk/aws_internetmonitor/__init__.py +88 -0
  130. aws_cdk/aws_iot/__init__.py +3 -0
  131. aws_cdk/aws_iot1click/__init__.py +3 -0
  132. aws_cdk/aws_iotanalytics/__init__.py +3 -0
  133. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +3 -0
  134. aws_cdk/aws_iotevents/__init__.py +3 -0
  135. aws_cdk/aws_iotfleethub/__init__.py +3 -0
  136. aws_cdk/aws_iotfleetwise/__init__.py +3 -0
  137. aws_cdk/aws_iotsitewise/__init__.py +138 -55
  138. aws_cdk/aws_iotthingsgraph/__init__.py +3 -0
  139. aws_cdk/aws_iottwinmaker/__init__.py +3 -0
  140. aws_cdk/aws_iotwireless/__init__.py +3 -0
  141. aws_cdk/aws_ivs/__init__.py +3 -0
  142. aws_cdk/aws_ivschat/__init__.py +3 -0
  143. aws_cdk/aws_kafkaconnect/__init__.py +1239 -161
  144. aws_cdk/aws_kendra/__init__.py +56 -39
  145. aws_cdk/aws_kendraranking/__init__.py +3 -0
  146. aws_cdk/aws_kinesis/__init__.py +3 -0
  147. aws_cdk/aws_kinesisanalytics/__init__.py +40 -37
  148. aws_cdk/aws_kinesisanalyticsv2/__init__.py +40 -37
  149. aws_cdk/aws_kinesisfirehose/__init__.py +14 -3
  150. aws_cdk/aws_kinesisvideo/__init__.py +3 -0
  151. aws_cdk/aws_kms/__init__.py +3 -0
  152. aws_cdk/aws_lakeformation/__init__.py +3 -0
  153. aws_cdk/aws_lambda/__init__.py +9 -0
  154. aws_cdk/aws_lambda_destinations/__init__.py +3 -0
  155. aws_cdk/aws_lambda_event_sources/__init__.py +45 -18
  156. aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
  157. aws_cdk/aws_lex/__init__.py +3 -0
  158. aws_cdk/aws_licensemanager/__init__.py +3 -0
  159. aws_cdk/aws_lightsail/__init__.py +3 -0
  160. aws_cdk/aws_location/__init__.py +3 -0
  161. aws_cdk/aws_logs/__init__.py +3 -0
  162. aws_cdk/aws_logs_destinations/__init__.py +3 -0
  163. aws_cdk/aws_lookoutequipment/__init__.py +3 -0
  164. aws_cdk/aws_lookoutmetrics/__init__.py +3 -0
  165. aws_cdk/aws_lookoutvision/__init__.py +3 -0
  166. aws_cdk/aws_m2/__init__.py +3 -0
  167. aws_cdk/aws_macie/__init__.py +3 -0
  168. aws_cdk/aws_managedblockchain/__init__.py +5 -3
  169. aws_cdk/aws_mediaconnect/__init__.py +3 -0
  170. aws_cdk/aws_mediaconvert/__init__.py +3 -0
  171. aws_cdk/aws_medialive/__init__.py +3 -0
  172. aws_cdk/aws_mediapackage/__init__.py +3 -0
  173. aws_cdk/aws_mediapackagev2/__init__.py +3 -0
  174. aws_cdk/aws_mediastore/__init__.py +3 -0
  175. aws_cdk/aws_mediatailor/__init__.py +3 -0
  176. aws_cdk/aws_memorydb/__init__.py +3 -0
  177. aws_cdk/aws_msk/__init__.py +91 -0
  178. aws_cdk/aws_mwaa/__init__.py +3 -0
  179. aws_cdk/aws_neptune/__init__.py +3 -0
  180. aws_cdk/aws_neptunegraph/__init__.py +3 -0
  181. aws_cdk/aws_networkfirewall/__init__.py +3 -0
  182. aws_cdk/aws_networkmanager/__init__.py +3 -0
  183. aws_cdk/aws_nimblestudio/__init__.py +3 -0
  184. aws_cdk/aws_oam/__init__.py +6 -3
  185. aws_cdk/aws_omics/__init__.py +3 -0
  186. aws_cdk/aws_opensearchserverless/__init__.py +3 -0
  187. aws_cdk/aws_opensearchservice/__init__.py +26 -18
  188. aws_cdk/aws_opsworks/__init__.py +3 -0
  189. aws_cdk/aws_opsworkscm/__init__.py +3 -0
  190. aws_cdk/aws_organizations/__init__.py +3 -0
  191. aws_cdk/aws_osis/__init__.py +3 -0
  192. aws_cdk/aws_panorama/__init__.py +3 -0
  193. aws_cdk/aws_pcaconnectorad/__init__.py +3 -0
  194. aws_cdk/aws_personalize/__init__.py +3 -0
  195. aws_cdk/aws_pinpoint/__init__.py +45 -0
  196. aws_cdk/aws_pinpointemail/__init__.py +3 -0
  197. aws_cdk/aws_pipes/__init__.py +3 -0
  198. aws_cdk/aws_proton/__init__.py +3 -0
  199. aws_cdk/aws_qldb/__init__.py +3 -0
  200. aws_cdk/aws_quicksight/__init__.py +3 -0
  201. aws_cdk/aws_ram/__init__.py +3 -0
  202. aws_cdk/aws_rds/__init__.py +150 -27
  203. aws_cdk/aws_redshift/__init__.py +3 -0
  204. aws_cdk/aws_redshiftserverless/__init__.py +3 -0
  205. aws_cdk/aws_refactorspaces/__init__.py +3 -0
  206. aws_cdk/aws_rekognition/__init__.py +3 -0
  207. aws_cdk/aws_resiliencehub/__init__.py +3 -0
  208. aws_cdk/aws_resourceexplorer2/__init__.py +3 -0
  209. aws_cdk/aws_resourcegroups/__init__.py +3 -0
  210. aws_cdk/aws_robomaker/__init__.py +3 -0
  211. aws_cdk/aws_rolesanywhere/__init__.py +3 -0
  212. aws_cdk/aws_route53/__init__.py +52 -0
  213. aws_cdk/aws_route53_patterns/__init__.py +3 -0
  214. aws_cdk/aws_route53_targets/__init__.py +3 -0
  215. aws_cdk/aws_route53recoverycontrol/__init__.py +3 -0
  216. aws_cdk/aws_route53recoveryreadiness/__init__.py +3 -0
  217. aws_cdk/aws_route53resolver/__init__.py +3 -0
  218. aws_cdk/aws_rum/__init__.py +3 -0
  219. aws_cdk/aws_s3/__init__.py +3 -0
  220. aws_cdk/aws_s3_assets/__init__.py +3 -0
  221. aws_cdk/aws_s3_deployment/__init__.py +3 -0
  222. aws_cdk/aws_s3_notifications/__init__.py +3 -0
  223. aws_cdk/aws_s3express/__init__.py +3 -0
  224. aws_cdk/aws_s3objectlambda/__init__.py +3 -0
  225. aws_cdk/aws_s3outposts/__init__.py +3 -0
  226. aws_cdk/aws_sagemaker/__init__.py +5 -2
  227. aws_cdk/aws_sam/__init__.py +3 -0
  228. aws_cdk/aws_scheduler/__init__.py +3 -0
  229. aws_cdk/aws_sdb/__init__.py +3 -0
  230. aws_cdk/aws_secretsmanager/__init__.py +3 -0
  231. aws_cdk/aws_securityhub/__init__.py +59 -14
  232. aws_cdk/aws_securitylake/__init__.py +859 -0
  233. aws_cdk/aws_servicecatalog/__init__.py +3 -0
  234. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -0
  235. aws_cdk/aws_servicediscovery/__init__.py +3 -0
  236. aws_cdk/aws_ses/__init__.py +3 -0
  237. aws_cdk/aws_ses_actions/__init__.py +3 -0
  238. aws_cdk/aws_shield/__init__.py +3 -0
  239. aws_cdk/aws_signer/__init__.py +3 -0
  240. aws_cdk/aws_simspaceweaver/__init__.py +3 -0
  241. aws_cdk/aws_sns/__init__.py +48 -13
  242. aws_cdk/aws_sns_subscriptions/__init__.py +3 -0
  243. aws_cdk/aws_sqs/__init__.py +3 -0
  244. aws_cdk/aws_ssm/__init__.py +6 -3
  245. aws_cdk/aws_ssmcontacts/__init__.py +3 -0
  246. aws_cdk/aws_ssmincidents/__init__.py +3 -0
  247. aws_cdk/aws_sso/__init__.py +3 -0
  248. aws_cdk/aws_stepfunctions/__init__.py +3 -0
  249. aws_cdk/aws_stepfunctions_tasks/__init__.py +26 -0
  250. aws_cdk/aws_supportapp/__init__.py +3 -0
  251. aws_cdk/aws_synthetics/__init__.py +77 -14
  252. aws_cdk/aws_systemsmanagersap/__init__.py +3 -0
  253. aws_cdk/aws_timestream/__init__.py +3 -0
  254. aws_cdk/aws_transfer/__init__.py +7 -3
  255. aws_cdk/aws_verifiedpermissions/__init__.py +3 -0
  256. aws_cdk/aws_voiceid/__init__.py +3 -0
  257. aws_cdk/aws_vpclattice/__init__.py +3 -0
  258. aws_cdk/aws_waf/__init__.py +3 -0
  259. aws_cdk/aws_wafregional/__init__.py +3 -0
  260. aws_cdk/aws_wafv2/__init__.py +99 -46
  261. aws_cdk/aws_wisdom/__init__.py +3 -0
  262. aws_cdk/aws_workspaces/__init__.py +3 -0
  263. aws_cdk/aws_workspacesthinclient/__init__.py +3 -0
  264. aws_cdk/aws_workspacesweb/__init__.py +3 -0
  265. aws_cdk/aws_xray/__init__.py +3 -0
  266. aws_cdk/cloud_assembly_schema/__init__.py +3 -0
  267. aws_cdk/cloudformation_include/__init__.py +3 -0
  268. aws_cdk/custom_resources/__init__.py +7 -4
  269. aws_cdk/cx_api/__init__.py +20 -0
  270. aws_cdk/lambda_layer_awscli/__init__.py +3 -0
  271. aws_cdk/lambda_layer_kubectl/__init__.py +3 -0
  272. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +3 -0
  273. aws_cdk/pipelines/__init__.py +3 -0
  274. aws_cdk/region_info/__init__.py +3 -0
  275. aws_cdk/triggers/__init__.py +3 -0
  276. {aws_cdk_lib-2.133.0.dist-info → aws_cdk_lib-2.135.0.dist-info}/METADATA +2 -2
  277. aws_cdk_lib-2.135.0.dist-info/RECORD +282 -0
  278. aws_cdk_lib-2.133.0.dist-info/RECORD +0 -281
  279. {aws_cdk_lib-2.133.0.dist-info → aws_cdk_lib-2.135.0.dist-info}/LICENSE +0 -0
  280. {aws_cdk_lib-2.133.0.dist-info → aws_cdk_lib-2.135.0.dist-info}/NOTICE +0 -0
  281. {aws_cdk_lib-2.133.0.dist-info → aws_cdk_lib-2.135.0.dist-info}/WHEEL +0 -0
  282. {aws_cdk_lib-2.133.0.dist-info → aws_cdk_lib-2.135.0.dist-info}/top_level.txt +0 -0
@@ -554,6 +554,9 @@ application.add_extension(extension)
554
554
  application.on_deployment_complete(lambda_destination)
555
555
  ```
556
556
  '''
557
+ from pkgutil import extend_path
558
+ __path__ = extend_path(__path__, __name__)
559
+
557
560
  import abc
558
561
  import builtins
559
562
  import datetime
@@ -1475,7 +1478,7 @@ class CfnConfigurationProfile(
1475
1478
  ) -> None:
1476
1479
  '''A validator provides a syntactic or semantic check to ensure the configuration that you want to deploy functions as intended.
1477
1480
 
1478
- To validate your application configuration data, you provide a schema or an AWS Lambda function that runs against the configuration. The configuration deployment or update can only proceed when the configuration data is valid.
1481
+ To validate your application configuration data, you provide a schema or an AWS Lambda function that runs against the configuration. The configuration deployment or update can only proceed when the configuration data is valid. For more information, see `About validators <https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-profile.html#appconfig-creating-configuration-and-profile-validators>`_ in the *AWS AppConfig User Guide* .
1479
1482
 
1480
1483
  :param content: Either the JSON Schema content or the Amazon Resource Name (ARN) of an Lambda function.
1481
1484
  :param type: AWS AppConfig supports validators of type ``JSON_SCHEMA`` and ``LAMBDA``.
@@ -1791,6 +1794,11 @@ class CfnDeployment(
1791
1794
 
1792
1795
  # the properties below are optional
1793
1796
  description="description",
1797
+ dynamic_extension_parameters=[appconfig.CfnDeployment.DynamicExtensionParametersProperty(
1798
+ extension_reference="extensionReference",
1799
+ parameter_name="parameterName",
1800
+ parameter_value="parameterValue"
1801
+ )],
1794
1802
  kms_key_identifier="kmsKeyIdentifier",
1795
1803
  tags=[CfnTag(
1796
1804
  key="key",
@@ -1810,6 +1818,7 @@ class CfnDeployment(
1810
1818
  deployment_strategy_id: builtins.str,
1811
1819
  environment_id: builtins.str,
1812
1820
  description: typing.Optional[builtins.str] = None,
1821
+ dynamic_extension_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDeployment.DynamicExtensionParametersProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1813
1822
  kms_key_identifier: typing.Optional[builtins.str] = None,
1814
1823
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1815
1824
  ) -> None:
@@ -1822,6 +1831,7 @@ class CfnDeployment(
1822
1831
  :param deployment_strategy_id: The deployment strategy ID.
1823
1832
  :param environment_id: The environment ID.
1824
1833
  :param description: A description of the deployment.
1834
+ :param dynamic_extension_parameters: The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the ``CreateExtensionAssociation`` API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
1825
1835
  :param kms_key_identifier: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.
1826
1836
  :param tags: Metadata to assign to the deployment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.
1827
1837
  '''
@@ -1836,6 +1846,7 @@ class CfnDeployment(
1836
1846
  deployment_strategy_id=deployment_strategy_id,
1837
1847
  environment_id=environment_id,
1838
1848
  description=description,
1849
+ dynamic_extension_parameters=dynamic_extension_parameters,
1839
1850
  kms_key_identifier=kms_key_identifier,
1840
1851
  tags=tags,
1841
1852
  )
@@ -1969,6 +1980,24 @@ class CfnDeployment(
1969
1980
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1970
1981
  jsii.set(self, "description", value)
1971
1982
 
1983
+ @builtins.property
1984
+ @jsii.member(jsii_name="dynamicExtensionParameters")
1985
+ def dynamic_extension_parameters(
1986
+ self,
1987
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDeployment.DynamicExtensionParametersProperty"]]]]:
1988
+ '''The parameters accepted by the extension.'''
1989
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDeployment.DynamicExtensionParametersProperty"]]]], jsii.get(self, "dynamicExtensionParameters"))
1990
+
1991
+ @dynamic_extension_parameters.setter
1992
+ def dynamic_extension_parameters(
1993
+ self,
1994
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDeployment.DynamicExtensionParametersProperty"]]]],
1995
+ ) -> None:
1996
+ if __debug__:
1997
+ type_hints = typing.get_type_hints(_typecheckingstub__e5a4416b6ac2f6fbc5dd497fd6aafe41844d2e927bc75ce571b37c2f1b805bfb)
1998
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1999
+ jsii.set(self, "dynamicExtensionParameters", value)
2000
+
1972
2001
  @builtins.property
1973
2002
  @jsii.member(jsii_name="kmsKeyIdentifier")
1974
2003
  def kms_key_identifier(self) -> typing.Optional[builtins.str]:
@@ -1995,6 +2024,91 @@ class CfnDeployment(
1995
2024
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1996
2025
  jsii.set(self, "tags", value)
1997
2026
 
2027
+ @jsii.data_type(
2028
+ jsii_type="aws-cdk-lib.aws_appconfig.CfnDeployment.DynamicExtensionParametersProperty",
2029
+ jsii_struct_bases=[],
2030
+ name_mapping={
2031
+ "extension_reference": "extensionReference",
2032
+ "parameter_name": "parameterName",
2033
+ "parameter_value": "parameterValue",
2034
+ },
2035
+ )
2036
+ class DynamicExtensionParametersProperty:
2037
+ def __init__(
2038
+ self,
2039
+ *,
2040
+ extension_reference: typing.Optional[builtins.str] = None,
2041
+ parameter_name: typing.Optional[builtins.str] = None,
2042
+ parameter_value: typing.Optional[builtins.str] = None,
2043
+ ) -> None:
2044
+ '''
2045
+ :param extension_reference:
2046
+ :param parameter_name:
2047
+ :param parameter_value:
2048
+
2049
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-deployment-dynamicextensionparameters.html
2050
+ :exampleMetadata: fixture=_generated
2051
+
2052
+ Example::
2053
+
2054
+ # The code below shows an example of how to instantiate this type.
2055
+ # The values are placeholders you should change.
2056
+ from aws_cdk import aws_appconfig as appconfig
2057
+
2058
+ dynamic_extension_parameters_property = appconfig.CfnDeployment.DynamicExtensionParametersProperty(
2059
+ extension_reference="extensionReference",
2060
+ parameter_name="parameterName",
2061
+ parameter_value="parameterValue"
2062
+ )
2063
+ '''
2064
+ if __debug__:
2065
+ type_hints = typing.get_type_hints(_typecheckingstub__db7299354c46559a877995ee8ab04c4fd72aaaf53cc390877fbf50f65ac43390)
2066
+ check_type(argname="argument extension_reference", value=extension_reference, expected_type=type_hints["extension_reference"])
2067
+ check_type(argname="argument parameter_name", value=parameter_name, expected_type=type_hints["parameter_name"])
2068
+ check_type(argname="argument parameter_value", value=parameter_value, expected_type=type_hints["parameter_value"])
2069
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2070
+ if extension_reference is not None:
2071
+ self._values["extension_reference"] = extension_reference
2072
+ if parameter_name is not None:
2073
+ self._values["parameter_name"] = parameter_name
2074
+ if parameter_value is not None:
2075
+ self._values["parameter_value"] = parameter_value
2076
+
2077
+ @builtins.property
2078
+ def extension_reference(self) -> typing.Optional[builtins.str]:
2079
+ '''
2080
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-deployment-dynamicextensionparameters.html#cfn-appconfig-deployment-dynamicextensionparameters-extensionreference
2081
+ '''
2082
+ result = self._values.get("extension_reference")
2083
+ return typing.cast(typing.Optional[builtins.str], result)
2084
+
2085
+ @builtins.property
2086
+ def parameter_name(self) -> typing.Optional[builtins.str]:
2087
+ '''
2088
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-deployment-dynamicextensionparameters.html#cfn-appconfig-deployment-dynamicextensionparameters-parametername
2089
+ '''
2090
+ result = self._values.get("parameter_name")
2091
+ return typing.cast(typing.Optional[builtins.str], result)
2092
+
2093
+ @builtins.property
2094
+ def parameter_value(self) -> typing.Optional[builtins.str]:
2095
+ '''
2096
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-deployment-dynamicextensionparameters.html#cfn-appconfig-deployment-dynamicextensionparameters-parametervalue
2097
+ '''
2098
+ result = self._values.get("parameter_value")
2099
+ return typing.cast(typing.Optional[builtins.str], result)
2100
+
2101
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2102
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2103
+
2104
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2105
+ return not (rhs == self)
2106
+
2107
+ def __repr__(self) -> str:
2108
+ return "DynamicExtensionParametersProperty(%s)" % ", ".join(
2109
+ k + "=" + repr(v) for k, v in self._values.items()
2110
+ )
2111
+
1998
2112
 
1999
2113
  @jsii.data_type(
2000
2114
  jsii_type="aws-cdk-lib.aws_appconfig.CfnDeploymentProps",
@@ -2006,6 +2120,7 @@ class CfnDeployment(
2006
2120
  "deployment_strategy_id": "deploymentStrategyId",
2007
2121
  "environment_id": "environmentId",
2008
2122
  "description": "description",
2123
+ "dynamic_extension_parameters": "dynamicExtensionParameters",
2009
2124
  "kms_key_identifier": "kmsKeyIdentifier",
2010
2125
  "tags": "tags",
2011
2126
  },
@@ -2020,6 +2135,7 @@ class CfnDeploymentProps:
2020
2135
  deployment_strategy_id: builtins.str,
2021
2136
  environment_id: builtins.str,
2022
2137
  description: typing.Optional[builtins.str] = None,
2138
+ dynamic_extension_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDeployment.DynamicExtensionParametersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2023
2139
  kms_key_identifier: typing.Optional[builtins.str] = None,
2024
2140
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2025
2141
  ) -> None:
@@ -2031,6 +2147,7 @@ class CfnDeploymentProps:
2031
2147
  :param deployment_strategy_id: The deployment strategy ID.
2032
2148
  :param environment_id: The environment ID.
2033
2149
  :param description: A description of the deployment.
2150
+ :param dynamic_extension_parameters: The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the ``CreateExtensionAssociation`` API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
2034
2151
  :param kms_key_identifier: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.
2035
2152
  :param tags: Metadata to assign to the deployment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.
2036
2153
 
@@ -2052,6 +2169,11 @@ class CfnDeploymentProps:
2052
2169
 
2053
2170
  # the properties below are optional
2054
2171
  description="description",
2172
+ dynamic_extension_parameters=[appconfig.CfnDeployment.DynamicExtensionParametersProperty(
2173
+ extension_reference="extensionReference",
2174
+ parameter_name="parameterName",
2175
+ parameter_value="parameterValue"
2176
+ )],
2055
2177
  kms_key_identifier="kmsKeyIdentifier",
2056
2178
  tags=[CfnTag(
2057
2179
  key="key",
@@ -2067,6 +2189,7 @@ class CfnDeploymentProps:
2067
2189
  check_type(argname="argument deployment_strategy_id", value=deployment_strategy_id, expected_type=type_hints["deployment_strategy_id"])
2068
2190
  check_type(argname="argument environment_id", value=environment_id, expected_type=type_hints["environment_id"])
2069
2191
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
2192
+ check_type(argname="argument dynamic_extension_parameters", value=dynamic_extension_parameters, expected_type=type_hints["dynamic_extension_parameters"])
2070
2193
  check_type(argname="argument kms_key_identifier", value=kms_key_identifier, expected_type=type_hints["kms_key_identifier"])
2071
2194
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
2072
2195
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -2078,6 +2201,8 @@ class CfnDeploymentProps:
2078
2201
  }
2079
2202
  if description is not None:
2080
2203
  self._values["description"] = description
2204
+ if dynamic_extension_parameters is not None:
2205
+ self._values["dynamic_extension_parameters"] = dynamic_extension_parameters
2081
2206
  if kms_key_identifier is not None:
2082
2207
  self._values["kms_key_identifier"] = kms_key_identifier
2083
2208
  if tags is not None:
@@ -2144,6 +2269,19 @@ class CfnDeploymentProps:
2144
2269
  result = self._values.get("description")
2145
2270
  return typing.cast(typing.Optional[builtins.str], result)
2146
2271
 
2272
+ @builtins.property
2273
+ def dynamic_extension_parameters(
2274
+ self,
2275
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDeployment.DynamicExtensionParametersProperty]]]]:
2276
+ '''The parameters accepted by the extension.
2277
+
2278
+ You specify parameter values when you associate the extension to an AWS AppConfig resource by using the ``CreateExtensionAssociation`` API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
2279
+
2280
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deployment.html#cfn-appconfig-deployment-dynamicextensionparameters
2281
+ '''
2282
+ result = self._values.get("dynamic_extension_parameters")
2283
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDeployment.DynamicExtensionParametersProperty]]]], result)
2284
+
2147
2285
  @builtins.property
2148
2286
  def kms_key_identifier(self) -> typing.Optional[builtins.str]:
2149
2287
  '''The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.
@@ -3108,7 +3246,7 @@ class CfnExtension(
3108
3246
  - For a custom Amazon SNS notification extension, enter the ARN of an Amazon SNS topic in the ``Uri`` field.
3109
3247
  - For a custom Amazon SQS notification extension, enter the ARN of an Amazon SQS message queue in the ``Uri`` field.
3110
3248
 
3111
- For more information about extensions, see `Working with AWS AppConfig extensions <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3249
+ For more information about extensions, see `Extending workflows <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3112
3250
 
3113
3251
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extension.html
3114
3252
  :cloudformationResource: AWS::AppConfig::Extension
@@ -3134,7 +3272,8 @@ class CfnExtension(
3134
3272
  required=False,
3135
3273
 
3136
3274
  # the properties below are optional
3137
- description="description"
3275
+ description="description",
3276
+ dynamic=False
3138
3277
  )
3139
3278
  },
3140
3279
  tags=[CfnTag(
@@ -3455,7 +3594,11 @@ class CfnExtension(
3455
3594
  @jsii.data_type(
3456
3595
  jsii_type="aws-cdk-lib.aws_appconfig.CfnExtension.ParameterProperty",
3457
3596
  jsii_struct_bases=[],
3458
- name_mapping={"required": "required", "description": "description"},
3597
+ name_mapping={
3598
+ "required": "required",
3599
+ "description": "description",
3600
+ "dynamic": "dynamic",
3601
+ },
3459
3602
  )
3460
3603
  class ParameterProperty:
3461
3604
  def __init__(
@@ -3463,13 +3606,15 @@ class CfnExtension(
3463
3606
  *,
3464
3607
  required: typing.Union[builtins.bool, _IResolvable_da3f097b],
3465
3608
  description: typing.Optional[builtins.str] = None,
3609
+ dynamic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3466
3610
  ) -> None:
3467
3611
  '''A value such as an Amazon Resource Name (ARN) or an Amazon Simple Notification Service topic entered in an extension when invoked.
3468
3612
 
3469
- Parameter values are specified in an extension association. For more information about extensions, see `Working with AWS AppConfig extensions <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3613
+ Parameter values are specified in an extension association. For more information about extensions, see `Extending workflows <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3470
3614
 
3471
3615
  :param required: A parameter value must be specified in the extension association.
3472
3616
  :param description: Information about the parameter.
3617
+ :param dynamic: Indicates whether this parameter's value can be supplied at the extension's action point instead of during extension association. Dynamic parameters can't be marked ``Required`` .
3473
3618
 
3474
3619
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-extension-parameter.html
3475
3620
  :exampleMetadata: fixture=_generated
@@ -3484,18 +3629,22 @@ class CfnExtension(
3484
3629
  required=False,
3485
3630
 
3486
3631
  # the properties below are optional
3487
- description="description"
3632
+ description="description",
3633
+ dynamic=False
3488
3634
  )
3489
3635
  '''
3490
3636
  if __debug__:
3491
3637
  type_hints = typing.get_type_hints(_typecheckingstub__683bc731900456f8d594ddc90d3c7fc1fcdc884942410401537639fad3d02ed1)
3492
3638
  check_type(argname="argument required", value=required, expected_type=type_hints["required"])
3493
3639
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
3640
+ check_type(argname="argument dynamic", value=dynamic, expected_type=type_hints["dynamic"])
3494
3641
  self._values: typing.Dict[builtins.str, typing.Any] = {
3495
3642
  "required": required,
3496
3643
  }
3497
3644
  if description is not None:
3498
3645
  self._values["description"] = description
3646
+ if dynamic is not None:
3647
+ self._values["dynamic"] = dynamic
3499
3648
 
3500
3649
  @builtins.property
3501
3650
  def required(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
@@ -3516,6 +3665,19 @@ class CfnExtension(
3516
3665
  result = self._values.get("description")
3517
3666
  return typing.cast(typing.Optional[builtins.str], result)
3518
3667
 
3668
+ @builtins.property
3669
+ def dynamic(
3670
+ self,
3671
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3672
+ '''Indicates whether this parameter's value can be supplied at the extension's action point instead of during extension association.
3673
+
3674
+ Dynamic parameters can't be marked ``Required`` .
3675
+
3676
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-extension-parameter.html#cfn-appconfig-extension-parameter-dynamic
3677
+ '''
3678
+ result = self._values.get("dynamic")
3679
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3680
+
3519
3681
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3520
3682
  return isinstance(rhs, self.__class__) and rhs._values == self._values
3521
3683
 
@@ -3536,7 +3698,7 @@ class CfnExtensionAssociation(
3536
3698
  ):
3537
3699
  '''When you create an extension or configure an AWS authored extension, you associate the extension with an AWS AppConfig application, environment, or configuration profile.
3538
3700
 
3539
- For example, you can choose to run the ``AWS AppConfig deployment events to Amazon SNS`` AWS authored extension and receive notifications on an Amazon SNS topic anytime a configuration deployment is started for a specific application. Defining which extension to associate with an AWS AppConfig resource is called an *extension association* . An extension association is a specified relationship between an extension and an AWS AppConfig resource, such as an application or a configuration profile. For more information about extensions and associations, see `Working with AWS AppConfig extensions <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3701
+ For example, you can choose to run the ``AWS AppConfig deployment events to Amazon SNS`` AWS authored extension and receive notifications on an Amazon SNS topic anytime a configuration deployment is started for a specific application. Defining which extension to associate with an AWS AppConfig resource is called an *extension association* . An extension association is a specified relationship between an extension and an AWS AppConfig resource, such as an application or a configuration profile. For more information about extensions and associations, see `Extending workflows <https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html>`_ in the *AWS AppConfig User Guide* .
3540
3702
 
3541
3703
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extensionassociation.html
3542
3704
  :cloudformationResource: AWS::AppConfig::ExtensionAssociation
@@ -3934,7 +4096,8 @@ class CfnExtensionProps:
3934
4096
  required=False,
3935
4097
 
3936
4098
  # the properties below are optional
3937
- description="description"
4099
+ description="description",
4100
+ dynamic=False
3938
4101
  )
3939
4102
  },
3940
4103
  tags=[CfnTag(
@@ -12664,6 +12827,7 @@ def _typecheckingstub__f1b3c15ba63fb6169371007d7bae981d061f49c21042389030326b9ae
12664
12827
  deployment_strategy_id: builtins.str,
12665
12828
  environment_id: builtins.str,
12666
12829
  description: typing.Optional[builtins.str] = None,
12830
+ dynamic_extension_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDeployment.DynamicExtensionParametersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
12667
12831
  kms_key_identifier: typing.Optional[builtins.str] = None,
12668
12832
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
12669
12833
  ) -> None:
@@ -12718,6 +12882,12 @@ def _typecheckingstub__96f77dd19f2c1b41d04318bc8aa9cc8f75808190471ba4922eb58652c
12718
12882
  """Type checking stubs"""
12719
12883
  pass
12720
12884
 
12885
+ def _typecheckingstub__e5a4416b6ac2f6fbc5dd497fd6aafe41844d2e927bc75ce571b37c2f1b805bfb(
12886
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDeployment.DynamicExtensionParametersProperty]]]],
12887
+ ) -> None:
12888
+ """Type checking stubs"""
12889
+ pass
12890
+
12721
12891
  def _typecheckingstub__98b30f15af8144546829026dccf1aaf4fedd94b59dabeb6c8e8d7bc2b71e2efb(
12722
12892
  value: typing.Optional[builtins.str],
12723
12893
  ) -> None:
@@ -12730,6 +12900,15 @@ def _typecheckingstub__12211b05040a4e1a62df97a0128f266db1c0380eba8db0726824e99ad
12730
12900
  """Type checking stubs"""
12731
12901
  pass
12732
12902
 
12903
+ def _typecheckingstub__db7299354c46559a877995ee8ab04c4fd72aaaf53cc390877fbf50f65ac43390(
12904
+ *,
12905
+ extension_reference: typing.Optional[builtins.str] = None,
12906
+ parameter_name: typing.Optional[builtins.str] = None,
12907
+ parameter_value: typing.Optional[builtins.str] = None,
12908
+ ) -> None:
12909
+ """Type checking stubs"""
12910
+ pass
12911
+
12733
12912
  def _typecheckingstub__8289d78d65be12b91a60529d6c53d8a4385f73c87b2a23cfef86efebc1e00914(
12734
12913
  *,
12735
12914
  application_id: builtins.str,
@@ -12738,6 +12917,7 @@ def _typecheckingstub__8289d78d65be12b91a60529d6c53d8a4385f73c87b2a23cfef86efebc
12738
12917
  deployment_strategy_id: builtins.str,
12739
12918
  environment_id: builtins.str,
12740
12919
  description: typing.Optional[builtins.str] = None,
12920
+ dynamic_extension_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDeployment.DynamicExtensionParametersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
12741
12921
  kms_key_identifier: typing.Optional[builtins.str] = None,
12742
12922
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
12743
12923
  ) -> None:
@@ -12992,6 +13172,7 @@ def _typecheckingstub__683bc731900456f8d594ddc90d3c7fc1fcdc884942410401537639fad
12992
13172
  *,
12993
13173
  required: typing.Union[builtins.bool, _IResolvable_da3f097b],
12994
13174
  description: typing.Optional[builtins.str] = None,
13175
+ dynamic: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
12995
13176
  ) -> None:
12996
13177
  """Type checking stubs"""
12997
13178
  pass
@@ -25,6 +25,9 @@ For more information on the resources and properties available for this service,
25
25
 
26
26
  <!--END CFNONLY DISCLAIMER-->
27
27
  '''
28
+ from pkgutil import extend_path
29
+ __path__ = extend_path(__path__, __name__)
30
+
28
31
  import abc
29
32
  import builtins
30
33
  import datetime