docdb

package
v6.0.0-alpha.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 11, 2023 License: Apache-2.0 Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// Specifies whether any cluster modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`.
	ApplyImmediately pulumi.BoolOutput `pulumi:"applyImmediately"`
	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A list of EC2 Availability Zones that
	// instances in the DB cluster can be created in.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrOutput `pulumi:"backupRetentionPeriod"`
	// The cluster identifier. If omitted, the provider will assign a random, unique identifier.
	ClusterIdentifier pulumi.StringOutput `pulumi:"clusterIdentifier"`
	// Creates a unique cluster identifier beginning with the specified prefix. Conflicts with `clusterIdentifier`.
	ClusterIdentifierPrefix pulumi.StringOutput `pulumi:"clusterIdentifierPrefix"`
	// List of DocumentDB Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayOutput `pulumi:"clusterMembers"`
	// The DocumentDB Cluster Resource ID
	ClusterResourceId pulumi.StringOutput `pulumi:"clusterResourceId"`
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringOutput `pulumi:"dbClusterParameterGroupName"`
	// A DB subnet group to associate with this DB instance.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// 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.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// List of log types to export to cloudwatch. If omitted, no logs will be exported.
	// The following log types are supported: `audit`, `profiler`.
	EnabledCloudwatchLogsExports pulumi.StringArrayOutput `pulumi:"enabledCloudwatchLogsExports"`
	// The DNS address of the DocumentDB instance
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// The name of the database engine to be used for this DB cluster. Defaults to `docdb`. Valid Values: `docdb`
	Engine pulumi.StringPtrOutput `pulumi:"engine"`
	// The database engine version. Updating this argument results in an outage.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The name of your final DB snapshot
	// when this DB cluster is deleted. If omitted, no final snapshot will be
	// made.
	FinalSnapshotIdentifier pulumi.StringPtrOutput `pulumi:"finalSnapshotIdentifier"`
	// The global cluster identifier specified on `docdb.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrOutput `pulumi:"globalClusterIdentifier"`
	// The Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// The ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Password for the master DB user. Note that this may
	// show up in logs, and it will be stored in the state file. Please refer to the DocumentDB Naming Constraints.
	MasterPassword pulumi.StringPtrOutput `pulumi:"masterPassword"`
	// Username for the master DB user.
	MasterUsername pulumi.StringOutput `pulumi:"masterUsername"`
	// The port on which the DB accepts connections
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC
	// Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringOutput `pulumi:"preferredBackupWindow"`
	// The weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30
	PreferredMaintenanceWindow pulumi.StringOutput `pulumi:"preferredMaintenanceWindow"`
	// A read-only endpoint for the DocumentDB cluster, automatically load-balanced across replicas
	ReaderEndpoint pulumi.StringOutput `pulumi:"readerEndpoint"`
	// Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `finalSnapshotIdentifier`. Default is `false`.
	SkipFinalSnapshot pulumi.BoolPtrOutput `pulumi:"skipFinalSnapshot"`
	// Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Automated snapshots **should not** be used for this attribute, unless from a different cluster. Automated snapshots are deleted as part of cluster destruction when the resource is replaced.
	SnapshotIdentifier pulumi.StringPtrOutput `pulumi:"snapshotIdentifier"`
	// Specifies whether the DB cluster is encrypted. The default is `false`.
	StorageEncrypted pulumi.BoolPtrOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// List of VPC security groups to associate
	// with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
}

Manages a DocumentDB Cluster.

Changes to a DocumentDB Cluster can occur when you manually change a parameter, such as `port`, and are reflected in the next maintenance window. Because of this, this provider may report a difference in its planning phase because a modification has not yet taken place. You can use the `applyImmediately` flag to instruct the service to apply the change immediately (see documentation below).

> **Note:** using `applyImmediately` can result in a brief downtime as the server reboots.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.NewCluster(ctx, "docdb", &docdb.ClusterArgs{
			BackupRetentionPeriod: pulumi.Int(5),
			ClusterIdentifier:     pulumi.String("my-docdb-cluster"),
			Engine:                pulumi.String("docdb"),
			MasterPassword:        pulumi.String("mustbeeightchars"),
			MasterUsername:        pulumi.String("foo"),
			PreferredBackupWindow: pulumi.String("07:00-09:00"),
			SkipFinalSnapshot:     pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DocumentDB Clusters can be imported using the `cluster_identifier`, e.g.,

```sh

$ pulumi import aws:docdb/cluster:Cluster docdb_cluster docdb-prod-cluster

```

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterState, opts ...pulumi.ResourceOption) (*Cluster, error)

GetCluster gets an existing Cluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOption) (*Cluster, error)

NewCluster registers a new resource with the given unique name, arguments, and options.

func (*Cluster) ElementType

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext

func (i *Cluster) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

type ClusterArgs

type ClusterArgs struct {
	// Specifies whether any cluster modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`.
	ApplyImmediately pulumi.BoolPtrInput
	// A list of EC2 Availability Zones that
	// instances in the DB cluster can be created in.
	AvailabilityZones pulumi.StringArrayInput
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrInput
	// The cluster identifier. If omitted, the provider will assign a random, unique identifier.
	ClusterIdentifier pulumi.StringPtrInput
	// Creates a unique cluster identifier beginning with the specified prefix. Conflicts with `clusterIdentifier`.
	ClusterIdentifierPrefix pulumi.StringPtrInput
	// List of DocumentDB Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance.
	DbSubnetGroupName pulumi.StringPtrInput
	// 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.
	DeletionProtection pulumi.BoolPtrInput
	// List of log types to export to cloudwatch. If omitted, no logs will be exported.
	// The following log types are supported: `audit`, `profiler`.
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The name of the database engine to be used for this DB cluster. Defaults to `docdb`. Valid Values: `docdb`
	Engine pulumi.StringPtrInput
	// The database engine version. Updating this argument results in an outage.
	EngineVersion pulumi.StringPtrInput
	// The name of your final DB snapshot
	// when this DB cluster is deleted. If omitted, no final snapshot will be
	// made.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// The global cluster identifier specified on `docdb.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// The ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringPtrInput
	// Password for the master DB user. Note that this may
	// show up in logs, and it will be stored in the state file. Please refer to the DocumentDB Naming Constraints.
	MasterPassword pulumi.StringPtrInput
	// Username for the master DB user.
	MasterUsername pulumi.StringPtrInput
	// The port on which the DB accepts connections
	Port pulumi.IntPtrInput
	// The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC
	// Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringPtrInput
	// The weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30
	PreferredMaintenanceWindow pulumi.StringPtrInput
	// Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `finalSnapshotIdentifier`. Default is `false`.
	SkipFinalSnapshot pulumi.BoolPtrInput
	// Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Automated snapshots **should not** be used for this attribute, unless from a different cluster. Automated snapshots are deleted as part of cluster destruction when the resource is replaced.
	SnapshotIdentifier pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false`.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// List of VPC security groups to associate
	// with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray

type ClusterArray []ClusterInput

func (ClusterArray) ElementType

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext

func (i ClusterArray) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterArrayInput

type ClusterArrayInput interface {
	pulumi.Input

	ToClusterArrayOutput() ClusterArrayOutput
	ToClusterArrayOutputWithContext(context.Context) ClusterArrayOutput
}

ClusterArrayInput is an input type that accepts ClusterArray and ClusterArrayOutput values. You can construct a concrete instance of `ClusterArrayInput` via:

ClusterArray{ ClusterArgs{...} }

type ClusterArrayOutput

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index

func (ClusterArrayOutput) ToClusterArrayOutput

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext

func (o ClusterArrayOutput) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterInput

type ClusterInput interface {
	pulumi.Input

	ToClusterOutput() ClusterOutput
	ToClusterOutputWithContext(ctx context.Context) ClusterOutput
}

type ClusterInstance

type ClusterInstance struct {
	pulumi.CustomResourceState

	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolOutput `pulumi:"applyImmediately"`
	// Amazon Resource Name (ARN) of cluster instance
	Arn pulumi.StringOutput `pulumi:"arn"`
	// This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrOutput `pulumi:"autoMinorVersionUpgrade"`
	// The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// (Optional) The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringOutput `pulumi:"caCertIdentifier"`
	// The identifier of the `docdb.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringOutput `pulumi:"clusterIdentifier"`
	// The DB subnet group to associate with this DB instance.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// The region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringOutput `pulumi:"dbiResourceId"`
	// A value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details.
	EnablePerformanceInsights pulumi.BoolOutput `pulumi:"enablePerformanceInsights"`
	// The DNS address for this instance. May not be writable
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// The name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`.
	Engine pulumi.StringPtrOutput `pulumi:"engine"`
	// The database engine version
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier.
	Identifier pulumi.StringOutput `pulumi:"identifier"`
	// Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
	IdentifierPrefix pulumi.StringOutput `pulumi:"identifierPrefix"`
	// The instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance).
	// DocumentDB currently supports the below instance classes.
	// Please see [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details.
	// - db.r5.large
	// - db.r5.xlarge
	// - db.r5.2xlarge
	// - db.r5.4xlarge
	// - db.r5.12xlarge
	// - db.r5.24xlarge
	// - db.r4.large
	// - db.r4.xlarge
	// - db.r4.2xlarge
	// - db.r4.4xlarge
	// - db.r4.8xlarge
	// - db.r4.16xlarge
	// - db.t3.medium
	InstanceClass pulumi.StringOutput `pulumi:"instanceClass"`
	// The ARN for the KMS encryption key if one is set to the cluster.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key.
	PerformanceInsightsKmsKeyId pulumi.StringOutput `pulumi:"performanceInsightsKmsKeyId"`
	// The database port
	Port pulumi.IntOutput `pulumi:"port"`
	// The daily time range during which automated backups are created if automated backups are enabled.
	PreferredBackupWindow pulumi.StringOutput `pulumi:"preferredBackupWindow"`
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".
	PreferredMaintenanceWindow pulumi.StringOutput `pulumi:"preferredMaintenanceWindow"`
	// Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoter to writer.
	PromotionTier      pulumi.IntPtrOutput `pulumi:"promotionTier"`
	PubliclyAccessible pulumi.BoolOutput   `pulumi:"publiclyAccessible"`
	// Specifies whether the DB cluster is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.
	Writer pulumi.BoolOutput `pulumi:"writer"`
}

Provides an DocumentDB Cluster Resource Instance. A Cluster Instance Resource defines attributes that are specific to a single instance in a [DocumentDB Cluster][1].

You do not designate a primary and subsequent replicas. Instead, you simply add DocumentDB Instances and DocumentDB manages the replication. You can use the [count][3] meta-parameter to make multiple instances and join them all to the same DocumentDB Cluster, or you may specify different Cluster Instance resources with various `instanceClass` sizes.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.NewCluster(ctx, "default", &docdb.ClusterArgs{
			ClusterIdentifier: pulumi.String("docdb-cluster-demo"),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			MasterUsername: pulumi.String("foo"),
			MasterPassword: pulumi.String("barbut8chars"),
		})
		if err != nil {
			return err
		}
		var clusterInstances []*docdb.ClusterInstance
		for index := 0; index < 2; index++ {
			key0 := index
			val0 := index
			__res, err := docdb.NewClusterInstance(ctx, fmt.Sprintf("clusterInstances-%v", key0), &docdb.ClusterInstanceArgs{
				Identifier:        pulumi.String(fmt.Sprintf("docdb-cluster-demo-%v", val0)),
				ClusterIdentifier: _default.ID(),
				InstanceClass:     pulumi.String("db.r5.large"),
			})
			if err != nil {
				return err
			}
			clusterInstances = append(clusterInstances, __res)
		}
		return nil
	})
}

```

## Import

DocumentDB Cluster Instances can be imported using the `identifier`, e.g.,

```sh

$ pulumi import aws:docdb/clusterInstance:ClusterInstance prod_instance_1 aurora-cluster-instance-1

