aws-cdk-lib 2.96.2__py3-none-any.whl → 2.97.1__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 (53) hide show
  1. aws_cdk/__init__.py +246 -62
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.96.2.jsii.tgz → aws-cdk-lib@2.97.1.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigatewayv2/__init__.py +1 -1
  5. aws_cdk/aws_appflow/__init__.py +205 -7
  6. aws_cdk/aws_appstream/__init__.py +33 -28
  7. aws_cdk/aws_appsync/__init__.py +555 -71
  8. aws_cdk/aws_autoscaling/__init__.py +5 -11
  9. aws_cdk/aws_billingconductor/__init__.py +145 -1
  10. aws_cdk/aws_cleanrooms/__init__.py +1198 -86
  11. aws_cdk/aws_cloudformation/__init__.py +221 -55
  12. aws_cdk/aws_cloudwatch/__init__.py +325 -2
  13. aws_cdk/aws_cognito/__init__.py +9 -13
  14. aws_cdk/aws_config/__init__.py +68 -73
  15. aws_cdk/aws_connect/__init__.py +909 -164
  16. aws_cdk/aws_customerprofiles/__init__.py +44 -0
  17. aws_cdk/aws_dms/__init__.py +198 -0
  18. aws_cdk/aws_ec2/__init__.py +593 -73
  19. aws_cdk/aws_ecr/__init__.py +7 -2
  20. aws_cdk/aws_ecs/__init__.py +2 -2
  21. aws_cdk/aws_efs/__init__.py +237 -0
  22. aws_cdk/aws_emr/__init__.py +232 -0
  23. aws_cdk/aws_entityresolution/__init__.py +1702 -0
  24. aws_cdk/aws_events/__init__.py +13 -18
  25. aws_cdk/aws_fms/__init__.py +3 -3
  26. aws_cdk/aws_gamelift/__init__.py +10 -15
  27. aws_cdk/aws_grafana/__init__.py +9 -5
  28. aws_cdk/aws_guardduty/__init__.py +272 -205
  29. aws_cdk/aws_iam/__init__.py +20 -18
  30. aws_cdk/aws_iotwireless/__init__.py +38 -54
  31. aws_cdk/aws_lakeformation/__init__.py +18 -6
  32. aws_cdk/aws_lambda/__init__.py +1 -1
  33. aws_cdk/aws_lightsail/__init__.py +225 -0
  34. aws_cdk/aws_lookoutequipment/__init__.py +4 -4
  35. aws_cdk/aws_macie/__init__.py +5 -3
  36. aws_cdk/aws_mediapackagev2/__init__.py +3227 -0
  37. aws_cdk/aws_pcaconnectorad/__init__.py +6785 -0
  38. aws_cdk/aws_quicksight/__init__.py +189 -116
  39. aws_cdk/aws_rds/__init__.py +316 -9
  40. aws_cdk/aws_resiliencehub/__init__.py +38 -21
  41. aws_cdk/aws_route53resolver/__init__.py +429 -0
  42. aws_cdk/aws_sagemaker/__init__.py +34 -34
  43. aws_cdk/aws_stepfunctions/__init__.py +111 -14
  44. aws_cdk/aws_transfer/__init__.py +2 -2
  45. aws_cdk/aws_vpclattice/__init__.py +128 -120
  46. aws_cdk/aws_workspacesweb/__init__.py +3790 -0
  47. aws_cdk/region_info/__init__.py +49 -0
  48. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/METADATA +2 -2
  49. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/RECORD +53 -49
  50. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/LICENSE +0 -0
  51. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/NOTICE +0 -0
  52. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/WHEEL +0 -0
  53. {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/top_level.txt +0 -0
@@ -3809,7 +3809,7 @@ class RepositoryProps:
3809
3809
  :param lifecycle_registry_id: The AWS account ID associated with the registry that contains the repository. Default: The default registry is assumed.
3810
3810
  :param lifecycle_rules: Life cycle rules to apply to this registry. Default: No life cycle rules
3811
3811
  :param removal_policy: Determine what happens to the repository when the resource/stack is deleted. Default: RemovalPolicy.Retain
3812
- :param repository_name: Name for this repository. Default: Automatically generated name.
3812
+ :param repository_name: Name for this repository. The repository name must start with a letter and can only contain lowercase letters, numbers, hyphens, underscores, and forward slashes. .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. Default: Automatically generated name.
3813
3813
 
3814
3814
  :exampleMetadata: infused
3815
3815
 
@@ -3939,6 +3939,11 @@ class RepositoryProps:
3939
3939
  def repository_name(self) -> typing.Optional[builtins.str]:
3940
3940
  '''Name for this repository.
3941
3941
 
3942
+ The repository name must start with a letter and can only contain lowercase letters, numbers, hyphens, underscores, and forward slashes.
3943
+ .. epigraph::
3944
+
3945
+ If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
3946
+
3942
3947
  :default: Automatically generated name.
3943
3948
  '''
3944
3949
  result = self._values.get("repository_name")
@@ -4034,7 +4039,7 @@ class Repository(
4034
4039
  :param lifecycle_registry_id: The AWS account ID associated with the registry that contains the repository. Default: The default registry is assumed.
4035
4040
  :param lifecycle_rules: Life cycle rules to apply to this registry. Default: No life cycle rules
4036
4041
  :param removal_policy: Determine what happens to the repository when the resource/stack is deleted. Default: RemovalPolicy.Retain
4037
- :param repository_name: Name for this repository. Default: Automatically generated name.
4042
+ :param repository_name: Name for this repository. The repository name must start with a letter and can only contain lowercase letters, numbers, hyphens, underscores, and forward slashes. .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. Default: Automatically generated name.
4038
4043
  '''
4039
4044
  if __debug__:
4040
4045
  type_hints = typing.get_type_hints(_typecheckingstub__0fcb489ea7ac91914ff0429ef13d64f8bd29978872d9ce4754ee9d39730a8048)
@@ -6516,7 +6516,7 @@ class CfnCluster(
6516
6516
 
6517
6517
  Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see `Service Connect <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
6518
6518
 
6519
- :param namespace: The namespace name or full Amazon Resource Name (ARN) of the AWS Cloud Map namespace that's used when you create a service and don't specify a Service Connect configuration. The namespace name can include up to 1024 characters. The name is case-sensitive. The name can't include hyphens (-), tilde (~), greater than (>), less than (<), or slash (/). If you enter an existing namespace name or ARN, then that namespace will be used. Any namespace type is supported. The namespace must be in this account and this AWS Region. If you enter a new name, a AWS Cloud Map namespace will be created. Amazon ECS creates a AWS Cloud Map namespace with the "API calls" method of instance discovery only. This instance discovery method is the "HTTP" namespace type in the AWS Command Line Interface . Other types of instance discovery aren't used by Service Connect. If you update the service with an empty string ``""`` for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in AWS Cloud Map and must be deleted separately. For more information about AWS Cloud Map , see `Working with Services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`_ in the *AWS Cloud Map Developer Guide* .
6519
+ :param namespace: The namespace name or full Amazon Resource Name (ARN) of the AWS Cloud Map namespace that's used when you create a service and don't specify a Service Connect configuration. The namespace name can include up to 1024 characters. The name is case-sensitive. The name can't include hyphens (-), tilde (~), greater than (>), less than (<), or slash (/). If you enter an existing namespace name or ARN, then that namespace will be used. Any namespace type is supported. The namespace must be in this account and this AWS Region. If you enter a new name, a AWS Cloud Map namespace will be created. Amazon ECS creates a AWS Cloud Map namespace with the "API calls" method of instance discovery only. This instance discovery method is the "HTTP" namespace type in the AWS Command Line Interface . Other types of instance discovery aren't used by Service Connect. If you update the cluster with an empty string ``""`` for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in AWS Cloud Map and must be deleted separately. For more information about AWS Cloud Map , see `Working with Services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`_ in the *AWS Cloud Map Developer Guide* .
6520
6520
 
6521
6521
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-serviceconnectdefaults.html
6522
6522
  :exampleMetadata: fixture=_generated
@@ -6548,7 +6548,7 @@ class CfnCluster(
6548
6548
 
6549
6549
  If you enter a new name, a AWS Cloud Map namespace will be created. Amazon ECS creates a AWS Cloud Map namespace with the "API calls" method of instance discovery only. This instance discovery method is the "HTTP" namespace type in the AWS Command Line Interface . Other types of instance discovery aren't used by Service Connect.
6550
6550
 
6551
- If you update the service with an empty string ``""`` for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in AWS Cloud Map and must be deleted separately.
6551
+ If you update the cluster with an empty string ``""`` for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in AWS Cloud Map and must be deleted separately.
6552
6552
 
6553
6553
  For more information about AWS Cloud Map , see `Working with Services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`_ in the *AWS Cloud Map Developer Guide* .
6554
6554
 
@@ -1480,6 +1480,14 @@ class CfnFileSystem(
1480
1480
  )],
1481
1481
  performance_mode="performanceMode",
1482
1482
  provisioned_throughput_in_mibps=123,
1483
+ replication_configuration=efs.CfnFileSystem.ReplicationConfigurationProperty(
1484
+ destinations=[efs.CfnFileSystem.ReplicationDestinationProperty(
1485
+ availability_zone_name="availabilityZoneName",
1486
+ file_system_id="fileSystemId",
1487
+ kms_key_id="kmsKeyId",
1488
+ region="region"
1489
+ )]
1490
+ ),
1483
1491
  throughput_mode="throughputMode"
1484
1492
  )
1485
1493
  '''
@@ -1499,6 +1507,7 @@ class CfnFileSystem(
1499
1507
  lifecycle_policies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.LifecyclePolicyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1500
1508
  performance_mode: typing.Optional[builtins.str] = None,
1501
1509
  provisioned_throughput_in_mibps: typing.Optional[jsii.Number] = None,
1510
+ replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.ReplicationConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1502
1511
  throughput_mode: typing.Optional[builtins.str] = None,
1503
1512
  ) -> None:
1504
1513
  '''
@@ -1514,6 +1523,7 @@ class CfnFileSystem(
1514
1523
  :param lifecycle_policies: An array of ``LifecyclePolicy`` objects that define the file system's ``LifecycleConfiguration`` object. A ``LifecycleConfiguration`` object informs EFS lifecycle management and intelligent tiering of the following: - When to move files in the file system from primary storage to the IA storage class. - When to move files that are in IA storage to primary storage. .. epigraph:: Amazon EFS requires that each ``LifecyclePolicy`` object have only a single transition. This means that in a request body, ``LifecyclePolicies`` needs to be structured as an array of ``LifecyclePolicy`` objects, one object for each transition, ``TransitionToIA`` , ``TransitionToPrimaryStorageClass`` . See the example requests in the following section for more information.
1515
1524
  :param performance_mode: The performance mode of the file system. We recommend ``generalPurpose`` performance mode for most file systems. File systems using the ``maxIO`` performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. .. epigraph:: The ``maxIO`` mode is not supported on file systems using One Zone storage classes. Default is ``generalPurpose`` .
1516
1525
  :param provisioned_throughput_in_mibps: The throughput, measured in mebibytes per second (MiBps), that you want to provision for a file system that you're creating. Required if ``ThroughputMode`` is set to ``provisioned`` . Valid values are 1-3414 MiBps, with the upper limit depending on Region. To increase this limit, contact AWS Support . For more information, see `Amazon EFS quotas that you can increase <https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits>`_ in the *Amazon EFS User Guide* .
1526
+ :param replication_configuration:
1517
1527
  :param throughput_mode: Specifies the throughput mode for the file system. The mode can be ``bursting`` , ``provisioned`` , or ``elastic`` . If you set ``ThroughputMode`` to ``provisioned`` , you must also set a value for ``ProvisionedThroughputInMibps`` . After you create the file system, you can decrease your file system's throughput in Provisioned Throughput mode or change between the throughput modes, with certain time restrictions. For more information, see `Specifying throughput with provisioned mode <https://docs.aws.amazon.com/efs/latest/ug/performance.html#provisioned-throughput>`_ in the *Amazon EFS User Guide* . Default is ``bursting`` .
1518
1528
  '''
1519
1529
  if __debug__:
@@ -1531,6 +1541,7 @@ class CfnFileSystem(
1531
1541
  lifecycle_policies=lifecycle_policies,
1532
1542
  performance_mode=performance_mode,
1533
1543
  provisioned_throughput_in_mibps=provisioned_throughput_in_mibps,
1544
+ replication_configuration=replication_configuration,
1534
1545
  throughput_mode=throughput_mode,
1535
1546
  )
1536
1547
 
@@ -1757,6 +1768,23 @@ class CfnFileSystem(
1757
1768
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1758
1769
  jsii.set(self, "provisionedThroughputInMibps", value)
1759
1770
 
1771
+ @builtins.property
1772
+ @jsii.member(jsii_name="replicationConfiguration")
1773
+ def replication_configuration(
1774
+ self,
1775
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.ReplicationConfigurationProperty"]]:
1776
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.ReplicationConfigurationProperty"]], jsii.get(self, "replicationConfiguration"))
1777
+
1778
+ @replication_configuration.setter
1779
+ def replication_configuration(
1780
+ self,
1781
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.ReplicationConfigurationProperty"]],
1782
+ ) -> None:
1783
+ if __debug__:
1784
+ type_hints = typing.get_type_hints(_typecheckingstub__347d61f8314b360fd5ea2b9e78a59732996a9f709552db01521d8d0aaf0ece70)
1785
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1786
+ jsii.set(self, "replicationConfiguration", value)
1787
+
1760
1788
  @builtins.property
1761
1789
  @jsii.member(jsii_name="throughputMode")
1762
1790
  def throughput_mode(self) -> typing.Optional[builtins.str]:
@@ -1978,6 +2006,166 @@ class CfnFileSystem(
1978
2006
  k + "=" + repr(v) for k, v in self._values.items()
1979
2007
  )
1980
2008
 
2009
+ @jsii.data_type(
2010
+ jsii_type="aws-cdk-lib.aws_efs.CfnFileSystem.ReplicationConfigurationProperty",
2011
+ jsii_struct_bases=[],
2012
+ name_mapping={"destinations": "destinations"},
2013
+ )
2014
+ class ReplicationConfigurationProperty:
2015
+ def __init__(
2016
+ self,
2017
+ *,
2018
+ destinations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.ReplicationDestinationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2019
+ ) -> None:
2020
+ '''
2021
+ :param destinations:
2022
+
2023
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationconfiguration.html
2024
+ :exampleMetadata: fixture=_generated
2025
+
2026
+ Example::
2027
+
2028
+ # The code below shows an example of how to instantiate this type.
2029
+ # The values are placeholders you should change.
2030
+ from aws_cdk import aws_efs as efs
2031
+
2032
+ replication_configuration_property = efs.CfnFileSystem.ReplicationConfigurationProperty(
2033
+ destinations=[efs.CfnFileSystem.ReplicationDestinationProperty(
2034
+ availability_zone_name="availabilityZoneName",
2035
+ file_system_id="fileSystemId",
2036
+ kms_key_id="kmsKeyId",
2037
+ region="region"
2038
+ )]
2039
+ )
2040
+ '''
2041
+ if __debug__:
2042
+ type_hints = typing.get_type_hints(_typecheckingstub__eda2827078148673431ed1ea0fa71f7b3bc8326d8b54d5615102d4afba9fac40)
2043
+ check_type(argname="argument destinations", value=destinations, expected_type=type_hints["destinations"])
2044
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2045
+ if destinations is not None:
2046
+ self._values["destinations"] = destinations
2047
+
2048
+ @builtins.property
2049
+ def destinations(
2050
+ self,
2051
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.ReplicationDestinationProperty"]]]]:
2052
+ '''
2053
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationconfiguration.html#cfn-efs-filesystem-replicationconfiguration-destinations
2054
+ '''
2055
+ result = self._values.get("destinations")
2056
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.ReplicationDestinationProperty"]]]], result)
2057
+
2058
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2059
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2060
+
2061
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2062
+ return not (rhs == self)
2063
+
2064
+ def __repr__(self) -> str:
2065
+ return "ReplicationConfigurationProperty(%s)" % ", ".join(
2066
+ k + "=" + repr(v) for k, v in self._values.items()
2067
+ )
2068
+
2069
+ @jsii.data_type(
2070
+ jsii_type="aws-cdk-lib.aws_efs.CfnFileSystem.ReplicationDestinationProperty",
2071
+ jsii_struct_bases=[],
2072
+ name_mapping={
2073
+ "availability_zone_name": "availabilityZoneName",
2074
+ "file_system_id": "fileSystemId",
2075
+ "kms_key_id": "kmsKeyId",
2076
+ "region": "region",
2077
+ },
2078
+ )
2079
+ class ReplicationDestinationProperty:
2080
+ def __init__(
2081
+ self,
2082
+ *,
2083
+ availability_zone_name: typing.Optional[builtins.str] = None,
2084
+ file_system_id: typing.Optional[builtins.str] = None,
2085
+ kms_key_id: typing.Optional[builtins.str] = None,
2086
+ region: typing.Optional[builtins.str] = None,
2087
+ ) -> None:
2088
+ '''
2089
+ :param availability_zone_name:
2090
+ :param file_system_id:
2091
+ :param kms_key_id:
2092
+ :param region:
2093
+
2094
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html
2095
+ :exampleMetadata: fixture=_generated
2096
+
2097
+ Example::
2098
+
2099
+ # The code below shows an example of how to instantiate this type.
2100
+ # The values are placeholders you should change.
2101
+ from aws_cdk import aws_efs as efs
2102
+
2103
+ replication_destination_property = efs.CfnFileSystem.ReplicationDestinationProperty(
2104
+ availability_zone_name="availabilityZoneName",
2105
+ file_system_id="fileSystemId",
2106
+ kms_key_id="kmsKeyId",
2107
+ region="region"
2108
+ )
2109
+ '''
2110
+ if __debug__:
2111
+ type_hints = typing.get_type_hints(_typecheckingstub__a0a6356d4030fadb2a5ab2683faf2e9b37a0259a16f5946aff9be9f29b641610)
2112
+ check_type(argname="argument availability_zone_name", value=availability_zone_name, expected_type=type_hints["availability_zone_name"])
2113
+ check_type(argname="argument file_system_id", value=file_system_id, expected_type=type_hints["file_system_id"])
2114
+ check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
2115
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
2116
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2117
+ if availability_zone_name is not None:
2118
+ self._values["availability_zone_name"] = availability_zone_name
2119
+ if file_system_id is not None:
2120
+ self._values["file_system_id"] = file_system_id
2121
+ if kms_key_id is not None:
2122
+ self._values["kms_key_id"] = kms_key_id
2123
+ if region is not None:
2124
+ self._values["region"] = region
2125
+
2126
+ @builtins.property
2127
+ def availability_zone_name(self) -> typing.Optional[builtins.str]:
2128
+ '''
2129
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-availabilityzonename
2130
+ '''
2131
+ result = self._values.get("availability_zone_name")
2132
+ return typing.cast(typing.Optional[builtins.str], result)
2133
+
2134
+ @builtins.property
2135
+ def file_system_id(self) -> typing.Optional[builtins.str]:
2136
+ '''
2137
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-filesystemid
2138
+ '''
2139
+ result = self._values.get("file_system_id")
2140
+ return typing.cast(typing.Optional[builtins.str], result)
2141
+
2142
+ @builtins.property
2143
+ def kms_key_id(self) -> typing.Optional[builtins.str]:
2144
+ '''
2145
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-kmskeyid
2146
+ '''
2147
+ result = self._values.get("kms_key_id")
2148
+ return typing.cast(typing.Optional[builtins.str], result)
2149
+
2150
+ @builtins.property
2151
+ def region(self) -> typing.Optional[builtins.str]:
2152
+ '''
2153
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-region
2154
+ '''
2155
+ result = self._values.get("region")
2156
+ return typing.cast(typing.Optional[builtins.str], result)
2157
+
2158
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2159
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2160
+
2161
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2162
+ return not (rhs == self)
2163
+
2164
+ def __repr__(self) -> str:
2165
+ return "ReplicationDestinationProperty(%s)" % ", ".join(
2166
+ k + "=" + repr(v) for k, v in self._values.items()
2167
+ )
2168
+
1981
2169
 
1982
2170
  @jsii.data_type(
1983
2171
  jsii_type="aws-cdk-lib.aws_efs.CfnFileSystemProps",
@@ -1993,6 +2181,7 @@ class CfnFileSystem(
1993
2181
  "lifecycle_policies": "lifecyclePolicies",
1994
2182
  "performance_mode": "performanceMode",
1995
2183
  "provisioned_throughput_in_mibps": "provisionedThroughputInMibps",
2184
+ "replication_configuration": "replicationConfiguration",
1996
2185
  "throughput_mode": "throughputMode",
1997
2186
  },
1998
2187
  )
@@ -2010,6 +2199,7 @@ class CfnFileSystemProps:
2010
2199
  lifecycle_policies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LifecyclePolicyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2011
2200
  performance_mode: typing.Optional[builtins.str] = None,
2012
2201
  provisioned_throughput_in_mibps: typing.Optional[jsii.Number] = None,
2202
+ replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReplicationConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2013
2203
  throughput_mode: typing.Optional[builtins.str] = None,
2014
2204
  ) -> None:
2015
2205
  '''Properties for defining a ``CfnFileSystem``.
@@ -2024,6 +2214,7 @@ class CfnFileSystemProps:
2024
2214
  :param lifecycle_policies: An array of ``LifecyclePolicy`` objects that define the file system's ``LifecycleConfiguration`` object. A ``LifecycleConfiguration`` object informs EFS lifecycle management and intelligent tiering of the following: - When to move files in the file system from primary storage to the IA storage class. - When to move files that are in IA storage to primary storage. .. epigraph:: Amazon EFS requires that each ``LifecyclePolicy`` object have only a single transition. This means that in a request body, ``LifecyclePolicies`` needs to be structured as an array of ``LifecyclePolicy`` objects, one object for each transition, ``TransitionToIA`` , ``TransitionToPrimaryStorageClass`` . See the example requests in the following section for more information.
2025
2215
  :param performance_mode: The performance mode of the file system. We recommend ``generalPurpose`` performance mode for most file systems. File systems using the ``maxIO`` performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. .. epigraph:: The ``maxIO`` mode is not supported on file systems using One Zone storage classes. Default is ``generalPurpose`` .
2026
2216
  :param provisioned_throughput_in_mibps: The throughput, measured in mebibytes per second (MiBps), that you want to provision for a file system that you're creating. Required if ``ThroughputMode`` is set to ``provisioned`` . Valid values are 1-3414 MiBps, with the upper limit depending on Region. To increase this limit, contact AWS Support . For more information, see `Amazon EFS quotas that you can increase <https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits>`_ in the *Amazon EFS User Guide* .
2217
+ :param replication_configuration:
2027
2218
  :param throughput_mode: Specifies the throughput mode for the file system. The mode can be ``bursting`` , ``provisioned`` , or ``elastic`` . If you set ``ThroughputMode`` to ``provisioned`` , you must also set a value for ``ProvisionedThroughputInMibps`` . After you create the file system, you can decrease your file system's throughput in Provisioned Throughput mode or change between the throughput modes, with certain time restrictions. For more information, see `Specifying throughput with provisioned mode <https://docs.aws.amazon.com/efs/latest/ug/performance.html#provisioned-throughput>`_ in the *Amazon EFS User Guide* . Default is ``bursting`` .
2028
2219
 
2029
2220
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html
@@ -2056,6 +2247,14 @@ class CfnFileSystemProps:
2056
2247
  )],
2057
2248
  performance_mode="performanceMode",
2058
2249
  provisioned_throughput_in_mibps=123,
2250
+ replication_configuration=efs.CfnFileSystem.ReplicationConfigurationProperty(
2251
+ destinations=[efs.CfnFileSystem.ReplicationDestinationProperty(
2252
+ availability_zone_name="availabilityZoneName",
2253
+ file_system_id="fileSystemId",
2254
+ kms_key_id="kmsKeyId",
2255
+ region="region"
2256
+ )]
2257
+ ),
2059
2258
  throughput_mode="throughputMode"
2060
2259
  )
2061
2260
  '''
@@ -2071,6 +2270,7 @@ class CfnFileSystemProps:
2071
2270
  check_type(argname="argument lifecycle_policies", value=lifecycle_policies, expected_type=type_hints["lifecycle_policies"])
2072
2271
  check_type(argname="argument performance_mode", value=performance_mode, expected_type=type_hints["performance_mode"])
2073
2272
  check_type(argname="argument provisioned_throughput_in_mibps", value=provisioned_throughput_in_mibps, expected_type=type_hints["provisioned_throughput_in_mibps"])
2273
+ check_type(argname="argument replication_configuration", value=replication_configuration, expected_type=type_hints["replication_configuration"])
2074
2274
  check_type(argname="argument throughput_mode", value=throughput_mode, expected_type=type_hints["throughput_mode"])
2075
2275
  self._values: typing.Dict[builtins.str, typing.Any] = {}
2076
2276
  if availability_zone_name is not None:
@@ -2093,6 +2293,8 @@ class CfnFileSystemProps:
2093
2293
  self._values["performance_mode"] = performance_mode
2094
2294
  if provisioned_throughput_in_mibps is not None:
2095
2295
  self._values["provisioned_throughput_in_mibps"] = provisioned_throughput_in_mibps
2296
+ if replication_configuration is not None:
2297
+ self._values["replication_configuration"] = replication_configuration
2096
2298
  if throughput_mode is not None:
2097
2299
  self._values["throughput_mode"] = throughput_mode
2098
2300
 
@@ -2236,6 +2438,16 @@ class CfnFileSystemProps:
2236
2438
  result = self._values.get("provisioned_throughput_in_mibps")
2237
2439
  return typing.cast(typing.Optional[jsii.Number], result)
2238
2440
 
2441
+ @builtins.property
2442
+ def replication_configuration(
2443
+ self,
2444
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.ReplicationConfigurationProperty]]:
2445
+ '''
2446
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-replicationconfiguration
2447
+ '''
2448
+ result = self._values.get("replication_configuration")
2449
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.ReplicationConfigurationProperty]], result)
2450
+
2239
2451
  @builtins.property
