aws-cdk-lib 2.137.0__py3-none-any.whl → 2.139.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 (73) hide show
  1. aws_cdk/__init__.py +8 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.137.0.jsii.tgz → aws-cdk-lib@2.139.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amplify/__init__.py +29 -113
  5. aws_cdk/aws_apigateway/__init__.py +29 -16
  6. aws_cdk/aws_appconfig/__init__.py +315 -77
  7. aws_cdk/aws_appintegrations/__init__.py +55 -6
  8. aws_cdk/aws_apprunner/__init__.py +5 -2
  9. aws_cdk/aws_appsync/__init__.py +400 -13
  10. aws_cdk/aws_aps/__init__.py +64 -47
  11. aws_cdk/aws_autoscaling/__init__.py +62 -60
  12. aws_cdk/aws_b2bi/__init__.py +2 -6
  13. aws_cdk/aws_backup/__init__.py +53 -57
  14. aws_cdk/aws_batch/__init__.py +109 -0
  15. aws_cdk/aws_bcmdataexports/__init__.py +1114 -0
  16. aws_cdk/aws_bedrock/__init__.py +4144 -0
  17. aws_cdk/aws_chatbot/__init__.py +6 -4
  18. aws_cdk/aws_cleanrooms/__init__.py +526 -3
  19. aws_cdk/aws_cleanroomsml/__init__.py +960 -0
  20. aws_cdk/aws_cloudtrail/__init__.py +10 -10
  21. aws_cdk/aws_cloudwatch/__init__.py +244 -8
  22. aws_cdk/aws_codebuild/__init__.py +27 -22
  23. aws_cdk/aws_codeconnections/__init__.py +435 -0
  24. aws_cdk/aws_cognito/__init__.py +175 -79
  25. aws_cdk/aws_datazone/__init__.py +22 -0
  26. aws_cdk/aws_deadline/__init__.py +5394 -0
  27. aws_cdk/aws_dms/__init__.py +2 -4
  28. aws_cdk/aws_ec2/__init__.py +402 -247
  29. aws_cdk/aws_ecr/__init__.py +630 -0
  30. aws_cdk/aws_ecs/__init__.py +361 -20
  31. aws_cdk/aws_efs/__init__.py +594 -2
  32. aws_cdk/aws_elasticache/__init__.py +86 -32
  33. aws_cdk/aws_elasticloadbalancingv2/__init__.py +75 -10
  34. aws_cdk/aws_emr/__init__.py +2 -2
  35. aws_cdk/aws_entityresolution/__init__.py +1982 -773
  36. aws_cdk/aws_events_targets/__init__.py +17 -4
  37. aws_cdk/aws_globalaccelerator/__init__.py +443 -0
  38. aws_cdk/aws_iam/__init__.py +1 -2
  39. aws_cdk/aws_internetmonitor/__init__.py +14 -6
  40. aws_cdk/aws_ivs/__init__.py +1273 -71
  41. aws_cdk/aws_kms/__init__.py +44 -0
  42. aws_cdk/aws_lambda/__init__.py +9 -0
  43. aws_cdk/aws_mediatailor/__init__.py +41 -0
  44. aws_cdk/aws_oam/__init__.py +204 -0
  45. aws_cdk/aws_personalize/__init__.py +8 -6
  46. aws_cdk/aws_pinpoint/__init__.py +5 -3
  47. aws_cdk/aws_pipes/__init__.py +5 -1
  48. aws_cdk/aws_quicksight/__init__.py +12 -6
  49. aws_cdk/aws_rds/__init__.py +370 -96
  50. aws_cdk/aws_redshiftserverless/__init__.py +157 -0
  51. aws_cdk/aws_route53/__init__.py +587 -14
  52. aws_cdk/aws_sagemaker/__init__.py +233 -2
  53. aws_cdk/aws_securityhub/__init__.py +4940 -102
  54. aws_cdk/aws_securitylake/__init__.py +1326 -89
  55. aws_cdk/aws_ses_actions/__init__.py +155 -0
  56. aws_cdk/aws_sns/__init__.py +61 -4
  57. aws_cdk/aws_ssm/__init__.py +5 -2
  58. aws_cdk/aws_ssmcontacts/__init__.py +11 -4
  59. aws_cdk/aws_stepfunctions/__init__.py +8 -16
  60. aws_cdk/aws_stepfunctions_tasks/__init__.py +676 -1
  61. aws_cdk/aws_timestream/__init__.py +1045 -0
  62. aws_cdk/aws_transfer/__init__.py +19 -10
  63. aws_cdk/aws_verifiedpermissions/__init__.py +114 -37
  64. aws_cdk/aws_wisdom/__init__.py +2 -2
  65. aws_cdk/aws_workspacesthinclient/__init__.py +8 -8
  66. aws_cdk/custom_resources/__init__.py +688 -26
  67. aws_cdk/cx_api/__init__.py +17 -0
  68. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/METADATA +3 -3
  69. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/RECORD +73 -69
  70. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/LICENSE +0 -0
  71. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/NOTICE +0 -0
  72. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/WHEEL +0 -0
  73. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/top_level.txt +0 -0
