aws-cdk-lib 2.127.0__py3-none-any.whl → 2.129.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 (103) hide show
  1. aws_cdk/__init__.py +6 -10
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.127.0.jsii.tgz → aws-cdk-lib@2.129.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +6 -24
  5. aws_cdk/aws_amplify/__init__.py +1 -2
  6. aws_cdk/aws_appconfig/__init__.py +0 -16
  7. aws_cdk/aws_applicationautoscaling/__init__.py +55 -22
  8. aws_cdk/aws_appstream/__init__.py +14 -14
  9. aws_cdk/aws_appsync/__init__.py +334 -3
  10. aws_cdk/aws_autoscaling/__init__.py +11 -7
  11. aws_cdk/aws_batch/__init__.py +137 -16
  12. aws_cdk/aws_cleanrooms/__init__.py +1 -2
  13. aws_cdk/aws_cloudformation/__init__.py +2 -10
  14. aws_cdk/aws_cloudfront/__init__.py +15 -8
  15. aws_cdk/aws_cloudfront/experimental/__init__.py +22 -0
  16. aws_cdk/aws_cloudfront_origins/__init__.py +332 -0
  17. aws_cdk/aws_cloudtrail/__init__.py +12 -2
  18. aws_cdk/aws_cloudwatch/__init__.py +925 -133
  19. aws_cdk/aws_codedeploy/__init__.py +69 -0
  20. aws_cdk/aws_codepipeline/__init__.py +1461 -111
  21. aws_cdk/aws_codepipeline_actions/__init__.py +40 -34
  22. aws_cdk/aws_cognito/__init__.py +0 -9
  23. aws_cdk/aws_config/__init__.py +2 -2
  24. aws_cdk/aws_connect/__init__.py +6 -1
  25. aws_cdk/aws_controltower/__init__.py +527 -7
  26. aws_cdk/aws_datasync/__init__.py +2 -2
  27. aws_cdk/aws_directoryservice/__init__.py +2 -3
  28. aws_cdk/aws_dynamodb/__init__.py +7 -0
  29. aws_cdk/aws_ec2/__init__.py +117 -210
  30. aws_cdk/aws_ecs/__init__.py +537 -3
  31. aws_cdk/aws_eks/__init__.py +1 -1
  32. aws_cdk/aws_elasticache/__init__.py +27 -20
  33. aws_cdk/aws_elasticloadbalancingv2/__init__.py +3 -4
  34. aws_cdk/aws_emr/__init__.py +23 -3
  35. aws_cdk/aws_events_targets/__init__.py +64 -20
  36. aws_cdk/aws_fis/__init__.py +4 -4
  37. aws_cdk/aws_frauddetector/__init__.py +3 -3
  38. aws_cdk/aws_globalaccelerator/__init__.py +2 -6
  39. aws_cdk/aws_glue/__init__.py +84 -55
  40. aws_cdk/aws_groundstation/__init__.py +8 -12
  41. aws_cdk/aws_guardduty/__init__.py +74 -70
  42. aws_cdk/aws_iam/__init__.py +16 -23
  43. aws_cdk/aws_imagebuilder/__init__.py +178 -156
  44. aws_cdk/aws_internetmonitor/__init__.py +12 -10
  45. aws_cdk/aws_iot/__init__.py +17 -10
  46. aws_cdk/aws_iotevents/__init__.py +4 -4
  47. aws_cdk/aws_iotfleetwise/__init__.py +10 -5
  48. aws_cdk/aws_iottwinmaker/__init__.py +3 -5
  49. aws_cdk/aws_iotwireless/__init__.py +35 -23
  50. aws_cdk/aws_kendra/__init__.py +36 -15
  51. aws_cdk/aws_kinesisfirehose/__init__.py +155 -114
  52. aws_cdk/aws_lambda/__init__.py +175 -15
  53. aws_cdk/aws_lambda_nodejs/__init__.py +22 -0
  54. aws_cdk/aws_lightsail/__init__.py +14 -18
  55. aws_cdk/aws_logs/__init__.py +15 -15
  56. aws_cdk/aws_mediaconnect/__init__.py +5 -3
  57. aws_cdk/aws_medialive/__init__.py +3 -12
  58. aws_cdk/aws_mediapackagev2/__init__.py +287 -286
  59. aws_cdk/aws_mediatailor/__init__.py +2 -2
  60. aws_cdk/aws_memorydb/__init__.py +2 -2
  61. aws_cdk/aws_msk/__init__.py +6 -3
  62. aws_cdk/aws_mwaa/__init__.py +10 -5
  63. aws_cdk/aws_neptunegraph/__init__.py +84 -66
  64. aws_cdk/aws_networkfirewall/__init__.py +5 -8
  65. aws_cdk/aws_networkmanager/__init__.py +3 -3
  66. aws_cdk/aws_nimblestudio/__init__.py +2 -4
  67. aws_cdk/aws_opensearchservice/__init__.py +6 -7
  68. aws_cdk/aws_osis/__init__.py +1 -3
  69. aws_cdk/aws_pinpoint/__init__.py +5 -5
  70. aws_cdk/aws_pipes/__init__.py +5 -5
  71. aws_cdk/aws_quicksight/__init__.py +5 -10
  72. aws_cdk/aws_rds/__init__.py +38 -21
  73. aws_cdk/aws_redshift/__init__.py +9 -5
  74. aws_cdk/aws_redshiftserverless/__init__.py +62 -38
  75. aws_cdk/aws_rolesanywhere/__init__.py +41 -53
  76. aws_cdk/aws_route53/__init__.py +532 -6
  77. aws_cdk/aws_route53recoverycontrol/__init__.py +1 -3
  78. aws_cdk/aws_route53recoveryreadiness/__init__.py +2 -2
  79. aws_cdk/aws_route53resolver/__init__.py +1 -4
  80. aws_cdk/aws_s3/__init__.py +12 -6
  81. aws_cdk/aws_s3_deployment/__init__.py +29 -0
  82. aws_cdk/aws_s3objectlambda/__init__.py +7 -4
  83. aws_cdk/aws_s3outposts/__init__.py +1 -1
  84. aws_cdk/aws_sagemaker/__init__.py +195 -11
  85. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
  86. aws_cdk/aws_ses/__init__.py +166 -9
  87. aws_cdk/aws_sns/__init__.py +185 -38
  88. aws_cdk/aws_sqs/__init__.py +10 -12
  89. aws_cdk/aws_ssm/__init__.py +16 -16
  90. aws_cdk/aws_ssmincidents/__init__.py +1 -1
  91. aws_cdk/aws_synthetics/__init__.py +94 -21
  92. aws_cdk/aws_verifiedpermissions/__init__.py +1 -2
  93. aws_cdk/aws_vpclattice/__init__.py +8 -4
  94. aws_cdk/aws_wafv2/__init__.py +14 -59
  95. aws_cdk/aws_workspaces/__init__.py +5 -4
  96. aws_cdk/aws_workspacesweb/__init__.py +6 -12
  97. aws_cdk/triggers/__init__.py +22 -0
  98. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/METADATA +1 -1
  99. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/RECORD +103 -103
  100. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/LICENSE +0 -0
  101. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/NOTICE +0 -0
  102. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/WHEEL +0 -0
  103. {aws_cdk_lib-2.127.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/top_level.txt +0 -0
@@ -210,6 +210,23 @@ for record in identity.dkim_records:
210
210
  pass
211
211
  ```
212
212
 
213
+ #### Grants
214
+
215
+ To grant a specific action to a principal use the `grant` method.
216
+ For sending emails, `grantSendEmail` can be used instead:
217
+
218
+ ```python
219
+ import aws_cdk.aws_iam as iam
220
+ # user: iam.User
221
+
222
+
223
+ identity = ses.EmailIdentity(self, "Identity",
224
+ identity=ses.Identity.domain("cdk.dev")
225
+ )
226
+
227
+ identity.grant_send_email(user)
228
+ ```
229
+
213
230
  ### Virtual Deliverability Manager (VDM)
214
231
 
215
232
  Virtual Deliverability Manager is an Amazon SES feature that helps you enhance email deliverability,
@@ -251,6 +268,7 @@ from .. import (
251
268
  TagManager as _TagManager_0a598cb3,
252
269
  TreeInspector as _TreeInspector_488e0dd5,
253
270
  )
271
+ from ..aws_iam import Grant as _Grant_a7ae64f8, IGrantable as _IGrantable_71c4f5de
254
272
  from ..aws_route53 import IPublicHostedZone as _IPublicHostedZone_9b6e7da4
255
273
  from ..aws_sns import ITopic as _ITopic_9eca4852
256
274
 
@@ -7234,13 +7252,15 @@ class EmailIdentityProps:
7234
7252
 
7235
7253
  Example::
7236
7254
 
7237
- # my_hosted_zone: route53.IPublicHostedZone
7255
+ import aws_cdk.aws_iam as iam
7256
+ # user: iam.User
7238
7257
 
7239
7258
 
7240
7259
  identity = ses.EmailIdentity(self, "Identity",
7241
- identity=ses.Identity.public_hosted_zone(my_hosted_zone),
7242
- mail_from_domain="mail.cdk.dev"
7260
+ identity=ses.Identity.domain("cdk.dev")
7243
7261
  )
7262
+
7263
+ identity.grant_send_email(user)
7244
7264
  '''
7245
7265
  if __debug__:
7246
7266
  type_hints = typing.get_type_hints(_typecheckingstub__53e1ee2f3b565a95ed952bf4ad2ae80cb7388ac4bd51d6eab5219f8a733ca030)
@@ -7604,6 +7624,15 @@ typing.cast(typing.Any, IDedicatedIpPool).__jsii_proxy_class__ = lambda : _IDedi
7604
7624
  class IEmailIdentity(_IResource_c80c4260, typing_extensions.Protocol):
7605
7625
  '''An email identity.'''
7606
7626
 
7627
+ @builtins.property
7628
+ @jsii.member(jsii_name="emailIdentityArn")
7629
+ def email_identity_arn(self) -> builtins.str:
7630
+ '''The ARN of the email identity.
7631
+
7632
+ :attribute: true
7633
+ '''
7634
+ ...
7635
+
7607
7636
  @builtins.property
7608
7637
  @jsii.member(jsii_name="emailIdentityName")
7609
7638
  def email_identity_name(self) -> builtins.str:
@@ -7613,6 +7642,29 @@ class IEmailIdentity(_IResource_c80c4260, typing_extensions.Protocol):
7613
7642
  '''
7614
7643
  ...
7615
7644
 
7645
+ @jsii.member(jsii_name="grant")
7646
+ def grant(
7647
+ self,
7648
+ grantee: _IGrantable_71c4f5de,
7649
+ *actions: builtins.str,
7650
+ ) -> _Grant_a7ae64f8:
7651
+ '''Adds an IAM policy statement associated with this email identity to an IAM principal's policy.
7652
+
7653
+ :param grantee: the principal (no-op if undefined).
7654
+ :param actions: the set of actions to allow.
7655
+ '''
7656
+ ...
7657
+
7658
+ @jsii.member(jsii_name="grantSendEmail")
7659
+ def grant_send_email(self, grantee: _IGrantable_71c4f5de) -> _Grant_a7ae64f8:
7660
+ '''Permits an IAM principal the send email action.
7661
+
7662
+ Actions: SendEmail.
7663
+
7664
+ :param grantee: the principal to grant access to.
7665
+ '''
7666
+ ...
7667
+
7616
7668
 
7617
7669
  class _IEmailIdentityProxy(
7618
7670
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
@@ -7621,6 +7673,15 @@ class _IEmailIdentityProxy(
7621
7673
 
7622
7674
  __jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_ses.IEmailIdentity"
7623
7675
 
7676
+ @builtins.property
7677
+ @jsii.member(jsii_name="emailIdentityArn")
7678
+ def email_identity_arn(self) -> builtins.str:
7679
+ '''The ARN of the email identity.
7680
+
7681
+ :attribute: true
7682
+ '''
7683
+ return typing.cast(builtins.str, jsii.get(self, "emailIdentityArn"))
7684
+
7624
7685
  @builtins.property
7625
7686
  @jsii.member(jsii_name="emailIdentityName")
7626
7687
  def email_identity_name(self) -> builtins.str:
@@ -7630,6 +7691,36 @@ class _IEmailIdentityProxy(
7630
7691
  '''
7631
7692
  return typing.cast(builtins.str, jsii.get(self, "emailIdentityName"))
7632
7693
 
7694
+ @jsii.member(jsii_name="grant")
7695
+ def grant(
7696
+ self,
7697
+ grantee: _IGrantable_71c4f5de,
7698
+ *actions: builtins.str,
7699
+ ) -> _Grant_a7ae64f8:
7700
+ '''Adds an IAM policy statement associated with this email identity to an IAM principal's policy.
7701
+
7702
+ :param grantee: the principal (no-op if undefined).
7703
+ :param actions: the set of actions to allow.
7704
+ '''
7705
+ if __debug__:
7706
+ type_hints = typing.get_type_hints(_typecheckingstub__6eb2e4383fa830ca0d609c782e4234141a31536edcdc3259b3ad6d4f1a87c702)
7707
+ check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
7708
+ check_type(argname="argument actions", value=actions, expected_type=typing.Tuple[type_hints["actions"], ...]) # pyright: ignore [reportGeneralTypeIssues]
7709
+ return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grant", [grantee, *actions]))
7710
+
7711
+ @jsii.member(jsii_name="grantSendEmail")
7712
+ def grant_send_email(self, grantee: _IGrantable_71c4f5de) -> _Grant_a7ae64f8:
7713
+ '''Permits an IAM principal the send email action.
7714
+
7715
+ Actions: SendEmail.
7716
+
7717
+ :param grantee: the principal to grant access to.
7718
+ '''
7719
+ if __debug__:
7720
+ type_hints = typing.get_type_hints(_typecheckingstub__de0a61fcbbcb2828db9308241fcd8e74a52c411c11c743cbfe9e2e4d3d3313dd)
7721
+ check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
7722
+ return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantSendEmail", [grantee]))
7723
+
7633
7724
  # Adding a "__jsii_proxy_class__(): typing.Type" function to the interface
7634
7725
  typing.cast(typing.Any, IEmailIdentity).__jsii_proxy_class__ = lambda : _IEmailIdentityProxy
7635
7726
 
@@ -7850,13 +7941,15 @@ class Identity(
7850
7941
 
7851
7942
  Example::
7852
7943
 
7853
- # my_hosted_zone: route53.IPublicHostedZone
7944
+ import aws_cdk.aws_iam as iam
7945
+ # user: iam.User
7854
7946
 
7855
7947
 
7856
7948
  identity = ses.EmailIdentity(self, "Identity",
7857
- identity=ses.Identity.public_hosted_zone(my_hosted_zone),
7858
- mail_from_domain="mail.cdk.dev"
7949
+ identity=ses.Identity.domain("cdk.dev")
7859
7950
  )
7951
+
7952
+ identity.grant_send_email(user)
7860
7953
  '''
7861
7954
 
7862
7955
  def __init__(self) -> None:
@@ -10043,13 +10136,15 @@ class EmailIdentity(
10043
10136
 
10044
10137
  Example::
10045
10138
 
10046
- # my_hosted_zone: route53.IPublicHostedZone
10139
+ import aws_cdk.aws_iam as iam
10140
+ # user: iam.User
10047
10141
 
10048
10142
 
10049
10143
  identity = ses.EmailIdentity(self, "Identity",
10050
- identity=ses.Identity.public_hosted_zone(my_hosted_zone),
10051
- mail_from_domain="mail.cdk.dev"
10144
+ identity=ses.Identity.domain("cdk.dev")
10052
10145
  )
10146
+
10147
+ identity.grant_send_email(user)
10053
10148
  '''
10054
10149
 
10055
10150
  def __init__(
@@ -10113,6 +10208,36 @@ class EmailIdentity(
10113
10208
  check_type(argname="argument email_identity_name", value=email_identity_name, expected_type=type_hints["email_identity_name"])
10114
10209
  return typing.cast(IEmailIdentity, jsii.sinvoke(cls, "fromEmailIdentityName", [scope, id, email_identity_name]))
10115
10210
 
10211
+ @jsii.member(jsii_name="grant")
10212
+ def grant(
10213
+ self,
10214
+ grantee: _IGrantable_71c4f5de,
10215
+ *actions: builtins.str,
10216
+ ) -> _Grant_a7ae64f8:
10217
+ '''Adds an IAM policy statement associated with this email identity to an IAM principal's policy.
10218
+
10219
+ :param grantee: the principal (no-op if undefined).
10220
+ :param actions: the set of actions to allow.
10221
+ '''
10222
+ if __debug__:
10223
+ type_hints = typing.get_type_hints(_typecheckingstub__201fd562ac01abcf39bae4ac240c6e3bd36c3ab202bc573ee6e08045ef02e36f)
10224
+ check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
10225
+ check_type(argname="argument actions", value=actions, expected_type=typing.Tuple[type_hints["actions"], ...]) # pyright: ignore [reportGeneralTypeIssues]
10226
+ return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grant", [grantee, *actions]))
10227
+
10228
+ @jsii.member(jsii_name="grantSendEmail")
10229
+ def grant_send_email(self, grantee: _IGrantable_71c4f5de) -> _Grant_a7ae64f8:
10230
+ '''Permits an IAM principal the send email action.
10231
+
10232
+ Actions: SendEmail, SendRawEmail.
10233
+
10234
+ :param grantee: the principal to grant access to.
10235
+ '''
10236
+ if __debug__:
10237
+ type_hints = typing.get_type_hints(_typecheckingstub__c92b3cf4c512d5ff21aa2749ab5ec60562bb7ed4c53c41d882ac2cb7cd5752b8)
10238
+ check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
10239
+ return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantSendEmail", [grantee]))
10240
+
10116
10241
  @builtins.property
10117
10242
  @jsii.member(jsii_name="dkimDnsTokenName1")
10118
10243
  def dkim_dns_token_name1(self) -> builtins.str:
@@ -10173,6 +10298,12 @@ class EmailIdentity(
10173
10298
  '''DKIM records for this identity.'''
10174
10299
  return typing.cast(typing.List[DkimRecord], jsii.get(self, "dkimRecords"))
10175
10300
 
10301
+ @builtins.property
10302
+ @jsii.member(jsii_name="emailIdentityArn")
10303
+ def email_identity_arn(self) -> builtins.str:
10304
+ '''The ARN of the email identity.'''
10305
+ return typing.cast(builtins.str, jsii.get(self, "emailIdentityArn"))
10306
+
10176
10307
  @builtins.property
10177
10308
  @jsii.member(jsii_name="emailIdentityName")
10178
10309
  def email_identity_name(self) -> builtins.str:
@@ -11193,6 +11324,19 @@ def _typecheckingstub__70dbe9528b7fbaa2cbed5b1def55a8c3126fbfed3ee256b878bbb907e
11193
11324
  """Type checking stubs"""
11194
11325
  pass
11195
11326
 
11327
+ def _typecheckingstub__6eb2e4383fa830ca0d609c782e4234141a31536edcdc3259b3ad6d4f1a87c702(
11328
+ grantee: _IGrantable_71c4f5de,
11329
+ *actions: builtins.str,
11330
+ ) -> None:
11331
+ """Type checking stubs"""
11332
+ pass
11333
+
11334
+ def _typecheckingstub__de0a61fcbbcb2828db9308241fcd8e74a52c411c11c743cbfe9e2e4d3d3313dd(
11335
+ grantee: _IGrantable_71c4f5de,
11336
+ ) -> None:
11337
+ """Type checking stubs"""
11338
+ pass
11339
+
11196
11340
  def _typecheckingstub__1c0b08f3a2fda3c68a4ad951604e55664aeae1537b8b8eb996f95b6feedcf9b5(
11197
11341
  receipt_rule: IReceiptRule,
11198
11342
  ) -> None:
@@ -11541,3 +11685,16 @@ def _typecheckingstub__eb1cb50e69249e3f61387a80db0e14cc9a9790c024548390466a51148
11541
11685
  ) -> None:
11542
11686
  """Type checking stubs"""
11543
11687
  pass
11688
+
11689
+ def _typecheckingstub__201fd562ac01abcf39bae4ac240c6e3bd36c3ab202bc573ee6e08045ef02e36f(
11690
+ grantee: _IGrantable_71c4f5de,
11691
+ *actions: builtins.str,
11692
+ ) -> None:
11693
+ """Type checking stubs"""
11694
+ pass
11695
+
11696
+ def _typecheckingstub__c92b3cf4c512d5ff21aa2749ab5ec60562bb7ed4c53c41d882ac2cb7cd5752b8(
11697
+ grantee: _IGrantable_71c4f5de,
11698
+ ) -> None:
11699
+ """Type checking stubs"""
11700
+ pass