```

func GetClusterInstance

func GetClusterInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterInstanceState, opts ...pulumi.ResourceOption) (*ClusterInstance, error)

GetClusterInstance gets an existing ClusterInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewClusterInstance

func NewClusterInstance(ctx *pulumi.Context,
	name string, args *ClusterInstanceArgs, opts ...pulumi.ResourceOption) (*ClusterInstance, error)

NewClusterInstance registers a new resource with the given unique name, arguments, and options.

func (*ClusterInstance) ElementType

func (*ClusterInstance) ElementType() reflect.Type

func (*ClusterInstance) ToClusterInstanceOutput

func (i *ClusterInstance) ToClusterInstanceOutput() ClusterInstanceOutput

func (*ClusterInstance) ToClusterInstanceOutputWithContext

func (i *ClusterInstance) ToClusterInstanceOutputWithContext(ctx context.Context) ClusterInstanceOutput

type ClusterInstanceArgs

type ClusterInstanceArgs struct {
	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolPtrInput
	// This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringPtrInput
	// (Optional) The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The identifier of the `docdb.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringInput
	// A value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details.
	EnablePerformanceInsights pulumi.BoolPtrInput
	// The name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`.
	Engine pulumi.StringPtrInput
	// The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier.
	Identifier pulumi.StringPtrInput
	// Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
	IdentifierPrefix pulumi.StringPtrInput
	// The instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance).
	// DocumentDB currently supports the below instance classes.
	// Please see [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details.
	// - db.r5.large
	// - db.r5.xlarge
	// - db.r5.2xlarge
	// - db.r5.4xlarge
	// - db.r5.12xlarge
	// - db.r5.24xlarge
	// - db.r4.large
	// - db.r4.xlarge
	// - db.r4.2xlarge
	// - db.r4.4xlarge
	// - db.r4.8xlarge
	// - db.r4.16xlarge
	// - db.t3.medium
	InstanceClass pulumi.StringInput
	// The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".
	PreferredMaintenanceWindow pulumi.StringPtrInput
	// Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoter to writer.
	PromotionTier pulumi.IntPtrInput
	// A map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterInstance resource.

func (ClusterInstanceArgs) ElementType

func (ClusterInstanceArgs) ElementType() reflect.Type

type ClusterInstanceArray

type ClusterInstanceArray []ClusterInstanceInput

func (ClusterInstanceArray) ElementType

func (ClusterInstanceArray) ElementType() reflect.Type

func (ClusterInstanceArray) ToClusterInstanceArrayOutput

func (i ClusterInstanceArray) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArray) ToClusterInstanceArrayOutputWithContext

func (i ClusterInstanceArray) ToClusterInstanceArrayOutputWithContext(ctx context.Context) ClusterInstanceArrayOutput

type ClusterInstanceArrayInput

type ClusterInstanceArrayInput interface {
	pulumi.Input

	ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput
	ToClusterInstanceArrayOutputWithContext(context.Context) ClusterInstanceArrayOutput
}

ClusterInstanceArrayInput is an input type that accepts ClusterInstanceArray and ClusterInstanceArrayOutput values. You can construct a concrete instance of `ClusterInstanceArrayInput` via:

ClusterInstanceArray{ ClusterInstanceArgs{...} }

type ClusterInstanceArrayOutput

type ClusterInstanceArrayOutput struct{ *pulumi.OutputState }

func (ClusterInstanceArrayOutput) ElementType

func (ClusterInstanceArrayOutput) ElementType() reflect.Type

func (ClusterInstanceArrayOutput) Index

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput

func (o ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutputWithContext

func (o ClusterInstanceArrayOutput) ToClusterInstanceArrayOutputWithContext(ctx context.Context) ClusterInstanceArrayOutput

type ClusterInstanceInput

type ClusterInstanceInput interface {
	pulumi.Input

	ToClusterInstanceOutput() ClusterInstanceOutput
	ToClusterInstanceOutputWithContext(ctx context.Context) ClusterInstanceOutput
}

type ClusterInstanceMap

type ClusterInstanceMap map[string]ClusterInstanceInput

func (ClusterInstanceMap) ElementType

func (ClusterInstanceMap) ElementType() reflect.Type

func (ClusterInstanceMap) ToClusterInstanceMapOutput

func (i ClusterInstanceMap) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMap) ToClusterInstanceMapOutputWithContext

func (i ClusterInstanceMap) ToClusterInstanceMapOutputWithContext(ctx context.Context) ClusterInstanceMapOutput

type ClusterInstanceMapInput

type ClusterInstanceMapInput interface {
	pulumi.Input

	ToClusterInstanceMapOutput() ClusterInstanceMapOutput
	ToClusterInstanceMapOutputWithContext(context.Context) ClusterInstanceMapOutput
}

ClusterInstanceMapInput is an input type that accepts ClusterInstanceMap and ClusterInstanceMapOutput values. You can construct a concrete instance of `ClusterInstanceMapInput` via:

ClusterInstanceMap{ "key": ClusterInstanceArgs{...} }

type ClusterInstanceMapOutput

type ClusterInstanceMapOutput struct{ *pulumi.OutputState }

func (ClusterInstanceMapOutput) ElementType

func (ClusterInstanceMapOutput) ElementType() reflect.Type

func (ClusterInstanceMapOutput) MapIndex

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutput

func (o ClusterInstanceMapOutput) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutputWithContext

func (o ClusterInstanceMapOutput) ToClusterInstanceMapOutputWithContext(ctx context.Context) ClusterInstanceMapOutput

type ClusterInstanceOutput

type ClusterInstanceOutput struct{ *pulumi.OutputState }

func (ClusterInstanceOutput) ApplyImmediately

func (o ClusterInstanceOutput) ApplyImmediately() pulumi.BoolOutput

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`.

func (ClusterInstanceOutput) Arn

Amazon Resource Name (ARN) of cluster instance

func (ClusterInstanceOutput) AutoMinorVersionUpgrade

func (o ClusterInstanceOutput) AutoMinorVersionUpgrade() pulumi.BoolPtrOutput

This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`.

func (ClusterInstanceOutput) AvailabilityZone

func (o ClusterInstanceOutput) AvailabilityZone() pulumi.StringOutput

The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details.

func (ClusterInstanceOutput) CaCertIdentifier

func (o ClusterInstanceOutput) CaCertIdentifier() pulumi.StringOutput

(Optional) The identifier of the CA certificate for the DB instance.

func (ClusterInstanceOutput) ClusterIdentifier

func (o ClusterInstanceOutput) ClusterIdentifier() pulumi.StringOutput

The identifier of the `docdb.Cluster` in which to launch this instance.

func (ClusterInstanceOutput) DbSubnetGroupName

func (o ClusterInstanceOutput) DbSubnetGroupName() pulumi.StringOutput

The DB subnet group to associate with this DB instance.

func (ClusterInstanceOutput) DbiResourceId

func (o ClusterInstanceOutput) DbiResourceId() pulumi.StringOutput

The region-unique, immutable identifier for the DB instance.

func (ClusterInstanceOutput) ElementType

func (ClusterInstanceOutput) ElementType() reflect.Type

func (ClusterInstanceOutput) EnablePerformanceInsights

func (o ClusterInstanceOutput) EnablePerformanceInsights() pulumi.BoolOutput

A value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details.

func (ClusterInstanceOutput) Endpoint

The DNS address for this instance. May not be writable

func (ClusterInstanceOutput) Engine

The name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`.

func (ClusterInstanceOutput) EngineVersion

func (o ClusterInstanceOutput) EngineVersion() pulumi.StringOutput

The database engine version

func (ClusterInstanceOutput) Identifier

func (o ClusterInstanceOutput) Identifier() pulumi.StringOutput

The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier.

func (ClusterInstanceOutput) IdentifierPrefix

func (o ClusterInstanceOutput) IdentifierPrefix() pulumi.StringOutput

Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.

func (ClusterInstanceOutput) InstanceClass

func (o ClusterInstanceOutput) InstanceClass() pulumi.StringOutput

The instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance). DocumentDB currently supports the below instance classes. Please see [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details. - db.r5.large - db.r5.xlarge - db.r5.2xlarge - db.r5.4xlarge - db.r5.12xlarge - db.r5.24xlarge - db.r4.large - db.r4.xlarge - db.r4.2xlarge - db.r4.4xlarge - db.r4.8xlarge - db.r4.16xlarge - db.t3.medium

func (ClusterInstanceOutput) KmsKeyId

The ARN for the KMS encryption key if one is set to the cluster.

func (ClusterInstanceOutput) PerformanceInsightsKmsKeyId

func (o ClusterInstanceOutput) PerformanceInsightsKmsKeyId() pulumi.StringOutput

The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key.

func (ClusterInstanceOutput) Port

The database port

func (ClusterInstanceOutput) PreferredBackupWindow

func (o ClusterInstanceOutput) PreferredBackupWindow() pulumi.StringOutput

The daily time range during which automated backups are created if automated backups are enabled.

func (ClusterInstanceOutput) PreferredMaintenanceWindow

func (o ClusterInstanceOutput) PreferredMaintenanceWindow() pulumi.StringOutput

The window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".

func (ClusterInstanceOutput) PromotionTier

func (o ClusterInstanceOutput) PromotionTier() pulumi.IntPtrOutput

Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoter to writer.

func (ClusterInstanceOutput) PubliclyAccessible

func (o ClusterInstanceOutput) PubliclyAccessible() pulumi.BoolOutput

func (ClusterInstanceOutput) StorageEncrypted

func (o ClusterInstanceOutput) StorageEncrypted() pulumi.BoolOutput

Specifies whether the DB cluster is encrypted.

func (ClusterInstanceOutput) Tags

A map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ClusterInstanceOutput) TagsAll

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ClusterInstanceOutput) ToClusterInstanceOutput

func (o ClusterInstanceOutput) ToClusterInstanceOutput() ClusterInstanceOutput

func (ClusterInstanceOutput) ToClusterInstanceOutputWithContext

func (o ClusterInstanceOutput) ToClusterInstanceOutputWithContext(ctx context.Context) ClusterInstanceOutput

func (ClusterInstanceOutput) Writer

Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.

type ClusterInstanceState

type ClusterInstanceState struct {
	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) of cluster instance
	Arn pulumi.StringPtrInput
	// This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringPtrInput
	// (Optional) The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The identifier of the `docdb.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringPtrInput
	// The DB subnet group to associate with this DB instance.
	DbSubnetGroupName pulumi.StringPtrInput
	// The region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringPtrInput
	// A value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details.
	EnablePerformanceInsights pulumi.BoolPtrInput
	// The DNS address for this instance. May not be writable
	Endpoint pulumi.StringPtrInput
	// The name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`.
	Engine pulumi.StringPtrInput
	// The database engine version
	EngineVersion pulumi.StringPtrInput
	// The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier.
	Identifier pulumi.StringPtrInput
	// Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
	IdentifierPrefix pulumi.StringPtrInput
	// The instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance).
	// DocumentDB currently supports the below instance classes.
	// Please see [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details.
	// - db.r5.large
	// - db.r5.xlarge
	// - db.r5.2xlarge
	// - db.r5.4xlarge
	// - db.r5.12xlarge
	// - db.r5.24xlarge
	// - db.r4.large
	// - db.r4.xlarge
	// - db.r4.2xlarge
	// - db.r4.4xlarge
	// - db.r4.8xlarge
	// - db.r4.16xlarge
	// - db.t3.medium
	InstanceClass pulumi.StringPtrInput
	// The ARN for the KMS encryption key if one is set to the cluster.
	KmsKeyId pulumi.StringPtrInput
	// The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The database port
	Port pulumi.IntPtrInput
	// The daily time range during which automated backups are created if automated backups are enabled.
	PreferredBackupWindow pulumi.StringPtrInput
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".
	PreferredMaintenanceWindow pulumi.StringPtrInput
	// Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoter to writer.
	PromotionTier      pulumi.IntPtrInput
	PubliclyAccessible pulumi.BoolPtrInput
	// Specifies whether the DB cluster is encrypted.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.
	Writer pulumi.BoolPtrInput
}

func (ClusterInstanceState) ElementType

func (ClusterInstanceState) ElementType() reflect.Type

type ClusterMap

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext

func (i ClusterMap) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterMapInput

type ClusterMapInput interface {
	pulumi.Input

	ToClusterMapOutput() ClusterMapOutput
	ToClusterMapOutputWithContext(context.Context) ClusterMapOutput
}

ClusterMapInput is an input type that accepts ClusterMap and ClusterMapOutput values. You can construct a concrete instance of `ClusterMapInput` via:

ClusterMap{ "key": ClusterArgs{...} }

type ClusterMapOutput

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex

func (ClusterMapOutput) ToClusterMapOutput

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext

func (o ClusterMapOutput) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterOutput

type ClusterOutput struct{ *pulumi.OutputState }

func (ClusterOutput) ApplyImmediately