@@ -2411,6 +2411,12 @@ class AuroraMysqlEngineVersion(
2411
2411
  '''Version "5.7.mysql_aurora.2.11.4".'''
2412
2412
  return typing.cast("AuroraMysqlEngineVersion", jsii.sget(cls, "VER_2_11_4"))
2413
2413
 
2414
+ @jsii.python.classproperty
2415
+ @jsii.member(jsii_name="VER_2_11_5")
2416
+ def VER_2_11_5(cls) -> "AuroraMysqlEngineVersion":
2417
+ '''Version "5.7.mysql_aurora.2.11.5".'''
2418
+ return typing.cast("AuroraMysqlEngineVersion", jsii.sget(cls, "VER_2_11_5"))
2419
+
2414
2420
  @jsii.python.classproperty
2415
2421
  @jsii.member(jsii_name="VER_2_12_0")
2416
2422
  def VER_2_12_0(cls) -> "AuroraMysqlEngineVersion":
@@ -2573,22 +2579,67 @@ class AuroraPostgresClusterEngineProps:
2573
2579
 
2574
2580
  Example::
2575
2581
 
2576
- # vpc: ec2.Vpc
2582
+ # Build a data source for AppSync to access the database.
2583
+ # api: appsync.GraphqlApi
2584
+ # Create username and password secret for DB Cluster
2585
+ secret = rds.DatabaseSecret(self, "AuroraSecret",
2586
+ username="clusteradmin"
2587
+ )
2577
2588
 
2578
- cluster = rds.DatabaseCluster(self, "Database",
2579
- engine=rds.DatabaseClusterEngine.aurora_postgres(version=rds.AuroraPostgresEngineVersion.VER_15_2),
2580
- credentials=rds.Credentials.from_username("adminuser", password=SecretValue.unsafe_plain_text("7959866cacc02c2d243ecfe177464fe6")),
2581
- writer=rds.ClusterInstance.provisioned("writer",
2582
- publicly_accessible=False
2583
- ),
2584
- readers=[
2585
- rds.ClusterInstance.provisioned("reader")
2586
- ],
2587
- storage_type=rds.DBClusterStorageType.AURORA_IOPT1,
2588
- vpc_subnets=ec2.SubnetSelection(
2589
- subnet_type=ec2.SubnetType.PRIVATE_WITH_EGRESS
2590
- ),
2591
- vpc=vpc
2589
+ # The VPC to place the cluster in
2590
+ vpc = ec2.Vpc(self, "AuroraVpc")
2591
+
2592
+ # Create the serverless cluster, provide all values needed to customise the database.
2593
+ cluster = rds.DatabaseCluster(self, "AuroraClusterV2",
2594
+ engine=rds.DatabaseClusterEngine.aurora_postgres(version=rds.AuroraPostgresEngineVersion.VER_15_5),
2595
+ credentials={"username": "clusteradmin"},
2596
+ cluster_identifier="db-endpoint-test",
2597
+ writer=rds.ClusterInstance.serverless_v2("writer"),
2598
+ serverless_v2_min_capacity=2,
2599
+ serverless_v2_max_capacity=10,
2600
+ vpc=vpc,
2601
+ default_database_name="demos",
2602
+ enable_data_api=True
2603
+ )
2604
+ rds_dS = api.add_rds_data_source_v2("rds", cluster, secret, "demos")
2605
+
2606
+ # Set up a resolver for an RDS query.
2607
+ rds_dS.create_resolver("QueryGetDemosRdsResolver",
2608
+ type_name="Query",
2609
+ field_name="getDemosRds",
2610
+ request_mapping_template=appsync.MappingTemplate.from_string("""
2611
+ {
2612
+ "version": "2018-05-29",
2613
+ "statements": [
2614
+ "SELECT * FROM demos"
2615
+ ]
2616
+ }
2617
+ """),
2618
+ response_mapping_template=appsync.MappingTemplate.from_string("""
2619
+ $utils.toJson($utils.rds.toJsonObject($ctx.result)[0])
2620
+ """)
2621
+ )
2622
+
2623
+ # Set up a resolver for an RDS mutation.
2624
+ rds_dS.create_resolver("MutationAddDemoRdsResolver",
2625
+ type_name="Mutation",
2626
+ field_name="addDemoRds",
2627
+ request_mapping_template=appsync.MappingTemplate.from_string("""
2628
+ {
2629
+ "version": "2018-05-29",
2630
+ "statements": [
2631
+ "INSERT INTO demos VALUES (:id, :version)",
2632
+ "SELECT * WHERE id = :id"
2633
+ ],
2634
+ "variableMap": {
2635
+ ":id": $util.toJson($util.autoId()),
2636
+ ":version": $util.toJson($ctx.args.version)
2637
+ }
2638
+ }
2639
+ """),
2640
+ response_mapping_template=appsync.MappingTemplate.from_string("""
2641
+ $utils.toJson($utils.rds.toJsonObject($ctx.result)[1][0])
2642
+ """)
2592
2643
  )
2593
2644
  '''
2594
2645
  if __debug__:
@@ -2699,22 +2750,67 @@ class AuroraPostgresEngineVersion(
2699
2750
 
2700
2751
  Example::
2701
2752
 
2702
- # vpc: ec2.Vpc
2753
+ # Build a data source for AppSync to access the database.
2754
+ # api: appsync.GraphqlApi
2755
+ # Create username and password secret for DB Cluster
2756
+ secret = rds.DatabaseSecret(self, "AuroraSecret",
2757
+ username="clusteradmin"
2758
+ )
2703
2759
 
2704
- cluster = rds.DatabaseCluster(self, "Database",
2705
- engine=rds.DatabaseClusterEngine.aurora_postgres(version=rds.AuroraPostgresEngineVersion.VER_15_2),
2706
- credentials=rds.Credentials.from_username("adminuser", password=SecretValue.unsafe_plain_text("7959866cacc02c2d243ecfe177464fe6")),
2707
- writer=rds.ClusterInstance.provisioned("writer",
2708
- publicly_accessible=False
2709
- ),
2710
- readers=[
2711
- rds.ClusterInstance.provisioned("reader")
2712
- ],
2713
- storage_type=rds.DBClusterStorageType.AURORA_IOPT1,
2714
- vpc_subnets=ec2.SubnetSelection(
2715
- subnet_type=ec2.SubnetType.PRIVATE_WITH_EGRESS
2716
- ),
2717
- vpc=vpc
2760
+ # The VPC to place the cluster in
2761
+ vpc = ec2.Vpc(self, "AuroraVpc")
2762
+
2763
+ # Create the serverless cluster, provide all values needed to customise the database.
2764
+ cluster = rds.DatabaseCluster(self, "AuroraClusterV2",
2765
+ engine=rds.DatabaseClusterEngine.aurora_postgres(version=rds.AuroraPostgresEngineVersion.VER_15_5),
2766
+ credentials={"username": "clusteradmin"},
2767
+ cluster_identifier="db-endpoint-test",
2768
+ writer=rds.ClusterInstance.serverless_v2("writer"),
2769
+ serverless_v2_min_capacity=2,
2770
+ serverless_v2_max_capacity=10,
2771
+ vpc=vpc,
2772
+ default_database_name="demos",
2773
+ enable_data_api=True
2774
+ )
2775
+ rds_dS = api.add_rds_data_source_v2("rds", cluster, secret, "demos")
2776
+
2777
+ # Set up a resolver for an RDS query.
2778
+ rds_dS.create_resolver("QueryGetDemosRdsResolver",
2779
+ type_name="Query",
2780
+ field_name="getDemosRds",
2781
+ request_mapping_template=appsync.MappingTemplate.from_string("""
2782
+ {
2783
+ "version": "2018-05-29",
2784
+ "statements": [
2785
+ "SELECT * FROM demos"
2786
+ ]
2787
+ }
2788
+ """),
2789
+ response_mapping_template=appsync.MappingTemplate.from_string("""
2790
+ $utils.toJson($utils.rds.toJsonObject($ctx.result)[0])
2791
+ """)
2792
+ )
2793
+
2794
+ # Set up a resolver for an RDS mutation.
2795
+ rds_dS.create_resolver("MutationAddDemoRdsResolver",
2796
+ type_name="Mutation",
2797
+ field_name="addDemoRds",
2798
+ request_mapping_template=appsync.MappingTemplate.from_string("""
2799
+ {
2800
+ "version": "2018-05-29",
2801
+ "statements": [
2802
+ "INSERT INTO demos VALUES (:id, :version)",
2803
+ "SELECT * WHERE id = :id"
2804
+ ],
2805
+ "variableMap": {
2806
+ ":id": $util.toJson($util.autoId()),
2807
+ ":version": $util.toJson($ctx.args.version)
2808
+ }
2809
+ }
2810
+ """),
2811
+ response_mapping_template=appsync.MappingTemplate.from_string("""
2812
+ $utils.toJson($utils.rds.toJsonObject($ctx.result)[1][0])
2813
+ """)
2718
2814
  )
2719
2815
  '''
2720
2816
 
@@ -3623,20 +3719,23 @@ class CfnCustomDBEngineVersion(
3623
3719
  from aws_cdk import aws_rds as rds
3624
3720
 
3625
3721
  cfn_custom_dBEngine_version = rds.CfnCustomDBEngineVersion(self, "MyCfnCustomDBEngineVersion",
3626
- database_installation_files_s3_bucket_name="databaseInstallationFilesS3BucketName",
3627
3722
  engine="engine",
3628
3723
  engine_version="engineVersion",
3629
3724
 
3630
3725
  # the properties below are optional
3726
+ database_installation_files_s3_bucket_name="databaseInstallationFilesS3BucketName",
3631
3727
  database_installation_files_s3_prefix="databaseInstallationFilesS3Prefix",
3632
3728
  description="description",
3729
+ image_id="imageId",
3633
3730
  kms_key_id="kmsKeyId",
3634
3731
  manifest="manifest",
3732
+ source_custom_db_engine_version_identifier="sourceCustomDbEngineVersionIdentifier",
3635
3733
  status="status",
3636
3734
  tags=[CfnTag(
3637
3735
  key="key",
3638
3736
  value="value"
3639
- )]
3737
+ )],
3738
+ use_aws_provided_latest_image=False
3640
3739
  )
3641
3740
  '''
3642
3741
 
@@ -3645,43 +3744,52 @@ class CfnCustomDBEngineVersion(
3645
3744
  scope: _constructs_77d1e7e8.Construct,
3646
3745
  id: builtins.str,
3647
3746
  *,
3648
- database_installation_files_s3_bucket_name: builtins.str,
3649
3747
  engine: builtins.str,
3650
3748
  engine_version: builtins.str,
3749
+ database_installation_files_s3_bucket_name: typing.Optional[builtins.str] = None,
3651
3750
  database_installation_files_s3_prefix: typing.Optional[builtins.str] = None,
3652
3751
  description: typing.Optional[builtins.str] = None,
3752
+ image_id: typing.Optional[builtins.str] = None,
3653
3753
  kms_key_id: typing.Optional[builtins.str] = None,
3654
3754
  manifest: typing.Optional[builtins.str] = None,
3755
+ source_custom_db_engine_version_identifier: typing.Optional[builtins.str] = None,
3655
3756
  status: typing.Optional[builtins.str] = None,
3656
3757
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3758
+ use_aws_provided_latest_image: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3657
3759
  ) -> None:
3658
3760
  '''
3659
3761
  :param scope: Scope in which this resource is defined.
3660
3762
  :param id: Construct identifier for this resource (unique in its scope).
3661
- :param database_installation_files_s3_bucket_name: The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is ``my-custom-installation-files`` .
3662
3763
  :param engine: The database engine to use for your custom engine version (CEV). Valid values: - ``custom-oracle-ee`` - ``custom-oracle-ee-cdb``
3663
3764
  :param engine_version: The name of your CEV. The name format is ``major version.customized_string`` . For example, a valid CEV name is ``19.my_cev1`` . This setting is required for RDS Custom for Oracle, but optional for Amazon RDS. The combination of ``Engine`` and ``EngineVersion`` is unique per customer per Region. *Constraints:* Minimum length is 1. Maximum length is 60. *Pattern:* ``^[a-z0-9_.-]{1,60$`` }
3765
+ :param database_installation_files_s3_bucket_name: The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is ``my-custom-installation-files`` .
3664
3766
  :param database_installation_files_s3_prefix: The Amazon S3 directory that contains the database installation files for your CEV. For example, a valid bucket name is ``123456789012/cev1`` . If this setting isn't specified, no prefix is assumed.
3665
3767
  :param description: An optional description of your CEV.
3768
+ :param image_id: A value that indicates the ID of the AMI.
3666
3769
  :param kms_key_id: The AWS KMS key identifier for an encrypted CEV. A symmetric encryption KMS key is required for RDS Custom, but optional for Amazon RDS. If you have an existing symmetric encryption KMS key in your account, you can use it with RDS Custom. No further action is necessary. If you don't already have a symmetric encryption KMS key in your account, follow the instructions in `Creating a symmetric encryption KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk>`_ in the *AWS Key Management Service Developer Guide* . You can choose the same symmetric encryption key when you create a CEV and a DB instance, or choose different keys.
3667
3770
  :param manifest: The CEV manifest, which is a JSON document that describes the installation .zip files stored in Amazon S3. Specify the name/value pairs in a file or a quoted string. RDS Custom applies the patches in the order in which they are listed. The following JSON fields are valid: - **MediaImportTemplateVersion** - Version of the CEV manifest. The date is in the format ``YYYY-MM-DD`` . - **databaseInstallationFileNames** - Ordered list of installation files for the CEV. - **opatchFileNames** - Ordered list of OPatch installers used for the Oracle DB engine. - **psuRuPatchFileNames** - The PSU and RU patches for this CEV. - **OtherPatchFileNames** - The patches that are not in the list of PSU and RU patches. Amazon RDS applies these patches after applying the PSU and RU patches. For more information, see `Creating the CEV manifest <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.preparing.manifest>`_ in the *Amazon RDS User Guide* .
3771
+ :param source_custom_db_engine_version_identifier: The ARN of a CEV to use as a source for creating a new CEV. You can specify a different Amazon Machine Imagine (AMI) by using either ``Source`` or ``UseAwsProvidedLatestImage`` . You can't specify a different JSON manifest when you specify ``SourceCustomDbEngineVersionIdentifier`` .
3668
3772
  :param status: A value that indicates the status of a custom engine version (CEV). Default: - "available"
3669
3773
  :param tags: A list of tags. For more information, see `Tagging Amazon RDS Resources <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html>`_ in the *Amazon RDS User Guide.*
3774
+ :param use_aws_provided_latest_image: Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV. If you specify ``UseAwsProvidedLatestImage`` , you can't also specify ``ImageId`` .
3670
3775
  '''
3671
3776
  if __debug__:
3672
3777
  type_hints = typing.get_type_hints(_typecheckingstub__dccc4ebf781452ad945a67eeaa182293b79bd42fee7658aaea830a59e6546b0b)
3673
3778
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3674
3779
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3675
3780
  props = CfnCustomDBEngineVersionProps(
3676
- database_installation_files_s3_bucket_name=database_installation_files_s3_bucket_name,
3677
3781
  engine=engine,
3678
3782
  engine_version=engine_version,
3783
+ database_installation_files_s3_bucket_name=database_installation_files_s3_bucket_name,
3679
3784
  database_installation_files_s3_prefix=database_installation_files_s3_prefix,
3680
3785
  description=description,
3786
+ image_id=image_id,
3681
3787
  kms_key_id=kms_key_id,
3682
3788
  manifest=manifest,
3789
+ source_custom_db_engine_version_identifier=source_custom_db_engine_version_identifier,
3683
3790
  status=status,
3684
3791
  tags=tags,
3792
+ use_aws_provided_latest_image=use_aws_provided_latest_image,
3685
3793
  )
3686
3794
 
3687
3795
  jsii.create(self.__class__, self, [scope, id, props])
@@ -3736,19 +3844,6 @@ class CfnCustomDBEngineVersion(
3736
3844
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
3737
3845
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3738
3846
 
3739
- @builtins.property
3740
- @jsii.member(jsii_name="databaseInstallationFilesS3BucketName")
3741
- def database_installation_files_s3_bucket_name(self) -> builtins.str:
3742
- '''The name of an Amazon S3 bucket that contains database installation files for your CEV.'''
3743
- return typing.cast(builtins.str, jsii.get(self, "databaseInstallationFilesS3BucketName"))
3744
-
3745
- @database_installation_files_s3_bucket_name.setter
3746
- def database_installation_files_s3_bucket_name(self, value: builtins.str) -> None:
3747
- if __debug__:
3748
- type_hints = typing.get_type_hints(_typecheckingstub__e8dcd4aecfb92c6617a76401829247508a5196d1219bdf3c496c1eef202e0c37)
3749
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3750
- jsii.set(self, "databaseInstallationFilesS3BucketName", value)
3751
-
3752
3847
  @builtins.property
3753
3848
  @jsii.member(jsii_name="engine")
3754
3849
  def engine(self) -> builtins.str:
@@ -3775,6 +3870,24 @@ class CfnCustomDBEngineVersion(
3775
3870
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3776
3871
  jsii.set(self, "engineVersion", value)
3777
3872
 
3873
+ @builtins.property
3874
+ @jsii.member(jsii_name="databaseInstallationFilesS3BucketName")
3875
+ def database_installation_files_s3_bucket_name(
3876
+ self,
3877
+ ) -> typing.Optional[builtins.str]:
3878
+ '''The name of an Amazon S3 bucket that contains database installation files for your CEV.'''
3879
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "databaseInstallationFilesS3BucketName"))
3880
+
3881
+ @database_installation_files_s3_bucket_name.setter
3882
+ def database_installation_files_s3_bucket_name(
3883
+ self,
3884
+ value: typing.Optional[builtins.str],
3885
+ ) -> None:
3886
+ if __debug__:
3887
+ type_hints = typing.get_type_hints(_typecheckingstub__e8dcd4aecfb92c6617a76401829247508a5196d1219bdf3c496c1eef202e0c37)
3888
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3889
+ jsii.set(self, "databaseInstallationFilesS3BucketName", value)
3890
+
3778
3891
  @builtins.property
3779
3892
  @jsii.member(jsii_name="databaseInstallationFilesS3Prefix")
3780
3893
  def database_installation_files_s3_prefix(self) -> typing.Optional[builtins.str]:
@@ -3804,6 +3917,19 @@ class CfnCustomDBEngineVersion(
3804
3917
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3805
3918
  jsii.set(self, "description", value)
3806
3919
 
3920
+ @builtins.property
3921
+ @jsii.member(jsii_name="imageId")
3922
+ def image_id(self) -> typing.Optional[builtins.str]:
3923
+ '''A value that indicates the ID of the AMI.'''
3924
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "imageId"))
3925
+
3926
+ @image_id.setter
3927
+ def image_id(self, value: typing.Optional[builtins.str]) -> None:
3928
+ if __debug__:
3929
+ type_hints = typing.get_type_hints(_typecheckingstub__573de89cab865fb2fe6437920ada3b601ffcf5832b228e0d126bedaf494c57eb)
3930
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3931
+ jsii.set(self, "imageId", value)
3932
+
3807
3933
  @builtins.property
3808
3934
  @jsii.member(jsii_name="kmsKeyId")
3809
3935
  def kms_key_id(self) -> typing.Optional[builtins.str]:
@@ -3830,6 +3956,24 @@ class CfnCustomDBEngineVersion(
3830
3956
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3831
3957
  jsii.set(self, "manifest", value)
3832
3958
 
3959
+ @builtins.property
3960
+ @jsii.member(jsii_name="sourceCustomDbEngineVersionIdentifier")
3961
+ def source_custom_db_engine_version_identifier(
3962
+ self,
3963
+ ) -> typing.Optional[builtins.str]:
3964
+ '''The ARN of a CEV to use as a source for creating a new CEV.'''
3965
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "sourceCustomDbEngineVersionIdentifier"))
3966
+
3967
+ @source_custom_db_engine_version_identifier.setter
3968
+ def source_custom_db_engine_version_identifier(
3969
+ self,
3970
+ value: typing.Optional[builtins.str],
3971
+ ) -> None:
3972
+ if __debug__:
3973
+ type_hints = typing.get_type_hints(_typecheckingstub__ab74f194180555de35de6a9023fe9e2d2972ffd40051f7cc505df6dd0438f8d6)
3974
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3975
+ jsii.set(self, "sourceCustomDbEngineVersionIdentifier", value)
3976
+
3833
3977
  @builtins.property
3834
3978
  @jsii.member(jsii_name="status")
3835
3979
  def status(self) -> typing.Optional[builtins.str]:
@@ -3856,47 +4000,74 @@ class CfnCustomDBEngineVersion(
3856
4000
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3857
4001
  jsii.set(self, "tags", value)
3858
4002
 
4003
+ @builtins.property
4004
+ @jsii.member(jsii_name="useAwsProvidedLatestImage")
4005
+ def use_aws_provided_latest_image(
4006
+ self,
4007
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4008
+ '''Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV.'''
4009
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "useAwsProvidedLatestImage"))
4010
+
4011
+ @use_aws_provided_latest_image.setter
4012
+ def use_aws_provided_latest_image(
4013
+ self,
4014
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
4015
+ ) -> None:
4016
+ if __debug__:
4017
+ type_hints = typing.get_type_hints(_typecheckingstub__30204c42eef4323c823e84f7a43420a689740a78fa5382e0d646d46b0102a5c1)
4018
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4019
+ jsii.set(self, "useAwsProvidedLatestImage", value)
4020
+
3859
4021
 
3860
4022
  @jsii.data_type(
3861
4023
  jsii_type="aws-cdk-lib.aws_rds.CfnCustomDBEngineVersionProps",
3862
4024
  jsii_struct_bases=[],
3863
4025
  name_mapping={
3864
- "database_installation_files_s3_bucket_name": "databaseInstallationFilesS3BucketName",
3865
4026
  "engine": "engine",
3866
4027
  "engine_version": "engineVersion",
4028
+ "database_installation_files_s3_bucket_name": "databaseInstallationFilesS3BucketName",
3867
4029
  "database_installation_files_s3_prefix": "databaseInstallationFilesS3Prefix",
3868
4030
  "description": "description",
4031
+ "image_id": "imageId",
3869
4032
  "kms_key_id": "kmsKeyId",
3870
4033
  "manifest": "manifest",
4034
+ "source_custom_db_engine_version_identifier": "sourceCustomDbEngineVersionIdentifier",
3871
4035
  "status": "status",
3872
4036
  "tags": "tags",
4037
+ "use_aws_provided_latest_image": "useAwsProvidedLatestImage",
3873
4038
  },
3874
4039
  )
3875
4040
  class CfnCustomDBEngineVersionProps:
3876
4041
  def __init__(
3877
4042
  self,
3878
4043
  *,
3879
- database_installation_files_s3_bucket_name: builtins.str,
3880
4044
  engine: builtins.str,
3881
4045
  engine_version: builtins.str,
4046
+ database_installation_files_s3_bucket_name: typing.Optional[builtins.str] = None,
3882
4047
  database_installation_files_s3_prefix: typing.Optional[builtins.str] = None,
3883
4048
  description: typing.Optional[builtins.str] = None,
4049
+ image_id: typing.Optional[builtins.str] = None,
3884
4050
  kms_key_id: typing.Optional[builtins.str] = None,
3885
4051
  manifest: typing.Optional[builtins.str] = None,
4052
+ source_custom_db_engine_version_identifier: typing.Optional[builtins.str] = None,
3886
4053
  status: typing.Optional[builtins.str] = None,
3887
4054
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4055
+ use_aws_provided_latest_image: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3888
4056
  ) -> None:
3889
4057
  '''Properties for defining a ``CfnCustomDBEngineVersion``.
3890
4058
 
3891
- :param database_installation_files_s3_bucket_name: The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is ``my-custom-installation-files`` .
3892
4059
  :param engine: The database engine to use for your custom engine version (CEV). Valid values: - ``custom-oracle-ee`` - ``custom-oracle-ee-cdb``
3893
4060
  :param engine_version: The name of your CEV. The name format is ``major version.customized_string`` . For example, a valid CEV name is ``19.my_cev1`` . This setting is required for RDS Custom for Oracle, but optional for Amazon RDS. The combination of ``Engine`` and ``EngineVersion`` is unique per customer per Region. *Constraints:* Minimum length is 1. Maximum length is 60. *Pattern:* ``^[a-z0-9_.-]{1,60$`` }
4061
+ :param database_installation_files_s3_bucket_name: The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is ``my-custom-installation-files`` .
3894
4062
  :param database_installation_files_s3_prefix: The Amazon S3 directory that contains the database installation files for your CEV. For example, a valid bucket name is ``123456789012/cev1`` . If this setting isn't specified, no prefix is assumed.
3895
4063
  :param description: An optional description of your CEV.
4064
+ :param image_id: A value that indicates the ID of the AMI.
3896
4065
  :param kms_key_id: The AWS KMS key identifier for an encrypted CEV. A symmetric encryption KMS key is required for RDS Custom, but optional for Amazon RDS. If you have an existing symmetric encryption KMS key in your account, you can use it with RDS Custom. No further action is necessary. If you don't already have a symmetric encryption KMS key in your account, follow the instructions in `Creating a symmetric encryption KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk>`_ in the *AWS Key Management Service Developer Guide* . You can choose the same symmetric encryption key when you create a CEV and a DB instance, or choose different keys.
3897
4066
  :param manifest: The CEV manifest, which is a JSON document that describes the installation .zip files stored in Amazon S3. Specify the name/value pairs in a file or a quoted string. RDS Custom applies the patches in the order in which they are listed. The following JSON fields are valid: - **MediaImportTemplateVersion** - Version of the CEV manifest. The date is in the format ``YYYY-MM-DD`` . - **databaseInstallationFileNames** - Ordered list of installation files for the CEV. - **opatchFileNames** - Ordered list of OPatch installers used for the Oracle DB engine. - **psuRuPatchFileNames** - The PSU and RU patches for this CEV. - **OtherPatchFileNames** - The patches that are not in the list of PSU and RU patches. Amazon RDS applies these patches after applying the PSU and RU patches. For more information, see `Creating the CEV manifest <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.preparing.manifest>`_ in the *Amazon RDS User Guide* .
4067
+ :param source_custom_db_engine_version_identifier: The ARN of a CEV to use as a source for creating a new CEV. You can specify a different Amazon Machine Imagine (AMI) by using either ``Source`` or ``UseAwsProvidedLatestImage`` . You can't specify a different JSON manifest when you specify ``SourceCustomDbEngineVersionIdentifier`` .
3898
4068
  :param status: A value that indicates the status of a custom engine version (CEV). Default: - "available"
3899
4069
  :param tags: A list of tags. For more information, see `Tagging Amazon RDS Resources <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html>`_ in the *Amazon RDS User Guide.*
4070
+ :param use_aws_provided_latest_image: Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV. If you specify ``UseAwsProvidedLatestImage`` , you can't also specify ``ImageId`` .
3900
4071
 
3901
4072
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html
3902
4073
  :exampleMetadata: fixture=_generated
@@ -3908,62 +4079,63 @@ class CfnCustomDBEngineVersionProps:
3908
4079
  from aws_cdk import aws_rds as rds
3909
4080
 
3910
4081
  cfn_custom_dBEngine_version_props = rds.CfnCustomDBEngineVersionProps(
3911
- database_installation_files_s3_bucket_name="databaseInstallationFilesS3BucketName",
3912
4082
  engine="engine",
3913
4083
  engine_version="engineVersion",
3914
4084
 
3915
4085
  # the properties below are optional
4086
+ database_installation_files_s3_bucket_name="databaseInstallationFilesS3BucketName",
3916
4087
  database_installation_files_s3_prefix="databaseInstallationFilesS3Prefix",
3917
4088
  description="description",
4089
+ image_id="imageId",
3918
4090
  kms_key_id="kmsKeyId",
3919
4091
  manifest="manifest",
4092
+ source_custom_db_engine_version_identifier="sourceCustomDbEngineVersionIdentifier",
3920
4093
  status="status",
3921
4094
  tags=[CfnTag(
3922
4095
  key="key",
3923
4096
  value="value"
3924
- )]
4097
+ )],
4098
+ use_aws_provided_latest_image=False
3925
4099
  )
3926
4100
  '''
3927
4101
  if __debug__:
3928
4102
  type_hints = typing.get_type_hints(_typecheckingstub__70c4d3797ab8093b0278a7f532fcb1c42c50e74a1c04dfe5259dbb57e7fe2191)
3929
- check_type(argname="argument database_installation_files_s3_bucket_name", value=database_installation_files_s3_bucket_name, expected_type=type_hints["database_installation_files_s3_bucket_name"])
3930
4103
  check_type(argname="argument engine", value=engine, expected_type=type_hints["engine"])
3931
4104
  check_type(argname="argument engine_version", value=engine_version, expected_type=type_hints["engine_version"])
4105
+ check_type(argname="argument database_installation_files_s3_bucket_name", value=database_installation_files_s3_bucket_name, expected_type=type_hints["database_installation_files_s3_bucket_name"])
3932
4106
  check_type(argname="argument database_installation_files_s3_prefix", value=database_installation_files_s3_prefix, expected_type=type_hints["database_installation_files_s3_prefix"])
3933
4107
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
4108
+ check_type(argname="argument image_id", value=image_id, expected_type=type_hints["image_id"])
3934
4109
  check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
3935
4110
  check_type(argname="argument manifest", value=manifest, expected_type=type_hints["manifest"])
4111
+ check_type(argname="argument source_custom_db_engine_version_identifier", value=source_custom_db_engine_version_identifier, expected_type=type_hints["source_custom_db_engine_version_identifier"])
3936
4112
  check_type(argname="argument status", value=status, expected_type=type_hints["status"])
3937
4113
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
4114
+ check_type(argname="argument use_aws_provided_latest_image", value=use_aws_provided_latest_image, expected_type=type_hints["use_aws_provided_latest_image"])
3938
4115
  self._values: typing.Dict[builtins.str, typing.Any] = {
3939
- "database_installation_files_s3_bucket_name": database_installation_files_s3_bucket_name,
3940
4116
  "engine": engine,
3941
4117
  "engine_version": engine_version,
3942
4118
  }
4119
+ if database_installation_files_s3_bucket_name is not None:
4120
+ self._values["database_installation_files_s3_bucket_name"] = database_installation_files_s3_bucket_name
3943
4121
  if database_installation_files_s3_prefix is not None:
3944
4122
  self._values["database_installation_files_s3_prefix"] = database_installation_files_s3_prefix
3945
4123
  if description is not None:
3946
4124
  self._values["description"] = description
4125
+ if image_id is not None:
4126
+ self._values["image_id"] = image_id
3947
4127
  if kms_key_id is not None:
3948
4128
  self._values["kms_key_id"] = kms_key_id
3949
4129
  if manifest is not None:
3950
4130
  self._values["manifest"] = manifest
4131
+ if source_custom_db_engine_version_identifier is not None:
4132
+ self._values["source_custom_db_engine_version_identifier"] = source_custom_db_engine_version_identifier
3951
4133
  if status is not None:
3952
4134
  self._values["status"] = status
3953
4135
  if tags is not None:
3954
4136
  self._values["tags"] = tags
3955
-
3956
- @builtins.property
3957
- def database_installation_files_s3_bucket_name(self) -> builtins.str:
3958
- '''The name of an Amazon S3 bucket that contains database installation files for your CEV.
3959
-
3960
- For example, a valid bucket name is ``my-custom-installation-files`` .
3961
-
3962
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html#cfn-rds-customdbengineversion-databaseinstallationfiless3bucketname
3963
- '''
3964
- result = self._values.get("database_installation_files_s3_bucket_name")
3965
- assert result is not None, "Required property 'database_installation_files_s3_bucket_name' is missing"
3966
- return typing.cast(builtins.str, result)
4137
+ if use_aws_provided_latest_image is not None:
4138
+ self._values["use_aws_provided_latest_image"] = use_aws_provided_latest_image
3967
4139
 
3968
4140
  @builtins.property
3969
4141
  def engine(self) -> builtins.str:
@@ -3996,6 +4168,19 @@ class CfnCustomDBEngineVersionProps:
3996
4168
  assert result is not None, "Required property 'engine_version' is missing"
3997
4169
  return typing.cast(builtins.str, result)
3998
4170
 
4171
+ @builtins.property
4172
+ def database_installation_files_s3_bucket_name(
4173
+ self,
4174
+ ) -> typing.Optional[builtins.str]:
4175
+ '''The name of an Amazon S3 bucket that contains database installation files for your CEV.
4176
+
4177
+ For example, a valid bucket name is ``my-custom-installation-files`` .
4178
+
4179
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html#cfn-rds-customdbengineversion-databaseinstallationfiless3bucketname
4180
+ '''
4181
+ result = self._values.get("database_installation_files_s3_bucket_name")
4182
+ return typing.cast(typing.Optional[builtins.str], result)
4183
+
3999
4184
  @builtins.property
4000
4185
  def database_installation_files_s3_prefix(self) -> typing.Optional[builtins.str]:
4001
4186
  '''The Amazon S3 directory that contains the database installation files for your CEV.
