aws-cdk-lib 2.200.1__py3-none-any.whl → 2.201.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 (53) hide show
  1. aws_cdk/__init__.py +105 -13
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.200.1.jsii.tgz → aws-cdk-lib@2.201.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +2 -3
  5. aws_cdk/aws_amplify/__init__.py +3 -3
  6. aws_cdk/aws_apigateway/__init__.py +21 -17
  7. aws_cdk/aws_apigatewayv2/__init__.py +87 -45
  8. aws_cdk/aws_appconfig/__init__.py +38 -1
  9. aws_cdk/aws_appsync/__init__.py +10 -10
  10. aws_cdk/aws_athena/__init__.py +226 -0
  11. aws_cdk/aws_autoscaling/__init__.py +38 -37
  12. aws_cdk/aws_bedrock/__init__.py +5108 -1571
  13. aws_cdk/aws_cloudfront/__init__.py +8 -0
  14. aws_cdk/aws_cloudtrail/__init__.py +178 -0
  15. aws_cdk/aws_cloudwatch/__init__.py +7 -3
  16. aws_cdk/aws_codepipeline_actions/__init__.py +746 -0
  17. aws_cdk/aws_connect/__init__.py +5 -5
  18. aws_cdk/aws_customerprofiles/__init__.py +377 -8
  19. aws_cdk/aws_datasync/__init__.py +189 -160
  20. aws_cdk/aws_datazone/__init__.py +512 -170
  21. aws_cdk/aws_deadline/__init__.py +32 -4
  22. aws_cdk/aws_dsql/__init__.py +150 -10
  23. aws_cdk/aws_ec2/__init__.py +793 -56
  24. aws_cdk/aws_ecs/__init__.py +94 -11
  25. aws_cdk/aws_efs/__init__.py +92 -12
  26. aws_cdk/aws_eks/__init__.py +166 -19
  27. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  28. aws_cdk/aws_emr/__init__.py +10 -4
  29. aws_cdk/aws_entityresolution/__init__.py +25 -10
  30. aws_cdk/aws_evs/__init__.py +2204 -0
  31. aws_cdk/aws_fsx/__init__.py +7 -7
  32. aws_cdk/aws_lambda/__init__.py +409 -32
  33. aws_cdk/aws_lightsail/__init__.py +17 -13
  34. aws_cdk/aws_logs/__init__.py +1 -0
  35. aws_cdk/aws_networkfirewall/__init__.py +562 -0
  36. aws_cdk/aws_opensearchservice/__init__.py +3 -3
  37. aws_cdk/aws_opsworkscm/__init__.py +9 -43
  38. aws_cdk/aws_rds/__init__.py +284 -87
  39. aws_cdk/aws_s3/__init__.py +23 -15
  40. aws_cdk/aws_sagemaker/__init__.py +223 -3
  41. aws_cdk/aws_securityhub/__init__.py +18 -34
  42. aws_cdk/aws_ssm/__init__.py +83 -1
  43. aws_cdk/aws_stepfunctions/__init__.py +235 -45
  44. aws_cdk/aws_synthetics/__init__.py +74 -0
  45. aws_cdk/aws_transfer/__init__.py +3 -3
  46. aws_cdk/aws_verifiedpermissions/__init__.py +17 -6
  47. aws_cdk/aws_wafv2/__init__.py +39 -2
  48. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/METADATA +2 -2
  49. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/RECORD +53 -52
  50. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/LICENSE +0 -0
  51. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/NOTICE +0 -0
  52. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/WHEEL +0 -0
  53. {aws_cdk_lib-2.200.1.dist-info → aws_cdk_lib-2.201.0.dist-info}/top_level.txt +0 -0