func (o ClusterOutput) ApplyImmediately() pulumi.BoolOutput

Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`.

func (ClusterOutput) Arn

Amazon Resource Name (ARN) of cluster

func (ClusterOutput) AvailabilityZones

func (o ClusterOutput) AvailabilityZones() pulumi.StringArrayOutput

A list of EC2 Availability Zones that instances in the DB cluster can be created in.

func (ClusterOutput) BackupRetentionPeriod

func (o ClusterOutput) BackupRetentionPeriod() pulumi.IntPtrOutput

The days to retain backups for. Default `1`

func (ClusterOutput) ClusterIdentifier

func (o ClusterOutput) ClusterIdentifier() pulumi.StringOutput

The cluster identifier. If omitted, the provider will assign a random, unique identifier.

func (ClusterOutput) ClusterIdentifierPrefix

func (o ClusterOutput) ClusterIdentifierPrefix() pulumi.StringOutput

Creates a unique cluster identifier beginning with the specified prefix. Conflicts with `clusterIdentifier`.

func (ClusterOutput) ClusterMembers

func (o ClusterOutput) ClusterMembers() pulumi.StringArrayOutput

List of DocumentDB Instances that are a part of this cluster

func (ClusterOutput) ClusterResourceId

func (o ClusterOutput) ClusterResourceId() pulumi.StringOutput

The DocumentDB Cluster Resource ID

func (ClusterOutput) DbClusterParameterGroupName

func (o ClusterOutput) DbClusterParameterGroupName() pulumi.StringOutput

A cluster parameter group to associate with the cluster.

func (ClusterOutput) DbSubnetGroupName

func (o ClusterOutput) DbSubnetGroupName() pulumi.StringOutput

A DB subnet group to associate with this DB instance.

func (ClusterOutput) DeletionProtection

func (o ClusterOutput) DeletionProtection() pulumi.BoolPtrOutput

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.

func (ClusterOutput) ElementType

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) EnabledCloudwatchLogsExports

func (o ClusterOutput) EnabledCloudwatchLogsExports() pulumi.StringArrayOutput

List of log types to export to cloudwatch. If omitted, no logs will be exported. The following log types are supported: `audit`, `profiler`.

func (ClusterOutput) Endpoint

func (o ClusterOutput) Endpoint() pulumi.StringOutput

The DNS address of the DocumentDB instance

func (ClusterOutput) Engine

The name of the database engine to be used for this DB cluster. Defaults to `docdb`. Valid Values: `docdb`

func (ClusterOutput) EngineVersion

func (o ClusterOutput) EngineVersion() pulumi.StringOutput

The database engine version. Updating this argument results in an outage.

func (ClusterOutput) FinalSnapshotIdentifier

func (o ClusterOutput) FinalSnapshotIdentifier() pulumi.StringPtrOutput

The name of your final DB snapshot when this DB cluster is deleted. If omitted, no final snapshot will be made.

func (ClusterOutput) GlobalClusterIdentifier

func (o ClusterOutput) GlobalClusterIdentifier() pulumi.StringPtrOutput

The global cluster identifier specified on `docdb.GlobalCluster`.

func (ClusterOutput) HostedZoneId

func (o ClusterOutput) HostedZoneId() pulumi.StringOutput

The Route53 Hosted Zone ID of the endpoint

func (ClusterOutput) KmsKeyId

func (o ClusterOutput) KmsKeyId() pulumi.StringOutput

The ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.

func (ClusterOutput) MasterPassword

func (o ClusterOutput) MasterPassword() pulumi.StringPtrOutput

Password for the master DB user. Note that this may show up in logs, and it will be stored in the state file. Please refer to the DocumentDB Naming Constraints.

func (ClusterOutput) MasterUsername

func (o ClusterOutput) MasterUsername() pulumi.StringOutput

Username for the master DB user.

func (ClusterOutput) Port

The port on which the DB accepts connections

func (ClusterOutput) PreferredBackupWindow

func (o ClusterOutput) PreferredBackupWindow() pulumi.StringOutput

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00

func (ClusterOutput) PreferredMaintenanceWindow

func (o ClusterOutput) PreferredMaintenanceWindow() pulumi.StringOutput

The weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30

func (ClusterOutput) ReaderEndpoint

func (o ClusterOutput) ReaderEndpoint() pulumi.StringOutput

A read-only endpoint for the DocumentDB cluster, automatically load-balanced across replicas

func (ClusterOutput) SkipFinalSnapshot

func (o ClusterOutput) SkipFinalSnapshot() pulumi.BoolPtrOutput

Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `finalSnapshotIdentifier`. Default is `false`.

func (ClusterOutput) SnapshotIdentifier

func (o ClusterOutput) SnapshotIdentifier() pulumi.StringPtrOutput

Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Automated snapshots **should not** be used for this attribute, unless from a different cluster. Automated snapshots are deleted as part of cluster destruction when the resource is replaced.

func (ClusterOutput) StorageEncrypted

func (o ClusterOutput) StorageEncrypted() pulumi.BoolPtrOutput

Specifies whether the DB cluster is encrypted. The default is `false`.

func (ClusterOutput) Tags

A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ClusterOutput) TagsAll

func (o ClusterOutput) TagsAll() pulumi.StringMapOutput

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ClusterOutput) ToClusterOutput

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext

func (o ClusterOutput) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

func (ClusterOutput) VpcSecurityGroupIds

func (o ClusterOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

List of VPC security groups to associate with the Cluster

type ClusterParameterGroup

type ClusterParameterGroup struct {
	pulumi.CustomResourceState

	// The ARN of the DocumentDB cluster parameter group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the DocumentDB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The family of the DocumentDB cluster parameter group.
	Family pulumi.StringOutput `pulumi:"family"`
	// The name of the DocumentDB parameter.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// A list of DocumentDB parameters to apply. Setting parameters to system default values may show a difference on imported resources.
	Parameters ClusterParameterGroupParameterArrayOutput `pulumi:"parameters"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a DocumentDB Cluster Parameter Group

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.NewClusterParameterGroup(ctx, "example", &docdb.ClusterParameterGroupArgs{
			Description: pulumi.String("docdb cluster parameter group"),
			Family:      pulumi.String("docdb3.6"),
			Parameters: docdb.ClusterParameterGroupParameterArray{
				&docdb.ClusterParameterGroupParameterArgs{
					Name:  pulumi.String("tls"),
					Value: pulumi.String("enabled"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DocumentDB Cluster Parameter Groups can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:docdb/clusterParameterGroup:ClusterParameterGroup cluster_pg production-pg-1

```

func GetClusterParameterGroup

func GetClusterParameterGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterParameterGroupState, opts ...pulumi.ResourceOption) (*ClusterParameterGroup, error)

GetClusterParameterGroup gets an existing ClusterParameterGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewClusterParameterGroup

func NewClusterParameterGroup(ctx *pulumi.Context,
	name string, args *ClusterParameterGroupArgs, opts ...pulumi.ResourceOption) (*ClusterParameterGroup, error)

NewClusterParameterGroup registers a new resource with the given unique name, arguments, and options.

func (*ClusterParameterGroup) ElementType

func (*ClusterParameterGroup) ElementType() reflect.Type

func (*ClusterParameterGroup) ToClusterParameterGroupOutput

func (i *ClusterParameterGroup) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (*ClusterParameterGroup) ToClusterParameterGroupOutputWithContext

func (i *ClusterParameterGroup) ToClusterParameterGroupOutputWithContext(ctx context.Context) ClusterParameterGroupOutput

type ClusterParameterGroupArgs

type ClusterParameterGroupArgs struct {
	// The description of the DocumentDB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DocumentDB cluster parameter group.
	Family pulumi.StringInput
	// The name of the DocumentDB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DocumentDB parameters to apply. Setting parameters to system default values may show a difference on imported resources.
	Parameters ClusterParameterGroupParameterArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterParameterGroup resource.

func (ClusterParameterGroupArgs) ElementType

func (ClusterParameterGroupArgs) ElementType() reflect.Type

type ClusterParameterGroupArray

type ClusterParameterGroupArray []ClusterParameterGroupInput

func (ClusterParameterGroupArray) ElementType

func (ClusterParameterGroupArray) ElementType() reflect.Type

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput

func (i ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutputWithContext

func (i ClusterParameterGroupArray) ToClusterParameterGroupArrayOutputWithContext(ctx context.Context) ClusterParameterGroupArrayOutput

type ClusterParameterGroupArrayInput

type ClusterParameterGroupArrayInput interface {
	pulumi.Input

	ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput
	ToClusterParameterGroupArrayOutputWithContext(context.Context) ClusterParameterGroupArrayOutput
}

ClusterParameterGroupArrayInput is an input type that accepts ClusterParameterGroupArray and ClusterParameterGroupArrayOutput values. You can construct a concrete instance of `ClusterParameterGroupArrayInput` via:

ClusterParameterGroupArray{ ClusterParameterGroupArgs{...} }

type ClusterParameterGroupArrayOutput

type ClusterParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupArrayOutput) ElementType

func (ClusterParameterGroupArrayOutput) Index

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput

func (o ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutputWithContext

func (o ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutputWithContext(ctx context.Context) ClusterParameterGroupArrayOutput

type ClusterParameterGroupInput

type ClusterParameterGroupInput interface {
	pulumi.Input

	ToClusterParameterGroupOutput() ClusterParameterGroupOutput
	ToClusterParameterGroupOutputWithContext(ctx context.Context) ClusterParameterGroupOutput
}

type ClusterParameterGroupMap

type ClusterParameterGroupMap map[string]ClusterParameterGroupInput

func (ClusterParameterGroupMap) ElementType

func (ClusterParameterGroupMap) ElementType() reflect.Type

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutput

func (i ClusterParameterGroupMap) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutputWithContext

func (i ClusterParameterGroupMap) ToClusterParameterGroupMapOutputWithContext(ctx context.Context) ClusterParameterGroupMapOutput

type ClusterParameterGroupMapInput

type ClusterParameterGroupMapInput interface {
	pulumi.Input

	ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput
	ToClusterParameterGroupMapOutputWithContext(context.Context) ClusterParameterGroupMapOutput
}

ClusterParameterGroupMapInput is an input type that accepts ClusterParameterGroupMap and ClusterParameterGroupMapOutput values. You can construct a concrete instance of `ClusterParameterGroupMapInput` via:

ClusterParameterGroupMap{ "key": ClusterParameterGroupArgs{...} }

type ClusterParameterGroupMapOutput

type ClusterParameterGroupMapOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupMapOutput) ElementType

func (ClusterParameterGroupMapOutput) MapIndex

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput

func (o ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutputWithContext

func (o ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutputWithContext(ctx context.Context) ClusterParameterGroupMapOutput

type ClusterParameterGroupOutput

type ClusterParameterGroupOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupOutput) Arn

The ARN of the DocumentDB cluster parameter group.

func (ClusterParameterGroupOutput) Description

The description of the DocumentDB cluster parameter group. Defaults to "Managed by Pulumi".

func (ClusterParameterGroupOutput) ElementType

func (ClusterParameterGroupOutput) Family

The family of the DocumentDB cluster parameter group.

func (ClusterParameterGroupOutput) Name

The name of the DocumentDB parameter.

func (ClusterParameterGroupOutput) NamePrefix

Creates a unique name beginning with the specified prefix. Conflicts with `name`.

func (ClusterParameterGroupOutput) Parameters

A list of DocumentDB parameters to apply. Setting parameters to system default values may show a difference on imported resources.

func (ClusterParameterGroupOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ClusterParameterGroupOutput) TagsAll

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutput

func (o ClusterParameterGroupOutput) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutputWithContext

func (o ClusterParameterGroupOutput) ToClusterParameterGroupOutputWithContext(ctx context.Context) ClusterParameterGroupOutput

type ClusterParameterGroupParameter

type ClusterParameterGroupParameter struct {
	// Valid values are `immediate` and `pending-reboot`. Defaults to `pending-reboot`.
	ApplyMethod *string `pulumi:"applyMethod"`
	// The name of the DocumentDB parameter.
	Name string `pulumi:"name"`
	// The value of the DocumentDB parameter.
	Value string `pulumi:"value"`
}

type ClusterParameterGroupParameterArgs

type ClusterParameterGroupParameterArgs struct {
	// Valid values are `immediate` and `pending-reboot`. Defaults to `pending-reboot`.
	ApplyMethod pulumi.StringPtrInput `pulumi:"applyMethod"`
	// The name of the DocumentDB parameter.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the DocumentDB parameter.
	Value pulumi.StringInput `pulumi:"value"`
}

func (ClusterParameterGroupParameterArgs) ElementType

func (ClusterParameterGroupParameterArgs) ToClusterParameterGroupParameterOutput

func (i ClusterParameterGroupParameterArgs) ToClusterParameterGroupParameterOutput() ClusterParameterGroupParameterOutput

func (ClusterParameterGroupParameterArgs) ToClusterParameterGroupParameterOutputWithContext

func (i ClusterParameterGroupParameterArgs) ToClusterParameterGroupParameterOutputWithContext(ctx context.Context) ClusterParameterGroupParameterOutput

type ClusterParameterGroupParameterArray

type ClusterParameterGroupParameterArray []ClusterParameterGroupParameterInput

func (ClusterParameterGroupParameterArray) ElementType

func (ClusterParameterGroupParameterArray) ToClusterParameterGroupParameterArrayOutput

func (i ClusterParameterGroupParameterArray) ToClusterParameterGroupParameterArrayOutput() ClusterParameterGroupParameterArrayOutput

func (ClusterParameterGroupParameterArray) ToClusterParameterGroupParameterArrayOutputWithContext

func (i ClusterParameterGroupParameterArray) ToClusterParameterGroupParameterArrayOutputWithContext(ctx context.Context) ClusterParameterGroupParameterArrayOutput

type ClusterParameterGroupParameterArrayInput

type ClusterParameterGroupParameterArrayInput interface {
	pulumi.Input

	ToClusterParameterGroupParameterArrayOutput() ClusterParameterGroupParameterArrayOutput
	ToClusterParameterGroupParameterArrayOutputWithContext(context.Context) ClusterParameterGroupParameterArrayOutput
}

ClusterParameterGroupParameterArrayInput is an input type that accepts ClusterParameterGroupParameterArray and ClusterParameterGroupParameterArrayOutput values. You can construct a concrete instance of `ClusterParameterGroupParameterArrayInput` via:

ClusterParameterGroupParameterArray{ ClusterParameterGroupParameterArgs{...} }

type ClusterParameterGroupParameterArrayOutput

type ClusterParameterGroupParameterArrayOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupParameterArrayOutput) ElementType

func (ClusterParameterGroupParameterArrayOutput) Index

func (ClusterParameterGroupParameterArrayOutput) ToClusterParameterGroupParameterArrayOutput

func (o ClusterParameterGroupParameterArrayOutput) ToClusterParameterGroupParameterArrayOutput() ClusterParameterGroupParameterArrayOutput

func (ClusterParameterGroupParameterArrayOutput) ToClusterParameterGroupParameterArrayOutputWithContext

func (o ClusterParameterGroupParameterArrayOutput) ToClusterParameterGroupParameterArrayOutputWithContext(ctx context.Context) ClusterParameterGroupParameterArrayOutput

type ClusterParameterGroupParameterInput

type ClusterParameterGroupParameterInput interface {
	pulumi.Input

	ToClusterParameterGroupParameterOutput() ClusterParameterGroupParameterOutput
	ToClusterParameterGroupParameterOutputWithContext(context.Context) ClusterParameterGroupParameterOutput
}

ClusterParameterGroupParameterInput is an input type that accepts ClusterParameterGroupParameterArgs and ClusterParameterGroupParameterOutput values. You can construct a concrete instance of `ClusterParameterGroupParameterInput` via:

ClusterParameterGroupParameterArgs{...}

type ClusterParameterGroupParameterOutput

type ClusterParameterGroupParameterOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupParameterOutput) ApplyMethod

Valid values are `immediate` and `pending-reboot`. Defaults to `pending-reboot`.

func (ClusterParameterGroupParameterOutput) ElementType

func (ClusterParameterGroupParameterOutput) Name

The name of the DocumentDB parameter.

func (ClusterParameterGroupParameterOutput) ToClusterParameterGroupParameterOutput

func (o ClusterParameterGroupParameterOutput) ToClusterParameterGroupParameterOutput() ClusterParameterGroupParameterOutput

func (ClusterParameterGroupParameterOutput) ToClusterParameterGroupParameterOutputWithContext

func (o ClusterParameterGroupParameterOutput) ToClusterParameterGroupParameterOutputWithContext(ctx context.Context) ClusterParameterGroupParameterOutput

func (ClusterParameterGroupParameterOutput) Value

The value of the DocumentDB parameter.

type ClusterParameterGroupState

type ClusterParameterGroupState struct {
	// The ARN of the DocumentDB cluster parameter group.
	Arn pulumi.StringPtrInput
	// The description of the DocumentDB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DocumentDB cluster parameter group.
	Family pulumi.StringPtrInput
	// The name of the DocumentDB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DocumentDB parameters to apply. Setting parameters to system default values may show a difference on imported resources.
	Parameters ClusterParameterGroupParameterArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ClusterParameterGroupState) ElementType

func (ClusterParameterGroupState) ElementType() reflect.Type

type ClusterSnapshot

type ClusterSnapshot struct {
	pulumi.CustomResourceState

	// List of EC2 Availability Zones that instances in the DocumentDB cluster snapshot can be restored in.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The DocumentDB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringOutput `pulumi:"dbClusterIdentifier"`
	// The Amazon Resource Name (ARN) for the DocumentDB Cluster Snapshot.
	DbClusterSnapshotArn pulumi.StringOutput `pulumi:"dbClusterSnapshotArn"`
	// The Identifier for the snapshot.
	DbClusterSnapshotIdentifier pulumi.StringOutput `pulumi:"dbClusterSnapshotIdentifier"`
	// Specifies the name of the database engine.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Version of the database engine for this DocumentDB cluster snapshot.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// If storageEncrypted is true, the AWS KMS key identifier for the encrypted DocumentDB cluster snapshot.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Port that the DocumentDB cluster was listening on at the time of the snapshot.
	Port                       pulumi.IntOutput    `pulumi:"port"`
	SnapshotType               pulumi.StringOutput `pulumi:"snapshotType"`
	SourceDbClusterSnapshotArn pulumi.StringOutput `pulumi:"sourceDbClusterSnapshotArn"`
	// The status of this DocumentDB Cluster Snapshot.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies whether the DocumentDB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// The VPC ID associated with the DocumentDB cluster snapshot.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages a DocumentDB database cluster snapshot for DocumentDB clusters.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.NewClusterSnapshot(ctx, "example", &docdb.ClusterSnapshotArgs{
			DbClusterIdentifier:         pulumi.Any(aws_docdb_cluster.Example.Id),
			DbClusterSnapshotIdentifier: pulumi.String("resourcetestsnapshot1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_docdb_cluster_snapshot` can be imported by using the cluster snapshot identifier, e.g.,

```sh

$ pulumi import aws:docdb/clusterSnapshot:ClusterSnapshot example my-cluster-snapshot

```

func GetClusterSnapshot

func GetClusterSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterSnapshotState, opts ...pulumi.ResourceOption) (*ClusterSnapshot, error)

GetClusterSnapshot gets an existing ClusterSnapshot resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewClusterSnapshot

func NewClusterSnapshot(ctx *pulumi.Context,
	name string, args *ClusterSnapshotArgs, opts ...pulumi.ResourceOption) (*ClusterSnapshot, error)

NewClusterSnapshot registers a new resource with the given unique name, arguments, and options.

func (*ClusterSnapshot) ElementType

func (*ClusterSnapshot) ElementType() reflect.Type

func (*ClusterSnapshot) ToClusterSnapshotOutput

func (i *ClusterSnapshot) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (*ClusterSnapshot) ToClusterSnapshotOutputWithContext

func (i *ClusterSnapshot) ToClusterSnapshotOutputWithContext(ctx context.Context) ClusterSnapshotOutput

type ClusterSnapshotArgs

type ClusterSnapshotArgs struct {
	// The DocumentDB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringInput
	// The Identifier for the snapshot.
	DbClusterSnapshotIdentifier pulumi.StringInput
}

The set of arguments for constructing a ClusterSnapshot resource.

func (ClusterSnapshotArgs) ElementType

func (ClusterSnapshotArgs) ElementType() reflect.Type

type ClusterSnapshotArray

type ClusterSnapshotArray []ClusterSnapshotInput

func (ClusterSnapshotArray) ElementType

func (ClusterSnapshotArray) ElementType() reflect.Type

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutput

func (i ClusterSnapshotArray) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutputWithContext

func (i ClusterSnapshotArray) ToClusterSnapshotArrayOutputWithContext(ctx context.Context) ClusterSnapshotArrayOutput

type ClusterSnapshotArrayInput

type ClusterSnapshotArrayInput interface {
	pulumi.Input

	ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput
	ToClusterSnapshotArrayOutputWithContext(context.Context) ClusterSnapshotArrayOutput
}

ClusterSnapshotArrayInput is an input type that accepts ClusterSnapshotArray and ClusterSnapshotArrayOutput values. You can construct a concrete instance of `ClusterSnapshotArrayInput` via:

ClusterSnapshotArray{ ClusterSnapshotArgs{...} }

type ClusterSnapshotArrayOutput

type ClusterSnapshotArrayOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotArrayOutput) ElementType

func (ClusterSnapshotArrayOutput) ElementType() reflect.Type

func (ClusterSnapshotArrayOutput) Index

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput

func (o ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutputWithContext

func (o ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutputWithContext(ctx context.Context) ClusterSnapshotArrayOutput

type ClusterSnapshotInput

type ClusterSnapshotInput interface {
	pulumi.Input

	ToClusterSnapshotOutput() ClusterSnapshotOutput
	ToClusterSnapshotOutputWithContext(ctx context.Context) ClusterSnapshotOutput
}

type ClusterSnapshotMap

type ClusterSnapshotMap map[string]ClusterSnapshotInput

func (ClusterSnapshotMap) ElementType

func (ClusterSnapshotMap) ElementType() reflect.Type

func (ClusterSnapshotMap) ToClusterSnapshotMapOutput

func (i ClusterSnapshotMap) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMap) ToClusterSnapshotMapOutputWithContext

func (i ClusterSnapshotMap) ToClusterSnapshotMapOutputWithContext(ctx context.Context) ClusterSnapshotMapOutput

type ClusterSnapshotMapInput

type ClusterSnapshotMapInput interface {
	pulumi.Input

	ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput
	ToClusterSnapshotMapOutputWithContext(context.Context) ClusterSnapshotMapOutput
}

ClusterSnapshotMapInput is an input type that accepts ClusterSnapshotMap and ClusterSnapshotMapOutput values. You can construct a concrete instance of `ClusterSnapshotMapInput` via:

ClusterSnapshotMap{ "key": ClusterSnapshotArgs{...} }

type ClusterSnapshotMapOutput

type ClusterSnapshotMapOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotMapOutput) ElementType

func (ClusterSnapshotMapOutput) ElementType() reflect.Type

func (ClusterSnapshotMapOutput) MapIndex

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput

func (o ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutputWithContext

func (o ClusterSnapshotMapOutput) ToClusterSnapshotMapOutputWithContext(ctx context.Context) ClusterSnapshotMapOutput

type ClusterSnapshotOutput

type ClusterSnapshotOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotOutput) AvailabilityZones

func (o ClusterSnapshotOutput) AvailabilityZones() pulumi.StringArrayOutput

List of EC2 Availability Zones that instances in the DocumentDB cluster snapshot can be restored in.

func (ClusterSnapshotOutput) DbClusterIdentifier

func (o ClusterSnapshotOutput) DbClusterIdentifier() pulumi.StringOutput

The DocumentDB Cluster Identifier from which to take the snapshot.

func (ClusterSnapshotOutput) DbClusterSnapshotArn

func (o ClusterSnapshotOutput) DbClusterSnapshotArn() pulumi.StringOutput

The Amazon Resource Name (ARN) for the DocumentDB Cluster Snapshot.

func (ClusterSnapshotOutput) DbClusterSnapshotIdentifier

func (o ClusterSnapshotOutput) DbClusterSnapshotIdentifier() pulumi.StringOutput

The Identifier for the snapshot.

func (ClusterSnapshotOutput) ElementType

func (ClusterSnapshotOutput) ElementType() reflect.Type

func (ClusterSnapshotOutput) Engine

Specifies the name of the database engine.

func (ClusterSnapshotOutput) EngineVersion

func (o ClusterSnapshotOutput) EngineVersion() pulumi.StringOutput

Version of the database engine for this DocumentDB cluster snapshot.

func (ClusterSnapshotOutput) KmsKeyId

If storageEncrypted is true, the AWS KMS key identifier for the encrypted DocumentDB cluster snapshot.

func (ClusterSnapshotOutput) Port

Port that the DocumentDB cluster was listening on at the time of the snapshot.

func (ClusterSnapshotOutput) SnapshotType

func (o ClusterSnapshotOutput) SnapshotType() pulumi.StringOutput

func (ClusterSnapshotOutput) SourceDbClusterSnapshotArn

func (o ClusterSnapshotOutput) SourceDbClusterSnapshotArn() pulumi.StringOutput

func (ClusterSnapshotOutput) Status

The status of this DocumentDB Cluster Snapshot.

func (ClusterSnapshotOutput) StorageEncrypted

func (o ClusterSnapshotOutput) StorageEncrypted() pulumi.BoolOutput

Specifies whether the DocumentDB cluster snapshot is encrypted.

func (ClusterSnapshotOutput) ToClusterSnapshotOutput

func (o ClusterSnapshotOutput) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (ClusterSnapshotOutput) ToClusterSnapshotOutputWithContext

func (o ClusterSnapshotOutput) ToClusterSnapshotOutputWithContext(ctx context.Context) ClusterSnapshotOutput

func (ClusterSnapshotOutput) VpcId

The VPC ID associated with the DocumentDB cluster snapshot.

type ClusterSnapshotState

type ClusterSnapshotState struct {
	// List of EC2 Availability Zones that instances in the DocumentDB cluster snapshot can be restored in.
	AvailabilityZones pulumi.StringArrayInput
	// The DocumentDB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) for the DocumentDB Cluster Snapshot.
	DbClusterSnapshotArn pulumi.StringPtrInput
	// The Identifier for the snapshot.
	DbClusterSnapshotIdentifier pulumi.StringPtrInput
	// Specifies the name of the database engine.
	Engine pulumi.StringPtrInput
	// Version of the database engine for this DocumentDB cluster snapshot.
	EngineVersion pulumi.StringPtrInput
	// If storageEncrypted is true, the AWS KMS key identifier for the encrypted DocumentDB cluster snapshot.
	KmsKeyId pulumi.StringPtrInput
	// Port that the DocumentDB cluster was listening on at the time of the snapshot.
	Port                       pulumi.IntPtrInput
	SnapshotType               pulumi.StringPtrInput
	SourceDbClusterSnapshotArn pulumi.StringPtrInput
	// The status of this DocumentDB Cluster Snapshot.
	Status pulumi.StringPtrInput
	// Specifies whether the DocumentDB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolPtrInput
	// The VPC ID associated with the DocumentDB cluster snapshot.
	VpcId pulumi.StringPtrInput
}

func (ClusterSnapshotState) ElementType

func (ClusterSnapshotState) ElementType() reflect.Type

type ClusterState

type ClusterState struct {
	// Specifies whether any cluster modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`.
	ApplyImmediately pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringPtrInput
	// A list of EC2 Availability Zones that
	// instances in the DB cluster can be created in.
	AvailabilityZones pulumi.StringArrayInput
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrInput
	// The cluster identifier. If omitted, the provider will assign a random, unique identifier.
	ClusterIdentifier pulumi.StringPtrInput
	// Creates a unique cluster identifier beginning with the specified prefix. Conflicts with `clusterIdentifier`.
	ClusterIdentifierPrefix pulumi.StringPtrInput
	// List of DocumentDB Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayInput
	// The DocumentDB Cluster Resource ID
	ClusterResourceId pulumi.StringPtrInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance.
	DbSubnetGroupName pulumi.StringPtrInput
	// 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.
	DeletionProtection pulumi.BoolPtrInput
	// List of log types to export to cloudwatch. If omitted, no logs will be exported.
	// The following log types are supported: `audit`, `profiler`.
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The DNS address of the DocumentDB instance
	Endpoint pulumi.StringPtrInput
	// The name of the database engine to be used for this DB cluster. Defaults to `docdb`. Valid Values: `docdb`
	Engine pulumi.StringPtrInput
	// The database engine version. Updating this argument results in an outage.
	EngineVersion pulumi.StringPtrInput
	// The name of your final DB snapshot
	// when this DB cluster is deleted. If omitted, no final snapshot will be
	// made.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// The global cluster identifier specified on `docdb.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// The Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringPtrInput
	// The ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringPtrInput
	// Password for the master DB user. Note that this may
	// show up in logs, and it will be stored in the state file. Please refer to the DocumentDB Naming Constraints.
	MasterPassword pulumi.StringPtrInput
	// Username for the master DB user.
	MasterUsername pulumi.StringPtrInput
	// The port on which the DB accepts connections
	Port pulumi.IntPtrInput
	// The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC
	// Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringPtrInput
	// The weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30
	PreferredMaintenanceWindow pulumi.StringPtrInput
	// A read-only endpoint for the DocumentDB cluster, automatically load-balanced across replicas
	ReaderEndpoint pulumi.StringPtrInput
	// Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `finalSnapshotIdentifier`. Default is `false`.
	SkipFinalSnapshot pulumi.BoolPtrInput
	// Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Automated snapshots **should not** be used for this attribute, unless from a different cluster. Automated snapshots are deleted as part of cluster destruction when the resource is replaced.
	SnapshotIdentifier pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false`.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// List of VPC security groups to associate
	// with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type EventSubscription

type EventSubscription struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name of the DocumentDB event notification subscription
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The AWS customer account associated with the DocumentDB event notification subscription
	CustomerAwsId pulumi.StringOutput `pulumi:"customerAwsId"`
	// A boolean flag to enable/disable the subscription. Defaults to true.
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
	// A list of event categories for a SourceType that you want to subscribe to. See https://docs.aws.amazon.com/documentdb/latest/developerguide/API_Event.html or run `aws docdb describe-event-categories`.
	EventCategories pulumi.StringArrayOutput `pulumi:"eventCategories"`
	// The name of the DocumentDB event subscription. By default generated by this provider.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the DocumentDB event subscription. Conflicts with `name`.
	NamePrefix  pulumi.StringOutput `pulumi:"namePrefix"`
	SnsTopicArn pulumi.StringOutput `pulumi:"snsTopicArn"`
	// A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a sourceType must also be specified.
	SourceIds pulumi.StringArrayOutput `pulumi:"sourceIds"`
	// The type of source that will be generating the events. Valid options are `db-instance`, `db-cluster`, `db-parameter-group`, `db-security-group`,`  db-cluster-snapshot `. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrOutput `pulumi:"sourceType"`
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a DocumentDB event subscription resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/sns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := docdb.NewCluster(ctx, "exampleCluster", &docdb.ClusterArgs{
			ClusterIdentifier: pulumi.String("example"),
			AvailabilityZones: pulumi.StringArray{
				data.Aws_availability_zones.Available.Names[0],
				data.Aws_availability_zones.Available.Names[1],
				data.Aws_availability_zones.Available.Names[2],
			},
			MasterUsername:    pulumi.String("foo"),
			MasterPassword:    pulumi.String("mustbeeightcharaters"),
			SkipFinalSnapshot: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleTopic, err := sns.NewTopic(ctx, "exampleTopic", nil)
		if err != nil {
			return err
		}
		_, err = docdb.NewEventSubscription(ctx, "exampleEventSubscription", &docdb.EventSubscriptionArgs{
			Enabled: pulumi.Bool(true),
			EventCategories: pulumi.StringArray{
				pulumi.String("creation"),
				pulumi.String("failure"),
			},
			SourceType: pulumi.String("db-cluster"),
			SourceIds: pulumi.StringArray{
				exampleCluster.ID(),
			},
			SnsTopicArn: exampleTopic.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DocumentDB Event Subscriptions can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:docdb/eventSubscription:EventSubscription example event-sub

```

func GetEventSubscription

func GetEventSubscription(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EventSubscriptionState, opts ...pulumi.ResourceOption) (*EventSubscription, error)

GetEventSubscription gets an existing EventSubscription resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEventSubscription

func NewEventSubscription(ctx *pulumi.Context,
	name string, args *EventSubscriptionArgs, opts ...pulumi.ResourceOption) (*EventSubscription, error)

NewEventSubscription registers a new resource with the given unique name, arguments, and options.

func (*EventSubscription) ElementType

func (*EventSubscription) ElementType() reflect.Type

func (*EventSubscription) ToEventSubscriptionOutput

func (i *EventSubscription) ToEventSubscriptionOutput() EventSubscriptionOutput

func (*EventSubscription) ToEventSubscriptionOutputWithContext

func (i *EventSubscription) ToEventSubscriptionOutputWithContext(ctx context.Context) EventSubscriptionOutput

type EventSubscriptionArgs

type EventSubscriptionArgs struct {
	// A boolean flag to enable/disable the subscription. Defaults to true.
	Enabled pulumi.BoolPtrInput
	// A list of event categories for a SourceType that you want to subscribe to. See https://docs.aws.amazon.com/documentdb/latest/developerguide/API_Event.html or run `aws docdb describe-event-categories`.
	EventCategories pulumi.StringArrayInput
	// The name of the DocumentDB event subscription. By default generated by this provider.
	Name pulumi.StringPtrInput
	// The name of the DocumentDB event subscription. Conflicts with `name`.
	NamePrefix  pulumi.StringPtrInput
	SnsTopicArn pulumi.StringInput
	// A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a sourceType must also be specified.
	SourceIds pulumi.StringArrayInput
	// The type of source that will be generating the events. Valid options are `db-instance`, `db-cluster`, `db-parameter-group`, `db-security-group`,`  db-cluster-snapshot `. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a EventSubscription resource.

func (EventSubscriptionArgs) ElementType

func (EventSubscriptionArgs) ElementType() reflect.Type

type EventSubscriptionArray

type EventSubscriptionArray []EventSubscriptionInput

func (EventSubscriptionArray) ElementType

func (EventSubscriptionArray) ElementType() reflect.Type

func (EventSubscriptionArray) ToEventSubscriptionArrayOutput

func (i EventSubscriptionArray) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArray) ToEventSubscriptionArrayOutputWithContext

func (i EventSubscriptionArray) ToEventSubscriptionArrayOutputWithContext(ctx context.Context) EventSubscriptionArrayOutput

type EventSubscriptionArrayInput

type EventSubscriptionArrayInput interface {
	pulumi.Input

	ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput
	ToEventSubscriptionArrayOutputWithContext(context.Context) EventSubscriptionArrayOutput
}

EventSubscriptionArrayInput is an input type that accepts EventSubscriptionArray and EventSubscriptionArrayOutput values. You can construct a concrete instance of `EventSubscriptionArrayInput` via:

EventSubscriptionArray{ EventSubscriptionArgs{...} }

type EventSubscriptionArrayOutput

type EventSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (EventSubscriptionArrayOutput) ElementType

func (EventSubscriptionArrayOutput) Index

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput

func (o EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutputWithContext

func (o EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutputWithContext(ctx context.Context) EventSubscriptionArrayOutput

type EventSubscriptionInput

type EventSubscriptionInput interface {
	pulumi.Input

	ToEventSubscriptionOutput() EventSubscriptionOutput
	ToEventSubscriptionOutputWithContext(ctx context.Context) EventSubscriptionOutput
}

type EventSubscriptionMap

type EventSubscriptionMap map[string]EventSubscriptionInput

func (EventSubscriptionMap) ElementType

func (EventSubscriptionMap) ElementType() reflect.Type

func (EventSubscriptionMap) ToEventSubscriptionMapOutput

func (i EventSubscriptionMap) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMap) ToEventSubscriptionMapOutputWithContext

func (i EventSubscriptionMap) ToEventSubscriptionMapOutputWithContext(ctx context.Context) EventSubscriptionMapOutput

type EventSubscriptionMapInput

type EventSubscriptionMapInput interface {
	pulumi.Input

	ToEventSubscriptionMapOutput() EventSubscriptionMapOutput
	ToEventSubscriptionMapOutputWithContext(context.Context) EventSubscriptionMapOutput
}

EventSubscriptionMapInput is an input type that accepts EventSubscriptionMap and EventSubscriptionMapOutput values. You can construct a concrete instance of `EventSubscriptionMapInput` via:

EventSubscriptionMap{ "key": EventSubscriptionArgs{...} }

type EventSubscriptionMapOutput

type EventSubscriptionMapOutput struct{ *pulumi.OutputState }

func (EventSubscriptionMapOutput) ElementType

func (EventSubscriptionMapOutput) ElementType() reflect.Type

func (EventSubscriptionMapOutput) MapIndex

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutput

func (o EventSubscriptionMapOutput) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutputWithContext

func (o EventSubscriptionMapOutput) ToEventSubscriptionMapOutputWithContext(ctx context.Context) EventSubscriptionMapOutput

type EventSubscriptionOutput

type EventSubscriptionOutput struct{ *pulumi.OutputState }

func (EventSubscriptionOutput) Arn

The Amazon Resource Name of the DocumentDB event notification subscription

func (EventSubscriptionOutput) CustomerAwsId

func (o EventSubscriptionOutput) CustomerAwsId() pulumi.StringOutput

The AWS customer account associated with the DocumentDB event notification subscription

func (EventSubscriptionOutput) ElementType

func (EventSubscriptionOutput) ElementType() reflect.Type

func (EventSubscriptionOutput) Enabled

A boolean flag to enable/disable the subscription. Defaults to true.

func (EventSubscriptionOutput) EventCategories

func (o EventSubscriptionOutput) EventCategories() pulumi.StringArrayOutput

A list of event categories for a SourceType that you want to subscribe to. See https://docs.aws.amazon.com/documentdb/latest/developerguide/API_Event.html or run `aws docdb describe-event-categories`.

func (EventSubscriptionOutput) Name

The name of the DocumentDB event subscription. By default generated by this provider.

func (EventSubscriptionOutput) NamePrefix

The name of the DocumentDB event subscription. Conflicts with `name`.

func (EventSubscriptionOutput) SnsTopicArn

func (EventSubscriptionOutput) SourceIds

A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a sourceType must also be specified.

func (EventSubscriptionOutput) SourceType

The type of source that will be generating the events. Valid options are `db-instance`, `db-cluster`, `db-parameter-group`, `db-security-group`,` db-cluster-snapshot `. If not set, all sources will be subscribed to.

func (EventSubscriptionOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (EventSubscriptionOutput) TagsAll

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (EventSubscriptionOutput) ToEventSubscriptionOutput

func (o EventSubscriptionOutput) ToEventSubscriptionOutput() EventSubscriptionOutput

func (EventSubscriptionOutput) ToEventSubscriptionOutputWithContext

func (o EventSubscriptionOutput) ToEventSubscriptionOutputWithContext(ctx context.Context) EventSubscriptionOutput

type EventSubscriptionState

type EventSubscriptionState struct {
	// The Amazon Resource Name of the DocumentDB event notification subscription
	Arn pulumi.StringPtrInput
	// The AWS customer account associated with the DocumentDB event notification subscription
	CustomerAwsId pulumi.StringPtrInput
	// A boolean flag to enable/disable the subscription. Defaults to true.
	Enabled pulumi.BoolPtrInput
	// A list of event categories for a SourceType that you want to subscribe to. See https://docs.aws.amazon.com/documentdb/latest/developerguide/API_Event.html or run `aws docdb describe-event-categories`.
	EventCategories pulumi.StringArrayInput
	// The name of the DocumentDB event subscription. By default generated by this provider.
	Name pulumi.StringPtrInput
	// The name of the DocumentDB event subscription. Conflicts with `name`.
	NamePrefix  pulumi.StringPtrInput
	SnsTopicArn pulumi.StringPtrInput
	// A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a sourceType must also be specified.
	SourceIds pulumi.StringArrayInput
	// The type of source that will be generating the events. Valid options are `db-instance`, `db-cluster`, `db-parameter-group`, `db-security-group`,`  db-cluster-snapshot `. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (EventSubscriptionState) ElementType

func (EventSubscriptionState) ElementType() reflect.Type

type GetEngineVersionArgs

type GetEngineVersionArgs struct {
	// DB engine. (Default: `docdb`)
	Engine *string `pulumi:"engine"`
	// Name of a specific DB parameter group family. An example parameter group family is `docdb3.6`.
	ParameterGroupFamily *string `pulumi:"parameterGroupFamily"`
	// Ordered list of preferred engine versions. The first match in this list will be returned. If no preferred matches are found and the original search returned more than one result, an error is returned. If both the `version` and `preferredVersions` arguments are not configured, the data source will return the default version for the engine.
	PreferredVersions []string `pulumi:"preferredVersions"`
	// Version of the DB engine. For example, `3.6.0`. If `version` and `preferredVersions` are not set, the data source will provide information for the AWS-defined default version. If both the `version` and `preferredVersions` arguments are not configured, the data source will return the default version for the engine.
	Version *string `pulumi:"version"`
}

A collection of arguments for invoking getEngineVersion.

type GetEngineVersionOutputArgs

type GetEngineVersionOutputArgs struct {
	// DB engine. (Default: `docdb`)
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// Name of a specific DB parameter group family. An example parameter group family is `docdb3.6`.
	ParameterGroupFamily pulumi.StringPtrInput `pulumi:"parameterGroupFamily"`
	// Ordered list of preferred engine versions. The first match in this list will be returned. If no preferred matches are found and the original search returned more than one result, an error is returned. If both the `version` and `preferredVersions` arguments are not configured, the data source will return the default version for the engine.
	PreferredVersions pulumi.StringArrayInput `pulumi:"preferredVersions"`
	// Version of the DB engine. For example, `3.6.0`. If `version` and `preferredVersions` are not set, the data source will provide information for the AWS-defined default version. If both the `version` and `preferredVersions` arguments are not configured, the data source will return the default version for the engine.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

A collection of arguments for invoking getEngineVersion.

func (GetEngineVersionOutputArgs) ElementType

func (GetEngineVersionOutputArgs) ElementType() reflect.Type

type GetEngineVersionResult

type GetEngineVersionResult struct {
	Engine *string `pulumi:"engine"`
	// Description of the database engine.
	EngineDescription string `pulumi:"engineDescription"`
	// Set of log types that the database engine has available for export to CloudWatch Logs.
	ExportableLogTypes []string `pulumi:"exportableLogTypes"`
	// The provider-assigned unique ID for this managed resource.
	Id                   string   `pulumi:"id"`
	ParameterGroupFamily string   `pulumi:"parameterGroupFamily"`
	PreferredVersions    []string `pulumi:"preferredVersions"`
	// Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs.
	SupportsLogExportsToCloudwatch bool `pulumi:"supportsLogExportsToCloudwatch"`
	// A set of engine versions that this database engine version can be upgraded to.
	ValidUpgradeTargets []string `pulumi:"validUpgradeTargets"`
	Version             string   `pulumi:"version"`
	// Description of the database engine version.
	VersionDescription string `pulumi:"versionDescription"`
}

A collection of values returned by getEngineVersion.

func GetEngineVersion

func GetEngineVersion(ctx *pulumi.Context, args *GetEngineVersionArgs, opts ...pulumi.InvokeOption) (*GetEngineVersionResult, error)

Information about a DocumentDB engine version.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.GetEngineVersion(ctx, &docdb.GetEngineVersionArgs{
			Version: pulumi.StringRef("3.6.0"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEngineVersionResultOutput

type GetEngineVersionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEngineVersion.

func (GetEngineVersionResultOutput) ElementType

func (GetEngineVersionResultOutput) Engine

func (GetEngineVersionResultOutput) EngineDescription

func (o GetEngineVersionResultOutput) EngineDescription() pulumi.StringOutput

Description of the database engine.

func (GetEngineVersionResultOutput) ExportableLogTypes

func (o GetEngineVersionResultOutput) ExportableLogTypes() pulumi.StringArrayOutput

Set of log types that the database engine has available for export to CloudWatch Logs.

func (GetEngineVersionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEngineVersionResultOutput) ParameterGroupFamily

func (o GetEngineVersionResultOutput) ParameterGroupFamily() pulumi.StringOutput

func (GetEngineVersionResultOutput) PreferredVersions

func (GetEngineVersionResultOutput) SupportsLogExportsToCloudwatch

func (o GetEngineVersionResultOutput) SupportsLogExportsToCloudwatch() pulumi.BoolOutput

Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs.

func (GetEngineVersionResultOutput) ToGetEngineVersionResultOutput

func (o GetEngineVersionResultOutput) ToGetEngineVersionResultOutput() GetEngineVersionResultOutput

func (GetEngineVersionResultOutput) ToGetEngineVersionResultOutputWithContext

func (o GetEngineVersionResultOutput) ToGetEngineVersionResultOutputWithContext(ctx context.Context) GetEngineVersionResultOutput

func (GetEngineVersionResultOutput) ValidUpgradeTargets

func (o GetEngineVersionResultOutput) ValidUpgradeTargets() pulumi.StringArrayOutput

A set of engine versions that this database engine version can be upgraded to.

func (GetEngineVersionResultOutput) Version

func (GetEngineVersionResultOutput) VersionDescription

func (o GetEngineVersionResultOutput) VersionDescription() pulumi.StringOutput

Description of the database engine version.

type GetOrderableDbInstanceArgs

type GetOrderableDbInstanceArgs struct {
	// DB engine. Default: `docdb`
	Engine *string `pulumi:"engine"`
	// Version of the DB engine.
	EngineVersion *string `pulumi:"engineVersion"`
	// DB instance class. Examples of classes are `db.r5.12xlarge`, `db.r5.24xlarge`, `db.r5.2xlarge`, `db.r5.4xlarge`, `db.r5.large`, `db.r5.xlarge`, and `db.t3.medium`. (Conflicts with `preferredInstanceClasses`.)
	InstanceClass *string `pulumi:"instanceClass"`
	// License model. Default: `na`
	LicenseModel *string `pulumi:"licenseModel"`
	// Ordered list of preferred DocumentDB DB instance classes. The first match in this list will be returned. If no preferred matches are found and the original search returned more than one result, an error is returned. (Conflicts with `instanceClass`.)
	PreferredInstanceClasses []string `pulumi:"preferredInstanceClasses"`
	// Enable to show only VPC.
	Vpc *bool `pulumi:"vpc"`
}

A collection of arguments for invoking getOrderableDbInstance.

type GetOrderableDbInstanceOutputArgs

type GetOrderableDbInstanceOutputArgs struct {
	// DB engine. Default: `docdb`
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// Version of the DB engine.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// DB instance class. Examples of classes are `db.r5.12xlarge`, `db.r5.24xlarge`, `db.r5.2xlarge`, `db.r5.4xlarge`, `db.r5.large`, `db.r5.xlarge`, and `db.t3.medium`. (Conflicts with `preferredInstanceClasses`.)
	InstanceClass pulumi.StringPtrInput `pulumi:"instanceClass"`
	// License model. Default: `na`
	LicenseModel pulumi.StringPtrInput `pulumi:"licenseModel"`
	// Ordered list of preferred DocumentDB DB instance classes. The first match in this list will be returned. If no preferred matches are found and the original search returned more than one result, an error is returned. (Conflicts with `instanceClass`.)
	PreferredInstanceClasses pulumi.StringArrayInput `pulumi:"preferredInstanceClasses"`
	// Enable to show only VPC.
	Vpc pulumi.BoolPtrInput `pulumi:"vpc"`
}

A collection of arguments for invoking getOrderableDbInstance.

func (GetOrderableDbInstanceOutputArgs) ElementType

type GetOrderableDbInstanceResult

type GetOrderableDbInstanceResult struct {
	// Availability zones where the instance is available.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	Engine            *string  `pulumi:"engine"`
	EngineVersion     string   `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id                       string   `pulumi:"id"`
	InstanceClass            string   `pulumi:"instanceClass"`
	LicenseModel             *string  `pulumi:"licenseModel"`
	PreferredInstanceClasses []string `pulumi:"preferredInstanceClasses"`
	Vpc                      bool     `pulumi:"vpc"`
}

A collection of values returned by getOrderableDbInstance.

func GetOrderableDbInstance

func GetOrderableDbInstance(ctx *pulumi.Context, args *GetOrderableDbInstanceArgs, opts ...pulumi.InvokeOption) (*GetOrderableDbInstanceResult, error)

Information about DocumentDB orderable DB instances.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.GetOrderableDbInstance(ctx, &docdb.GetOrderableDbInstanceArgs{
			Engine:        pulumi.StringRef("docdb"),
			EngineVersion: pulumi.StringRef("3.6.0"),
			LicenseModel:  pulumi.StringRef("na"),
			PreferredInstanceClasses: []string{
				"db.r5.large",
				"db.r4.large",
				"db.t3.medium",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetOrderableDbInstanceResultOutput

type GetOrderableDbInstanceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getOrderableDbInstance.

func (GetOrderableDbInstanceResultOutput) AvailabilityZones

Availability zones where the instance is available.

func (GetOrderableDbInstanceResultOutput) ElementType

func (GetOrderableDbInstanceResultOutput) Engine

func (GetOrderableDbInstanceResultOutput) EngineVersion

func (GetOrderableDbInstanceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetOrderableDbInstanceResultOutput) InstanceClass

func (GetOrderableDbInstanceResultOutput) LicenseModel

func (GetOrderableDbInstanceResultOutput) PreferredInstanceClasses

func (o GetOrderableDbInstanceResultOutput) PreferredInstanceClasses() pulumi.StringArrayOutput

func (GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutput

func (o GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutput() GetOrderableDbInstanceResultOutput

func (GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutputWithContext

func (o GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutputWithContext(ctx context.Context) GetOrderableDbInstanceResultOutput

func (GetOrderableDbInstanceResultOutput) Vpc

type GlobalCluster

type GlobalCluster struct {
	pulumi.CustomResourceState

	// Global Cluster Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Name for an automatically created database on cluster creation.
	DatabaseName pulumi.StringPtrOutput `pulumi:"databaseName"`
	// If the Global Cluster should have deletion protection enabled. The database can't be deleted when this value is set to `true`. The default is `false`.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// Name of the database engine to be used for this DB cluster. The provider will only perform drift detection if a configuration value is provided. Current Valid values: `docdb`. Defaults to `docdb`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Engine version of the global database. Upgrading the engine version will result in all cluster members being immediately updated and will.
	// * **NOTE:** Upgrading major versions is not supported.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The global cluster identifier.
	GlobalClusterIdentifier pulumi.StringOutput `pulumi:"globalClusterIdentifier"`
	// Set of objects containing Global Cluster members.
	GlobalClusterMembers GlobalClusterGlobalClusterMemberArrayOutput `pulumi:"globalClusterMembers"`
	// AWS Region-unique, immutable identifier for the global database cluster. This identifier is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB cluster is accessed.
	GlobalClusterResourceId pulumi.StringOutput `pulumi:"globalClusterResourceId"`
	// Amazon Resource Name (ARN) to use as the primary DB Cluster of the Global Cluster on creation. The provider cannot perform drift detection of this value.
	SourceDbClusterIdentifier pulumi.StringOutput `pulumi:"sourceDbClusterIdentifier"`
	Status                    pulumi.StringOutput `pulumi:"status"`
	// Specifies whether the DB cluster is encrypted. The default is `false` unless `sourceDbClusterIdentifier` is specified and encrypted. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
}

Manages an DocumentDB Global Cluster. A global cluster consists of one primary region and up to five read-only secondary regions. You issue write operations directly to the primary cluster in the primary region and Amazon DocumentDB automatically replicates the data to the secondary regions using dedicated infrastructure.

More information about DocumentDB Global Clusters can be found in the [DocumentDB Developer Guide](https://docs.aws.amazon.com/documentdb/latest/developerguide/global-clusters.html).

## Example Usage ### New DocumentDB Global Cluster

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aws.NewProvider(ctx, "primary", &aws.ProviderArgs{
			Region: pulumi.String("us-east-2"),
		})
		if err != nil {
			return err
		}
		_, err = aws.NewProvider(ctx, "secondary", &aws.ProviderArgs{
			Region: pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		example, err := docdb.NewGlobalCluster(ctx, "example", &docdb.GlobalClusterArgs{
			GlobalClusterIdentifier: pulumi.String("global-test"),
			Engine:                  pulumi.String("docdb"),
			EngineVersion:           pulumi.String("4.0.0"),
		})
		if err != nil {
			return err
		}
		primaryCluster, err := docdb.NewCluster(ctx, "primaryCluster", &docdb.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-primary-cluster"),
			MasterUsername:          pulumi.String("username"),
			MasterPassword:          pulumi.String("somepass123"),
			GlobalClusterIdentifier: example.ID(),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		primaryClusterInstance, err := docdb.NewClusterInstance(ctx, "primaryClusterInstance", &docdb.ClusterInstanceArgs{
			Engine:            example.Engine,
			Identifier:        pulumi.String("test-primary-cluster-instance"),
			ClusterIdentifier: primaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r5.large"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		secondaryCluster, err := docdb.NewCluster(ctx, "secondaryCluster", &docdb.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-secondary-cluster"),
			GlobalClusterIdentifier: example.ID(),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Secondary))
		if err != nil {
			return err
		}
		_, err = docdb.NewClusterInstance(ctx, "secondaryClusterInstance", &docdb.ClusterInstanceArgs{
			Engine:            example.Engine,
			Identifier:        pulumi.String("test-secondary-cluster-instance"),
			ClusterIdentifier: secondaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r5.large"),
		}, pulumi.Provider(aws.Secondary), pulumi.DependsOn([]pulumi.Resource{
			primaryClusterInstance,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### New Global Cluster From Existing DB Cluster

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := docdb.NewCluster(ctx, "exampleCluster", nil)
		if err != nil {
			return err
		}
		_, err = docdb.NewGlobalCluster(ctx, "exampleGlobalCluster", &docdb.GlobalClusterArgs{
			GlobalClusterIdentifier:   pulumi.String("example"),
			SourceDbClusterIdentifier: exampleCluster.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_docdb_global_cluster` can be imported by using the Global Cluster identifier, e.g.

```sh

$ pulumi import aws:docdb/globalCluster:GlobalCluster example example

```

Certain resource arguments, like `source_db_cluster_identifier`, do not have an API method for reading the information after creation. If the argument is set in the the provider configuration on an imported resource, the provider will always show a difference. To workaround this behavior, either omit the argument from the the provider configuration or use `ignore_changes` to hide the difference, e.g. terraform resource "aws_docdb_global_cluster" "example" {

... other configuration ...

There is no API for reading source_db_cluster_identifier

lifecycle {

ignore_changes = [source_db_cluster_identifier]

} }

func GetGlobalCluster

func GetGlobalCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GlobalClusterState, opts ...pulumi.ResourceOption) (*GlobalCluster, error)

GetGlobalCluster gets an existing GlobalCluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGlobalCluster

func NewGlobalCluster(ctx *pulumi.Context,
	name string, args *GlobalClusterArgs, opts ...pulumi.ResourceOption) (*GlobalCluster, error)

NewGlobalCluster registers a new resource with the given unique name, arguments, and options.

func (*GlobalCluster) ElementType

func (*GlobalCluster) ElementType() reflect.Type

func (*GlobalCluster) ToGlobalClusterOutput

func (i *GlobalCluster) ToGlobalClusterOutput() GlobalClusterOutput

func (*GlobalCluster) ToGlobalClusterOutputWithContext

func (i *GlobalCluster) ToGlobalClusterOutputWithContext(ctx context.Context) GlobalClusterOutput

type GlobalClusterArgs

type GlobalClusterArgs struct {
	// Name for an automatically created database on cluster creation.
	DatabaseName pulumi.StringPtrInput
	// If the Global Cluster should have deletion protection enabled. The database can't be deleted when this value is set to `true`. The default is `false`.
	DeletionProtection pulumi.BoolPtrInput
	// Name of the database engine to be used for this DB cluster. The provider will only perform drift detection if a configuration value is provided. Current Valid values: `docdb`. Defaults to `docdb`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringPtrInput
	// Engine version of the global database. Upgrading the engine version will result in all cluster members being immediately updated and will.
	// * **NOTE:** Upgrading major versions is not supported.
	EngineVersion pulumi.StringPtrInput
	// The global cluster identifier.
	GlobalClusterIdentifier pulumi.StringInput
	// Amazon Resource Name (ARN) to use as the primary DB Cluster of the Global Cluster on creation. The provider cannot perform drift detection of this value.
	SourceDbClusterIdentifier pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false` unless `sourceDbClusterIdentifier` is specified and encrypted. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolPtrInput
}

The set of arguments for constructing a GlobalCluster resource.

func (GlobalClusterArgs) ElementType

func (GlobalClusterArgs) ElementType() reflect.Type

type GlobalClusterArray

type GlobalClusterArray []GlobalClusterInput

func (GlobalClusterArray) ElementType

func (GlobalClusterArray) ElementType() reflect.Type

func (GlobalClusterArray) ToGlobalClusterArrayOutput

func (i GlobalClusterArray) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArray) ToGlobalClusterArrayOutputWithContext

func (i GlobalClusterArray) ToGlobalClusterArrayOutputWithContext(ctx context.Context) GlobalClusterArrayOutput

type GlobalClusterArrayInput

type GlobalClusterArrayInput interface {
	pulumi.Input

	ToGlobalClusterArrayOutput() GlobalClusterArrayOutput
	ToGlobalClusterArrayOutputWithContext(context.Context) GlobalClusterArrayOutput
}

GlobalClusterArrayInput is an input type that accepts GlobalClusterArray and GlobalClusterArrayOutput values. You can construct a concrete instance of `GlobalClusterArrayInput` via:

GlobalClusterArray{ GlobalClusterArgs{...} }

type GlobalClusterArrayOutput

type GlobalClusterArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterArrayOutput) ElementType

func (GlobalClusterArrayOutput) ElementType() reflect.Type

func (GlobalClusterArrayOutput) Index

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutput

func (o GlobalClusterArrayOutput) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutputWithContext

func (o GlobalClusterArrayOutput) ToGlobalClusterArrayOutputWithContext(ctx context.Context) GlobalClusterArrayOutput

type GlobalClusterGlobalClusterMember

type GlobalClusterGlobalClusterMember struct {
	// Amazon Resource Name (ARN) of member DB Cluster.
	DbClusterArn *string `pulumi:"dbClusterArn"`
	// Whether the member is the primary DB Cluster.
	IsWriter *bool `pulumi:"isWriter"`
}

type GlobalClusterGlobalClusterMemberArgs

type GlobalClusterGlobalClusterMemberArgs struct {
	// Amazon Resource Name (ARN) of member DB Cluster.
	DbClusterArn pulumi.StringPtrInput `pulumi:"dbClusterArn"`
	// Whether the member is the primary DB Cluster.
	IsWriter pulumi.BoolPtrInput `pulumi:"isWriter"`
}

func (GlobalClusterGlobalClusterMemberArgs) ElementType

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput

func (i GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutputWithContext

func (i GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutputWithContext(ctx context.Context) GlobalClusterGlobalClusterMemberOutput

type GlobalClusterGlobalClusterMemberArray

type GlobalClusterGlobalClusterMemberArray []GlobalClusterGlobalClusterMemberInput

func (GlobalClusterGlobalClusterMemberArray) ElementType

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput

func (i GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext

func (i GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext(ctx context.Context) GlobalClusterGlobalClusterMemberArrayOutput

type GlobalClusterGlobalClusterMemberArrayInput

type GlobalClusterGlobalClusterMemberArrayInput interface {
	pulumi.Input

	ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput
	ToGlobalClusterGlobalClusterMemberArrayOutputWithContext(context.Context) GlobalClusterGlobalClusterMemberArrayOutput
}

GlobalClusterGlobalClusterMemberArrayInput is an input type that accepts GlobalClusterGlobalClusterMemberArray and GlobalClusterGlobalClusterMemberArrayOutput values. You can construct a concrete instance of `GlobalClusterGlobalClusterMemberArrayInput` via:

GlobalClusterGlobalClusterMemberArray{ GlobalClusterGlobalClusterMemberArgs{...} }

type GlobalClusterGlobalClusterMemberArrayOutput

type GlobalClusterGlobalClusterMemberArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberArrayOutput) ElementType

func (GlobalClusterGlobalClusterMemberArrayOutput) Index

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput

func (o GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext

func (o GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext(ctx context.Context) GlobalClusterGlobalClusterMemberArrayOutput

type GlobalClusterGlobalClusterMemberInput

type GlobalClusterGlobalClusterMemberInput interface {
	pulumi.Input

	ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput
	ToGlobalClusterGlobalClusterMemberOutputWithContext(context.Context) GlobalClusterGlobalClusterMemberOutput
}

GlobalClusterGlobalClusterMemberInput is an input type that accepts GlobalClusterGlobalClusterMemberArgs and GlobalClusterGlobalClusterMemberOutput values. You can construct a concrete instance of `GlobalClusterGlobalClusterMemberInput` via:

GlobalClusterGlobalClusterMemberArgs{...}

type GlobalClusterGlobalClusterMemberOutput

type GlobalClusterGlobalClusterMemberOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberOutput) DbClusterArn

Amazon Resource Name (ARN) of member DB Cluster.

func (GlobalClusterGlobalClusterMemberOutput) ElementType

func (GlobalClusterGlobalClusterMemberOutput) IsWriter

Whether the member is the primary DB Cluster.

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput

func (o GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutputWithContext

func (o GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutputWithContext(ctx context.Context) GlobalClusterGlobalClusterMemberOutput

type GlobalClusterInput

type GlobalClusterInput interface {
	pulumi.Input

	ToGlobalClusterOutput() GlobalClusterOutput
	ToGlobalClusterOutputWithContext(ctx context.Context) GlobalClusterOutput
}

type GlobalClusterMap

type GlobalClusterMap map[string]GlobalClusterInput

func (GlobalClusterMap) ElementType

func (GlobalClusterMap) ElementType() reflect.Type

func (GlobalClusterMap) ToGlobalClusterMapOutput

func (i GlobalClusterMap) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMap) ToGlobalClusterMapOutputWithContext

func (i GlobalClusterMap) ToGlobalClusterMapOutputWithContext(ctx context.Context) GlobalClusterMapOutput

type GlobalClusterMapInput

type GlobalClusterMapInput interface {
	pulumi.Input

	ToGlobalClusterMapOutput() GlobalClusterMapOutput
	ToGlobalClusterMapOutputWithContext(context.Context) GlobalClusterMapOutput
}

GlobalClusterMapInput is an input type that accepts GlobalClusterMap and GlobalClusterMapOutput values. You can construct a concrete instance of `GlobalClusterMapInput` via:

GlobalClusterMap{ "key": GlobalClusterArgs{...} }

type GlobalClusterMapOutput

type GlobalClusterMapOutput struct{ *pulumi.OutputState }

func (GlobalClusterMapOutput) ElementType

func (GlobalClusterMapOutput) ElementType() reflect.Type

func (GlobalClusterMapOutput) MapIndex

func (GlobalClusterMapOutput) ToGlobalClusterMapOutput

func (o GlobalClusterMapOutput) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMapOutput) ToGlobalClusterMapOutputWithContext

func (o GlobalClusterMapOutput) ToGlobalClusterMapOutputWithContext(ctx context.Context) GlobalClusterMapOutput

type GlobalClusterOutput

type GlobalClusterOutput struct{ *pulumi.OutputState }

func (GlobalClusterOutput) Arn

Global Cluster Amazon Resource Name (ARN)

func (GlobalClusterOutput) DatabaseName

func (o GlobalClusterOutput) DatabaseName() pulumi.StringPtrOutput

Name for an automatically created database on cluster creation.

func (GlobalClusterOutput) DeletionProtection

func (o GlobalClusterOutput) DeletionProtection() pulumi.BoolPtrOutput

If the Global Cluster should have deletion protection enabled. The database can't be deleted when this value is set to `true`. The default is `false`.

func (GlobalClusterOutput) ElementType

func (GlobalClusterOutput) ElementType() reflect.Type

func (GlobalClusterOutput) Engine

Name of the database engine to be used for this DB cluster. The provider will only perform drift detection if a configuration value is provided. Current Valid values: `docdb`. Defaults to `docdb`. Conflicts with `sourceDbClusterIdentifier`.

func (GlobalClusterOutput) EngineVersion

func (o GlobalClusterOutput) EngineVersion() pulumi.StringOutput

Engine version of the global database. Upgrading the engine version will result in all cluster members being immediately updated and will. * **NOTE:** Upgrading major versions is not supported.

func (GlobalClusterOutput) GlobalClusterIdentifier

func (o GlobalClusterOutput) GlobalClusterIdentifier() pulumi.StringOutput

The global cluster identifier.

func (GlobalClusterOutput) GlobalClusterMembers

Set of objects containing Global Cluster members.

func (GlobalClusterOutput) GlobalClusterResourceId

func (o GlobalClusterOutput) GlobalClusterResourceId() pulumi.StringOutput

AWS Region-unique, immutable identifier for the global database cluster. This identifier is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB cluster is accessed.

func (GlobalClusterOutput) SourceDbClusterIdentifier

func (o GlobalClusterOutput) SourceDbClusterIdentifier() pulumi.StringOutput

Amazon Resource Name (ARN) to use as the primary DB Cluster of the Global Cluster on creation. The provider cannot perform drift detection of this value.

func (GlobalClusterOutput) Status

func (GlobalClusterOutput) StorageEncrypted

func (o GlobalClusterOutput) StorageEncrypted() pulumi.BoolOutput

Specifies whether the DB cluster is encrypted. The default is `false` unless `sourceDbClusterIdentifier` is specified and encrypted. The provider will only perform drift detection if a configuration value is provided.

func (GlobalClusterOutput) ToGlobalClusterOutput

func (o GlobalClusterOutput) ToGlobalClusterOutput() GlobalClusterOutput

func (GlobalClusterOutput) ToGlobalClusterOutputWithContext

func (o GlobalClusterOutput) ToGlobalClusterOutputWithContext(ctx context.Context) GlobalClusterOutput

type GlobalClusterState

type GlobalClusterState struct {
	// Global Cluster Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// Name for an automatically created database on cluster creation.
	DatabaseName pulumi.StringPtrInput
	// If the Global Cluster should have deletion protection enabled. The database can't be deleted when this value is set to `true`. The default is `false`.
	DeletionProtection pulumi.BoolPtrInput
	// Name of the database engine to be used for this DB cluster. The provider will only perform drift detection if a configuration value is provided. Current Valid values: `docdb`. Defaults to `docdb`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringPtrInput
	// Engine version of the global database. Upgrading the engine version will result in all cluster members being immediately updated and will.
	// * **NOTE:** Upgrading major versions is not supported.
	EngineVersion pulumi.StringPtrInput
	// The global cluster identifier.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// Set of objects containing Global Cluster members.
	GlobalClusterMembers GlobalClusterGlobalClusterMemberArrayInput
	// AWS Region-unique, immutable identifier for the global database cluster. This identifier is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB cluster is accessed.
	GlobalClusterResourceId pulumi.StringPtrInput
	// Amazon Resource Name (ARN) to use as the primary DB Cluster of the Global Cluster on creation. The provider cannot perform drift detection of this value.
	SourceDbClusterIdentifier pulumi.StringPtrInput
	Status                    pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false` unless `sourceDbClusterIdentifier` is specified and encrypted. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolPtrInput
}

func (GlobalClusterState) ElementType

func (GlobalClusterState) ElementType() reflect.Type

type SubnetGroup

type SubnetGroup struct {
	pulumi.CustomResourceState

	// The ARN of the docDB subnet group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the docDB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringOutput `pulumi:"description"`
	// The name of the docDB subnet group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// A list of VPC subnet IDs.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an DocumentDB subnet group resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := docdb.NewSubnetGroup(ctx, "default", &docdb.SubnetGroupArgs{
			SubnetIds: pulumi.StringArray{
				aws_subnet.Frontend.Id,
				aws_subnet.Backend.Id,
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("My docdb subnet group"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DocumentDB Subnet groups can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:docdb/subnetGroup:SubnetGroup default production-subnet-group

```

func GetSubnetGroup

func GetSubnetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetGroupState, opts ...pulumi.ResourceOption) (*SubnetGroup, error)

GetSubnetGroup gets an existing SubnetGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSubnetGroup

func NewSubnetGroup(ctx *pulumi.Context,
	name string, args *SubnetGroupArgs, opts ...pulumi.ResourceOption) (*SubnetGroup, error)

NewSubnetGroup registers a new resource with the given unique name, arguments, and options.

func (*SubnetGroup) ElementType

func (*SubnetGroup) ElementType() reflect.Type

func (*SubnetGroup) ToSubnetGroupOutput

func (i *SubnetGroup) ToSubnetGroupOutput() SubnetGroupOutput

func (*SubnetGroup) ToSubnetGroupOutputWithContext

func (i *SubnetGroup) ToSubnetGroupOutputWithContext(ctx context.Context) SubnetGroupOutput

type SubnetGroupArgs

type SubnetGroupArgs struct {
	// The description of the docDB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The name of the docDB subnet group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of VPC subnet IDs.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a SubnetGroup resource.

func (SubnetGroupArgs) ElementType

func (SubnetGroupArgs) ElementType() reflect.Type

type SubnetGroupArray

type SubnetGroupArray []SubnetGroupInput

func (SubnetGroupArray) ElementType

func (SubnetGroupArray) ElementType() reflect.Type

func (SubnetGroupArray) ToSubnetGroupArrayOutput

func (i SubnetGroupArray) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArray) ToSubnetGroupArrayOutputWithContext

func (i SubnetGroupArray) ToSubnetGroupArrayOutputWithContext(ctx context.Context) SubnetGroupArrayOutput

type SubnetGroupArrayInput

type SubnetGroupArrayInput interface {
	pulumi.Input

	ToSubnetGroupArrayOutput() SubnetGroupArrayOutput
	ToSubnetGroupArrayOutputWithContext(context.Context) SubnetGroupArrayOutput
}

SubnetGroupArrayInput is an input type that accepts SubnetGroupArray and SubnetGroupArrayOutput values. You can construct a concrete instance of `SubnetGroupArrayInput` via:

SubnetGroupArray{ SubnetGroupArgs{...} }

type SubnetGroupArrayOutput

type SubnetGroupArrayOutput struct{ *pulumi.OutputState }

func (SubnetGroupArrayOutput) ElementType

func (SubnetGroupArrayOutput) ElementType() reflect.Type

func (SubnetGroupArrayOutput) Index

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutput

func (o SubnetGroupArrayOutput) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutputWithContext

func (o SubnetGroupArrayOutput) ToSubnetGroupArrayOutputWithContext(ctx context.Context) SubnetGroupArrayOutput

type SubnetGroupInput

type SubnetGroupInput interface {
	pulumi.Input

	ToSubnetGroupOutput() SubnetGroupOutput
	ToSubnetGroupOutputWithContext(ctx context.Context) SubnetGroupOutput
}

type SubnetGroupMap

type SubnetGroupMap map[string]SubnetGroupInput

func (SubnetGroupMap) ElementType

func (SubnetGroupMap) ElementType() reflect.Type

func (SubnetGroupMap) ToSubnetGroupMapOutput

func (i SubnetGroupMap) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMap) ToSubnetGroupMapOutputWithContext

func (i SubnetGroupMap) ToSubnetGroupMapOutputWithContext(ctx context.Context) SubnetGroupMapOutput

type SubnetGroupMapInput

type SubnetGroupMapInput interface {
	pulumi.Input

	ToSubnetGroupMapOutput() SubnetGroupMapOutput
	ToSubnetGroupMapOutputWithContext(context.Context) SubnetGroupMapOutput
}

SubnetGroupMapInput is an input type that accepts SubnetGroupMap and SubnetGroupMapOutput values. You can construct a concrete instance of `SubnetGroupMapInput` via:

SubnetGroupMap{ "key": SubnetGroupArgs{...} }

type SubnetGroupMapOutput

type SubnetGroupMapOutput struct{ *pulumi.OutputState }

func (SubnetGroupMapOutput) ElementType

func (SubnetGroupMapOutput) ElementType() reflect.Type

func (SubnetGroupMapOutput) MapIndex

func (SubnetGroupMapOutput) ToSubnetGroupMapOutput

func (o SubnetGroupMapOutput) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMapOutput) ToSubnetGroupMapOutputWithContext

func (o SubnetGroupMapOutput) ToSubnetGroupMapOutputWithContext(ctx context.Context) SubnetGroupMapOutput

type SubnetGroupOutput

type SubnetGroupOutput struct{ *pulumi.OutputState }

func (SubnetGroupOutput) Arn

The ARN of the docDB subnet group.

func (SubnetGroupOutput) Description

func (o SubnetGroupOutput) Description() pulumi.StringOutput

The description of the docDB subnet group. Defaults to "Managed by Pulumi".

func (SubnetGroupOutput) ElementType

func (SubnetGroupOutput) ElementType() reflect.Type

func (SubnetGroupOutput) Name

The name of the docDB subnet group. If omitted, this provider will assign a random, unique name.

func (SubnetGroupOutput) NamePrefix

func (o SubnetGroupOutput) NamePrefix() pulumi.StringOutput

Creates a unique name beginning with the specified prefix. Conflicts with `name`.

func (SubnetGroupOutput) SubnetIds

A list of VPC subnet IDs.

func (SubnetGroupOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SubnetGroupOutput) TagsAll

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (SubnetGroupOutput) ToSubnetGroupOutput

func (o SubnetGroupOutput) ToSubnetGroupOutput() SubnetGroupOutput

func (SubnetGroupOutput) ToSubnetGroupOutputWithContext

func (o SubnetGroupOutput) ToSubnetGroupOutputWithContext(ctx context.Context) SubnetGroupOutput

type SubnetGroupState

type SubnetGroupState struct {
	// The ARN of the docDB subnet group.
	Arn pulumi.StringPtrInput
	// The description of the docDB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The name of the docDB subnet group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of VPC subnet IDs.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (SubnetGroupState) ElementType

func (SubnetGroupState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL