aws-cdk-lib 2.181.1__py3-none-any.whl → 2.183.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 (69) hide show
  1. aws_cdk/__init__.py +751 -41
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.181.1.jsii.tgz → aws-cdk-lib@2.183.0.jsii.tgz} +0 -0
  4. aws_cdk/assertions/__init__.py +59 -0
  5. aws_cdk/aws_apigateway/__init__.py +122 -66
  6. aws_cdk/aws_applicationautoscaling/__init__.py +4 -0
  7. aws_cdk/aws_appsync/__init__.py +30 -4
  8. aws_cdk/aws_autoscaling/__init__.py +409 -36
  9. aws_cdk/aws_batch/__init__.py +638 -14
  10. aws_cdk/aws_bedrock/__init__.py +6009 -2326
  11. aws_cdk/aws_ce/__init__.py +141 -3
  12. aws_cdk/aws_certificatemanager/__init__.py +24 -0
  13. aws_cdk/aws_cloudformation/__init__.py +310 -35
  14. aws_cdk/aws_cloudfront/__init__.py +1 -0
  15. aws_cdk/aws_cloudtrail/__init__.py +8 -8
  16. aws_cdk/aws_codebuild/__init__.py +4 -10
  17. aws_cdk/aws_cognito/__init__.py +3 -3
  18. aws_cdk/aws_datazone/__init__.py +82 -0
  19. aws_cdk/aws_dms/__init__.py +350 -0
  20. aws_cdk/aws_ec2/__init__.py +95 -17
  21. aws_cdk/aws_ecr/__init__.py +10 -4
  22. aws_cdk/aws_ecs/__init__.py +58 -9
  23. aws_cdk/aws_eks/__init__.py +32 -3
  24. aws_cdk/aws_elasticache/__init__.py +3 -3
  25. aws_cdk/aws_emr/__init__.py +9 -3
  26. aws_cdk/aws_fsx/__init__.py +2 -0
  27. aws_cdk/aws_gameliftstreams/__init__.py +1205 -0
  28. aws_cdk/aws_guardduty/__init__.py +38 -26
  29. aws_cdk/aws_iam/__init__.py +295 -37
  30. aws_cdk/aws_inspector/__init__.py +180 -1
  31. aws_cdk/aws_iot/__init__.py +616 -22
  32. aws_cdk/aws_iotfleetwise/__init__.py +72 -10
  33. aws_cdk/aws_iotsitewise/__init__.py +14 -11
  34. aws_cdk/aws_kafkaconnect/__init__.py +4 -2
  35. aws_cdk/aws_kinesisfirehose/__init__.py +6 -0
  36. aws_cdk/aws_lambda/__init__.py +17 -0
  37. aws_cdk/aws_logs/__init__.py +135 -0
  38. aws_cdk/aws_medialive/__init__.py +86 -86
  39. aws_cdk/aws_mediapackagev2/__init__.py +22 -14
  40. aws_cdk/aws_msk/__init__.py +236 -128
  41. aws_cdk/aws_neptunegraph/__init__.py +3 -3
  42. aws_cdk/aws_opensearchserverless/__init__.py +1031 -0
  43. aws_cdk/aws_opensearchservice/__init__.py +261 -1
  44. aws_cdk/aws_pcaconnectorad/__init__.py +30 -4
  45. aws_cdk/aws_pipes/__init__.py +6 -2
  46. aws_cdk/aws_quicksight/__init__.py +6712 -20758
  47. aws_cdk/aws_rds/__init__.py +174 -30
  48. aws_cdk/aws_redshift/__init__.py +8 -8
  49. aws_cdk/aws_s3/__init__.py +8 -0
  50. aws_cdk/aws_sagemaker/__init__.py +80 -18
  51. aws_cdk/aws_securitylake/__init__.py +3 -0
  52. aws_cdk/aws_sns/__init__.py +76 -1
  53. aws_cdk/aws_synthetics/__init__.py +2 -0
  54. aws_cdk/aws_transfer/__init__.py +241 -40
  55. aws_cdk/aws_vpclattice/__init__.py +144 -9
  56. aws_cdk/aws_wafv2/__init__.py +790 -0
  57. aws_cdk/aws_wisdom/__init__.py +3 -110
  58. aws_cdk/aws_workspacesthinclient/__init__.py +4 -4
  59. aws_cdk/aws_workspacesweb/__init__.py +179 -2
  60. aws_cdk/aws_xray/__init__.py +195 -0
  61. aws_cdk/cloud_assembly_schema/__init__.py +224 -4
  62. aws_cdk/custom_resources/__init__.py +65 -8
  63. aws_cdk/cx_api/__init__.py +2 -1
  64. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/METADATA +2 -2
  65. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/RECORD +69 -68
  66. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/LICENSE +0 -0
  67. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/NOTICE +0 -0
  68. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/WHEEL +0 -0
  69. {aws_cdk_lib-2.181.1.dist-info → aws_cdk_lib-2.183.0.dist-info}/top_level.txt +0 -0