@@ -292,9 +292,21 @@ things.
292
292
  > *Info* More complete details can be found [in the docs](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.setting-capacity.html#aurora-serverless-v2-examples-setting-capacity-range-for-cluster)
293
293
 
294
294
  You can also set minimum capacity to zero ACUs and automatically pause,
295
- if they don't have any connections initiated by user activity within a specified time period.
295
+ if they don't have any connections initiated by user activity within a time period specified by `serverlessV2AutoPauseDuration` (300 seconds by default).
296
296
  For more information, see [Scaling to Zero ACUs with automatic pause and resume for Aurora Serverless v2](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2-auto-pause.html).
297
297
 
298
+ ```python
299
+ # vpc: ec2.Vpc
300
+
301
+ cluster = rds.DatabaseCluster(self, "Database",
302
+ engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.VER_3_08_0),
303
+ writer=rds.ClusterInstance.serverless_v2("writer"),
304
+ serverless_v2_min_capacity=0,
305
+ serverless_v2_auto_pause_duration=Duration.hours(1),
306
+ vpc=vpc
307
+ )
308
+ ```
309
+
298
310
  Another way that you control the capacity/scaling of your serverless v2 reader
299
311
  instances is based on the [promotion tier](https://aws.amazon.com/blogs/aws/additional-failover-control-for-amazon-aurora/)
300
312
  which can be between 0-15. Any serverless v2 instance in the 0-1 tiers will scale alongside the
@@ -612,6 +624,19 @@ rds.DatabaseInstanceReadReplica(self, "ReadReplica",
612
624
  )
613
625
  ```
614
626
 
627
+ Or you can [restore a DB instance from a Multi-AZ DB cluster snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_RestoreFromMultiAZDBClusterSnapshot.html)
628
+
629
+ ```python
630
+ # vpc: ec2.Vpc
631
+
632
+
633
+ rds.DatabaseInstanceFromSnapshot(self, "Instance",
634
+ cluster_snapshot_identifier="my-cluster-snapshot",
635
+ engine=rds.DatabaseInstanceEngine.postgres(version=rds.PostgresEngineVersion.VER_16_3),
636
+ vpc=vpc
637
+ )
638
+ ```
639
+
615
640
  Automatic backups of read replica instances are only supported for MySQL and MariaDB. By default,
616
641
  automatic backups are disabled for read replicas and can only be enabled (using `backupRetention`)
617
642
  if also enabled on the source instance.
@@ -1180,7 +1205,7 @@ proxy.grant_connect(role, "admin")
1180
1205
  See [https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.DBAccounts.html](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.DBAccounts.html) for setup instructions.
1181
1206
 
1182
1207
  To specify the details of authentication used by a proxy to log in as a specific database
1183
- user use the `clientPasswordAuthType` property:
1208
+ user use the `clientPasswordAuthType` property:
1184
1209
 
1185
1210
  ```python
1186
1211
  # vpc: ec2.Vpc
@@ -3246,7 +3271,11 @@ class AuroraPostgresClusterEngineProps:
3246
3271
  @jsii.data_type(
3247
3272
  jsii_type="aws-cdk-lib.aws_rds.AuroraPostgresEngineFeatures",
3248
3273
  jsii_struct_bases=[],
3249
- name_mapping={"s3_export": "s3Export", "s3_import": "s3Import"},
3274
+ name_mapping={
3275
+ "s3_export": "s3Export",
3276
+ "s3_import": "s3Import",
3277
+ "serverless_v2_auto_pause_supported": "serverlessV2AutoPauseSupported",
3278
+ },
3250
3279
  )
3251
3280
  class AuroraPostgresEngineFeatures:
3252
3281
  def __init__(
@@ -3254,11 +3283,13 @@ class AuroraPostgresEngineFeatures:
3254
3283
  *,
3255
3284
  s3_export: typing.Optional[builtins.bool] = None,
3256
3285
  s3_import: typing.Optional[builtins.bool] = None,
3286
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
3257
3287
  ) -> None:
3258
3288
  '''Features supported by this version of the Aurora Postgres cluster engine.
3259
3289
 
3260
3290
  :param s3_export: Whether this version of the Aurora Postgres cluster engine supports the S3 data export feature. Default: false
3261
3291
  :param s3_import: Whether this version of the Aurora Postgres cluster engine supports the S3 data import feature. Default: false
3292
+ :param serverless_v2_auto_pause_supported: Whether this version of the Aurora Postgres cluster engine supports the Aurora SeverlessV2 auto-pause feature. Default: false
3262
3293
 
3263
3294
  :exampleMetadata: fixture=_generated
3264
3295
 
@@ -3270,18 +3301,22 @@ class AuroraPostgresEngineFeatures:
3270
3301
 
3271
3302
  aurora_postgres_engine_features = rds.AuroraPostgresEngineFeatures(
3272
3303
  s3_export=False,
3273
- s3_import=False
3304
+ s3_import=False,
3305
+ serverless_v2_auto_pause_supported=False
3274
3306
  )
3275
3307
  '''
3276
3308
  if __debug__:
3277
3309
  type_hints = typing.get_type_hints(_typecheckingstub__b814dd981cca1ca2c5c82455e0e07de3c617842b40c164fd2d5e0c0ceea436fe)
3278
3310
  check_type(argname="argument s3_export", value=s3_export, expected_type=type_hints["s3_export"])
3279
3311
  check_type(argname="argument s3_import", value=s3_import, expected_type=type_hints["s3_import"])
3312
+ check_type(argname="argument serverless_v2_auto_pause_supported", value=serverless_v2_auto_pause_supported, expected_type=type_hints["serverless_v2_auto_pause_supported"])
3280
3313
  self._values: typing.Dict[builtins.str, typing.Any] = {}
3281
3314
  if s3_export is not None:
3282
3315
  self._values["s3_export"] = s3_export
3283
3316
  if s3_import is not None:
3284
3317
  self._values["s3_import"] = s3_import
3318
+ if serverless_v2_auto_pause_supported is not None:
3319
+ self._values["serverless_v2_auto_pause_supported"] = serverless_v2_auto_pause_supported
3285
3320
 
3286
3321
  @builtins.property
3287
3322
  def s3_export(self) -> typing.Optional[builtins.bool]:
@@ -3301,6 +3336,17 @@ class AuroraPostgresEngineFeatures:
3301
3336
  result = self._values.get("s3_import")
3302
3337
  return typing.cast(typing.Optional[builtins.bool], result)
3303
3338
 
3339
+ @builtins.property
3340
+ def serverless_v2_auto_pause_supported(self) -> typing.Optional[builtins.bool]:
3341
+ '''Whether this version of the Aurora Postgres cluster engine supports the Aurora SeverlessV2 auto-pause feature.
3342
+
3343
+ :default: false
3344
+
3345
+ :see: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2-auto-pause.html#auto-pause-prereqs
3346
+ '''
3347
+ result = self._values.get("serverless_v2_auto_pause_supported")
3348
+ return typing.cast(typing.Optional[builtins.bool], result)
3349
+
3304
3350
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3305
3351
  return isinstance(rhs, self.__class__) and rhs._values == self._values
3306
3352
 
@@ -3353,6 +3399,7 @@ class AuroraPostgresEngineVersion(
3353
3399
  *,
3354
3400
  s3_export: typing.Optional[builtins.bool] = None,
3355
3401
  s3_import: typing.Optional[builtins.bool] = None,
3402
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
3356
3403
  ) -> "AuroraPostgresEngineVersion":
3357
3404
  '''Create a new AuroraPostgresEngineVersion with an arbitrary version.
3358
3405
 
@@ -3360,13 +3407,16 @@ class AuroraPostgresEngineVersion(
3360
3407
  :param aurora_postgres_major_version: the major version of the engine, for example "9.6".
3361
3408
  :param s3_export: Whether this version of the Aurora Postgres cluster engine supports the S3 data export feature. Default: false
3362
3409
  :param s3_import: Whether this version of the Aurora Postgres cluster engine supports the S3 data import feature. Default: false
3410
+ :param serverless_v2_auto_pause_supported: Whether this version of the Aurora Postgres cluster engine supports the Aurora SeverlessV2 auto-pause feature. Default: false
3363
3411
  '''
3364
3412
  if __debug__:
3365
3413
  type_hints = typing.get_type_hints(_typecheckingstub__98ade0032a588940a6a5692a85f772441fd63ea4236e4018d1aa1b1ef7177eae)
3366
3414
  check_type(argname="argument aurora_postgres_full_version", value=aurora_postgres_full_version, expected_type=type_hints["aurora_postgres_full_version"])
3367
3415
  check_type(argname="argument aurora_postgres_major_version", value=aurora_postgres_major_version, expected_type=type_hints["aurora_postgres_major_version"])
3368
3416
  aurora_postgres_features = AuroraPostgresEngineFeatures(
3369
- s3_export=s3_export, s3_import=s3_import
3417
+ s3_export=s3_export,
3418
+ s3_import=s3_import,
3419
+ serverless_v2_auto_pause_supported=serverless_v2_auto_pause_supported,
3370
3420
  )
3371
3421
 
3372
3422
  return typing.cast("AuroraPostgresEngineVersion", jsii.sinvoke(cls, "of", [aurora_postgres_full_version, aurora_postgres_major_version, aurora_postgres_features]))
@@ -15131,8 +15181,8 @@ class CfnDBProxyTargetGroup(
15131
15181
  ) -> None:
15132
15182
  '''Specifies the settings that control the size and behavior of the connection pool associated with a ``DBProxyTargetGroup`` .
15133
15183
 
15134
- :param connection_borrow_timeout: The number of seconds for a proxy to wait for a connection to become available in the connection pool. This setting only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions. Default: ``120`` Constraints: - Must be between 0 and 3600.
15135
- :param init_query: Add an initialization query, or modify the current one. You can specify one or more SQL statements for the proxy to run when opening each new database connection. The setting is typically used with ``SET`` statements to make sure that each connection has identical settings. Make sure that the query you add is valid. To include multiple variables in a single ``SET`` statement, use comma separators. For example: ``SET variable1=value1, variable2=value2`` For multiple statements, use semicolons as the separator. Default: no initialization query
15184
+ :param connection_borrow_timeout: The number of seconds for a proxy to wait for a connection to become available in the connection pool. This setting only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions. Default: ``120`` Constraints: - Must be between 0 and 300.
15185
+ :param init_query: Add an initialization query, or modify the current one. You can specify one or more SQL statements for the proxy to run when opening each new database connection. The setting is typically used with ``SET`` statements to make sure that each connection has identical settings. Make sure the query added here is valid. This is an optional field, so you can choose to leave it empty. For including multiple variables in a single SET statement, use a comma separator. For example: ``SET variable1=value1, variable2=value2`` Default: no initialization query
15136
15186
  :param max_connections_percent: The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the ``max_connections`` setting for the RDS DB instance or Aurora DB cluster used by the target group. If you specify ``MaxIdleConnectionsPercent`` , then you must also include a value for this parameter. Default: ``10`` for RDS for Microsoft SQL Server, and ``100`` for all other engines Constraints: - Must be between 1 and 100.
15137
15187
  :param max_idle_connections_percent: A value that controls how actively the proxy closes idle database connections in the connection pool. The value is expressed as a percentage of the ``max_connections`` setting for the RDS DB instance or Aurora DB cluster used by the target group. With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database. If you specify this parameter, then you must also include a value for ``MaxConnectionsPercent`` . Default: The default value is half of the value of ``MaxConnectionsPercent`` . For example, if ``MaxConnectionsPercent`` is 80, then the default value of ``MaxIdleConnectionsPercent`` is 40. If the value of ``MaxConnectionsPercent`` isn't specified, then for SQL Server, ``MaxIdleConnectionsPercent`` is ``5`` , and for all other engines, the default is ``50`` . Constraints: - Must be between 0 and the value of ``MaxConnectionsPercent`` .
15138
15188
  :param session_pinning_filters: Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. Default: no session pinning filters
@@ -15183,7 +15233,7 @@ class CfnDBProxyTargetGroup(
15183
15233
 
15184
15234
  Constraints:
15185
15235
 
15186
- - Must be between 0 and 3600.
15236
+ - Must be between 0 and 300.
15187
15237
 
15188
15238
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-connectionborrowtimeout
15189
15239
  '''
@@ -15194,12 +15244,10 @@ class CfnDBProxyTargetGroup(
15194
15244
  def init_query(self) -> typing.Optional[builtins.str]:
15195
15245
  '''Add an initialization query, or modify the current one.
15196
15246
 
15197
- You can specify one or more SQL statements for the proxy to run when opening each new database connection. The setting is typically used with ``SET`` statements to make sure that each connection has identical settings. Make sure that the query you add is valid. To include multiple variables in a single ``SET`` statement, use comma separators.
15247
+ You can specify one or more SQL statements for the proxy to run when opening each new database connection. The setting is typically used with ``SET`` statements to make sure that each connection has identical settings. Make sure the query added here is valid. This is an optional field, so you can choose to leave it empty. For including multiple variables in a single SET statement, use a comma separator.
15198
15248
 
15199
15249
  For example: ``SET variable1=value1, variable2=value2``
15200
15250
 
15201
- For multiple statements, use semicolons as the separator.
15202
-
15203
15251
  Default: no initialization query
15204
15252
 
15205
15253
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfoformat-initquery
@@ -16194,7 +16242,7 @@ class CfnDBShardGroup(
16194
16242
  :param id: Construct identifier for this resource (unique in its scope).
16195
16243
  :param db_cluster_identifier: The name of the primary DB cluster for the DB shard group.
16196
16244
  :param max_acu: The maximum capacity of the DB shard group in Aurora capacity units (ACUs).
16197
- :param compute_redundancy: Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:. - 0 - Creates a DB shard group without a standby DB shard group. This is the default value. - 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ). - 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.
16245
+ :param compute_redundancy: Specifies whether to create standby standby DB data access shard for the DB shard group. Valid values are the following: - 0 - Creates a DB shard group without a standby DB data access shard. This is the default value. - 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ). - 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.
16198
16246
  :param db_shard_group_identifier: The name of the DB shard group.
16199
16247
  :param min_acu: The minimum capacity of the DB shard group in Aurora capacity units (ACUs).
16200
16248
  :param publicly_accessible: Specifies whether the DB shard group is publicly accessible. When the DB shard group is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB shard group's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB shard group's VPC. Access to the DB shard group is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB shard group doesn't permit it. When the DB shard group isn't publicly accessible, it is an internal DB shard group with a DNS name that resolves to a private IP address. Default: The default behavior varies depending on whether ``DBSubnetGroupName`` is specified. If ``DBSubnetGroupName`` isn't specified, and ``PubliclyAccessible`` isn't specified, the following applies: - If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB shard group is private. - If the default VPC in the target Region has an internet gateway attached to it, the DB shard group is public. If ``DBSubnetGroupName`` is specified, and ``PubliclyAccessible`` isn't specified, the following applies: - If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB shard group is private. - If the subnets are part of a VPC that has an internet gateway attached to it, the DB shard group is public.
@@ -16312,10 +16360,7 @@ class CfnDBShardGroup(
16312
16360
  @builtins.property
16313
16361
  @jsii.member(jsii_name="computeRedundancy")
16314
16362
  def compute_redundancy(self) -> typing.Optional[jsii.Number]:
16315
- '''Specifies whether to create standby DB shard groups for the DB shard group.
16316
-
16317
- Valid values are the following:.
16318
- '''
16363
+ '''Specifies whether to create standby standby DB data access shard for the DB shard group.'''
16319
16364
  return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "computeRedundancy"))
16320
16365
 
16321
16366
  @compute_redundancy.setter
@@ -16412,7 +16457,7 @@ class CfnDBShardGroupProps:
16412
16457
 
16413
16458
  :param db_cluster_identifier: The name of the primary DB cluster for the DB shard group.
16414
16459
  :param max_acu: The maximum capacity of the DB shard group in Aurora capacity units (ACUs).
16415
- :param compute_redundancy: Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:. - 0 - Creates a DB shard group without a standby DB shard group. This is the default value. - 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ). - 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.
16460
+ :param compute_redundancy: Specifies whether to create standby standby DB data access shard for the DB shard group. Valid values are the following: - 0 - Creates a DB shard group without a standby DB data access shard. This is the default value. - 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ). - 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.
16416
16461
  :param db_shard_group_identifier: The name of the DB shard group.
16417
16462
  :param min_acu: The minimum capacity of the DB shard group in Aurora capacity units (ACUs).
16418
16463
  :param publicly_accessible: Specifies whether the DB shard group is publicly accessible. When the DB shard group is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB shard group's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB shard group's VPC. Access to the DB shard group is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB shard group doesn't permit it. When the DB shard group isn't publicly accessible, it is an internal DB shard group with a DNS name that resolves to a private IP address. Default: The default behavior varies depending on whether ``DBSubnetGroupName`` is specified. If ``DBSubnetGroupName`` isn't specified, and ``PubliclyAccessible`` isn't specified, the following applies: - If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB shard group is private. - If the default VPC in the target Region has an internet gateway attached to it, the DB shard group is public. If ``DBSubnetGroupName`` is specified, and ``PubliclyAccessible`` isn't specified, the following applies: - If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB shard group is private. - If the subnets are part of a VPC that has an internet gateway attached to it, the DB shard group is public.
@@ -16488,11 +16533,13 @@ class CfnDBShardGroupProps:
16488
16533
 
16489
16534
  @builtins.property
16490
16535
  def compute_redundancy(self) -> typing.Optional[jsii.Number]:
16491
- '''Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:.
16536
+ '''Specifies whether to create standby standby DB data access shard for the DB shard group.
16537
+
16538
+ Valid values are the following:
16492
16539
 
16493
- - 0 - Creates a DB shard group without a standby DB shard group. This is the default value.
16494
- - 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ).
16495
- - 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.
16540
+ - 0 - Creates a DB shard group without a standby DB data access shard. This is the default value.
16541
+ - 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ).
16542
+ - 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.
16496
16543
 
16497
16544
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbshardgroup.html#cfn-rds-dbshardgroup-computeredundancy
16498
16545
  '''
@@ -18990,7 +19037,8 @@ class ClusterEngineConfig:
18990
19037
  cluster_engine_config = rds.ClusterEngineConfig(
18991
19038
  features=rds.ClusterEngineFeatures(
18992
19039
  s3_export="s3Export",
18993
- s3_import="s3Import"
19040
+ s3_import="s3Import",
19041
+ serverless_v2_auto_pause_supported=False
18994
19042
  ),
18995
19043
  parameter_group=parameter_group,
18996
19044
  port=123
@@ -19055,7 +19103,11 @@ class ClusterEngineConfig:
19055
19103
  @jsii.data_type(
19056
19104
  jsii_type="aws-cdk-lib.aws_rds.ClusterEngineFeatures",
19057
19105
  jsii_struct_bases=[],
19058
- name_mapping={"s3_export": "s3Export", "s3_import": "s3Import"},
19106
+ name_mapping={
19107
+ "s3_export": "s3Export",
19108
+ "s3_import": "s3Import",
19109
+ "serverless_v2_auto_pause_supported": "serverlessV2AutoPauseSupported",
19110
+ },
19059
19111
  )
19060
19112
  class ClusterEngineFeatures:
19061
19113
  def __init__(
@@ -19063,11 +19115,13 @@ class ClusterEngineFeatures:
19063
19115
  *,
19064
19116
  s3_export: typing.Optional[builtins.str] = None,
19065
19117
  s3_import: typing.Optional[builtins.str] = None,
19118
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
19066
19119
  ) -> None:
19067
19120
  '''Represents Database Engine features.
19068
19121
 
19069
19122
  :param s3_export: Feature name for the DB instance that the IAM role to export to S3 bucket is to be associated with. Default: - no s3Export feature name
19070
19123
  :param s3_import: Feature name for the DB instance that the IAM role to access the S3 bucket for import is to be associated with. Default: - no s3Import feature name
19124
+ :param serverless_v2_auto_pause_supported: Whether the DB cluster engine supports the Aurora ServerlessV2 auto-pause feature. Default: false
19071
19125
 
19072
19126
  :exampleMetadata: fixture=_generated
19073
19127
 
@@ -19079,18 +19133,22 @@ class ClusterEngineFeatures:
19079
19133
 
19080
19134
  cluster_engine_features = rds.ClusterEngineFeatures(
19081
19135
  s3_export="s3Export",
19082
- s3_import="s3Import"
19136
+ s3_import="s3Import",
19137
+ serverless_v2_auto_pause_supported=False
19083
19138
  )
19084
19139
  '''
19085
19140
  if __debug__:
19086
19141
  type_hints = typing.get_type_hints(_typecheckingstub__81f8847ffafe411308c4aa088976b7b6144a8df723e598bfb7c8321f44b4a587)
19087
19142
  check_type(argname="argument s3_export", value=s3_export, expected_type=type_hints["s3_export"])
19088
19143
  check_type(argname="argument s3_import", value=s3_import, expected_type=type_hints["s3_import"])
19144
+ check_type(argname="argument serverless_v2_auto_pause_supported", value=serverless_v2_auto_pause_supported, expected_type=type_hints["serverless_v2_auto_pause_supported"])
19089
19145
  self._values: typing.Dict[builtins.str, typing.Any] = {}
19090
19146
  if s3_export is not None:
19091
19147
  self._values["s3_export"] = s3_export
19092
19148
  if s3_import is not None:
19093
19149
  self._values["s3_import"] = s3_import
19150
+ if serverless_v2_auto_pause_supported is not None:
19151
+ self._values["serverless_v2_auto_pause_supported"] = serverless_v2_auto_pause_supported
19094
19152
 
19095
19153
  @builtins.property
19096
19154
  def s3_export(self) -> typing.Optional[builtins.str]:
@@ -19110,6 +19168,15 @@ class ClusterEngineFeatures:
19110
19168
  result = self._values.get("s3_import")
19111
19169
  return typing.cast(typing.Optional[builtins.str], result)
19112
19170
 
19171
+ @builtins.property
19172
+ def serverless_v2_auto_pause_supported(self) -> typing.Optional[builtins.bool]:
19173
+ '''Whether the DB cluster engine supports the Aurora ServerlessV2 auto-pause feature.
19174
+
19175
+ :default: false
19176
+ '''
19177
+ result = self._values.get("serverless_v2_auto_pause_supported")
19178
+ return typing.cast(typing.Optional[builtins.bool], result)
19179
+
19113
19180
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
19114
19181
  return isinstance(rhs, self.__class__) and rhs._values == self._values
19115
19182
 
@@ -21307,6 +21374,7 @@ class DatabaseClusterEngine(
21307
21374
  "s3_import_buckets": "s3ImportBuckets",
21308
21375
  "s3_import_role": "s3ImportRole",
21309
21376
  "security_groups": "securityGroups",
21377
+ "serverless_v2_auto_pause_duration": "serverlessV2AutoPauseDuration",
21310
21378
  "serverless_v2_max_capacity": "serverlessV2MaxCapacity",
21311
21379
  "serverless_v2_min_capacity": "serverlessV2MinCapacity",
21312
21380
  "snapshot_credentials": "snapshotCredentials",
@@ -21367,6 +21435,7 @@ class DatabaseClusterFromSnapshotProps:
21367
21435
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
21368
21436
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
21369
21437
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
21438
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
21370
21439
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
21371
21440
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
21372
21441
  snapshot_credentials: typing.Optional["SnapshotCredentials"] = None,
@@ -21424,6 +21493,7 @@ class DatabaseClusterFromSnapshotProps:
21424
21493
  :param s3_import_buckets: S3 buckets that you want to load data from. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportRole`` is used. For MySQL: Default: - None
21425
21494
  :param s3_import_role: Role that will be associated with this DB cluster to enable S3 import. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportBuckets`` is used. To use this property with Aurora PostgreSQL, it must be configured with the S3 import feature enabled when creating the DatabaseClusterEngine For MySQL: Default: - New role is created if ``s3ImportBuckets`` is set, no role is defined otherwise
21426
21495
  :param security_groups: Security group. Default: - a new security group is created.
21496
+ :param serverless_v2_auto_pause_duration: Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it. The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours). Default: - The default is 300 seconds (5 minutes).
21427
21497
  :param serverless_v2_max_capacity: The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 40, 40.5, 41, and so on. The largest value that you can use is 256. The maximum capacity must be higher than 0.5 ACUs. Default: 2
21428
21498
  :param serverless_v2_min_capacity: The minimum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 8, 8.5, 9, and so on. The smallest value that you can use is 0. For Aurora versions that support the Aurora Serverless v2 auto-pause feature, the smallest value that you can use is 0. For versions that don't support Aurora Serverless v2 auto-pause, the smallest value that you can use is 0.5. Default: 0.5
21429
21499
  :param snapshot_credentials: Master user credentials. Note - It is not possible to change the master username for a snapshot; however, it is possible to provide (or generate) a new password. Default: - The existing username and password from the snapshot will be used.
@@ -21500,6 +21570,7 @@ class DatabaseClusterFromSnapshotProps:
21500
21570
  check_type(argname="argument s3_import_buckets", value=s3_import_buckets, expected_type=type_hints["s3_import_buckets"])
21501
21571
  check_type(argname="argument s3_import_role", value=s3_import_role, expected_type=type_hints["s3_import_role"])
21502
21572
  check_type(argname="argument security_groups", value=security_groups, expected_type=type_hints["security_groups"])
21573
+ check_type(argname="argument serverless_v2_auto_pause_duration", value=serverless_v2_auto_pause_duration, expected_type=type_hints["serverless_v2_auto_pause_duration"])
21503
21574
  check_type(argname="argument serverless_v2_max_capacity", value=serverless_v2_max_capacity, expected_type=type_hints["serverless_v2_max_capacity"])
21504
21575
  check_type(argname="argument serverless_v2_min_capacity", value=serverless_v2_min_capacity, expected_type=type_hints["serverless_v2_min_capacity"])
21505
21576
  check_type(argname="argument snapshot_credentials", value=snapshot_credentials, expected_type=type_hints["snapshot_credentials"])
@@ -21598,6 +21669,8 @@ class DatabaseClusterFromSnapshotProps:
21598
21669
  self._values["s3_import_role"] = s3_import_role
21599
21670
  if security_groups is not None:
21600
21671
  self._values["security_groups"] = security_groups
21672
+ if serverless_v2_auto_pause_duration is not None:
21673
+ self._values["serverless_v2_auto_pause_duration"] = serverless_v2_auto_pause_duration
21601
21674
  if serverless_v2_max_capacity is not None:
21602
21675
  self._values["serverless_v2_max_capacity"] = serverless_v2_max_capacity
21603
21676
  if serverless_v2_min_capacity is not None:
@@ -22135,6 +22208,19 @@ class DatabaseClusterFromSnapshotProps:
22135
22208
  result = self._values.get("security_groups")
22136
22209
  return typing.cast(typing.Optional[typing.List[_ISecurityGroup_acf8a799]], result)
22137
22210
 
22211
+ @builtins.property
22212
+ def serverless_v2_auto_pause_duration(self) -> typing.Optional[_Duration_4839e8c3]:
22213
+ '''Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it.
22214
+
22215
+ The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours).
22216
+
22217
+ :default: - The default is 300 seconds (5 minutes).
22218
+
22219
+ :see: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2-auto-pause.html
22220
+ '''
22221
+ result = self._values.get("serverless_v2_auto_pause_duration")
22222
+ return typing.cast(typing.Optional[_Duration_4839e8c3], result)
22223
+
22138
22224
  @builtins.property
22139
22225
  def serverless_v2_max_capacity(self) -> typing.Optional[jsii.Number]:
22140
22226
  '''The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster.
@@ -22305,6 +22391,7 @@ class DatabaseClusterFromSnapshotProps:
22305
22391
  "s3_import_buckets": "s3ImportBuckets",
22306
22392
  "s3_import_role": "s3ImportRole",
22307
22393
  "security_groups": "securityGroups",
22394
+ "serverless_v2_auto_pause_duration": "serverlessV2AutoPauseDuration",
22308
22395
  "serverless_v2_max_capacity": "serverlessV2MaxCapacity",
22309
22396
  "serverless_v2_min_capacity": "serverlessV2MinCapacity",
22310
22397
  "storage_encrypted": "storageEncrypted",
@@ -22364,6 +22451,7 @@ class DatabaseClusterProps:
22364
22451
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
22365
22452
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
22366
22453
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
22454
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
22367
22455
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
22368
22456
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
22369
22457
  storage_encrypted: typing.Optional[builtins.bool] = None,
@@ -22420,6 +22508,7 @@ class DatabaseClusterProps:
22420
22508
  :param s3_import_buckets: S3 buckets that you want to load data from. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportRole`` is used. For MySQL: Default: - None
22421
22509
  :param s3_import_role: Role that will be associated with this DB cluster to enable S3 import. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportBuckets`` is used. To use this property with Aurora PostgreSQL, it must be configured with the S3 import feature enabled when creating the DatabaseClusterEngine For MySQL: Default: - New role is created if ``s3ImportBuckets`` is set, no role is defined otherwise
22422
22510
  :param security_groups: Security group. Default: - a new security group is created.
22511
+ :param serverless_v2_auto_pause_duration: Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it. The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours). Default: - The default is 300 seconds (5 minutes).
22423
22512
  :param serverless_v2_max_capacity: The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 40, 40.5, 41, and so on. The largest value that you can use is 256. The maximum capacity must be higher than 0.5 ACUs. Default: 2
22424
22513
  :param serverless_v2_min_capacity: The minimum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 8, 8.5, 9, and so on. The smallest value that you can use is 0. For Aurora versions that support the Aurora Serverless v2 auto-pause feature, the smallest value that you can use is 0. For versions that don't support Aurora Serverless v2 auto-pause, the smallest value that you can use is 0.5. Default: 0.5
22425
22514
  :param storage_encrypted: Whether to enable storage encryption. Default: - true if storageEncryptionKey is provided, false otherwise
@@ -22437,20 +22526,19 @@ class DatabaseClusterProps:
22437
22526
  # vpc: ec2.Vpc
22438
22527
 
22439
22528
  cluster = rds.DatabaseCluster(self, "Database",
22440
- engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.VER_3_01_0),
22441
- credentials=rds.Credentials.from_generated_secret("clusteradmin"), # Optional - will default to 'admin' username and generated password
22442
- writer=rds.ClusterInstance.provisioned("writer",
22443
- publicly_accessible=False
22444
- ),
22445
- readers=[
22446
- rds.ClusterInstance.provisioned("reader1", promotion_tier=1),
22447
- rds.ClusterInstance.serverless_v2("reader2")
22448
- ],
22449
- vpc_subnets=ec2.SubnetSelection(
22450
- subnet_type=ec2.SubnetType.PRIVATE_WITH_EGRESS
22529
+ engine=rds.DatabaseClusterEngine.aurora_mysql(
22530
+ version=rds.AuroraMysqlEngineVersion.VER_3_03_0
22451
22531
  ),
22532
+ writer=rds.ClusterInstance.provisioned("writer"),
22452
22533
  vpc=vpc
22453
22534
  )
22535
+
22536
+ proxy = rds.DatabaseProxy(self, "Proxy",
22537
+ proxy_target=rds.ProxyTarget.from_cluster(cluster),
22538
+ secrets=[cluster.secret],
22539
+ vpc=vpc,
22540
+ client_password_auth_type=rds.ClientPasswordAuthType.MYSQL_NATIVE_PASSWORD
22541
+ )
22454
22542
  '''
22455
22543
  if isinstance(backup, dict):
22456
22544
  backup = BackupProps(**backup)
@@ -22504,6 +22592,7 @@ class DatabaseClusterProps:
22504
22592
  check_type(argname="argument s3_import_buckets", value=s3_import_buckets, expected_type=type_hints["s3_import_buckets"])
22505
22593
  check_type(argname="argument s3_import_role", value=s3_import_role, expected_type=type_hints["s3_import_role"])
22506
22594
  check_type(argname="argument security_groups", value=security_groups, expected_type=type_hints["security_groups"])
22595
+ check_type(argname="argument serverless_v2_auto_pause_duration", value=serverless_v2_auto_pause_duration, expected_type=type_hints["serverless_v2_auto_pause_duration"])
22507
22596
  check_type(argname="argument serverless_v2_max_capacity", value=serverless_v2_max_capacity, expected_type=type_hints["serverless_v2_max_capacity"])
22508
22597
  check_type(argname="argument serverless_v2_min_capacity", value=serverless_v2_min_capacity, expected_type=type_hints["serverless_v2_min_capacity"])
22509
22598
  check_type(argname="argument storage_encrypted", value=storage_encrypted, expected_type=type_hints["storage_encrypted"])
@@ -22602,6 +22691,8 @@ class DatabaseClusterProps:
22602
22691
  self._values["s3_import_role"] = s3_import_role
22603
22692
  if security_groups is not None:
22604
22693
  self._values["security_groups"] = security_groups
22694
+ if serverless_v2_auto_pause_duration is not None:
22695
+ self._values["serverless_v2_auto_pause_duration"] = serverless_v2_auto_pause_duration
22605
22696
  if serverless_v2_max_capacity is not None:
22606
22697
  self._values["serverless_v2_max_capacity"] = serverless_v2_max_capacity
22607
22698
  if serverless_v2_min_capacity is not None:
@@ -23125,6 +23216,19 @@ class DatabaseClusterProps:
23125
23216
  result = self._values.get("security_groups")
23126
23217
  return typing.cast(typing.Optional[typing.List[_ISecurityGroup_acf8a799]], result)
23127
23218
 
23219
+ @builtins.property
23220
+ def serverless_v2_auto_pause_duration(self) -> typing.Optional[_Duration_4839e8c3]:
23221
+ '''Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it.
23222
+
23223
+ The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours).
23224
+
23225
+ :default: - The default is 300 seconds (5 minutes).
23226
+
23227
+ :see: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2-auto-pause.html
23228
+ '''
23229
+ result = self._values.get("serverless_v2_auto_pause_duration")
23230
+ return typing.cast(typing.Optional[_Duration_4839e8c3], result)
23231
+
23128
23232
  @builtins.property
23129
23233
  def serverless_v2_max_capacity(self) -> typing.Optional[jsii.Number]:
23130
23234
  '''The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster.
@@ -31642,6 +31746,12 @@ class MariaDbEngineVersion(
31642
31746
  '''Version "10.11.11".'''
31643
31747
  return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_11_11"))
31644
31748
 
31749
+ @jsii.python.classproperty
31750
+ @jsii.member(jsii_name="VER_10_11_13")
31751
+ def VER_10_11_13(cls) -> "MariaDbEngineVersion":
31752
+ '''Version "10.11.13".'''
31753
+ return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_11_13"))
31754
+
31645
31755
  @jsii.python.classproperty
31646
31756
  @jsii.member(jsii_name="VER_10_11_4")
31647
31757
  def VER_10_11_4(cls) -> "MariaDbEngineVersion":
@@ -32288,6 +32398,12 @@ class MariaDbEngineVersion(
32288
32398
  '''Version "10.5.28".'''
32289
32399
  return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_5_28"))
32290
32400
 
32401
+ @jsii.python.classproperty
32402
+ @jsii.member(jsii_name="VER_10_5_29")
32403
+ def VER_10_5_29(cls) -> "MariaDbEngineVersion":
32404
+ '''Version "10.5.29".'''
32405
+ return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_5_29"))
32406
+
32291
32407
  @jsii.python.classproperty
32292
32408
  @jsii.member(jsii_name="VER_10_5_8")
32293
32409
  def VER_10_5_8(cls) -> "MariaDbEngineVersion":
@@ -32403,6 +32519,12 @@ class MariaDbEngineVersion(
32403
32519
  '''Version "10.6.21".'''
32404
32520
  return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_6_21"))
32405
32521
 
32522
+ @jsii.python.classproperty
32523
+ @jsii.member(jsii_name="VER_10_6_22")
32524
+ def VER_10_6_22(cls) -> "MariaDbEngineVersion":
32525
+ '''Version "10.6.22".'''
32526
+ return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_10_6_22"))
32527
+
32406
32528
  @jsii.python.classproperty
32407
32529
  @jsii.member(jsii_name="VER_10_6_5")
32408
32530
  def VER_10_6_5(cls) -> "MariaDbEngineVersion":
@@ -32454,6 +32576,12 @@ class MariaDbEngineVersion(
32454
32576
  '''Version "11.4.5".'''
32455
32577
  return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_11_4_5"))
32456
32578
 
32579
+ @jsii.python.classproperty
32580
+ @jsii.member(jsii_name="VER_11_4_7")
32581
+ def VER_11_4_7(cls) -> "MariaDbEngineVersion":
32582
+ '''Version "11.4.7".'''
32583
+ return typing.cast("MariaDbEngineVersion", jsii.sget(cls, "VER_11_4_7"))
32584
+
32457
32585
  @builtins.property
32458
32586
  @jsii.member(jsii_name="mariaDbFullVersion")
32459
32587
  def maria_db_full_version(self) -> builtins.str:
@@ -35928,6 +36056,12 @@ class PostgresEngineVersion(
35928
36056
  '''Version "11.22-RDS.20241121".'''
35929
36057
  return typing.cast("PostgresEngineVersion", jsii.sget(cls, "VER_11_22_RDS_20241121"))
35930
36058
 
36059
+ @jsii.python.classproperty
36060
+ @jsii.member(jsii_name="VER_11_22_RDS_20250508")
36061
+ def VER_11_22_RDS_20250508(cls) -> "PostgresEngineVersion":
36062
+ '''Version "11.22-rds.20250508".'''
36063
+ return typing.cast("PostgresEngineVersion", jsii.sget(cls, "VER_11_22_RDS_20250508"))
36064
+
35931
36065
  @jsii.python.classproperty
35932
36066
  @jsii.member(jsii_name="VER_11_4")
35933
36067
  def VER_11_4(cls) -> "PostgresEngineVersion":
@@ -36149,6 +36283,12 @@ class PostgresEngineVersion(
36149
36283
  '''Version "12.22".'''
36150
36284
  return typing.cast("PostgresEngineVersion", jsii.sget(cls, "VER_12_22"))
36151
36285
 
36286
+ @jsii.python.classproperty
36287
+ @jsii.member(jsii_name="VER_12_22_RDS_20250508")
36288
+ def VER_12_22_RDS_20250508(cls) -> "PostgresEngineVersion":
36289
+ '''Version "12.22-rds.20250508".'''
36290
+ return typing.cast("PostgresEngineVersion", jsii.sget(cls, "VER_12_22_RDS_20250508"))
36291
+
36152
36292
  @jsii.python.classproperty
36153
36293
  @jsii.member(jsii_name="VER_12_3")
36154
36294
  def VER_12_3(cls) -> "PostgresEngineVersion":
@@ -42677,6 +42817,7 @@ class DatabaseClusterFromSnapshot(
42677
42817
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
42678
42818
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
42679
42819
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
42820
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
42680
42821
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
42681
42822
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
42682
42823
  snapshot_credentials: typing.Optional[SnapshotCredentials] = None,
@@ -42735,6 +42876,7 @@ class DatabaseClusterFromSnapshot(
42735
42876
  :param s3_import_buckets: S3 buckets that you want to load data from. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportRole`` is used. For MySQL: Default: - None
42736
42877
  :param s3_import_role: Role that will be associated with this DB cluster to enable S3 import. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportBuckets`` is used. To use this property with Aurora PostgreSQL, it must be configured with the S3 import feature enabled when creating the DatabaseClusterEngine For MySQL: Default: - New role is created if ``s3ImportBuckets`` is set, no role is defined otherwise
42737
42878
  :param security_groups: Security group. Default: - a new security group is created.
42879
+ :param serverless_v2_auto_pause_duration: Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it. The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours). Default: - The default is 300 seconds (5 minutes).
42738
42880
  :param serverless_v2_max_capacity: The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 40, 40.5, 41, and so on. The largest value that you can use is 256. The maximum capacity must be higher than 0.5 ACUs. Default: 2
42739
42881
  :param serverless_v2_min_capacity: The minimum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 8, 8.5, 9, and so on. The smallest value that you can use is 0. For Aurora versions that support the Aurora Serverless v2 auto-pause feature, the smallest value that you can use is 0. For versions that don't support Aurora Serverless v2 auto-pause, the smallest value that you can use is 0.5. Default: 0.5
42740
42882
  :param snapshot_credentials: Master user credentials. Note - It is not possible to change the master username for a snapshot; however, it is possible to provide (or generate) a new password. Default: - The existing username and password from the snapshot will be used.
@@ -42795,6 +42937,7 @@ class DatabaseClusterFromSnapshot(
42795
42937
  s3_import_buckets=s3_import_buckets,
42796
42938
  s3_import_role=s3_import_role,
42797
42939
  security_groups=security_groups,
42940
+ serverless_v2_auto_pause_duration=serverless_v2_auto_pause_duration,
42798
42941
  serverless_v2_max_capacity=serverless_v2_max_capacity,
42799
42942
  serverless_v2_min_capacity=serverless_v2_min_capacity,
42800
42943
  snapshot_credentials=snapshot_credentials,
@@ -43127,6 +43270,11 @@ class DatabaseClusterFromSnapshot(
43127
43270
  '''The secret attached to this cluster.'''
43128
43271
  return typing.cast(typing.Optional[_ISecret_6e020e6a], jsii.get(self, "secret"))
43129
43272
 
43273
+ @builtins.property
43274
+ @jsii.member(jsii_name="serverlessV2AutoPauseDuration")
43275
+ def _serverless_v2_auto_pause_duration(self) -> typing.Optional[_Duration_4839e8c3]:
43276
+ return typing.cast(typing.Optional[_Duration_4839e8c3], jsii.get(self, "serverlessV2AutoPauseDuration"))
43277
+
43130
43278
  @builtins.property
43131
43279
  @jsii.member(jsii_name="vpcSubnets")
43132
43280
  def vpc_subnets(self) -> typing.Optional[_SubnetSelection_e57d76df]:
@@ -43886,19 +44034,18 @@ class DatabaseInstanceFromSnapshot(
43886
44034
 
43887
44035
  # vpc: ec2.Vpc
43888
44036
 
43889
- # source_instance: rds.DatabaseInstance
44037
+ engine = rds.DatabaseInstanceEngine.postgres(version=rds.PostgresEngineVersion.VER_16_3)
44038
+ my_key = kms.Key(self, "MyKey")
43890
44039
 
43891
- rds.DatabaseInstanceFromSnapshot(self, "Instance",
43892
- snapshot_identifier="my-snapshot",
43893
- engine=rds.DatabaseInstanceEngine.postgres(version=rds.PostgresEngineVersion.VER_16_3),
43894
- # optional, defaults to m5.large
43895
- instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.LARGE),
43896
- vpc=vpc
43897
- )
43898
- rds.DatabaseInstanceReadReplica(self, "ReadReplica",
43899
- source_database_instance=source_instance,
43900
- instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.LARGE),
43901
- vpc=vpc
44040
+ rds.DatabaseInstanceFromSnapshot(self, "InstanceFromSnapshotWithCustomizedSecret",
44041
+ engine=engine,
44042
+ vpc=vpc,
44043
+ snapshot_identifier="mySnapshot",
44044
+ credentials=rds.SnapshotCredentials.from_generated_secret("username",
44045
+ encryption_key=my_key,
44046
+ exclude_characters="!&*^#@()",
44047
+ replica_regions=[secretsmanager.ReplicaRegion(region="eu-west-1"), secretsmanager.ReplicaRegion(region="eu-west-2")]
44048
+ )
43902
44049
  )
43903
44050
  '''
43904
44051
 
@@ -43907,8 +44054,9 @@ class DatabaseInstanceFromSnapshot(
43907
44054
  scope: _constructs_77d1e7e8.Construct,
43908
44055
  id: builtins.str,
43909
44056
  *,
43910
- snapshot_identifier: builtins.str,
44057
+ cluster_snapshot_identifier: typing.Optional[builtins.str] = None,
43911
44058
  credentials: typing.Optional[SnapshotCredentials] = None,
44059
+ snapshot_identifier: typing.Optional[builtins.str] = None,
43912
44060
  engine: IInstanceEngine,
43913
44061
  allocated_storage: typing.Optional[jsii.Number] = None,
43914
44062
  allow_major_version_upgrade: typing.Optional[builtins.bool] = None,
@@ -43963,8 +44111,9 @@ class DatabaseInstanceFromSnapshot(
43963
44111
  '''
43964
44112
  :param scope: -
43965
44113
  :param id: -
43966
- :param snapshot_identifier: The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance. If you're restoring from a shared manual DB snapshot, you must specify the ARN of the snapshot.
44114
+ :param cluster_snapshot_identifier: The identifier for the Multi-AZ DB cluster snapshot to restore from. For more information on Multi-AZ DB clusters, see `Multi-AZ DB cluster deployments <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html>`_ in the *Amazon RDS User Guide* . Constraints: - Can't be specified when ``snapshotIdentifier`` is specified. - Must be specified when ``snapshotIdentifier`` isn't specified. - If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the ``clusterSnapshotIdentifier`` must be the ARN of the shared snapshot. - Can't be the identifier of an Aurora DB cluster snapshot. Default: - None
43967
44115
  :param credentials: Master user credentials. Note - It is not possible to change the master username for a snapshot; however, it is possible to provide (or generate) a new password. Default: - The existing username and password from the snapshot will be used.
44116
+ :param snapshot_identifier: The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance. If you're restoring from a shared manual DB snapshot, you must specify the ARN of the snapshot. Constraints: - Can't be specified when ``clusterSnapshotIdentifier`` is specified. - Must be specified when ``clusterSnapshotIdentifier`` isn't specified. Default: - None
43968
44117
  :param engine: The database engine.
43969
44118
  :param allocated_storage: The allocated storage size, specified in gibibytes (GiB). Default: 100
43970
44119
  :param allow_major_version_upgrade: Whether to allow major version upgrades. Default: false
@@ -44021,8 +44170,9 @@ class DatabaseInstanceFromSnapshot(
44021
44170
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
44022
44171
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
44023
44172
  props = DatabaseInstanceFromSnapshotProps(
44024
- snapshot_identifier=snapshot_identifier,
44173
+ cluster_snapshot_identifier=cluster_snapshot_identifier,
44025
44174
  credentials=credentials,
44175
+ snapshot_identifier=snapshot_identifier,
44026
44176
  engine=engine,
44027
44177
  allocated_storage=allocated_storage,
44028
44178
  allow_major_version_upgrade=allow_major_version_upgrade,
@@ -44333,8 +44483,9 @@ class DatabaseInstanceFromSnapshot(
44333
44483
  "license_model": "licenseModel",
44334
44484
  "parameters": "parameters",
44335
44485
  "timezone": "timezone",
44336
- "snapshot_identifier": "snapshotIdentifier",
44486
+ "cluster_snapshot_identifier": "clusterSnapshotIdentifier",
44337
44487
  "credentials": "credentials",
44488
+ "snapshot_identifier": "snapshotIdentifier",
44338
44489
  },
44339
44490
  )
44340
44491
  class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
@@ -44391,8 +44542,9 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
44391
44542
  license_model: typing.Optional[LicenseModel] = None,
44392
44543
  parameters: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
44393
44544
  timezone: typing.Optional[builtins.str] = None,
44394
- snapshot_identifier: builtins.str,
44545
+ cluster_snapshot_identifier: typing.Optional[builtins.str] = None,
44395
44546
  credentials: typing.Optional[SnapshotCredentials] = None,
44547
+ snapshot_identifier: typing.Optional[builtins.str] = None,
44396
44548
  ) -> None:
44397
44549
  '''Construction properties for a DatabaseInstanceFromSnapshot.
44398
44550
 
@@ -44446,8 +44598,9 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
44446
44598
  :param license_model: The license model. Default: - RDS default license model
44447
44599
  :param parameters: The parameters in the DBParameterGroup to create automatically. You can only specify parameterGroup or parameters but not both. You need to use a versioned engine to auto-generate a DBParameterGroup. Default: - None
44448
44600
  :param timezone: The time zone of the instance. This is currently supported only by Microsoft Sql Server. Default: - RDS default timezone
44449
- :param snapshot_identifier: The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance. If you're restoring from a shared manual DB snapshot, you must specify the ARN of the snapshot.
44601
+ :param cluster_snapshot_identifier: The identifier for the Multi-AZ DB cluster snapshot to restore from. For more information on Multi-AZ DB clusters, see `Multi-AZ DB cluster deployments <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html>`_ in the *Amazon RDS User Guide* . Constraints: - Can't be specified when ``snapshotIdentifier`` is specified. - Must be specified when ``snapshotIdentifier`` isn't specified. - If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the ``clusterSnapshotIdentifier`` must be the ARN of the shared snapshot. - Can't be the identifier of an Aurora DB cluster snapshot. Default: - None
44450
44602
  :param credentials: Master user credentials. Note - It is not possible to change the master username for a snapshot; however, it is possible to provide (or generate) a new password. Default: - The existing username and password from the snapshot will be used.
44603
+ :param snapshot_identifier: The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance. If you're restoring from a shared manual DB snapshot, you must specify the ARN of the snapshot. Constraints: - Can't be specified when ``clusterSnapshotIdentifier`` is specified. - Must be specified when ``clusterSnapshotIdentifier`` isn't specified. Default: - None
44451
44604
 
44452
44605
  :exampleMetadata: infused
44453
44606
 
@@ -44455,19 +44608,18 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
44455
44608
 
44456
44609
  # vpc: ec2.Vpc
44457
44610
 
44458
- # source_instance: rds.DatabaseInstance
44611
+ engine = rds.DatabaseInstanceEngine.postgres(version=rds.PostgresEngineVersion.VER_16_3)
44612
+ my_key = kms.Key(self, "MyKey")
44459
44613
 
44460
- rds.DatabaseInstanceFromSnapshot(self, "Instance",
44461
- snapshot_identifier="my-snapshot",
44462
- engine=rds.DatabaseInstanceEngine.postgres(version=rds.PostgresEngineVersion.VER_16_3),
44463
- # optional, defaults to m5.large
44464
- instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.LARGE),
44465
- vpc=vpc
44466
- )
44467
- rds.DatabaseInstanceReadReplica(self, "ReadReplica",
44468
- source_database_instance=source_instance,
44469
- instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.LARGE),
44470
- vpc=vpc
44614
+ rds.DatabaseInstanceFromSnapshot(self, "InstanceFromSnapshotWithCustomizedSecret",
44615
+ engine=engine,
44616
+ vpc=vpc,
44617
+ snapshot_identifier="mySnapshot",
44618
+ credentials=rds.SnapshotCredentials.from_generated_secret("username",
44619
+ encryption_key=my_key,
44620
+ exclude_characters="!&*^#@()",
44621
+ replica_regions=[secretsmanager.ReplicaRegion(region="eu-west-1"), secretsmanager.ReplicaRegion(region="eu-west-2")]
44622
+ )
44471
44623
  )
44472
44624
  '''
44473
44625
  if isinstance(processor_features, dict):
@@ -44526,12 +44678,12 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
44526
44678
  check_type(argname="argument license_model", value=license_model, expected_type=type_hints["license_model"])
44527
44679
  check_type(argname="argument parameters", value=parameters, expected_type=type_hints["parameters"])
44528
44680
  check_type(argname="argument timezone", value=timezone, expected_type=type_hints["timezone"])
44529
- check_type(argname="argument snapshot_identifier", value=snapshot_identifier, expected_type=type_hints["snapshot_identifier"])
44681
+ check_type(argname="argument cluster_snapshot_identifier", value=cluster_snapshot_identifier, expected_type=type_hints["cluster_snapshot_identifier"])
44530
44682
  check_type(argname="argument credentials", value=credentials, expected_type=type_hints["credentials"])
44683
+ check_type(argname="argument snapshot_identifier", value=snapshot_identifier, expected_type=type_hints["snapshot_identifier"])
44531
44684
  self._values: typing.Dict[builtins.str, typing.Any] = {
44532
44685
  "vpc": vpc,
44533
44686
  "engine": engine,
44534
- "snapshot_identifier": snapshot_identifier,
44535
44687
  }
44536
44688
  if apply_immediately is not None:
44537
44689
  self._values["apply_immediately"] = apply_immediately
@@ -44629,8 +44781,12 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
44629
44781
  self._values["parameters"] = parameters
44630
44782
  if timezone is not None:
44631
44783
  self._values["timezone"] = timezone
44784
+ if cluster_snapshot_identifier is not None:
44785
+ self._values["cluster_snapshot_identifier"] = cluster_snapshot_identifier
44632
44786
  if credentials is not None:
44633
44787
  self._values["credentials"] = credentials
44788
+ if snapshot_identifier is not None:
44789
+ self._values["snapshot_identifier"] = snapshot_identifier
44634
44790
 
44635
44791
  @builtins.property
44636
44792
  def vpc(self) -> _IVpc_f30d5663:
@@ -45191,15 +45347,24 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
45191
45347
  return typing.cast(typing.Optional[builtins.str], result)
45192
45348
 
45193
45349
  @builtins.property
45194
- def snapshot_identifier(self) -> builtins.str:
45195
- '''The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance.
45350
+ def cluster_snapshot_identifier(self) -> typing.Optional[builtins.str]:
45351
+ '''The identifier for the Multi-AZ DB cluster snapshot to restore from.
45196
45352
 
45197
- If you're restoring from a shared manual DB
45198
- snapshot, you must specify the ARN of the snapshot.
45353
+ For more information on Multi-AZ DB clusters, see `Multi-AZ DB cluster deployments <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html>`_ in the *Amazon RDS User Guide* .
45354
+
45355
+ Constraints:
45356
+
45357
+ - Can't be specified when ``snapshotIdentifier`` is specified.
45358
+ - Must be specified when ``snapshotIdentifier`` isn't specified.
45359
+ - If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the ``clusterSnapshotIdentifier`` must be the ARN of the shared snapshot.
45360
+ - Can't be the identifier of an Aurora DB cluster snapshot.
45361
+
45362
+ :default: - None
45363
+
45364
+ :see: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_RestoreFromMultiAZDBClusterSnapshot.html
45199
45365
  '''
45200
- result = self._values.get("snapshot_identifier")
45201
- assert result is not None, "Required property 'snapshot_identifier' is missing"
45202
- return typing.cast(builtins.str, result)
45366
+ result = self._values.get("cluster_snapshot_identifier")
45367
+ return typing.cast(typing.Optional[builtins.str], result)
45203
45368
 
45204
45369
  @builtins.property
45205
45370
  def credentials(self) -> typing.Optional[SnapshotCredentials]:
@@ -45213,6 +45378,22 @@ class DatabaseInstanceFromSnapshotProps(DatabaseInstanceSourceProps):
45213
45378
  result = self._values.get("credentials")
45214
45379
  return typing.cast(typing.Optional[SnapshotCredentials], result)
45215
45380
 
45381
+ @builtins.property
45382
+ def snapshot_identifier(self) -> typing.Optional[builtins.str]:
45383
+ '''The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance.
45384
+
45385
+ If you're restoring from a shared manual DB
45386
+ snapshot, you must specify the ARN of the snapshot.
45387
+ Constraints:
45388
+
45389
+ - Can't be specified when ``clusterSnapshotIdentifier`` is specified.
45390
+ - Must be specified when ``clusterSnapshotIdentifier`` isn't specified.
45391
+
45392
+ :default: - None
45393
+ '''
45394
+ result = self._values.get("snapshot_identifier")
45395
+ return typing.cast(typing.Optional[builtins.str], result)
45396
+
45216
45397
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
45217
45398
  return isinstance(rhs, self.__class__) and rhs._values == self._values
45218
45399
 
@@ -46822,20 +47003,19 @@ class DatabaseCluster(
46822
47003
  # vpc: ec2.Vpc
46823
47004
 
46824
47005
  cluster = rds.DatabaseCluster(self, "Database",
46825
- engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.VER_3_01_0),
46826
- credentials=rds.Credentials.from_generated_secret("clusteradmin"), # Optional - will default to 'admin' username and generated password
46827
- writer=rds.ClusterInstance.provisioned("writer",
46828
- publicly_accessible=False
46829
- ),
46830
- readers=[
46831
- rds.ClusterInstance.provisioned("reader1", promotion_tier=1),
46832
- rds.ClusterInstance.serverless_v2("reader2")
46833
- ],
46834
- vpc_subnets=ec2.SubnetSelection(
46835
- subnet_type=ec2.SubnetType.PRIVATE_WITH_EGRESS
47006
+ engine=rds.DatabaseClusterEngine.aurora_mysql(
47007
+ version=rds.AuroraMysqlEngineVersion.VER_3_03_0
46836
47008
  ),
47009
+ writer=rds.ClusterInstance.provisioned("writer"),
46837
47010
  vpc=vpc
46838
47011
  )
47012
+
47013
+ proxy = rds.DatabaseProxy(self, "Proxy",
47014
+ proxy_target=rds.ProxyTarget.from_cluster(cluster),
47015
+ secrets=[cluster.secret],
47016
+ vpc=vpc,
47017
+ client_password_auth_type=rds.ClientPasswordAuthType.MYSQL_NATIVE_PASSWORD
47018
+ )
46839
47019
  '''
46840
47020
 
46841
47021
  def __init__(
@@ -46887,6 +47067,7 @@ class DatabaseCluster(
46887
47067
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
46888
47068
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
46889
47069
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
47070
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
46890
47071
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
46891
47072
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
46892
47073
  storage_encrypted: typing.Optional[builtins.bool] = None,
@@ -46944,6 +47125,7 @@ class DatabaseCluster(
46944
47125
  :param s3_import_buckets: S3 buckets that you want to load data from. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportRole`` is used. For MySQL: Default: - None
46945
47126
  :param s3_import_role: Role that will be associated with this DB cluster to enable S3 import. This feature is only supported by the Aurora database engine. This property must not be used if ``s3ImportBuckets`` is used. To use this property with Aurora PostgreSQL, it must be configured with the S3 import feature enabled when creating the DatabaseClusterEngine For MySQL: Default: - New role is created if ``s3ImportBuckets`` is set, no role is defined otherwise
46946
47127
  :param security_groups: Security group. Default: - a new security group is created.
47128
+ :param serverless_v2_auto_pause_duration: Specifies the duration an Aurora Serverless v2 DB instance must be idle before Aurora attempts to automatically pause it. The duration must be between 300 seconds (5 minutes) and 86,400 seconds (24 hours). Default: - The default is 300 seconds (5 minutes).
46947
47129
  :param serverless_v2_max_capacity: The maximum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 40, 40.5, 41, and so on. The largest value that you can use is 256. The maximum capacity must be higher than 0.5 ACUs. Default: 2
46948
47130
  :param serverless_v2_min_capacity: The minimum number of Aurora capacity units (ACUs) for a DB instance in an Aurora Serverless v2 cluster. You can specify ACU values in half-step increments, such as 8, 8.5, 9, and so on. The smallest value that you can use is 0. For Aurora versions that support the Aurora Serverless v2 auto-pause feature, the smallest value that you can use is 0. For versions that don't support Aurora Serverless v2 auto-pause, the smallest value that you can use is 0.5. Default: 0.5
46949
47131
  :param storage_encrypted: Whether to enable storage encryption. Default: - true if storageEncryptionKey is provided, false otherwise
@@ -47003,6 +47185,7 @@ class DatabaseCluster(
47003
47185
  s3_import_buckets=s3_import_buckets,
47004
47186
  s3_import_role=s3_import_role,
47005
47187
  security_groups=security_groups,
47188
+ serverless_v2_auto_pause_duration=serverless_v2_auto_pause_duration,
47006
47189
  serverless_v2_max_capacity=serverless_v2_max_capacity,
47007
47190
  serverless_v2_min_capacity=serverless_v2_min_capacity,
47008
47191
  storage_encrypted=storage_encrypted,
@@ -47389,6 +47572,11 @@ class DatabaseCluster(
47389
47572
  '''The secret attached to this cluster.'''
47390
47573
  return typing.cast(typing.Optional[_ISecret_6e020e6a], jsii.get(self, "secret"))
47391
47574
 
47575
+ @builtins.property
47576
+ @jsii.member(jsii_name="serverlessV2AutoPauseDuration")
47577
+ def _serverless_v2_auto_pause_duration(self) -> typing.Optional[_Duration_4839e8c3]:
47578
+ return typing.cast(typing.Optional[_Duration_4839e8c3], jsii.get(self, "serverlessV2AutoPauseDuration"))
47579
+
47392
47580
  @builtins.property
47393
47581
  @jsii.member(jsii_name="vpcSubnets")
47394
47582
  def vpc_subnets(self) -> typing.Optional[_SubnetSelection_e57d76df]:
@@ -48033,6 +48221,7 @@ def _typecheckingstub__b814dd981cca1ca2c5c82455e0e07de3c617842b40c164fd2d5e0c0ce
48033
48221
  *,
48034
48222
  s3_export: typing.Optional[builtins.bool] = None,
48035
48223
  s3_import: typing.Optional[builtins.bool] = None,
48224
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
48036
48225
  ) -> None:
48037
48226
  """Type checking stubs"""
48038
48227
  pass
@@ -48043,6 +48232,7 @@ def _typecheckingstub__98ade0032a588940a6a5692a85f772441fd63ea4236e4018d1aa1b1ef
48043
48232
  *,
48044
48233
  s3_export: typing.Optional[builtins.bool] = None,
48045
48234
  s3_import: typing.Optional[builtins.bool] = None,
48235
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
48046
48236
  ) -> None:
48047
48237
  """Type checking stubs"""
48048
48238
  pass
@@ -50507,6 +50697,7 @@ def _typecheckingstub__81f8847ffafe411308c4aa088976b7b6144a8df723e598bfb7c8321f4
50507
50697
  *,
50508
50698
  s3_export: typing.Optional[builtins.str] = None,
50509
50699
  s3_import: typing.Optional[builtins.str] = None,
50700
+ serverless_v2_auto_pause_supported: typing.Optional[builtins.bool] = None,
50510
50701
  ) -> None:
50511
50702
  """Type checking stubs"""
50512
50703
  pass
@@ -50710,6 +50901,7 @@ def _typecheckingstub__1e44b5aef872ca17869a17181382f06cd0166bdbe07e2c33701d3bf1e
50710
50901
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
50711
50902
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
50712
50903
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
50904
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
50713
50905
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
50714
50906
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
50715
50907
  snapshot_credentials: typing.Optional[SnapshotCredentials] = None,
@@ -50770,6 +50962,7 @@ def _typecheckingstub__a32e21c90ab65d3cfdb3b7ef2a0d741ba1528ec8824cd1817d1e485b4
50770
50962
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
50771
50963
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
50772
50964
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
50965
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
50773
50966
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
50774
50967
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
50775
50968
  storage_encrypted: typing.Optional[builtins.bool] = None,
@@ -52005,6 +52198,7 @@ def _typecheckingstub__d1a2e259091e12a41b0f5818df495769518e049ebcc89ed340ffc7ba4
52005
52198
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
52006
52199
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
52007
52200
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
52201
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
52008
52202
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
52009
52203
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
52010
52204
  snapshot_credentials: typing.Optional[SnapshotCredentials] = None,
@@ -52149,8 +52343,9 @@ def _typecheckingstub__dbf7e60a650d0a1bea1826814200716f46cd1f59eea36a42193653d7f
52149
52343
  scope: _constructs_77d1e7e8.Construct,
52150
52344
  id: builtins.str,
52151
52345
  *,
52152
- snapshot_identifier: builtins.str,
52346
+ cluster_snapshot_identifier: typing.Optional[builtins.str] = None,
52153
52347
  credentials: typing.Optional[SnapshotCredentials] = None,
52348
+ snapshot_identifier: typing.Optional[builtins.str] = None,
52154
52349
  engine: IInstanceEngine,
52155
52350
  allocated_storage: typing.Optional[jsii.Number] = None,
52156
52351
  allow_major_version_upgrade: typing.Optional[builtins.bool] = None,
@@ -52284,8 +52479,9 @@ def _typecheckingstub__f06d86058a0a7538eb7dbf55de032c8cf05f7fa7b4ab5d5c1d47f7617
52284
52479
  license_model: typing.Optional[LicenseModel] = None,
52285
52480
  parameters: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
52286
52481
  timezone: typing.Optional[builtins.str] = None,
52287
- snapshot_identifier: builtins.str,
52482
+ cluster_snapshot_identifier: typing.Optional[builtins.str] = None,
52288
52483
  credentials: typing.Optional[SnapshotCredentials] = None,
52484
+ snapshot_identifier: typing.Optional[builtins.str] = None,
52289
52485
  ) -> None:
52290
52486
  """Type checking stubs"""
52291
52487
  pass
@@ -52513,6 +52709,7 @@ def _typecheckingstub__c6184cbbefaa372690b9776dafecbf5857cf9bfbab91d1666aad22c56
52513
52709
  s3_import_buckets: typing.Optional[typing.Sequence[_IBucket_42e086fd]] = None,
52514
52710
  s3_import_role: typing.Optional[_IRole_235f5d8e] = None,
52515
52711
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
52712
+ serverless_v2_auto_pause_duration: typing.Optional[_Duration_4839e8c3] = None,
52516
52713
  serverless_v2_max_capacity: typing.Optional[jsii.Number] = None,
52517
52714
  serverless_v2_min_capacity: typing.Optional[jsii.Number] = None,
52518
52715
  storage_encrypted: typing.Optional[builtins.bool] = None,