1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateDBInstance`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`db_instance_identifier(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::db_instance_identifier) / [`set_db_instance_identifier(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_db_instance_identifier): <p>The instance identifier. This parameter is stored as a lowercase string.</p>  <p>Constraints:</p>  <ul>   <li> <p>Must contain from 1 to 63 letters, numbers, or hyphens.</p> </li>   <li> <p>The first character must be a letter.</p> </li>   <li> <p>Cannot end with a hyphen or contain two consecutive hyphens.</p> </li>  </ul>  <p>Example: <code>mydbinstance</code> </p>
    ///   - [`db_instance_class(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::db_instance_class) / [`set_db_instance_class(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_db_instance_class): <p>The compute and memory capacity of the instance; for example, <code>db.r5.large</code>. </p>
    ///   - [`engine(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::engine) / [`set_engine(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_engine): <p>The name of the database engine to be used for this instance.</p>  <p>Valid value: <code>docdb</code> </p>
    ///   - [`availability_zone(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::availability_zone) / [`set_availability_zone(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_availability_zone): <p>The Amazon EC2 Availability Zone that the instance is created in. </p>  <p>Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.</p>  <p>Example: <code>us-east-1d</code> </p>
    ///   - [`preferred_maintenance_window(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::preferred_maintenance_window) / [`set_preferred_maintenance_window(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_preferred_maintenance_window): <p>The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>  <p> Format: <code>ddd:hh24:mi-ddd:hh24:mi</code> </p>  <p>The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week. </p>  <p>Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun</p>  <p>Constraints: Minimum 30-minute window.</p>
    ///   - [`auto_minor_version_upgrade(bool)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::auto_minor_version_upgrade) / [`set_auto_minor_version_upgrade(Option<bool>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_auto_minor_version_upgrade): <p>This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set.</p>  <p>Default: <code>false</code> </p>
    ///   - [`tags(Tag)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::tags) / [`set_tags(Option<Vec<Tag>>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_tags): <p>The tags to be assigned to the instance. You can assign up to 10 tags to an instance.</p>
    ///   - [`db_cluster_identifier(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::db_cluster_identifier) / [`set_db_cluster_identifier(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_db_cluster_identifier): <p>The identifier of the cluster that the instance will belong to.</p>
    ///   - [`copy_tags_to_snapshot(bool)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::copy_tags_to_snapshot) / [`set_copy_tags_to_snapshot(Option<bool>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_copy_tags_to_snapshot): <p>A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are not copied.</p>
    ///   - [`promotion_tier(i32)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::promotion_tier) / [`set_promotion_tier(Option<i32>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_promotion_tier): <p>A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance after a failure of the existing primary instance.</p>  <p>Default: 1</p>  <p>Valid values: 0-15</p>
    ///   - [`enable_performance_insights(bool)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::enable_performance_insights) / [`set_enable_performance_insights(Option<bool>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_enable_performance_insights): <p>A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see <a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html">Using Amazon Performance Insights</a>.</p>
    ///   - [`performance_insights_kms_key_id(impl Into<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::performance_insights_kms_key_id) / [`set_performance_insights_kms_key_id(Option<String>)`](crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::set_performance_insights_kms_key_id): <p>The KMS key identifier for encryption of Performance Insights data.</p>  <p>The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.</p>  <p>If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services region.</p>
    /// - On success, responds with [`CreateDbInstanceOutput`](crate::operation::create_db_instance::CreateDbInstanceOutput) with field(s):
    ///   - [`db_instance(Option<DbInstance>)`](crate::operation::create_db_instance::CreateDbInstanceOutput::db_instance): <p>Detailed information about an instance. </p>
    /// - On failure, responds with [`SdkError<CreateDBInstanceError>`](crate::operation::create_db_instance::CreateDBInstanceError)
    pub fn create_db_instance(&self) -> crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder {
        crate::operation::create_db_instance::builders::CreateDBInstanceFluentBuilder::new(self.handle.clone())
    }
}