@@ -4016,6 +4201,15 @@ class CfnCustomDBEngineVersionProps:
4016
4201
  result = self._values.get("description")
4017
4202
  return typing.cast(typing.Optional[builtins.str], result)
4018
4203
 
4204
+ @builtins.property
4205
+ def image_id(self) -> typing.Optional[builtins.str]:
4206
+ '''A value that indicates the ID of the AMI.
4207
+
4208
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html#cfn-rds-customdbengineversion-imageid
4209
+ '''
4210
+ result = self._values.get("image_id")
4211
+ return typing.cast(typing.Optional[builtins.str], result)
4212
+
4019
4213
  @builtins.property
4020
4214
  def kms_key_id(self) -> typing.Optional[builtins.str]:
4021
4215
  '''The AWS KMS key identifier for an encrypted CEV.
@@ -4050,6 +4244,19 @@ class CfnCustomDBEngineVersionProps:
4050
4244
  result = self._values.get("manifest")
4051
4245
  return typing.cast(typing.Optional[builtins.str], result)
4052
4246
 
4247
+ @builtins.property
4248
+ def source_custom_db_engine_version_identifier(
4249
+ self,
4250
+ ) -> typing.Optional[builtins.str]:
4251
+ '''The ARN of a CEV to use as a source for creating a new CEV.
4252
+
4253
+ You can specify a different Amazon Machine Imagine (AMI) by using either ``Source`` or ``UseAwsProvidedLatestImage`` . You can't specify a different JSON manifest when you specify ``SourceCustomDbEngineVersionIdentifier`` .
4254
+
4255
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html#cfn-rds-customdbengineversion-sourcecustomdbengineversionidentifier
4256
+ '''
4257
+ result = self._values.get("source_custom_db_engine_version_identifier")
4258
+ return typing.cast(typing.Optional[builtins.str], result)
4259
+
4053
4260
  @builtins.property
4054
4261
  def status(self) -> typing.Optional[builtins.str]:
4055
4262
  '''A value that indicates the status of a custom engine version (CEV).
@@ -4072,6 +4279,19 @@ class CfnCustomDBEngineVersionProps:
4072
4279
  result = self._values.get("tags")
4073
4280
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4074
4281
 