2240
2452
  def throughput_mode(self) -> typing.Optional[builtins.str]:
2241
2453
  '''Specifies the throughput mode for the file system.
@@ -3909,6 +4121,7 @@ def _typecheckingstub__cc457ee31ba660f40c549433977317b66ec9b461edc7a3afd3a157dcf
3909
4121
  lifecycle_policies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LifecyclePolicyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3910
4122
  performance_mode: typing.Optional[builtins.str] = None,
3911
4123
  provisioned_throughput_in_mibps: typing.Optional[jsii.Number] = None,
4124
+ replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReplicationConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3912
4125
  throughput_mode: typing.Optional[builtins.str] = None,
3913
4126
  ) -> None:
3914
4127
  """Type checking stubs"""
@@ -3986,6 +4199,12 @@ def _typecheckingstub__dc4b244b6d015f638041856e6a5998aa7289240b34d904419c12431ce
3986
4199
  """Type checking stubs"""
3987
4200
  pass
3988
4201
 
4202
+ def _typecheckingstub__347d61f8314b360fd5ea2b9e78a59732996a9f709552db01521d8d0aaf0ece70(
4203
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.ReplicationConfigurationProperty]],
4204
+ ) -> None:
4205
+ """Type checking stubs"""
4206
+ pass
4207
+
3989
4208
  def _typecheckingstub__6c5e0603f09328aca127a79f4af8caf4140cb862bf23ebe0cbe2e1e4c05dc8b8(
3990
4209
  value: typing.Optional[builtins.str],
3991
4210
  ) -> None:
@@ -4015,6 +4234,23 @@ def _typecheckingstub__a5fbc3e227009fdec1c9845be8c439793816fbd90d94dd67c54610c98
4015
4234
  """Type checking stubs"""
4016
4235
  pass
4017
4236
 
4237
+ def _typecheckingstub__eda2827078148673431ed1ea0fa71f7b3bc8326d8b54d5615102d4afba9fac40(
4238
+ *,
4239
+ destinations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReplicationDestinationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4240
+ ) -> None:
4241
+ """Type checking stubs"""
4242
+ pass
4243
+
4244
+ def _typecheckingstub__a0a6356d4030fadb2a5ab2683faf2e9b37a0259a16f5946aff9be9f29b641610(
4245
+ *,
4246
+ availability_zone_name: typing.Optional[builtins.str] = None,
4247
+ file_system_id: typing.Optional[builtins.str] = None,
4248
+ kms_key_id: typing.Optional[builtins.str] = None,
4249
+ region: typing.Optional[builtins.str] = None,
4250
+ ) -> None:
4251
+ """Type checking stubs"""
4252
+ pass
4253
+
4018
4254
  def _typecheckingstub__925156e2041b66f4aaa35cff9ceb098b90fd9cbb2027eb0431f56b2aa0c4aa89(
4019
4255
  *,
4020
4256
  availability_zone_name: typing.Optional[builtins.str] = None,
@@ -4027,6 +4263,7 @@ def _typecheckingstub__925156e2041b66f4aaa35cff9ceb098b90fd9cbb2027eb0431f56b2aa
4027
4263
  lifecycle_policies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LifecyclePolicyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4028
4264
  performance_mode: typing.Optional[builtins.str] = None,
4029
4265
  provisioned_throughput_in_mibps: typing.Optional[jsii.Number] = None,
4266
+ replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReplicationConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4030
4267
  throughput_mode: typing.Optional[builtins.str] = None,
4031
4268
  ) -> None:
4032
4269
  """Type checking stubs"""