@@ -16953,7 +16953,7 @@ class CfnIPAM(
16953
16953
  '''
16954
16954
  :param scope: Scope in which this resource is defined.
16955
16955
  :param id: Construct identifier for this resource (unique in its scope).
16956
- :param default_resource_discovery_organizational_unit_exclusions: A set of organizational unit (OU) exclusions for the default resource discovery, created with this IPAM.
16956
+ :param default_resource_discovery_organizational_unit_exclusions: If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
16957
16957
  :param description: The description for the IPAM.
16958
16958
  :param enable_private_gua: Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.
16959
16959
  :param operating_regions: The operating Regions for an IPAM. Operating Regions are AWS Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the AWS Regions you select as operating Regions. For more information about operating Regions, see `Create an IPAM <https://docs.aws.amazon.com//vpc/latest/ipam/create-ipam.html>`_ in the *Amazon VPC IPAM User Guide* .
@@ -17093,7 +17093,7 @@ class CfnIPAM(
17093
17093
  def default_resource_discovery_organizational_unit_exclusions(
17094
17094
  self,
17095
17095
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnIPAM.IpamOrganizationalUnitExclusionProperty"]]]]:
17096
- '''A set of organizational unit (OU) exclusions for the default resource discovery, created with this IPAM.'''
17096
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .'''
17097
17097
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnIPAM.IpamOrganizationalUnitExclusionProperty"]]]], jsii.get(self, "defaultResourceDiscoveryOrganizationalUnitExclusions"))
17098
17098
 
17099
17099
  @default_resource_discovery_organizational_unit_exclusions.setter
@@ -17244,7 +17244,7 @@ class CfnIPAM(
17244
17244
  )
17245
17245
  class IpamOrganizationalUnitExclusionProperty:
17246
17246
  def __init__(self, *, organizations_entity_path: builtins.str) -> None:
17247
- '''If your IPAM is integrated with AWS Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion.
17247
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
17248
17248
 
17249
17249
  :param organizations_entity_path: An AWS Organizations entity path. For more information on the entity path, see `Understand the AWS Organizations entity path <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path>`_ in the *AWS Identity and Access Management User Guide* .
17250
17250
 
@@ -18839,7 +18839,7 @@ class CfnIPAMProps:
18839
18839
  ) -> None:
18840
18840
  '''Properties for defining a ``CfnIPAM``.
18841
18841
 
18842
- :param default_resource_discovery_organizational_unit_exclusions: A set of organizational unit (OU) exclusions for the default resource discovery, created with this IPAM.
18842
+ :param default_resource_discovery_organizational_unit_exclusions: If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
18843
18843
  :param description: The description for the IPAM.
18844
18844
  :param enable_private_gua: Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.
18845
18845
  :param operating_regions: The operating Regions for an IPAM. Operating Regions are AWS Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the AWS Regions you select as operating Regions. For more information about operating Regions, see `Create an IPAM <https://docs.aws.amazon.com//vpc/latest/ipam/create-ipam.html>`_ in the *Amazon VPC IPAM User Guide* .
@@ -18897,7 +18897,7 @@ class CfnIPAMProps:
18897
18897
  def default_resource_discovery_organizational_unit_exclusions(
18898
18898
  self,
18899
18899
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnIPAM.IpamOrganizationalUnitExclusionProperty]]]]:
18900
- '''A set of organizational unit (OU) exclusions for the default resource discovery, created with this IPAM.
18900
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
18901
18901
 
18902
18902
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html#cfn-ec2-ipam-defaultresourcediscoveryorganizationalunitexclusions
18903
18903
  '''