4282
+ @builtins.property
4283
+ def use_aws_provided_latest_image(
4284
+ self,
4285
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4286
+ '''Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV.
4287
+
4288
+ If you specify ``UseAwsProvidedLatestImage`` , you can't also specify ``ImageId`` .
4289
+
4290
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html#cfn-rds-customdbengineversion-useawsprovidedlatestimage
4291
+ '''
4292
+ result = self._values.get("use_aws_provided_latest_image")
4293
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
4294
+
4075
4295
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
4076
4296
  return isinstance(rhs, self.__class__) and rhs._values == self._values
4077
4297
 
@@ -4285,7 +4505,7 @@ class CfnDBCluster(
4285
4505
  :param db_cluster_identifier: The DB cluster identifier. This parameter is stored as a lowercase string. Constraints: - Must contain from 1 to 63 letters, numbers, or hyphens. - First character must be a letter. - Can't end with a hyphen or contain two consecutive hyphens. Example: ``my-cluster1`` Valid for: Aurora DB clusters and Multi-AZ DB clusters
4286
4506
  :param db_cluster_instance_class: The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example ``db.m6gd.xlarge`` . Not all DB instance classes are available in all AWS Regions , or for all database engines. For the full list of DB instance classes and availability for your engine, see `DB instance class <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html>`_ in the *Amazon RDS User Guide* . This setting is required to create a Multi-AZ DB cluster. Valid for Cluster Type: Multi-AZ DB clusters only
4287
4507
  :param db_cluster_parameter_group_name: The name of the DB cluster parameter group to associate with this DB cluster. .. epigraph:: If you apply a parameter group to an existing DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting. If you apply a change to parameter group associated with a stopped DB cluster, then the update stack waits until the DB cluster is started. To list all of the available DB cluster parameter group names, use the following command: ``aws rds describe-db-cluster-parameter-groups --query "DBClusterParameterGroups[].DBClusterParameterGroupName" --output text`` Valid for: Aurora DB clusters and Multi-AZ DB clusters Default: - "default.aurora5.6"
4288
- :param db_instance_parameter_group_name: The name of the DB parameter group to apply to all instances of the DB cluster. .. epigraph:: When you apply a parameter group using the ``DBInstanceParameterGroupName`` parameter, the DB cluster isn't rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window. Default: The existing name setting Constraints: - The DB parameter group must be in the same DB parameter group family as this DB cluster.
4508
+ :param db_instance_parameter_group_name: The name of the DB parameter group to apply to all instances of the DB cluster. .. epigraph:: When you apply a parameter group using the ``DBInstanceParameterGroupName`` parameter, the DB cluster isn't rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window. Valid for Cluster Type: Aurora DB clusters only Default: The existing name setting Constraints: - The DB parameter group must be in the same DB parameter group family as this DB cluster. - The ``DBInstanceParameterGroupName`` parameter is valid in combination with the ``AllowMajorVersionUpgrade`` parameter for a major version upgrade only.
4289
4509
  :param db_subnet_group_name: A DB subnet group that you want to associate with this DB cluster. If you are restoring a DB cluster to a point in time with ``RestoreType`` set to ``copy-on-write`` , and don't specify a DB subnet group name, then the DB cluster is restored with a default DB subnet group. Valid for: Aurora DB clusters and Multi-AZ DB clusters
4290
4510
  :param db_system_id: Reserved for future use.
4291
4511
  :param deletion_protection: A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection is disabled. Valid for: Aurora DB clusters and Multi-AZ DB clusters
@@ -4296,7 +4516,7 @@ class CfnDBCluster(
4296
4516
  :param enable_http_endpoint: Specifies whether to enable the HTTP endpoint for the DB cluster. By default, the HTTP endpoint isn't enabled. When enabled, the HTTP endpoint provides a connectionless web service API (RDS Data API) for running SQL queries on the DB cluster. You can also query your database from inside the RDS console with the RDS query editor. RDS Data API is supported with the following DB clusters: - Aurora PostgreSQL Serverless v2 and provisioned - Aurora PostgreSQL and Aurora MySQL Serverless v1 For more information, see `Using RDS Data API <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html>`_ in the *Amazon Aurora User Guide* . Valid for Cluster Type: Aurora DB clusters only
4297
4517
  :param enable_iam_database_authentication: A value that indicates whether to enable mapping of AWS Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled. For more information, see `IAM Database Authentication <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html>`_ in the *Amazon Aurora User Guide.* Valid for: Aurora DB clusters only
4298
4518
  :param engine: The name of the database engine to be used for this DB cluster. Valid Values: - ``aurora-mysql`` - ``aurora-postgresql`` - ``mysql`` - ``postgres`` Valid for: Aurora DB clusters and Multi-AZ DB clusters
4299
- :param engine_mode: The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless`` . The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide* : - `Limitations of Aurora Serverless v1 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations>`_ - `Requirements for Aurora Serverless v2 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html>`_ Valid for Cluster Type: Aurora DB clusters only
4519
+ :param engine_mode: The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless`` . The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. Aurora Serverless v2 DB clusters use the ``provisioned`` engine mode. For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide* : - `Limitations of Aurora Serverless v1 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations>`_ - `Requirements for Aurora Serverless v2 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html>`_ Valid for Cluster Type: Aurora DB clusters only
4300
4520
  :param engine_version: The version number of the database engine to use. To list all of the available engine versions for Aurora MySQL version 2 (5.7-compatible) and version 3 (8.0-compatible), use the following command: ``aws rds describe-db-engine-versions --engine aurora-mysql --query "DBEngineVersions[].EngineVersion"`` You can supply either ``5.7`` or ``8.0`` to use the default engine version for Aurora MySQL version 2 or version 3, respectively. To list all of the available engine versions for Aurora PostgreSQL, use the following command: ``aws rds describe-db-engine-versions --engine aurora-postgresql --query "DBEngineVersions[].EngineVersion"`` To list all of the available engine versions for RDS for MySQL, use the following command: ``aws rds describe-db-engine-versions --engine mysql --query "DBEngineVersions[].EngineVersion"`` To list all of the available engine versions for RDS for PostgreSQL, use the following command: ``aws rds describe-db-engine-versions --engine postgres --query "DBEngineVersions[].EngineVersion"`` *Aurora MySQL* For information, see `Database engine updates for Amazon Aurora MySQL <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html>`_ in the *Amazon Aurora User Guide* . *Aurora PostgreSQL* For information, see `Amazon Aurora PostgreSQL releases and engine versions <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.20180305.html>`_ in the *Amazon Aurora User Guide* . *MySQL* For information, see `Amazon RDS for MySQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide* . *PostgreSQL* For information, see `Amazon RDS for PostgreSQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts>`_ in the *Amazon RDS User Guide* . Valid for: Aurora DB clusters and Multi-AZ DB clusters
4301
4521
  :param global_cluster_identifier: If you are configuring an Aurora global database cluster and want your Aurora DB cluster to be a secondary member in the global database cluster, specify the global cluster ID of the global database cluster. To define the primary database cluster of the global cluster, use the `AWS::RDS::GlobalCluster <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html>`_ resource. If you aren't configuring a global database cluster, don't specify this property. .. epigraph:: To remove the DB cluster from a global database cluster, specify an empty value for the ``GlobalClusterIdentifier`` property. For information about Aurora global databases, see `Working with Amazon Aurora Global Databases <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html>`_ in the *Amazon Aurora User Guide* . Valid for: Aurora DB clusters only
4302
4522
  :param iops: The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid IOPS values, see `Provisioned IOPS storage <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS>`_ in the *Amazon RDS User Guide* . This setting is required to create a Multi-AZ DB cluster. Valid for Cluster Type: Multi-AZ DB clusters only Constraints: - Must be a multiple between .5 and 50 of the storage amount for the DB cluster.
@@ -6353,7 +6573,7 @@ class CfnDBClusterProps:
6353
6573
  :param db_cluster_identifier: The DB cluster identifier. This parameter is stored as a lowercase string. Constraints: - Must contain from 1 to 63 letters, numbers, or hyphens. - First character must be a letter. - Can't end with a hyphen or contain two consecutive hyphens. Example: ``my-cluster1`` Valid for: Aurora DB clusters and Multi-AZ DB clusters
6354
6574
  :param db_cluster_instance_class: The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example ``db.m6gd.xlarge`` . Not all DB instance classes are available in all AWS Regions , or for all database engines. For the full list of DB instance classes and availability for your engine, see `DB instance class <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html>`_ in the *Amazon RDS User Guide* . This setting is required to create a Multi-AZ DB cluster. Valid for Cluster Type: Multi-AZ DB clusters only
6355
6575
  :param db_cluster_parameter_group_name: The name of the DB cluster parameter group to associate with this DB cluster. .. epigraph:: If you apply a parameter group to an existing DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting. If you apply a change to parameter group associated with a stopped DB cluster, then the update stack waits until the DB cluster is started. To list all of the available DB cluster parameter group names, use the following command: ``aws rds describe-db-cluster-parameter-groups --query "DBClusterParameterGroups[].DBClusterParameterGroupName" --output text`` Valid for: Aurora DB clusters and Multi-AZ DB clusters Default: - "default.aurora5.6"
6356
- :param db_instance_parameter_group_name: The name of the DB parameter group to apply to all instances of the DB cluster. .. epigraph:: When you apply a parameter group using the ``DBInstanceParameterGroupName`` parameter, the DB cluster isn't rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window. Default: The existing name setting Constraints: - The DB parameter group must be in the same DB parameter group family as this DB cluster.
6576
+ :param db_instance_parameter_group_name: The name of the DB parameter group to apply to all instances of the DB cluster. .. epigraph:: When you apply a parameter group using the ``DBInstanceParameterGroupName`` parameter, the DB cluster isn't rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window. Valid for Cluster Type: Aurora DB clusters only Default: The existing name setting Constraints: - The DB parameter group must be in the same DB parameter group family as this DB cluster. - The ``DBInstanceParameterGroupName`` parameter is valid in combination with the ``AllowMajorVersionUpgrade`` parameter for a major version upgrade only.
6357
6577
  :param db_subnet_group_name: A DB subnet group that you want to associate with this DB cluster. If you are restoring a DB cluster to a point in time with ``RestoreType`` set to ``copy-on-write`` , and don't specify a DB subnet group name, then the DB cluster is restored with a default DB subnet group. Valid for: Aurora DB clusters and Multi-AZ DB clusters
6358
6578
  :param db_system_id: Reserved for future use.
6359
6579
  :param deletion_protection: A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection is disabled. Valid for: Aurora DB clusters and Multi-AZ DB clusters
@@ -6364,7 +6584,7 @@ class CfnDBClusterProps:
6364
6584
  :param enable_http_endpoint: Specifies whether to enable the HTTP endpoint for the DB cluster. By default, the HTTP endpoint isn't enabled. When enabled, the HTTP endpoint provides a connectionless web service API (RDS Data API) for running SQL queries on the DB cluster. You can also query your database from inside the RDS console with the RDS query editor. RDS Data API is supported with the following DB clusters: - Aurora PostgreSQL Serverless v2 and provisioned - Aurora PostgreSQL and Aurora MySQL Serverless v1 For more information, see `Using RDS Data API <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html>`_ in the *Amazon Aurora User Guide* . Valid for Cluster Type: Aurora DB clusters only
6365
6585
  :param enable_iam_database_authentication: A value that indicates whether to enable mapping of AWS Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled. For more information, see `IAM Database Authentication <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html>`_ in the *Amazon Aurora User Guide.* Valid for: Aurora DB clusters only
6366
6586
  :param engine: The name of the database engine to be used for this DB cluster. Valid Values: - ``aurora-mysql`` - ``aurora-postgresql`` - ``mysql`` - ``postgres`` Valid for: Aurora DB clusters and Multi-AZ DB clusters
6367
- :param engine_mode: The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless`` . The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide* : - `Limitations of Aurora Serverless v1 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations>`_ - `Requirements for Aurora Serverless v2 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html>`_ Valid for Cluster Type: Aurora DB clusters only
6587
+ :param engine_mode: The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless`` . The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. Aurora Serverless v2 DB clusters use the ``provisioned`` engine mode. For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide* : - `Limitations of Aurora Serverless v1 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations>`_ - `Requirements for Aurora Serverless v2 <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html>`_ Valid for Cluster Type: Aurora DB clusters only
6368
6588
  :param engine_version: The version number of the database engine to use. To list all of the available engine versions for Aurora MySQL version 2 (5.7-compatible) and version 3 (8.0-compatible), use the following command: ``aws rds describe-db-engine-versions --engine aurora-mysql --query "DBEngineVersions[].EngineVersion"`` You can supply either ``5.7`` or ``8.0`` to use the default engine version for Aurora MySQL version 2 or version 3, respectively. To list all of the available engine versions for Aurora PostgreSQL, use the following command: ``aws rds describe-db-engine-versions --engine aurora-postgresql --query "DBEngineVersions[].EngineVersion"`` To list all of the available engine versions for RDS for MySQL, use the following command: ``aws rds describe-db-engine-versions --engine mysql --query "DBEngineVersions[].EngineVersion"`` To list all of the available engine versions for RDS for PostgreSQL, use the following command: ``aws rds describe-db-engine-versions --engine postgres --query "DBEngineVersions[].EngineVersion"`` *Aurora MySQL* For information, see `Database engine updates for Amazon Aurora MySQL <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html>`_ in the *Amazon Aurora User Guide* . *Aurora PostgreSQL* For information, see `Amazon Aurora PostgreSQL releases and engine versions <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.20180305.html>`_ in the *Amazon Aurora User Guide* . *MySQL* For information, see `Amazon RDS for MySQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide* . *PostgreSQL* For information, see `Amazon RDS for PostgreSQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts>`_ in the *Amazon RDS User Guide* . Valid for: Aurora DB clusters and Multi-AZ DB clusters
6369
6589
  :param global_cluster_identifier: If you are configuring an Aurora global database cluster and want your Aurora DB cluster to be a secondary member in the global database cluster, specify the global cluster ID of the global database cluster. To define the primary database cluster of the global cluster, use the `AWS::RDS::GlobalCluster <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html>`_ resource. If you aren't configuring a global database cluster, don't specify this property. .. epigraph:: To remove the DB cluster from a global database cluster, specify an empty value for the ``GlobalClusterIdentifier`` property. For information about Aurora global databases, see `Working with Amazon Aurora Global Databases <https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html>`_ in the *Amazon Aurora User Guide* . Valid for: Aurora DB clusters only
6370
6590
  :param iops: The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid IOPS values, see `Provisioned IOPS storage <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS>`_ in the *Amazon RDS User Guide* . This setting is required to create a Multi-AZ DB cluster. Valid for Cluster Type: Multi-AZ DB clusters only Constraints: - Must be a multiple between .5 and 50 of the storage amount for the DB cluster.
@@ -6841,11 +7061,14 @@ class CfnDBClusterProps:
6841
7061
 
6842
7062
  When you apply a parameter group using the ``DBInstanceParameterGroupName`` parameter, the DB cluster isn't rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window.
6843
7063
 
7064
+ Valid for Cluster Type: Aurora DB clusters only
7065
+
6844
7066
  Default: The existing name setting
6845
7067
 
6846
7068
  Constraints:
6847
7069
 
6848
7070
  - The DB parameter group must be in the same DB parameter group family as this DB cluster.
7071
+ - The ``DBInstanceParameterGroupName`` parameter is valid in combination with the ``AllowMajorVersionUpgrade`` parameter for a major version upgrade only.
6849
7072
 
6850
7073
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbinstanceparametergroupname
6851
7074
  '''
@@ -7016,7 +7239,7 @@ class CfnDBClusterProps:
7016
7239
  def engine_mode(self) -> typing.Optional[builtins.str]:
7017
7240
  '''The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless`` .
7018
7241
 
7019
- The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters.
7242
+ The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. Aurora Serverless v2 DB clusters use the ``provisioned`` engine mode.
7020
7243
 
7021
7244
  For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide* :
7022
7245
 
@@ -7907,10 +8130,10 @@ class CfnDBInstance(
7907
8130
  :param enable_iam_database_authentication: A value that indicates whether to enable mapping of AWS Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled. This property is supported for RDS for MariaDB, RDS for MySQL, and RDS for PostgreSQL. For more information, see `IAM Database Authentication for MariaDB, MySQL, and PostgreSQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html>`_ in the *Amazon RDS User Guide.* *Amazon Aurora* Not applicable. Mapping AWS IAM accounts to database accounts is managed by the DB cluster.
7908
8131
  :param enable_performance_insights: Specifies whether to enable Performance Insights for the DB instance. For more information, see `Using Amazon Performance Insights <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html>`_ in the *Amazon RDS User Guide* . This setting doesn't apply to RDS Custom DB instances.
7909
8132
  :param endpoint: The connection endpoint for the DB instance. .. epigraph:: The endpoint might not be shown for instances with the status of ``creating`` .
7910
- :param engine: The name of the database engine to use for this DB instance. Not every database engine is available in every AWS Region. This property is required when creating a DB instance. .. epigraph:: You can change the architecture of an Oracle database from the non-container database (CDB) architecture to the CDB architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` or ``oracle-ee-cdb`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption. Valid Values: - ``aurora-mysql`` (for Aurora MySQL DB instances) - ``aurora-postgresql`` (for Aurora PostgreSQL DB instances) - ``custom-oracle-ee`` (for RDS Custom for Oracle DB instances) - ``custom-oracle-ee-cdb`` (for RDS Custom for Oracle DB instances) - ``custom-sqlserver-ee`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-se`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-web`` (for RDS Custom for SQL Server DB instances) - ``db2-ae`` - ``db2-se`` - ``mariadb`` - ``mysql`` - ``oracle-ee`` - ``oracle-ee-cdb`` - ``oracle-se2`` - ``oracle-se2-cdb`` - ``postgres`` - ``sqlserver-ee`` - ``sqlserver-se`` - ``sqlserver-ex`` - ``sqlserver-web``
8133
+ :param engine: The name of the database engine to use for this DB instance. Not every database engine is available in every AWS Region. This property is required when creating a DB instance. .. epigraph:: You can convert an Oracle database from the non-CDB architecture to the container database (CDB) architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` to ``oracle-ee-cdb`` or from ``oracle-se2`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption. Valid Values: - ``aurora-mysql`` (for Aurora MySQL DB instances) - ``aurora-postgresql`` (for Aurora PostgreSQL DB instances) - ``custom-oracle-ee`` (for RDS Custom for Oracle DB instances) - ``custom-oracle-ee-cdb`` (for RDS Custom for Oracle DB instances) - ``custom-sqlserver-ee`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-se`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-web`` (for RDS Custom for SQL Server DB instances) - ``db2-ae`` - ``db2-se`` - ``mariadb`` - ``mysql`` - ``oracle-ee`` - ``oracle-ee-cdb`` - ``oracle-se2`` - ``oracle-se2-cdb`` - ``postgres`` - ``sqlserver-ee`` - ``sqlserver-se`` - ``sqlserver-ex`` - ``sqlserver-web``
7911
8134
  :param engine_version: The version number of the database engine to use. For a list of valid engine versions, use the ``DescribeDBEngineVersions`` action. The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every AWS Region. *Amazon Aurora* Not applicable. The version number of the database engine to be used by the DB instance is managed by the DB cluster. *Db2* See `Amazon RDS for Db2 <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *MariaDB* See `MariaDB on Amazon RDS Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *Microsoft SQL Server* See `Microsoft SQL Server Versions on Amazon RDS <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.VersionSupport>`_ in the *Amazon RDS User Guide.* *MySQL* See `MySQL on Amazon RDS Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *Oracle* See `Oracle Database Engine Release Notes <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.PatchComposition.html>`_ in the *Amazon RDS User Guide.* *PostgreSQL* See `Supported PostgreSQL Database Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions>`_ in the *Amazon RDS User Guide.*
7912
8135
  :param iops: The number of I/O operations per second (IOPS) that the database provisions. The value must be equal to or greater than 1000. If you specify this property, you must follow the range of allowed ratios of your requested IOPS rate to the amount of storage that you allocate (IOPS to allocated storage). For example, you can provision an Oracle database instance with 1000 IOPS and 200 GiB of storage (a ratio of 5:1), or specify 2000 IOPS with 200 GiB of storage (a ratio of 10:1). For more information, see `Amazon RDS Provisioned IOPS Storage to Improve Performance <https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/CHAP_Storage.html#USER_PIOPS>`_ in the *Amazon RDS User Guide* . .. epigraph:: If you specify ``io1`` for the ``StorageType`` property, then you must also specify the ``Iops`` property. Constraints: - For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance. - For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.
7913
- :param kms_key_id: The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef`` . If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. If you specify the ``SourceDBInstanceIdentifier`` property, the value is inherited from the source DB instance if the read replica is created in the same region. If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region. If you specify the ``SnapshotIdentifier`` property, the ``StorageEncrypted`` property value is inherited from the snapshot, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify ``DBSecurityGroups`` , AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see `Using Amazon RDS with Amazon VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html>`_ in the *Amazon RDS User Guide* . *Amazon Aurora* Not applicable. The KMS key identifier is managed by the DB cluster.
8136
+ :param kms_key_id: The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef`` . If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. If you specify the ``SourceDBInstanceIdentifier`` property, the value is inherited from the source DB instance if the read replica is created in the same region. If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region. If you specify the ``DBSnapshotIdentifier`` property, don't specify this property. The ``StorageEncrypted`` property value is inherited from the snapshot. If the DB instance is encrypted, the specified ``KmsKeyId`` property is also inherited from the snapshot. If you specify ``DBSecurityGroups`` , AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see `Using Amazon RDS with Amazon VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html>`_ in the *Amazon RDS User Guide* . *Amazon Aurora* Not applicable. The KMS key identifier is managed by the DB cluster.
7914
8137
  :param license_model: License model information for this DB instance. Valid Values: - Aurora MySQL - ``general-public-license`` - Aurora PostgreSQL - ``postgresql-license`` - RDS for Db2 - ``bring-your-own-license`` . For more information about RDS for Db2 licensing, see ` <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html>`_ in the *Amazon RDS User Guide.* - RDS for MariaDB - ``general-public-license`` - RDS for Microsoft SQL Server - ``license-included`` - RDS for MySQL - ``general-public-license`` - RDS for Oracle - ``bring-your-own-license`` or ``license-included`` - RDS for PostgreSQL - ``postgresql-license`` .. epigraph:: If you've specified ``DBSecurityGroups`` and then you update the license model, AWS CloudFormation replaces the underlying DB instance. This will incur some interruptions to database availability.
7915
8138
  :param manage_master_user_password: Specifies whether to manage the master user password with AWS Secrets Manager. For more information, see `Password management with AWS Secrets Manager <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html>`_ in the *Amazon RDS User Guide.* Constraints: - Can't manage the master user password with AWS Secrets Manager if ``MasterUserPassword`` is specified.
7916
8139
  :param master_username: The master user name for the DB instance. .. epigraph:: If you specify the ``SourceDBInstanceIdentifier`` or ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the source DB instance or snapshot. When migrating a self-managed Db2 database, we recommend that you use the same master username as your self-managed Db2 instance name. *Amazon Aurora* Not applicable. The name for the master user is managed by the DB cluster. *RDS for Db2* Constraints: - Must be 1 to 16 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for MariaDB* Constraints: - Must be 1 to 16 letters or numbers. - Can't be a reserved word for the chosen database engine. *RDS for Microsoft SQL Server* Constraints: - Must be 1 to 128 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for MySQL* Constraints: - Must be 1 to 16 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for Oracle* Constraints: - Must be 1 to 30 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for PostgreSQL* Constraints: - Must be 1 to 63 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine.
@@ -7938,7 +8161,7 @@ class CfnDBInstance(
7938
8161
  :param source_db_instance_identifier: If you want to create a read replica DB instance, specify the ID of the source DB instance. Each DB instance can have a limited number of read replicas. For more information, see `Working with Read Replicas <https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/USER_ReadRepl.html>`_ in the *Amazon RDS User Guide* . For information about constraints that apply to DB instance identifiers, see `Naming constraints in Amazon RDS <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints>`_ in the *Amazon RDS User Guide* . The ``SourceDBInstanceIdentifier`` property determines whether a DB instance is a read replica. If you remove the ``SourceDBInstanceIdentifier`` property from your template and then update your stack, AWS CloudFormation promotes the Read Replica to a standalone DB instance. .. epigraph:: - If you specify a source DB instance that uses VPC security groups, we recommend that you specify the ``VPCSecurityGroups`` property. If you don't specify the property, the read replica inherits the value of the ``VPCSecurityGroups`` property from the source DB when you create the replica. However, if you update the stack, AWS CloudFormation reverts the replica's ``VPCSecurityGroups`` property to the default value because it's not defined in the stack's template. This change might cause unexpected issues. - Read replicas don't support deletion policies. AWS CloudFormation ignores any deletion policy that's associated with a read replica. - If you specify ``SourceDBInstanceIdentifier`` , don't specify the ``DBSnapshotIdentifier`` property. You can't create a read replica from a snapshot. - Don't set the ``BackupRetentionPeriod`` , ``DBName`` , ``MasterUsername`` , ``MasterUserPassword`` , and ``PreferredBackupWindow`` properties. The database attributes are inherited from the source DB instance, and backups are disabled for read replicas. - If the source DB instance is in a different region than the read replica, specify the source region in ``SourceRegion`` , and specify an ARN for a valid DB instance in ``SourceDBInstanceIdentifier`` . For more information, see `Constructing a Amazon RDS Amazon Resource Name (ARN) <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#USER_Tagging.ARN>`_ in the *Amazon RDS User Guide* . - For DB instances in Amazon Aurora clusters, don't specify this property. Amazon RDS automatically assigns writer and reader DB instances.
7939
8162
  :param source_dbi_resource_id: The resource ID of the source DB instance from which to restore.
7940
8163
  :param source_region: The ID of the region that contains the source DB instance for the read replica.
7941
- :param storage_encrypted: A value that indicates whether the DB instance is encrypted. By default, it isn't encrypted. If you specify the ``KmsKeyId`` property, then you must enable encryption. If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify the ``DBSnapshotIdentifier`` and the specified snapshot is encrypted, don't specify this property. The value is inherited from the snapshot, and the specified ``KmsKeyId`` property is used. If you specify the ``DBSnapshotIdentifier`` and the specified snapshot isn't encrypted, you can use this property to specify that the restored DB instance is encrypted. Specify the ``KmsKeyId`` property for the KMS key to use for encryption. If you don't want the restored DB instance to be encrypted, then don't set this property or set it to ``false`` . *Amazon Aurora* Not applicable. The encryption for DB instances is managed by the DB cluster.
8164
+ :param storage_encrypted: A value that indicates whether the DB instance is encrypted. By default, it isn't encrypted. If you specify the ``KmsKeyId`` property, then you must enable encryption. If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the snapshot. *Amazon Aurora* Not applicable. The encryption for DB instances is managed by the DB cluster.
7942
8165
  :param storage_throughput: Specifies the storage throughput value for the DB instance. This setting applies only to the ``gp3`` storage type. This setting doesn't apply to RDS Custom or Amazon Aurora.
7943
8166
  :param storage_type: The storage type to associate with the DB instance. If you specify ``io1`` , ``io2`` , or ``gp3`` , you must also include a value for the ``Iops`` parameter. This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. Valid Values: ``gp2 | gp3 | io1 | io2 | standard`` Default: ``io1`` , if the ``Iops`` parameter is specified. Otherwise, ``gp2`` .
7944
8167
  :param tags: An optional array of key-value pairs to apply to this DB instance.
@@ -9893,10 +10116,10 @@ class CfnDBInstanceProps:
9893
10116
  :param enable_iam_database_authentication: A value that indicates whether to enable mapping of AWS Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled. This property is supported for RDS for MariaDB, RDS for MySQL, and RDS for PostgreSQL. For more information, see `IAM Database Authentication for MariaDB, MySQL, and PostgreSQL <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html>`_ in the *Amazon RDS User Guide.* *Amazon Aurora* Not applicable. Mapping AWS IAM accounts to database accounts is managed by the DB cluster.
9894
10117
  :param enable_performance_insights: Specifies whether to enable Performance Insights for the DB instance. For more information, see `Using Amazon Performance Insights <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html>`_ in the *Amazon RDS User Guide* . This setting doesn't apply to RDS Custom DB instances.
9895
10118
  :param endpoint: The connection endpoint for the DB instance. .. epigraph:: The endpoint might not be shown for instances with the status of ``creating`` .
9896
- :param engine: The name of the database engine to use for this DB instance. Not every database engine is available in every AWS Region. This property is required when creating a DB instance. .. epigraph:: You can change the architecture of an Oracle database from the non-container database (CDB) architecture to the CDB architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` or ``oracle-ee-cdb`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption. Valid Values: - ``aurora-mysql`` (for Aurora MySQL DB instances) - ``aurora-postgresql`` (for Aurora PostgreSQL DB instances) - ``custom-oracle-ee`` (for RDS Custom for Oracle DB instances) - ``custom-oracle-ee-cdb`` (for RDS Custom for Oracle DB instances) - ``custom-sqlserver-ee`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-se`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-web`` (for RDS Custom for SQL Server DB instances) - ``db2-ae`` - ``db2-se`` - ``mariadb`` - ``mysql`` - ``oracle-ee`` - ``oracle-ee-cdb`` - ``oracle-se2`` - ``oracle-se2-cdb`` - ``postgres`` - ``sqlserver-ee`` - ``sqlserver-se`` - ``sqlserver-ex`` - ``sqlserver-web``
10119
+ :param engine: The name of the database engine to use for this DB instance. Not every database engine is available in every AWS Region. This property is required when creating a DB instance. .. epigraph:: You can convert an Oracle database from the non-CDB architecture to the container database (CDB) architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` to ``oracle-ee-cdb`` or from ``oracle-se2`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption. Valid Values: - ``aurora-mysql`` (for Aurora MySQL DB instances) - ``aurora-postgresql`` (for Aurora PostgreSQL DB instances) - ``custom-oracle-ee`` (for RDS Custom for Oracle DB instances) - ``custom-oracle-ee-cdb`` (for RDS Custom for Oracle DB instances) - ``custom-sqlserver-ee`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-se`` (for RDS Custom for SQL Server DB instances) - ``custom-sqlserver-web`` (for RDS Custom for SQL Server DB instances) - ``db2-ae`` - ``db2-se`` - ``mariadb`` - ``mysql`` - ``oracle-ee`` - ``oracle-ee-cdb`` - ``oracle-se2`` - ``oracle-se2-cdb`` - ``postgres`` - ``sqlserver-ee`` - ``sqlserver-se`` - ``sqlserver-ex`` - ``sqlserver-web``
9897
10120
  :param engine_version: The version number of the database engine to use. For a list of valid engine versions, use the ``DescribeDBEngineVersions`` action. The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every AWS Region. *Amazon Aurora* Not applicable. The version number of the database engine to be used by the DB instance is managed by the DB cluster. *Db2* See `Amazon RDS for Db2 <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *MariaDB* See `MariaDB on Amazon RDS Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *Microsoft SQL Server* See `Microsoft SQL Server Versions on Amazon RDS <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.VersionSupport>`_ in the *Amazon RDS User Guide.* *MySQL* See `MySQL on Amazon RDS Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt>`_ in the *Amazon RDS User Guide.* *Oracle* See `Oracle Database Engine Release Notes <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.PatchComposition.html>`_ in the *Amazon RDS User Guide.* *PostgreSQL* See `Supported PostgreSQL Database Versions <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions>`_ in the *Amazon RDS User Guide.*
9898
10121
  :param iops: The number of I/O operations per second (IOPS) that the database provisions. The value must be equal to or greater than 1000. If you specify this property, you must follow the range of allowed ratios of your requested IOPS rate to the amount of storage that you allocate (IOPS to allocated storage). For example, you can provision an Oracle database instance with 1000 IOPS and 200 GiB of storage (a ratio of 5:1), or specify 2000 IOPS with 200 GiB of storage (a ratio of 10:1). For more information, see `Amazon RDS Provisioned IOPS Storage to Improve Performance <https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/CHAP_Storage.html#USER_PIOPS>`_ in the *Amazon RDS User Guide* . .. epigraph:: If you specify ``io1`` for the ``StorageType`` property, then you must also specify the ``Iops`` property. Constraints: - For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance. - For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.
9899
- :param kms_key_id: The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef`` . If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. If you specify the ``SourceDBInstanceIdentifier`` property, the value is inherited from the source DB instance if the read replica is created in the same region. If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region. If you specify the ``SnapshotIdentifier`` property, the ``StorageEncrypted`` property value is inherited from the snapshot, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify ``DBSecurityGroups`` , AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see `Using Amazon RDS with Amazon VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html>`_ in the *Amazon RDS User Guide* . *Amazon Aurora* Not applicable. The KMS key identifier is managed by the DB cluster.
10122
+ :param kms_key_id: The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef`` . If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. If you specify the ``SourceDBInstanceIdentifier`` property, the value is inherited from the source DB instance if the read replica is created in the same region. If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region. If you specify the ``DBSnapshotIdentifier`` property, don't specify this property. The ``StorageEncrypted`` property value is inherited from the snapshot. If the DB instance is encrypted, the specified ``KmsKeyId`` property is also inherited from the snapshot. If you specify ``DBSecurityGroups`` , AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see `Using Amazon RDS with Amazon VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html>`_ in the *Amazon RDS User Guide* . *Amazon Aurora* Not applicable. The KMS key identifier is managed by the DB cluster.
9900
10123
  :param license_model: License model information for this DB instance. Valid Values: - Aurora MySQL - ``general-public-license`` - Aurora PostgreSQL - ``postgresql-license`` - RDS for Db2 - ``bring-your-own-license`` . For more information about RDS for Db2 licensing, see ` <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html>`_ in the *Amazon RDS User Guide.* - RDS for MariaDB - ``general-public-license`` - RDS for Microsoft SQL Server - ``license-included`` - RDS for MySQL - ``general-public-license`` - RDS for Oracle - ``bring-your-own-license`` or ``license-included`` - RDS for PostgreSQL - ``postgresql-license`` .. epigraph:: If you've specified ``DBSecurityGroups`` and then you update the license model, AWS CloudFormation replaces the underlying DB instance. This will incur some interruptions to database availability.
9901
10124
  :param manage_master_user_password: Specifies whether to manage the master user password with AWS Secrets Manager. For more information, see `Password management with AWS Secrets Manager <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html>`_ in the *Amazon RDS User Guide.* Constraints: - Can't manage the master user password with AWS Secrets Manager if ``MasterUserPassword`` is specified.
9902
10125
  :param master_username: The master user name for the DB instance. .. epigraph:: If you specify the ``SourceDBInstanceIdentifier`` or ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the source DB instance or snapshot. When migrating a self-managed Db2 database, we recommend that you use the same master username as your self-managed Db2 instance name. *Amazon Aurora* Not applicable. The name for the master user is managed by the DB cluster. *RDS for Db2* Constraints: - Must be 1 to 16 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for MariaDB* Constraints: - Must be 1 to 16 letters or numbers. - Can't be a reserved word for the chosen database engine. *RDS for Microsoft SQL Server* Constraints: - Must be 1 to 128 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for MySQL* Constraints: - Must be 1 to 16 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for Oracle* Constraints: - Must be 1 to 30 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine. *RDS for PostgreSQL* Constraints: - Must be 1 to 63 letters or numbers. - First character must be a letter. - Can't be a reserved word for the chosen database engine.
@@ -9924,7 +10147,7 @@ class CfnDBInstanceProps:
9924
10147
  :param source_db_instance_identifier: If you want to create a read replica DB instance, specify the ID of the source DB instance. Each DB instance can have a limited number of read replicas. For more information, see `Working with Read Replicas <https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/USER_ReadRepl.html>`_ in the *Amazon RDS User Guide* . For information about constraints that apply to DB instance identifiers, see `Naming constraints in Amazon RDS <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints>`_ in the *Amazon RDS User Guide* . The ``SourceDBInstanceIdentifier`` property determines whether a DB instance is a read replica. If you remove the ``SourceDBInstanceIdentifier`` property from your template and then update your stack, AWS CloudFormation promotes the Read Replica to a standalone DB instance. .. epigraph:: - If you specify a source DB instance that uses VPC security groups, we recommend that you specify the ``VPCSecurityGroups`` property. If you don't specify the property, the read replica inherits the value of the ``VPCSecurityGroups`` property from the source DB when you create the replica. However, if you update the stack, AWS CloudFormation reverts the replica's ``VPCSecurityGroups`` property to the default value because it's not defined in the stack's template. This change might cause unexpected issues. - Read replicas don't support deletion policies. AWS CloudFormation ignores any deletion policy that's associated with a read replica. - If you specify ``SourceDBInstanceIdentifier`` , don't specify the ``DBSnapshotIdentifier`` property. You can't create a read replica from a snapshot. - Don't set the ``BackupRetentionPeriod`` , ``DBName`` , ``MasterUsername`` , ``MasterUserPassword`` , and ``PreferredBackupWindow`` properties. The database attributes are inherited from the source DB instance, and backups are disabled for read replicas. - If the source DB instance is in a different region than the read replica, specify the source region in ``SourceRegion`` , and specify an ARN for a valid DB instance in ``SourceDBInstanceIdentifier`` . For more information, see `Constructing a Amazon RDS Amazon Resource Name (ARN) <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#USER_Tagging.ARN>`_ in the *Amazon RDS User Guide* . - For DB instances in Amazon Aurora clusters, don't specify this property. Amazon RDS automatically assigns writer and reader DB instances.
9925
10148
  :param source_dbi_resource_id: The resource ID of the source DB instance from which to restore.
9926
10149
  :param source_region: The ID of the region that contains the source DB instance for the read replica.
9927
- :param storage_encrypted: A value that indicates whether the DB instance is encrypted. By default, it isn't encrypted. If you specify the ``KmsKeyId`` property, then you must enable encryption. If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify the ``DBSnapshotIdentifier`` and the specified snapshot is encrypted, don't specify this property. The value is inherited from the snapshot, and the specified ``KmsKeyId`` property is used. If you specify the ``DBSnapshotIdentifier`` and the specified snapshot isn't encrypted, you can use this property to specify that the restored DB instance is encrypted. Specify the ``KmsKeyId`` property for the KMS key to use for encryption. If you don't want the restored DB instance to be encrypted, then don't set this property or set it to ``false`` . *Amazon Aurora* Not applicable. The encryption for DB instances is managed by the DB cluster.
10150
+ :param storage_encrypted: A value that indicates whether the DB instance is encrypted. By default, it isn't encrypted. If you specify the ``KmsKeyId`` property, then you must enable encryption. If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. If you specify ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the snapshot. *Amazon Aurora* Not applicable. The encryption for DB instances is managed by the DB cluster.
9928
10151
  :param storage_throughput: Specifies the storage throughput value for the DB instance. This setting applies only to the ``gp3`` storage type. This setting doesn't apply to RDS Custom or Amazon Aurora.
9929
10152
  :param storage_type: The storage type to associate with the DB instance. If you specify ``io1`` , ``io2`` , or ``gp3`` , you must also include a value for the ``Iops`` parameter. This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster. Valid Values: ``gp2 | gp3 | io1 | io2 | standard`` Default: ``io1`` , if the ``Iops`` parameter is specified. Otherwise, ``gp2`` .
9930
10153
  :param tags: An optional array of key-value pairs to apply to this DB instance.
@@ -11001,7 +11224,7 @@ class CfnDBInstanceProps:
11001
11224
  This property is required when creating a DB instance.
11002
11225
  .. epigraph::
11003
11226
 
11004
- You can change the architecture of an Oracle database from the non-container database (CDB) architecture to the CDB architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` or ``oracle-ee-cdb`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption.
11227
+ You can convert an Oracle database from the non-CDB architecture to the container database (CDB) architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` to ``oracle-ee-cdb`` or from ``oracle-se2`` to ``oracle-se2-cdb`` . Converting to the CDB architecture requires an interruption.
11005
11228
 
11006
11229
  Valid Values:
11007
11230
 
@@ -11103,7 +11326,7 @@ class CfnDBInstanceProps:
11103
11326
 
11104
11327
  If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region.
11105
11328
 
11106
- If you specify the ``SnapshotIdentifier`` property, the ``StorageEncrypted`` property value is inherited from the snapshot, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used.
11329
+ If you specify the ``DBSnapshotIdentifier`` property, don't specify this property. The ``StorageEncrypted`` property value is inherited from the snapshot. If the DB instance is encrypted, the specified ``KmsKeyId`` property is also inherited from the snapshot.
11107
11330
 
11108
11331
  If you specify ``DBSecurityGroups`` , AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see `Using Amazon RDS with Amazon VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html>`_ in the *Amazon RDS User Guide* .
11109
11332
 
@@ -11636,9 +11859,7 @@ class CfnDBInstanceProps:
11636
11859
 
11637
11860
  If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used.
11638
11861
 
11639
- If you specify the ``DBSnapshotIdentifier`` and the specified snapshot is encrypted, don't specify this property. The value is inherited from the snapshot, and the specified ``KmsKeyId`` property is used.
11640
-
11641
- If you specify the ``DBSnapshotIdentifier`` and the specified snapshot isn't encrypted, you can use this property to specify that the restored DB instance is encrypted. Specify the ``KmsKeyId`` property for the KMS key to use for encryption. If you don't want the restored DB instance to be encrypted, then don't set this property or set it to ``false`` .
11862
+ If you specify ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the snapshot.
11642
11863
 
11643
11864
  *Amazon Aurora*
11644
11865
 
@@ -18044,14 +18265,18 @@ class Credentials(
18044
18265
  vpc = ec2.Vpc(self, "AuroraVpc")
18045
18266
 
18046
18267
  # Create the serverless cluster, provide all values needed to customise the database.
18047
- cluster = rds.ServerlessCluster(self, "AuroraCluster",
18048
- engine=rds.DatabaseClusterEngine.AURORA_MYSQL,
18049
- vpc=vpc,
18268
+ cluster = rds.DatabaseCluster(self, "AuroraClusterV2",
18269
+ engine=rds.DatabaseClusterEngine.aurora_postgres(version=rds.AuroraPostgresEngineVersion.VER_15_5),
18050
18270
  credentials={"username": "clusteradmin"},
18051
18271
  cluster_identifier="db-endpoint-test",
18052
- default_database_name="demos"
18272
+ writer=rds.ClusterInstance.serverless_v2("writer"),
18273
+ serverless_v2_min_capacity=2,
18274
+ serverless_v2_max_capacity=10,
18275
+ vpc=vpc,
18276
+ default_database_name="demos",
18277
+ enable_data_api=True
18053
18278
  )
18054
- rds_dS = api.add_rds_data_source("rds", cluster, secret, "demos")
18279
+ rds_dS = api.add_rds_data_source_v2("rds", cluster, secret, "demos")
18055
18280
 
18056
18281
  # Set up a resolver for an RDS query.
18057
18282
  rds_dS.create_resolver("QueryGetDemosRdsResolver",
@@ -25098,6 +25323,14 @@ class IDatabaseCluster(
25098
25323
  '''
25099
25324
  ...
25100
25325
 
25326
+ @jsii.member(jsii_name="grantDataApiAccess")
25327
+ def grant_data_api_access(self, grantee: _IGrantable_71c4f5de) -> _Grant_a7ae64f8:
25328
+ '''Grant the given identity to access to the Data API.
25329
+
25330
+ :param grantee: The principal to grant access to.
25331
+ '''
25332
+ ...
25333
+
25101
25334
  @jsii.member(jsii_name="metric")
25102
25335
  def metric(
25103
25336
  self,
@@ -25671,6 +25904,17 @@ class _IDatabaseClusterProxy(
25671
25904
  check_type(argname="argument db_user", value=db_user, expected_type=type_hints["db_user"])
25672
25905
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantConnect", [grantee, db_user]))
25673
25906
 
25907
+ @jsii.member(jsii_name="grantDataApiAccess")
25908
+ def grant_data_api_access(self, grantee: _IGrantable_71c4f5de) -> _Grant_a7ae64f8:
25909
+ '''Grant the given identity to access to the Data API.
25910
+
25911
+ :param grantee: The principal to grant access to.
25912
+ '''
25913
+ if __debug__:
25914
+ type_hints = typing.get_type_hints(_typecheckingstub__cecf222e59ae304eb2915600c2ab7f5bdc161841f08ea5f6b7f029f7bec9a12a)
25915
+ check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
25916
+ return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantDataApiAccess", [grantee]))
25917
+
25674
25918
  @jsii.member(jsii_name="metric")
25675
25919
  def metric(
25676
25920
  self,
@@ -38176,7 +38420,7 @@ class DatabaseClusterBase(
38176
38420
  @jsii.member(jsii_name="secret")
38177
38421
  @abc.abstractmethod
38178
38422
  def secret(self) -> typing.Optional[_ISecret_6e020e6a]:
38179
- '''Secret in SecretsManager to store the database cluster user credentials.'''
38423
+ '''The secret attached to this cluster.'''
38180
38424
  ...
38181
38425
 
38182
38426
  @builtins.property
@@ -38252,7 +38496,7 @@ class _DatabaseClusterBaseProxy(
38252
38496
  @builtins.property
38253
38497
  @jsii.member(jsii_name="secret")
38254
38498
  def secret(self) -> typing.Optional[_ISecret_6e020e6a]:
38255
- '''Secret in SecretsManager to store the database cluster user credentials.'''
38499
+ '''The secret attached to this cluster.'''
38256
38500
  return typing.cast(typing.Optional[_ISecret_6e020e6a], jsii.get(self, "secret"))
38257
38501
 
38258
38502
  @builtins.property
@@ -43425,15 +43669,18 @@ def _typecheckingstub__dccc4ebf781452ad945a67eeaa182293b79bd42fee7658aaea830a59e
43425
43669
  scope: _constructs_77d1e7e8.Construct,
43426
43670
  id: builtins.str,
43427
43671
  *,
43428
- database_installation_files_s3_bucket_name: builtins.str,
43429
43672
  engine: builtins.str,
43430
43673
  engine_version: builtins.str,
43674
+ database_installation_files_s3_bucket_name: typing.Optional[builtins.str] = None,
43431
43675
  database_installation_files_s3_prefix: typing.Optional[builtins.str] = None,
43432
43676
  description: typing.Optional[builtins.str] = None,
43677
+ image_id: typing.Optional[builtins.str] = None,
43433
43678
  kms_key_id: typing.Optional[builtins.str] = None,
43434
43679
  manifest: typing.Optional[builtins.str] = None,
43680
+ source_custom_db_engine_version_identifier: typing.Optional[builtins.str] = None,
43435
43681
  status: typing.Optional[builtins.str] = None,
43436
43682
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
43683
+ use_aws_provided_latest_image: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
43437
43684
  ) -> None:
43438
43685
  """Type checking stubs"""
43439
43686
  pass
@@ -43450,20 +43697,20 @@ def _typecheckingstub__3e83f468f7dd18d22c9b612734116e5d82023ddbd1b241f1dae9c33e1
43450
43697
  """Type checking stubs"""
43451
43698
  pass
43452
43699
 
43453
- def _typecheckingstub__e8dcd4aecfb92c6617a76401829247508a5196d1219bdf3c496c1eef202e0c37(
43700
+ def _typecheckingstub__57b06d6a61a7aa40468b988c47f903780541aacb379dfa0bf146f37e0c779729(
43454
43701
  value: builtins.str,
43455
43702
  ) -> None:
43456
43703
  """Type checking stubs"""
43457
43704
  pass
43458
43705
 
43459
- def _typecheckingstub__57b06d6a61a7aa40468b988c47f903780541aacb379dfa0bf146f37e0c779729(
43706
+ def _typecheckingstub__09530b6c217cbc4998aaea3601330c702807beb29fc30fa9af5ceab12214408d(
43460
43707
  value: builtins.str,
43461
43708
  ) -> None:
43462
43709
  """Type checking stubs"""
43463
43710
  pass
43464
43711
 
43465
- def _typecheckingstub__09530b6c217cbc4998aaea3601330c702807beb29fc30fa9af5ceab12214408d(
43466
- value: builtins.str,
43712
+ def _typecheckingstub__e8dcd4aecfb92c6617a76401829247508a5196d1219bdf3c496c1eef202e0c37(
43713
+ value: typing.Optional[builtins.str],
43467
43714
  ) -> None:
43468
43715
  """Type checking stubs"""
43469
43716
  pass
@@ -43480,6 +43727,12 @@ def _typecheckingstub__4aaac4d275f054bf611e124a013cfc149ce4ce49db255d6b8bdbf9937
43480
43727
  """Type checking stubs"""
43481
43728
  pass
43482
43729
 
43730
+ def _typecheckingstub__573de89cab865fb2fe6437920ada3b601ffcf5832b228e0d126bedaf494c57eb(
43731
+ value: typing.Optional[builtins.str],
43732
+ ) -> None:
43733
+ """Type checking stubs"""
43734
+ pass
43735
+
43483
43736
  def _typecheckingstub__1a0cd73871adb0d339f703041dbaa1e90b6c3ad3be57fe4b1f55f2e61af11dca(
43484
43737
  value: typing.Optional[builtins.str],
43485
43738
  ) -> None:
@@ -43492,6 +43745,12 @@ def _typecheckingstub__463fc7056b1df9d389ba18cfed697b7ea579834be61dc7627fe4a6bba
43492
43745
  """Type checking stubs"""
43493
43746
  pass
43494
43747
 
43748
+ def _typecheckingstub__ab74f194180555de35de6a9023fe9e2d2972ffd40051f7cc505df6dd0438f8d6(
43749
+ value: typing.Optional[builtins.str],
43750
+ ) -> None:
43751
+ """Type checking stubs"""
43752
+ pass
43753
+
43495
43754
  def _typecheckingstub__ec128ecf80f4b2e6d4529f80259fe9fb957476b36db57ec7b870982375842eac(
43496
43755
  value: typing.Optional[builtins.str],
43497
43756
  ) -> None:
@@ -43504,17 +43763,26 @@ def _typecheckingstub__72ea58fd4af1464d2f87e63b0113772cf0f44d78fc2c7531901713687
43504
43763
  """Type checking stubs"""
43505
43764
  pass
43506
43765
 
43766
+ def _typecheckingstub__30204c42eef4323c823e84f7a43420a689740a78fa5382e0d646d46b0102a5c1(
43767
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
43768
+ ) -> None:
43769
+ """Type checking stubs"""
43770
+ pass
43771
+
43507
43772
  def _typecheckingstub__70c4d3797ab8093b0278a7f532fcb1c42c50e74a1c04dfe5259dbb57e7fe2191(
43508
43773
  *,
43509
- database_installation_files_s3_bucket_name: builtins.str,
43510
43774
  engine: builtins.str,
43511
43775
  engine_version: builtins.str,
43776
+ database_installation_files_s3_bucket_name: typing.Optional[builtins.str] = None,
43512
43777
  database_installation_files_s3_prefix: typing.Optional[builtins.str] = None,
43513
43778
  description: typing.Optional[builtins.str] = None,
43779
+ image_id: typing.Optional[builtins.str] = None,
43514
43780
  kms_key_id: typing.Optional[builtins.str] = None,
43515
43781
  manifest: typing.Optional[builtins.str] = None,
43782
+ source_custom_db_engine_version_identifier: typing.Optional[builtins.str] = None,
43516
43783
  status: typing.Optional[builtins.str] = None,
43517
43784
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
43785
+ use_aws_provided_latest_image: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
43518
43786
  ) -> None:
43519
43787
  """Type checking stubs"""
43520
43788
  pass
@@ -46232,6 +46500,12 @@ def _typecheckingstub__28dac6f0afb3a1f37eb08d0603ed9c527826656bdcb35c560bfe5b409
46232
46500
  """Type checking stubs"""
46233
46501
  pass
46234
46502
 
46503
+ def _typecheckingstub__cecf222e59ae304eb2915600c2ab7f5bdc161841f08ea5f6b7f029f7bec9a12a(
46504
+ grantee: _IGrantable_71c4f5de,
46505
+ ) -> None:
46506
+ """Type checking stubs"""
46507
+ pass
46508
+
46235
46509
  def _typecheckingstub__cb438e41c5d27e4b968b536ac8e59048e5a810f9216c9316ab7091ead553a3cd(
46236
46510
  metric_name: builtins.str,
46237
46511
  *,