@@ -19023,7 +19023,7 @@ class CfnIPAMResourceDiscovery(
19023
19023
  :param id: Construct identifier for this resource (unique in its scope).
19024
19024
  :param description: The resource discovery description.
19025
19025
  :param operating_regions: The operating Regions for the resource discovery. Operating Regions are AWS Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the AWS Regions you select as operating Regions.
19026
- :param organizational_unit_exclusions: A set of organizational unit (OU) exclusions for this resource.
19026
+ :param organizational_unit_exclusions: If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
19027
19027
  :param tags: A tag is a label that you assign to an AWS resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your AWS costs.
19028
19028
  '''
19029
19029
  if __debug__:
@@ -19185,7 +19185,7 @@ class CfnIPAMResourceDiscovery(
19185
19185
  def organizational_unit_exclusions(
19186
19186
  self,
19187
19187
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnIPAMResourceDiscovery.IpamResourceDiscoveryOrganizationalUnitExclusionProperty"]]]]:
19188
- '''A set of organizational unit (OU) exclusions for this resource.'''
19188
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .'''
19189
19189
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnIPAMResourceDiscovery.IpamResourceDiscoveryOrganizationalUnitExclusionProperty"]]]], jsii.get(self, "organizationalUnitExclusions"))
19190
19190
 
19191
19191
  @organizational_unit_exclusions.setter
@@ -19274,9 +19274,9 @@ class CfnIPAMResourceDiscovery(
19274
19274
  )
19275
19275
  class IpamResourceDiscoveryOrganizationalUnitExclusionProperty:
19276
19276
  def __init__(self, *, organizations_entity_path: builtins.str) -> None:
19277
- '''If your IPAM is integrated with AWS Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion.
19277
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
19278
19278
 
19279
- :param organizations_entity_path: An AWS Organizations entity path. Build the path for the OU(s) using AWS Organizations IDs separated by a '/'. Include all child OUs by ending the path with '/*'.
19279
+ :param organizations_entity_path: An AWS Organizations entity path. For more information on the entity path, see `Understand the AWS Organizations entity path <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path>`_ in the *AWS Identity and Access Management User Guide* .
19280
19280
 
19281
19281
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ipamresourcediscovery-ipamresourcediscoveryorganizationalunitexclusion.html
19282
19282
  :exampleMetadata: fixture=_generated
@@ -19302,7 +19302,7 @@ class CfnIPAMResourceDiscovery(
19302
19302
  def organizations_entity_path(self) -> builtins.str:
19303
19303
  '''An AWS Organizations entity path.
19304
19304
 
19305
- Build the path for the OU(s) using AWS Organizations IDs separated by a '/'. Include all child OUs by ending the path with '/*'.
19305
+ For more information on the entity path, see `Understand the AWS Organizations entity path <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path>`_ in the *AWS Identity and Access Management User Guide* .
19306
19306
 
19307
19307
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ipamresourcediscovery-ipamresourcediscoveryorganizationalunitexclusion.html#cfn-ec2-ipamresourcediscovery-ipamresourcediscoveryorganizationalunitexclusion-organizationsentitypath
19308
19308
  '''
@@ -19671,7 +19671,7 @@ class CfnIPAMResourceDiscoveryProps:
19671
19671
 
19672
19672
  :param description: The resource discovery description.
19673
19673
  :param operating_regions: The operating Regions for the resource discovery. Operating Regions are AWS Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the AWS Regions you select as operating Regions.
19674
- :param organizational_unit_exclusions: A set of organizational unit (OU) exclusions for this resource.
19674
+ :param organizational_unit_exclusions: If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
19675
19675
  :param tags: A tag is a label that you assign to an AWS resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your AWS costs.
19676
19676
 
19677
19677
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html
@@ -19739,7 +19739,7 @@ class CfnIPAMResourceDiscoveryProps:
19739
19739
  def organizational_unit_exclusions(
19740
19740
  self,
19741
19741
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnIPAMResourceDiscovery.IpamResourceDiscoveryOrganizationalUnitExclusionProperty]]]]:
19742
- '''A set of organizational unit (OU) exclusions for this resource.
19742
+ '''If your IPAM is integrated with AWS Organizations, you can exclude an `organizational unit (OU) <https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#organizationalunit>`_ from being managed by IPAM. When you exclude an OU, IPAM will not manage the IP addresses in accounts in that OU. For more information, see `Exclude organizational units from IPAM <https://docs.aws.amazon.com/vpc/latest/ipam/exclude-ous.html>`_ in the *Amazon Virtual Private Cloud IP Address Manager User Guide* .
19743
19743
 
19744
19744
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html#cfn-ec2-ipamresourcediscovery-organizationalunitexclusions
19745
19745
  '''
@@ -41885,7 +41885,7 @@ class CfnSecurityGroup(
41885
41885
  :param scope: Scope in which this resource is defined.
41886
41886
  :param id: Construct identifier for this resource (unique in its scope).
41887
41887
  :param group_description: A description for the security group. Constraints: Up to 255 characters in length Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
41888
- :param group_name: The name of the security group. Constraints: Up to 255 characters in length. Cannot start with ``sg-`` . Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
41888
+ :param group_name: The name of the security group. Names are case-insensitive and must be unique within the VPC. Constraints: Up to 255 characters in length. Can't start with ``sg-`` . Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
41889
41889
  :param security_group_egress: The outbound rules associated with the security group. There is a short interruption during which you cannot connect to the security group.
41890
41890
  :param security_group_ingress: The inbound rules associated with the security group. There is a short interruption during which you cannot connect to the security group.
41891
41891
  :param tags: Any tags assigned to the security group.
@@ -41990,7 +41990,10 @@ class CfnSecurityGroup(
41990
41990
  @builtins.property
41991
41991
  @jsii.member(jsii_name="groupName")
41992
41992
  def group_name(self) -> typing.Optional[builtins.str]:
41993
- '''The name of the security group.'''
41993
+ '''The name of the security group.
41994
+
41995
+ Names are case-insensitive and must be unique within the VPC.
41996
+ '''
41994
41997
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "groupName"))
41995
41998
 
41996
41999
  @group_name.setter
@@ -43567,7 +43570,7 @@ class CfnSecurityGroupProps:
43567
43570
  '''Properties for defining a ``CfnSecurityGroup``.
43568
43571
 
43569
43572
  :param group_description: A description for the security group. Constraints: Up to 255 characters in length Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
43570
- :param group_name: The name of the security group. Constraints: Up to 255 characters in length. Cannot start with ``sg-`` . Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
43573
+ :param group_name: The name of the security group. Names are case-insensitive and must be unique within the VPC. Constraints: Up to 255 characters in length. Can't start with ``sg-`` . Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
43571
43574
  :param security_group_egress: The outbound rules associated with the security group. There is a short interruption during which you cannot connect to the security group.
43572
43575
  :param security_group_ingress: The inbound rules associated with the security group. There is a short interruption during which you cannot connect to the security group.
43573
43576
  :param tags: Any tags assigned to the security group.
@@ -43658,9 +43661,9 @@ class CfnSecurityGroupProps:
43658
43661
 
43659
43662
  @builtins.property
43660
43663
  def group_name(self) -> typing.Optional[builtins.str]:
43661
- '''The name of the security group.
43664
+ '''The name of the security group. Names are case-insensitive and must be unique within the VPC.
43662
43665
 
43663
- Constraints: Up to 255 characters in length. Cannot start with ``sg-`` .
43666
+ Constraints: Up to 255 characters in length. Can't start with ``sg-`` .
43664
43667
 
43665
43668
  Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
43666
43669
 
@@ -79118,6 +79121,26 @@ class InterfaceVpcEndpointAwsService(
79118
79121
  def BEDROCK_AGENT_RUNTIME(cls) -> "InterfaceVpcEndpointAwsService":
79119
79122
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_AGENT_RUNTIME"))
79120
79123
 
79124
+ @jsii.python.classproperty
79125
+ @jsii.member(jsii_name="BEDROCK_DATA_AUTOMATION")
79126
+ def BEDROCK_DATA_AUTOMATION(cls) -> "InterfaceVpcEndpointAwsService":
79127
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_DATA_AUTOMATION"))
79128
+
79129
+ @jsii.python.classproperty
79130
+ @jsii.member(jsii_name="BEDROCK_DATA_AUTOMATION_FIPS")
79131
+ def BEDROCK_DATA_AUTOMATION_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
79132
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_DATA_AUTOMATION_FIPS"))
79133
+
79134
+ @jsii.python.classproperty
79135
+ @jsii.member(jsii_name="BEDROCK_DATA_AUTOMATION_RUNTIME")
79136
+ def BEDROCK_DATA_AUTOMATION_RUNTIME(cls) -> "InterfaceVpcEndpointAwsService":
79137
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_DATA_AUTOMATION_RUNTIME"))
79138
+
79139
+ @jsii.python.classproperty
79140
+ @jsii.member(jsii_name="BEDROCK_DATA_AUTOMATION_RUNTIME_FIPS")
79141
+ def BEDROCK_DATA_AUTOMATION_RUNTIME_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
79142
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_DATA_AUTOMATION_RUNTIME_FIPS"))
79143
+
79121
79144
  @jsii.python.classproperty
79122
79145
  @jsii.member(jsii_name="BEDROCK_RUNTIME")
79123
79146
  def BEDROCK_RUNTIME(cls) -> "InterfaceVpcEndpointAwsService":
@@ -79633,6 +79656,11 @@ class InterfaceVpcEndpointAwsService(
79633
79656
  def EMR_SERVERLESS(cls) -> "InterfaceVpcEndpointAwsService":
79634
79657
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "EMR_SERVERLESS"))
79635
79658
 
79659
+ @jsii.python.classproperty
79660
+ @jsii.member(jsii_name="EMR_SERVERLESS_DASHBOARD")
79661
+ def EMR_SERVERLESS_DASHBOARD(cls) -> "InterfaceVpcEndpointAwsService":
79662
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "EMR_SERVERLESS_DASHBOARD"))
79663
+
79636
79664
  @jsii.python.classproperty
79637
79665
  @jsii.member(jsii_name="EMR_SERVERLESS_LIVY")
79638
79666
  def EMR_SERVERLESS_LIVY(cls) -> "InterfaceVpcEndpointAwsService":
@@ -80010,6 +80038,36 @@ class InterfaceVpcEndpointAwsService(
80010
80038
  def LICENSE_MANAGER_USER_SUBSCRIPTIONS(cls) -> "InterfaceVpcEndpointAwsService":
80011
80039
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LICENSE_MANAGER_USER_SUBSCRIPTIONS"))
80012
80040
 
80041
+ @jsii.python.classproperty
80042
+ @jsii.member(jsii_name="LOCATION_SERVICE_GEOFENCING")
80043
+ def LOCATION_SERVICE_GEOFENCING(cls) -> "InterfaceVpcEndpointAwsService":
80044
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_GEOFENCING"))
80045
+
80046
+ @jsii.python.classproperty
80047
+ @jsii.member(jsii_name="LOCATION_SERVICE_MAPS")
80048
+ def LOCATION_SERVICE_MAPS(cls) -> "InterfaceVpcEndpointAwsService":
80049
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_MAPS"))
80050
+
80051
+ @jsii.python.classproperty
80052
+ @jsii.member(jsii_name="LOCATION_SERVICE_METADATA")
80053
+ def LOCATION_SERVICE_METADATA(cls) -> "InterfaceVpcEndpointAwsService":
80054
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_METADATA"))
80055
+
80056
+ @jsii.python.classproperty
80057
+ @jsii.member(jsii_name="LOCATION_SERVICE_PLACES")
80058
+ def LOCATION_SERVICE_PLACES(cls) -> "InterfaceVpcEndpointAwsService":
80059
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_PLACES"))
80060
+
80061
+ @jsii.python.classproperty
80062
+ @jsii.member(jsii_name="LOCATION_SERVICE_ROUTE")
80063
+ def LOCATION_SERVICE_ROUTE(cls) -> "InterfaceVpcEndpointAwsService":
80064
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_ROUTE"))
80065
+
80066
+ @jsii.python.classproperty
80067
+ @jsii.member(jsii_name="LOCATION_SERVICE_TRACKING")
80068
+ def LOCATION_SERVICE_TRACKING(cls) -> "InterfaceVpcEndpointAwsService":
80069
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "LOCATION_SERVICE_TRACKING"))
80070
+
80013
80071
  @jsii.python.classproperty
80014
80072
  @jsii.member(jsii_name="LOOKOUT_EQUIPMENT")
80015
80073
  def LOOKOUT_EQUIPMENT(cls) -> "InterfaceVpcEndpointAwsService":
@@ -80549,6 +80607,16 @@ class InterfaceVpcEndpointAwsService(
80549
80607
  def SECURITYHUB(cls) -> "InterfaceVpcEndpointAwsService":
80550
80608
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "SECURITYHUB"))
80551
80609
 
80610
+ @jsii.python.classproperty
80611
+ @jsii.member(jsii_name="SECURITYLAKE")
80612
+ def SECURITYLAKE(cls) -> "InterfaceVpcEndpointAwsService":
80613
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "SECURITYLAKE"))
80614
+
80615
+ @jsii.python.classproperty
80616
+ @jsii.member(jsii_name="SECURITYLAKE_FIPS")
80617
+ def SECURITYLAKE_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
80618
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "SECURITYLAKE_FIPS"))
80619
+
80552
80620
  @jsii.python.classproperty
80553
80621
  @jsii.member(jsii_name="SERVER_MIGRATION_SERVICE")
80554
80622
  def SERVER_MIGRATION_SERVICE(cls) -> "InterfaceVpcEndpointAwsService":
@@ -80744,6 +80812,16 @@ class InterfaceVpcEndpointAwsService(
80744
80812
  def VPC_LATTICE(cls) -> "InterfaceVpcEndpointAwsService":
80745
80813
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "VPC_LATTICE"))
80746
80814
 
80815
+ @jsii.python.classproperty
80816
+ @jsii.member(jsii_name="WAFV2")
80817
+ def WAFV2(cls) -> "InterfaceVpcEndpointAwsService":
80818
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "WAFV2"))
80819
+
80820
+ @jsii.python.classproperty
80821
+ @jsii.member(jsii_name="WAFV2_FIPS")
80822
+ def WAFV2_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
80823
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "WAFV2_FIPS"))
80824
+
80747
80825
  @jsii.python.classproperty
80748
80826
  @jsii.member(jsii_name="WELL_ARCHITECTED_TOOL")
80749
80827
  def WELL_ARCHITECTED_TOOL(cls) -> "InterfaceVpcEndpointAwsService":
@@ -2224,7 +2224,7 @@ class CfnRepositoryCreationTemplate(
2224
2224
  :param encryption_configuration: The encryption configuration associated with the repository creation template.
2225
2225
  :param image_tag_mutability: The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
2226
2226
  :param lifecycle_policy: The lifecycle policy to use for repositories created using the template.
2227
- :param repository_policy: he repository policy to apply to repositories created using the template. A repository policy is a permissions policy associated with a repository to control access permissions.
2227
+ :param repository_policy: The repository policy to apply to repositories created using the template. A repository policy is a permissions policy associated with a repository to control access permissions.
2228
2228
  :param resource_tags: The metadata to apply to the repository to help you categorize and organize. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
2229
2229
  '''
2230
2230
  if __debug__:
@@ -2397,7 +2397,7 @@ class CfnRepositoryCreationTemplate(
2397
2397
  @builtins.property
2398
2398
  @jsii.member(jsii_name="repositoryPolicy")
2399
2399
  def repository_policy(self) -> typing.Optional[builtins.str]:
2400
- '''he repository policy to apply to repositories created using the template.'''
2400
+ '''The repository policy to apply to repositories created using the template.'''
2401
2401
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "repositoryPolicy"))
2402
2402
 
2403
2403
  @repository_policy.setter
@@ -2551,7 +2551,7 @@ class CfnRepositoryCreationTemplateProps:
2551
2551
  :param encryption_configuration: The encryption configuration associated with the repository creation template.
2552
2552
  :param image_tag_mutability: The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
2553
2553
  :param lifecycle_policy: The lifecycle policy to use for repositories created using the template.
2554
- :param repository_policy: he repository policy to apply to repositories created using the template. A repository policy is a permissions policy associated with a repository to control access permissions.
2554
+ :param repository_policy: The repository policy to apply to repositories created using the template. A repository policy is a permissions policy associated with a repository to control access permissions.
2555
2555
  :param resource_tags: The metadata to apply to the repository to help you categorize and organize. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
2556
2556
 
2557
2557
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html
@@ -2690,7 +2690,7 @@ class CfnRepositoryCreationTemplateProps:
2690
2690
 
2691
2691
  @builtins.property
2692
2692
  def repository_policy(self) -> typing.Optional[builtins.str]:
2693
- '''he repository policy to apply to repositories created using the template.
2693
+ '''The repository policy to apply to repositories created using the template.
2694
2694
 
2695
2695
  A repository policy is a permissions policy associated with a repository to control access permissions.
2696
2696
 
@@ -4513,6 +4513,12 @@ class RepositoryEncryption(
4513
4513
  ''''KMS'.'''
4514
4514
  return typing.cast("RepositoryEncryption", jsii.sget(cls, "KMS"))
4515
4515
 
4516
+ @jsii.python.classproperty
4517
+ @jsii.member(jsii_name="KMS_DSSE")
4518
+ def KMS_DSSE(cls) -> "RepositoryEncryption":
4519
+ ''''KMS_DSSE'.'''
4520
+ return typing.cast("RepositoryEncryption", jsii.sget(cls, "KMS_DSSE"))
4521
+
4516
4522
  @builtins.property
4517
4523
  @jsii.member(jsii_name="value")
4518
4524
  def value(self) -> builtins.str:
@@ -88,7 +88,7 @@ cluster = ecs.Cluster(self, "Cluster",
88
88
  )
89
89
  ```
90
90
 
91
- To encrypt the fargate ephemeral storage configure a KMS key.
91
+ By default, storage is encrypted with AWS-managed key. You can specify customer-managed key using:
92
92
 
93
93
  ```python
94
94
  # key: kms.Key
@@ -96,7 +96,8 @@ To encrypt the fargate ephemeral storage configure a KMS key.
96
96
 
97
97
  cluster = ecs.Cluster(self, "Cluster",
98
98
  managed_storage_configuration=ecs.ManagedStorageConfiguration(
99
- fargate_ephemeral_storage_kms_key=key
99
+ fargate_ephemeral_storage_kms_key=key,
100
+ kms_key=key
100
101
  )
101
102
  )
102
103
  ```
@@ -2188,6 +2189,7 @@ from ..aws_autoscaling import (
2188
2189
  CommonAutoScalingGroupProps as _CommonAutoScalingGroupProps_808bbf2d,
2189
2190
  GroupMetrics as _GroupMetrics_7cdf729b,
2190
2191
  HealthCheck as _HealthCheck_03a4bd5a,
2192
+ HealthChecks as _HealthChecks_b8757873,
2191
2193
  IAutoScalingGroup as _IAutoScalingGroup_360f1cde,
2192
2194
  Monitoring as _Monitoring_50020f91,
2193
2195
  NotificationConfiguration as _NotificationConfiguration_d5911670,
@@ -2411,6 +2413,7 @@ class AddAutoScalingGroupCapacityOptions:
2411
2413
  "desired_capacity": "desiredCapacity",
2412
2414
  "group_metrics": "groupMetrics",
2413
2415
  "health_check": "healthCheck",
2416
+ "health_checks": "healthChecks",
2414
2417
  "ignore_unmodified_size_properties": "ignoreUnmodifiedSizeProperties",
2415
2418
  "instance_monitoring": "instanceMonitoring",
2416
2419
  "key_name": "keyName",
@@ -2453,6 +2456,7 @@ class AddCapacityOptions(
2453
2456
  desired_capacity: typing.Optional[jsii.Number] = None,
2454
2457
  group_metrics: typing.Optional[typing.Sequence[_GroupMetrics_7cdf729b]] = None,
2455
2458
  health_check: typing.Optional[_HealthCheck_03a4bd5a] = None,
2459
+ health_checks: typing.Optional[_HealthChecks_b8757873] = None,
2456
2460
  ignore_unmodified_size_properties: typing.Optional[builtins.bool] = None,
2457
2461
  instance_monitoring: typing.Optional[_Monitoring_50020f91] = None,
2458
2462
  key_name: typing.Optional[builtins.str] = None,
@@ -2488,7 +2492,8 @@ class AddCapacityOptions(
2488
2492
  :param default_instance_warmup: The amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. To optimize the performance of scaling policies that scale continuously, such as target tracking and step scaling policies, we strongly recommend that you enable the default instance warmup, even if its value is set to 0 seconds Default instance warmup will not be added if no value is specified Default: None
2489
2493
  :param desired_capacity: Initial amount of instances in the fleet. If this is set to a number, every deployment will reset the amount of instances to this number. It is recommended to leave this value blank. Default: minCapacity, and leave unchanged during deployment
2490
2494
  :param group_metrics: Enable monitoring for group metrics, these metrics describe the group rather than any of its instances. To report all group metrics use ``GroupMetrics.all()`` Group metrics are reported in a granularity of 1 minute at no additional charge. Default: - no group metrics will be reported
2491
- :param health_check: Configuration for health checks. Default: - HealthCheck.ec2 with no grace period
2495
+ :param health_check: (deprecated) Configuration for health checks. Default: - HealthCheck.ec2 with no grace period
2496
+ :param health_checks: Configuration for EC2 or additional health checks. Even when using ``HealthChecks.withAdditionalChecks()``, the EC2 type is implicitly included. Default: - EC2 type with no grace period
2492
2497
  :param ignore_unmodified_size_properties: If the ASG has scheduled actions, don't reset unchanged group sizes. Only used if the ASG has scheduled actions (which may scale your ASG up or down regardless of cdk deployments). If true, the size of the group will only be reset if it has been changed in the CDK app. If false, the sizes will always be changed back to what they were in the CDK app on deployment. Default: true
2493
2498
  :param instance_monitoring: Controls whether instances in this group are launched with detailed or basic monitoring. When detailed monitoring is enabled, Amazon CloudWatch generates metrics every minute and your account is charged a fee. When you disable detailed monitoring, CloudWatch generates metrics every 5 minutes. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Monitoring.DETAILED
2494
2499
  :param key_name: (deprecated) Name of SSH keypair to grant access to instances. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified You can either specify ``keyPair`` or ``keyName``, not both. Default: - No SSH access will be possible.
@@ -2540,6 +2545,7 @@ class AddCapacityOptions(
2540
2545
  check_type(argname="argument desired_capacity", value=desired_capacity, expected_type=type_hints["desired_capacity"])
2541
2546
  check_type(argname="argument group_metrics", value=group_metrics, expected_type=type_hints["group_metrics"])
2542
2547
  check_type(argname="argument health_check", value=health_check, expected_type=type_hints["health_check"])
2548
+ check_type(argname="argument health_checks", value=health_checks, expected_type=type_hints["health_checks"])
2543
2549
  check_type(argname="argument ignore_unmodified_size_properties", value=ignore_unmodified_size_properties, expected_type=type_hints["ignore_unmodified_size_properties"])
2544
2550
  check_type(argname="argument instance_monitoring", value=instance_monitoring, expected_type=type_hints["instance_monitoring"])
2545
2551
  check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
@@ -2591,6 +2597,8 @@ class AddCapacityOptions(
2591
2597
  self._values["group_metrics"] = group_metrics
2592
2598
  if health_check is not None:
2593
2599
  self._values["health_check"] = health_check
2600
+ if health_checks is not None:
2601
+ self._values["health_checks"] = health_checks
2594
2602
  if ignore_unmodified_size_properties is not None:
2595
2603
  self._values["ignore_unmodified_size_properties"] = ignore_unmodified_size_properties
2596
2604
  if instance_monitoring is not None:
@@ -2809,13 +2817,30 @@ class AddCapacityOptions(
2809
2817
 
2810
2818
  @builtins.property
2811
2819
  def health_check(self) -> typing.Optional[_HealthCheck_03a4bd5a]:
2812
- '''Configuration for health checks.
2820
+ '''(deprecated) Configuration for health checks.
2813
2821
 
2814
2822
  :default: - HealthCheck.ec2 with no grace period
2823
+
2824
+ :deprecated: Use ``healthChecks`` instead
2825
+
2826
+ :stability: deprecated
2815
2827
  '''
2816
2828
  result = self._values.get("health_check")
2817
2829
  return typing.cast(typing.Optional[_HealthCheck_03a4bd5a], result)
2818
2830
 
2831
+ @builtins.property
2832
+ def health_checks(self) -> typing.Optional[_HealthChecks_b8757873]:
2833
+ '''Configuration for EC2 or additional health checks.
2834
+
2835
+ Even when using ``HealthChecks.withAdditionalChecks()``, the EC2 type is implicitly included.
2836
+
2837
+ :default: - EC2 type with no grace period
2838
+
2839
+ :see: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html
2840
+ '''
2841
+ result = self._values.get("health_checks")
2842
+ return typing.cast(typing.Optional[_HealthChecks_b8757873], result)
2843
+
2819
2844
  @builtins.property
2820
2845
  def ignore_unmodified_size_properties(self) -> typing.Optional[builtins.bool]:
2821
2846
  '''If the ASG has scheduled actions, don't reset unchanged group sizes.
@@ -32822,6 +32847,7 @@ class MachineImageType(enum.Enum):
32822
32847
  jsii_struct_bases=[],
32823
32848
  name_mapping={
32824
32849
  "fargate_ephemeral_storage_kms_key": "fargateEphemeralStorageKmsKey",
32850
+ "kms_key": "kmsKey",
32825
32851
  },
32826
32852
  )
32827
32853
  class ManagedStorageConfiguration:
@@ -32829,10 +32855,12 @@ class ManagedStorageConfiguration:
32829
32855
  self,
32830
32856
  *,
32831
32857
  fargate_ephemeral_storage_kms_key: typing.Optional[_IKey_5f11635f] = None,
32858
+ kms_key: typing.Optional[_IKey_5f11635f] = None,
32832
32859
  ) -> None:
32833
32860
  '''Kms Keys for encryption ECS managed storage.
32834
32861
 
32835
- :param fargate_ephemeral_storage_kms_key: KMS Key used to encrypt ECS Fargate ephemeral Storage. The configured KMS Key's policy will be modified to allow ECS to use the Key to encrypt the ephemeral Storage for this cluster. Default: No encryption will be applied
32862
+ :param fargate_ephemeral_storage_kms_key: Customer KMS Key used to encrypt ECS Fargate ephemeral Storage. The configured KMS Key's policy will be modified to allow ECS to use the Key to encrypt the ephemeral Storage for this cluster. Default: - Encrypted using AWS-managed key
32863
+ :param kms_key: Customer KMS Key used to encrypt ECS managed Storage. Default: - Encrypted using AWS-managed key
32836
32864
 
32837
32865
  :exampleMetadata: infused
32838
32866
 
@@ -32843,30 +32871,45 @@ class ManagedStorageConfiguration:
32843
32871
 
32844
32872
  cluster = ecs.Cluster(self, "Cluster",
32845
32873
  managed_storage_configuration=ecs.ManagedStorageConfiguration(
32846
- fargate_ephemeral_storage_kms_key=key
32874
+ fargate_ephemeral_storage_kms_key=key,
32875
+ kms_key=key
32847
32876
  )
32848
32877
  )
32849
32878
  '''
32850
32879
  if __debug__:
32851
32880
  type_hints = typing.get_type_hints(_typecheckingstub__2f9a1356d6603371cc25e0653216ab0167448ba43002bef5b32c489376e7fbb9)
32852
32881
  check_type(argname="argument fargate_ephemeral_storage_kms_key", value=fargate_ephemeral_storage_kms_key, expected_type=type_hints["fargate_ephemeral_storage_kms_key"])
32882
+ check_type(argname="argument kms_key", value=kms_key, expected_type=type_hints["kms_key"])
32853
32883
  self._values: typing.Dict[builtins.str, typing.Any] = {}
32854
32884
  if fargate_ephemeral_storage_kms_key is not None:
32855
32885
  self._values["fargate_ephemeral_storage_kms_key"] = fargate_ephemeral_storage_kms_key
32886
+ if kms_key is not None:
32887
+ self._values["kms_key"] = kms_key
32856
32888
 
32857
32889
  @builtins.property
32858
32890
  def fargate_ephemeral_storage_kms_key(self) -> typing.Optional[_IKey_5f11635f]:
32859
- '''KMS Key used to encrypt ECS Fargate ephemeral Storage.
32891
+ '''Customer KMS Key used to encrypt ECS Fargate ephemeral Storage.
32860
32892
 
32861
32893
  The configured KMS Key's policy will be modified to allow ECS to use the Key to encrypt the ephemeral Storage for this cluster.
32862
32894
 
32863
- :default: No encryption will be applied
32895
+ :default: - Encrypted using AWS-managed key
32864
32896
 
32865
32897
  :see: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/fargate-storage-encryption.html
32866
32898
  '''
32867
32899
  result = self._values.get("fargate_ephemeral_storage_kms_key")
32868
32900
  return typing.cast(typing.Optional[_IKey_5f11635f], result)
32869
32901
 
32902
+ @builtins.property
32903
+ def kms_key(self) -> typing.Optional[_IKey_5f11635f]:
32904
+ '''Customer KMS Key used to encrypt ECS managed Storage.
32905
+
32906
+ :default: - Encrypted using AWS-managed key
32907
+
32908
+ :see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-managedstorageconfiguration.html#cfn-ecs-cluster-managedstorageconfiguration-kmskeyid
32909
+ '''
32910
+ result = self._values.get("kms_key")
32911
+ return typing.cast(typing.Optional[_IKey_5f11635f], result)
32912
+
32870
32913
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
32871
32914
  return isinstance(rhs, self.__class__) and rhs._values == self._values
32872
32915
 
@@ -39747,6 +39790,7 @@ class Cluster(
39747
39790
  desired_capacity: typing.Optional[jsii.Number] = None,
39748
39791
  group_metrics: typing.Optional[typing.Sequence[_GroupMetrics_7cdf729b]] = None,
39749
39792
  health_check: typing.Optional[_HealthCheck_03a4bd5a] = None,
39793
+ health_checks: typing.Optional[_HealthChecks_b8757873] = None,
39750
39794
  ignore_unmodified_size_properties: typing.Optional[builtins.bool] = None,
39751
39795
  instance_monitoring: typing.Optional[_Monitoring_50020f91] = None,
39752
39796
  key_name: typing.Optional[builtins.str] = None,
@@ -39787,7 +39831,8 @@ class Cluster(
39787
39831
  :param default_instance_warmup: The amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. To optimize the performance of scaling policies that scale continuously, such as target tracking and step scaling policies, we strongly recommend that you enable the default instance warmup, even if its value is set to 0 seconds Default instance warmup will not be added if no value is specified Default: None
39788
39832
  :param desired_capacity: Initial amount of instances in the fleet. If this is set to a number, every deployment will reset the amount of instances to this number. It is recommended to leave this value blank. Default: minCapacity, and leave unchanged during deployment
39789
39833
  :param group_metrics: Enable monitoring for group metrics, these metrics describe the group rather than any of its instances. To report all group metrics use ``GroupMetrics.all()`` Group metrics are reported in a granularity of 1 minute at no additional charge. Default: - no group metrics will be reported
39790
- :param health_check: Configuration for health checks. Default: - HealthCheck.ec2 with no grace period
39834
+ :param health_check: (deprecated) Configuration for health checks. Default: - HealthCheck.ec2 with no grace period
39835
+ :param health_checks: Configuration for EC2 or additional health checks. Even when using ``HealthChecks.withAdditionalChecks()``, the EC2 type is implicitly included. Default: - EC2 type with no grace period
39791
39836
  :param ignore_unmodified_size_properties: If the ASG has scheduled actions, don't reset unchanged group sizes. Only used if the ASG has scheduled actions (which may scale your ASG up or down regardless of cdk deployments). If true, the size of the group will only be reset if it has been changed in the CDK app. If false, the sizes will always be changed back to what they were in the CDK app on deployment. Default: true
39792
39837
  :param instance_monitoring: Controls whether instances in this group are launched with detailed or basic monitoring. When detailed monitoring is enabled, Amazon CloudWatch generates metrics every minute and your account is charged a fee. When you disable detailed monitoring, CloudWatch generates metrics every 5 minutes. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Monitoring.DETAILED
39793
39838
  :param key_name: (deprecated) Name of SSH keypair to grant access to instances. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified You can either specify ``keyPair`` or ``keyName``, not both. Default: - No SSH access will be possible.
@@ -39826,6 +39871,7 @@ class Cluster(
39826
39871
  desired_capacity=desired_capacity,
39827
39872
  group_metrics=group_metrics,
39828
39873
  health_check=health_check,
39874
+ health_checks=health_checks,
39829
39875
  ignore_unmodified_size_properties=ignore_unmodified_size_properties,
39830
39876
  instance_monitoring=instance_monitoring,
39831
39877
  key_name=key_name,
@@ -43065,6 +43111,7 @@ def _typecheckingstub__64f2d9b3495e3be78346f77d5ad90928968c8ce230e670b6279dc67ad
43065
43111
  desired_capacity: typing.Optional[jsii.Number] = None,
43066
43112
  group_metrics: typing.Optional[typing.Sequence[_GroupMetrics_7cdf729b]] = None,
43067
43113
  health_check: typing.Optional[_HealthCheck_03a4bd5a] = None,
43114
+ health_checks: typing.Optional[_HealthChecks_b8757873] = None,
43068
43115
  ignore_unmodified_size_properties: typing.Optional[builtins.bool] = None,
43069
43116
  instance_monitoring: typing.Optional[_Monitoring_50020f91] = None,
43070
43117
  key_name: typing.Optional[builtins.str] = None,
@@ -45979,6 +46026,7 @@ def _typecheckingstub__4028d39adfbd4018be781b02eae5afae009ba3d6754c9cac3c26580b7
45979
46026
  def _typecheckingstub__2f9a1356d6603371cc25e0653216ab0167448ba43002bef5b32c489376e7fbb9(
45980
46027
  *,
45981
46028
  fargate_ephemeral_storage_kms_key: typing.Optional[_IKey_5f11635f] = None,
46029
+ kms_key: typing.Optional[_IKey_5f11635f] = None,
45982
46030
  ) -> None:
45983
46031
  """Type checking stubs"""
45984
46032
  pass
@@ -46851,6 +46899,7 @@ def _typecheckingstub__63e98e008463515927d4aee3c938d64639e34ce8a2c09fa766883be6a
46851
46899
  desired_capacity: typing.Optional[jsii.Number] = None,
46852
46900
  group_metrics: typing.Optional[typing.Sequence[_GroupMetrics_7cdf729b]] = None,
46853
46901
  health_check: typing.Optional[_HealthCheck_03a4bd5a] = None,
46902
+ health_checks: typing.Optional[_HealthChecks_b8757873] = None,
46854
46903
  ignore_unmodified_size_properties: typing.Optional[builtins.bool] = None,
46855
46904
  instance_monitoring: typing.Optional[_Monitoring_50020f91] = None,
46856
46905
  key_name: typing.Optional[builtins.str] = None,