rds

package
v3.38.1 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 1

Documentation

Index

Constants

View Source
const (
	EngineModeProvisioned   = EngineMode("provisioned")
	EngineModeServerless    = EngineMode("serverless")
	EngineModeParallelQuery = EngineMode("parallelquery")
	EngineModeGlobal        = EngineMode("global")
)
View Source
const (
	EngineTypeAurora           = EngineType("aurora")
	EngineTypeAuroraMysql      = EngineType("aurora-mysql")
	EngineTypeAuroraPostgresql = EngineType("aurora-postgresql")
)
View Source
const (
	InstanceType_T3_Micro     = InstanceType("db.t3.micro")
	InstanceType_T3_Small     = InstanceType("db.t3.small")
	InstanceType_T3_Medium    = InstanceType("db.t3.medium")
	InstanceType_T3_Large     = InstanceType("db.t3.large")
	InstanceType_T3_XLarge    = InstanceType("db.t3.xlarge")
	InstanceType_T3_2XLarge   = InstanceType("db.t3.2xlarge")
	InstanceType_T2_Micro     = InstanceType("db.t2.micro")
	InstanceType_T2_Small     = InstanceType("db.t2.small")
	InstanceType_T2_Medium    = InstanceType("db.t2.medium")
	InstanceType_T2_Large     = InstanceType("db.t2.large")
	InstanceType_T2_XLarge    = InstanceType("db.t2.xlarge")
	InstanceType_T2_2XLarge   = InstanceType("db.t2.2xlarge")
	InstanceType_M1_Small     = InstanceType("db.m1.small")
	InstanceType_M1_Medium    = InstanceType("db.m1.medium")
	InstanceType_M1_Large     = InstanceType("db.m1.large")
	InstanceType_M1_XLarge    = InstanceType("db.m1.xlarge")
	InstanceType_M2_XLarge    = InstanceType("db.m2.xlarge")
	InstanceType_M2_2XLarge   = InstanceType("db.m2.2xlarge")
	InstanceType_M2_4XLarge   = InstanceType("db.m2.4xlarge")
	InstanceType_M3_Medium    = InstanceType("db.m3.medium")
	InstanceType_M3_Large     = InstanceType("db.m3.large")
	InstanceType_M3_XLarge    = InstanceType("db.m3.xlarge")
	InstanceType_M3_2XLarge   = InstanceType("db.m3.2xlarge")
	InstanceType_M4_Large     = InstanceType("db.m4.large")
	InstanceType_M4_XLarge    = InstanceType("db.m4.xlarge")
	InstanceType_M4_2XLarge   = InstanceType("db.m4.2xlarge")
	InstanceType_M4_4XLarge   = InstanceType("db.m4.4xlarge")
	InstanceType_M4_10XLarge  = InstanceType("db.m4.10xlarge")
	InstanceType_M4_16XLarge  = InstanceType("db.m4.10xlarge")
	InstanceType_M5_Large     = InstanceType("db.m5.large")
	InstanceType_M5_XLarge    = InstanceType("db.m5.xlarge")
	InstanceType_M5_2XLarge   = InstanceType("db.m5.2xlarge")
	InstanceType_M5_4XLarge   = InstanceType("db.m5.4xlarge")
	InstanceType_M5_12XLarge  = InstanceType("db.m5.12xlarge")
	InstanceType_M5_24XLarge  = InstanceType("db.m5.24xlarge")
	InstanceType_R3_Large     = InstanceType("db.r3.large")
	InstanceType_R3_XLarge    = InstanceType("db.r3.xlarge")
	InstanceType_R3_2XLarge   = InstanceType("db.r3.2xlarge")
	InstanceType_R3_4XLarge   = InstanceType("db.r3.4xlarge")
	InstanceType_R3_8XLarge   = InstanceType("db.r3.8xlarge")
	InstanceType_R4_Large     = InstanceType("db.r4.large")
	InstanceType_R4_XLarge    = InstanceType("db.r4.xlarge")
	InstanceType_R4_2XLarge   = InstanceType("db.r4.2xlarge")
	InstanceType_R4_4XLarge   = InstanceType("db.r4.4xlarge")
	InstanceType_R4_8XLarge   = InstanceType("db.r4.8xlarge")
	InstanceType_R4_16XLarge  = InstanceType("db.r4.16xlarge")
	InstanceType_R5_Large     = InstanceType("db.r5.large")
	InstanceType_R5_XLarge    = InstanceType("db.r5.xlarge")
	InstanceType_R5_2XLarge   = InstanceType("db.r5.2xlarge")
	InstanceType_R5_4XLarge   = InstanceType("db.r5.4xlarge")
	InstanceType_R5_12XLarge  = InstanceType("db.r5.12xlarge")
	InstanceType_R5_24XLarge  = InstanceType("db.r5.24xlarge")
	InstanceType_X1_16XLarge  = InstanceType("db.x1.16xlarge")
	InstanceType_X1_32XLarge  = InstanceType("db.x1.32xlarge")
	InstanceType_X1E_XLarge   = InstanceType("db.x1e.xlarge")
	InstanceType_X1E_2XLarge  = InstanceType("db.x1e.2xlarge")
	InstanceType_X1E_4XLarge  = InstanceType("db.x1e.4xlarge")
	InstanceType_X1E_8XLarge  = InstanceType("db.x1e.8xlarge")
	InstanceType_X1E_32XLarge = InstanceType("db.x1e.32xlarge")
)
View Source
const (
	StorageTypeStandard = StorageType("standard")
	StorageTypeGP2      = StorageType("gp2")
	StorageTypeIO1      = StorageType("io1")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// Enable to allow major engine version upgrades when changing engine versions. Defaults to `false`.
	AllowMajorVersionUpgrade pulumi.BoolPtrOutput `pulumi:"allowMajorVersionUpgrade"`
	// Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`. See [Amazon RDS Documentation for more information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolOutput `pulumi:"applyImmediately"`
	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A list of EC2 Availability Zones for the DB cluster storage where DB cluster instances can be created. RDS automatically assigns 3 AZs if less than 3 AZs are configured, which will show as a difference requiring resource recreation next provider update. It is recommended to specify 3 AZs or use [the `ignoreChanges` argument](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) if necessary.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The target backtrack window, in seconds. Only available for `aurora` engine currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)
	BacktrackWindow pulumi.IntPtrOutput `pulumi:"backtrackWindow"`
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrOutput `pulumi:"backupRetentionPeriod"`
	// The cluster identifier. If omitted, this 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 RDS Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayOutput `pulumi:"clusterMembers"`
	// The RDS Cluster Resource ID
	ClusterResourceId pulumi.StringOutput `pulumi:"clusterResourceId"`
	// Copy all Cluster `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrOutput `pulumi:"copyTagsToSnapshot"`
	// Name for an automatically created database on cluster creation. There are different naming restrictions per database engine: [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringOutput `pulumi:"dbClusterParameterGroupName"`
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// If the DB instance 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"`
	// Enable HTTP endpoint (data API). Only valid when `engineMode` is set to `serverless`.
	EnableHttpEndpoint pulumi.BoolPtrOutput `pulumi:"enableHttpEndpoint"`
	// Set of log types to export to cloudwatch. If omitted, no logs will be exported. The following log types are supported: `audit`, `error`, `general`, `slowquery`, `postgresql` (PostgreSQL).
	EnabledCloudwatchLogsExports pulumi.StringArrayOutput `pulumi:"enabledCloudwatchLogsExports"`
	// The DNS address of the RDS instance
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// The name of the database engine to be used for this DB cluster. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`
	Engine pulumi.StringPtrOutput `pulumi:"engine"`
	// The database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `multimaster`, `parallelquery`, `provisioned`, `serverless`. Defaults to: `provisioned`. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/aurora-serverless.html) for limitations when using `serverless`.
	EngineMode pulumi.StringPtrOutput `pulumi:"engineMode"`
	// The database engine version. Updating this argument results in an outage. See the [Aurora MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html) and [Aurora Postgres](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.html) documentation for your configured engine to determine this value. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`.
	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 `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrOutput `pulumi:"globalClusterIdentifier"`
	// The Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Specifies whether or mappings of AWS Identity and Access Management (IAM) accounts to database accounts is enabled. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) for availability and limitations.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrOutput `pulumi:"iamDatabaseAuthenticationEnabled"`
	// A List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayOutput `pulumi:"iamRoles"`
	// 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 [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	MasterPassword pulumi.StringPtrOutput `pulumi:"masterPassword"`
	// Username for the master DB user. Please refer to the [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot.
	MasterUsername pulumi.StringOutput `pulumi:"masterUsername"`
	// The port on which the DB accepts connections
	Port pulumi.IntOutput `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 region. e.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 Aurora cluster, automatically
	// load-balanced across replicas
	ReaderEndpoint pulumi.StringOutput `pulumi:"readerEndpoint"`
	// ARN of a source DB cluster or DB instance if this DB cluster is to be created as a Read Replica. If DB Cluster is part of a Global Cluster, use `ignoreChanges`.
	ReplicationSourceIdentifier pulumi.StringPtrOutput `pulumi:"replicationSourceIdentifier"`
	// Nested attribute for [point in time restore](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_PIT.html). More details below.
	RestoreToPointInTime ClusterRestoreToPointInTimePtrOutput `pulumi:"restoreToPointInTime"`
	S3Import             ClusterS3ImportPtrOutput             `pulumi:"s3Import"`
	// Nested attribute with scaling properties. Only valid when `engineMode` is set to `serverless`. More details below.
	ScalingConfiguration ClusterScalingConfigurationPtrOutput `pulumi:"scalingConfiguration"`
	// 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.
	SnapshotIdentifier pulumi.StringPtrOutput `pulumi:"snapshotIdentifier"`
	// The source region for an encrypted replica DB cluster.
	SourceRegion pulumi.StringPtrOutput `pulumi:"sourceRegion"`
	// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the DB cluster.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// List of VPC security groups to associate with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
}

Manages a [RDS Aurora Cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html). To manage cluster instances that inherit configuration from the cluster (when not running the cluster in `serverless` engine mode), see the `rds.ClusterInstance` resource. To manage non-Aurora databases (e.g. MySQL, PostgreSQL, SQL Server, etc.), see the `rds.Instance` resource.

For information on the difference between the available Aurora MySQL engines see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html) in the Amazon RDS User Guide.

Changes to an RDS 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. See the AWS Docs on [RDS Maintenance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html) for more information.

## Example Usage ### Aurora MySQL 2.x (MySQL 5.7)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "_default", &rds.ClusterArgs{
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			BackupRetentionPeriod: pulumi.Int(5),
			ClusterIdentifier:     pulumi.String("aurora-cluster-demo"),
			DatabaseName:          pulumi.String("mydb"),
			Engine:                pulumi.String("aurora-mysql"),
			EngineVersion:         pulumi.String("5.7.mysql_aurora.2.03.2"),
			MasterPassword:        pulumi.String("bar"),
			MasterUsername:        pulumi.String("foo"),
			PreferredBackupWindow: pulumi.String("07:00-09:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Aurora MySQL 1.x (MySQL 5.6)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "_default", &rds.ClusterArgs{
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			BackupRetentionPeriod: pulumi.Int(5),
			ClusterIdentifier:     pulumi.String("aurora-cluster-demo"),
			DatabaseName:          pulumi.String("mydb"),
			MasterPassword:        pulumi.String("bar"),
			MasterUsername:        pulumi.String("foo"),
			PreferredBackupWindow: pulumi.String("07:00-09:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Aurora with PostgreSQL engine

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "postgresql", &rds.ClusterArgs{
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			BackupRetentionPeriod: pulumi.Int(5),
			ClusterIdentifier:     pulumi.String("aurora-cluster-demo"),
			DatabaseName:          pulumi.String("mydb"),
			Engine:                pulumi.String("aurora-postgresql"),
			MasterPassword:        pulumi.String("bar"),
			MasterUsername:        pulumi.String("foo"),
			PreferredBackupWindow: pulumi.String("07:00-09:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Aurora Multi-Master Cluster

> More information about Aurora Multi-Master Clusters can be found in the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-multi-master.html).

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "example", &rds.ClusterArgs{
			ClusterIdentifier: pulumi.String("example"),
			DbSubnetGroupName: pulumi.Any(aws_db_subnet_group.Example.Name),
			EngineMode:        pulumi.String("multimaster"),
			MasterPassword:    pulumi.String("barbarbarbar"),
			MasterUsername:    pulumi.String("foo"),
			SkipFinalSnapshot: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:rds/cluster:Cluster aurora_cluster aurora-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 added in v3.13.0

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput added in v3.13.0

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext added in v3.13.0

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

func (*Cluster) ToClusterPtrOutput added in v3.25.0

func (i *Cluster) ToClusterPtrOutput() ClusterPtrOutput

func (*Cluster) ToClusterPtrOutputWithContext added in v3.25.0

func (i *Cluster) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterArgs

type ClusterArgs struct {
	// Enable to allow major engine version upgrades when changing engine versions. Defaults to `false`.
	AllowMajorVersionUpgrade pulumi.BoolPtrInput
	// Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`. See [Amazon RDS Documentation for more information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolPtrInput
	// A list of EC2 Availability Zones for the DB cluster storage where DB cluster instances can be created. RDS automatically assigns 3 AZs if less than 3 AZs are configured, which will show as a difference requiring resource recreation next provider update. It is recommended to specify 3 AZs or use [the `ignoreChanges` argument](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) if necessary.
	AvailabilityZones pulumi.StringArrayInput
	// The target backtrack window, in seconds. Only available for `aurora` engine currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)
	BacktrackWindow pulumi.IntPtrInput
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrInput
	// The cluster identifier. If omitted, this 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 RDS Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayInput
	// Copy all Cluster `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// Name for an automatically created database on cluster creation. There are different naming restrictions per database engine: [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	DatabaseName pulumi.StringPtrInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringPtrInput
	// If the DB instance 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
	// Enable HTTP endpoint (data API). Only valid when `engineMode` is set to `serverless`.
	EnableHttpEndpoint pulumi.BoolPtrInput
	// Set of log types to export to cloudwatch. If omitted, no logs will be exported. The following log types are supported: `audit`, `error`, `general`, `slowquery`, `postgresql` (PostgreSQL).
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The name of the database engine to be used for this DB cluster. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`
	Engine pulumi.StringPtrInput
	// The database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `multimaster`, `parallelquery`, `provisioned`, `serverless`. Defaults to: `provisioned`. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/aurora-serverless.html) for limitations when using `serverless`.
	EngineMode pulumi.StringPtrInput
	// The database engine version. Updating this argument results in an outage. See the [Aurora MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html) and [Aurora Postgres](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.html) documentation for your configured engine to determine this value. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`.
	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 `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// Specifies whether or mappings of AWS Identity and Access Management (IAM) accounts to database accounts is enabled. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) for availability and limitations.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrInput
	// A List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayInput
	// 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 [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	MasterPassword pulumi.StringPtrInput
	// Username for the master DB user. Please refer to the [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot.
	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 region. e.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
	// ARN of a source DB cluster or DB instance if this DB cluster is to be created as a Read Replica. If DB Cluster is part of a Global Cluster, use `ignoreChanges`.
	ReplicationSourceIdentifier pulumi.StringPtrInput
	// Nested attribute for [point in time restore](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_PIT.html). More details below.
	RestoreToPointInTime ClusterRestoreToPointInTimePtrInput
	S3Import             ClusterS3ImportPtrInput
	// Nested attribute with scaling properties. Only valid when `engineMode` is set to `serverless`. More details below.
	ScalingConfiguration ClusterScalingConfigurationPtrInput
	// 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.
	SnapshotIdentifier pulumi.StringPtrInput
	// The source region for an encrypted replica DB cluster.
	SourceRegion pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster.
	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 added in v3.25.0

type ClusterArray []ClusterInput

func (ClusterArray) ElementType added in v3.25.0

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput added in v3.25.0

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext added in v3.25.0

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

type ClusterArrayInput added in v3.25.0

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 added in v3.25.0

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType added in v3.25.0

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index added in v3.25.0

func (ClusterArrayOutput) ToClusterArrayOutput added in v3.25.0

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext added in v3.25.0

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

type ClusterEndpoint

type ClusterEndpoint struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The identifier to use for the new endpoint. This parameter is stored as a lowercase string.
	ClusterEndpointIdentifier pulumi.StringOutput `pulumi:"clusterEndpointIdentifier"`
	// The cluster identifier.
	ClusterIdentifier pulumi.StringOutput `pulumi:"clusterIdentifier"`
	// The type of the endpoint. One of: READER , ANY .
	CustomEndpointType pulumi.StringOutput `pulumi:"customEndpointType"`
	// A custom endpoint for the Aurora cluster
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty. Conflicts with `staticMembers`.
	ExcludedMembers pulumi.StringArrayOutput `pulumi:"excludedMembers"`
	// List of DB instance identifiers that are part of the custom endpoint group. Conflicts with `excludedMembers`.
	StaticMembers pulumi.StringArrayOutput `pulumi:"staticMembers"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an RDS Aurora Cluster Endpoint. You can refer to the [User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Overview.Endpoints.html#Aurora.Endpoints.Cluster).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "_default", &rds.ClusterArgs{
			ClusterIdentifier: pulumi.String("aurora-cluster-demo"),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			DatabaseName:          pulumi.String("mydb"),
			MasterUsername:        pulumi.String("foo"),
			MasterPassword:        pulumi.String("bar"),
			BackupRetentionPeriod: pulumi.Int(5),
			PreferredBackupWindow: pulumi.String("07:00-09:00"),
		})
		if err != nil {
			return err
		}
		test1, err := rds.NewClusterInstance(ctx, "test1", &rds.ClusterInstanceArgs{
			ApplyImmediately:  pulumi.Bool(true),
			ClusterIdentifier: _default.ID(),
			Identifier:        pulumi.String("test1"),
			InstanceClass:     pulumi.String("db.t2.small"),
			Engine:            _default.Engine,
			EngineVersion:     _default.EngineVersion,
		})
		if err != nil {
			return err
		}
		test2, err := rds.NewClusterInstance(ctx, "test2", &rds.ClusterInstanceArgs{
			ApplyImmediately:  pulumi.Bool(true),
			ClusterIdentifier: _default.ID(),
			Identifier:        pulumi.String("test2"),
			InstanceClass:     pulumi.String("db.t2.small"),
			Engine:            _default.Engine,
			EngineVersion:     _default.EngineVersion,
		})
		if err != nil {
			return err
		}
		test3, err := rds.NewClusterInstance(ctx, "test3", &rds.ClusterInstanceArgs{
			ApplyImmediately:  pulumi.Bool(true),
			ClusterIdentifier: _default.ID(),
			Identifier:        pulumi.String("test3"),
			InstanceClass:     pulumi.String("db.t2.small"),
			Engine:            _default.Engine,
			EngineVersion:     _default.EngineVersion,
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterEndpoint(ctx, "eligible", &rds.ClusterEndpointArgs{
			ClusterIdentifier:         _default.ID(),
			ClusterEndpointIdentifier: pulumi.String("reader"),
			CustomEndpointType:        pulumi.String("READER"),
			ExcludedMembers: pulumi.StringArray{
				test1.ID(),
				test2.ID(),
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterEndpoint(ctx, "static", &rds.ClusterEndpointArgs{
			ClusterIdentifier:         _default.ID(),
			ClusterEndpointIdentifier: pulumi.String("static"),
			CustomEndpointType:        pulumi.String("READER"),
			StaticMembers: pulumi.StringArray{
				test1.ID(),
				test3.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Clusters Endpoint can be imported using the `cluster_endpoint_identifier`, e.g.

```sh

$ pulumi import aws:rds/clusterEndpoint:ClusterEndpoint custom_reader aurora-prod-cluster-custom-reader

```

[1]https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Overview.Endpoints.html#Aurora.Endpoints.Cluster

func GetClusterEndpoint

func GetClusterEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterEndpointState, opts ...pulumi.ResourceOption) (*ClusterEndpoint, error)

GetClusterEndpoint gets an existing ClusterEndpoint 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 NewClusterEndpoint

func NewClusterEndpoint(ctx *pulumi.Context,
	name string, args *ClusterEndpointArgs, opts ...pulumi.ResourceOption) (*ClusterEndpoint, error)

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

func (*ClusterEndpoint) ElementType added in v3.13.0

func (*ClusterEndpoint) ElementType() reflect.Type

func (*ClusterEndpoint) ToClusterEndpointOutput added in v3.13.0

func (i *ClusterEndpoint) ToClusterEndpointOutput() ClusterEndpointOutput

func (*ClusterEndpoint) ToClusterEndpointOutputWithContext added in v3.13.0

func (i *ClusterEndpoint) ToClusterEndpointOutputWithContext(ctx context.Context) ClusterEndpointOutput

func (*ClusterEndpoint) ToClusterEndpointPtrOutput added in v3.25.0

func (i *ClusterEndpoint) ToClusterEndpointPtrOutput() ClusterEndpointPtrOutput

func (*ClusterEndpoint) ToClusterEndpointPtrOutputWithContext added in v3.25.0

func (i *ClusterEndpoint) ToClusterEndpointPtrOutputWithContext(ctx context.Context) ClusterEndpointPtrOutput

type ClusterEndpointArgs

type ClusterEndpointArgs struct {
	// The identifier to use for the new endpoint. This parameter is stored as a lowercase string.
	ClusterEndpointIdentifier pulumi.StringInput
	// The cluster identifier.
	ClusterIdentifier pulumi.StringInput
	// The type of the endpoint. One of: READER , ANY .
	CustomEndpointType pulumi.StringInput
	// List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty. Conflicts with `staticMembers`.
	ExcludedMembers pulumi.StringArrayInput
	// List of DB instance identifiers that are part of the custom endpoint group. Conflicts with `excludedMembers`.
	StaticMembers pulumi.StringArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterEndpoint resource.

func (ClusterEndpointArgs) ElementType

func (ClusterEndpointArgs) ElementType() reflect.Type

type ClusterEndpointArray added in v3.25.0

type ClusterEndpointArray []ClusterEndpointInput

func (ClusterEndpointArray) ElementType added in v3.25.0

func (ClusterEndpointArray) ElementType() reflect.Type

func (ClusterEndpointArray) ToClusterEndpointArrayOutput added in v3.25.0

func (i ClusterEndpointArray) ToClusterEndpointArrayOutput() ClusterEndpointArrayOutput

func (ClusterEndpointArray) ToClusterEndpointArrayOutputWithContext added in v3.25.0

func (i ClusterEndpointArray) ToClusterEndpointArrayOutputWithContext(ctx context.Context) ClusterEndpointArrayOutput

type ClusterEndpointArrayInput added in v3.25.0

type ClusterEndpointArrayInput interface {
	pulumi.Input

	ToClusterEndpointArrayOutput() ClusterEndpointArrayOutput
	ToClusterEndpointArrayOutputWithContext(context.Context) ClusterEndpointArrayOutput
}

ClusterEndpointArrayInput is an input type that accepts ClusterEndpointArray and ClusterEndpointArrayOutput values. You can construct a concrete instance of `ClusterEndpointArrayInput` via:

ClusterEndpointArray{ ClusterEndpointArgs{...} }

type ClusterEndpointArrayOutput added in v3.25.0

type ClusterEndpointArrayOutput struct{ *pulumi.OutputState }

func (ClusterEndpointArrayOutput) ElementType added in v3.25.0

func (ClusterEndpointArrayOutput) ElementType() reflect.Type

func (ClusterEndpointArrayOutput) Index added in v3.25.0

func (ClusterEndpointArrayOutput) ToClusterEndpointArrayOutput added in v3.25.0

func (o ClusterEndpointArrayOutput) ToClusterEndpointArrayOutput() ClusterEndpointArrayOutput

func (ClusterEndpointArrayOutput) ToClusterEndpointArrayOutputWithContext added in v3.25.0

func (o ClusterEndpointArrayOutput) ToClusterEndpointArrayOutputWithContext(ctx context.Context) ClusterEndpointArrayOutput

type ClusterEndpointInput added in v3.13.0

type ClusterEndpointInput interface {
	pulumi.Input

	ToClusterEndpointOutput() ClusterEndpointOutput
	ToClusterEndpointOutputWithContext(ctx context.Context) ClusterEndpointOutput
}

type ClusterEndpointMap added in v3.25.0

type ClusterEndpointMap map[string]ClusterEndpointInput

func (ClusterEndpointMap) ElementType added in v3.25.0

func (ClusterEndpointMap) ElementType() reflect.Type

func (ClusterEndpointMap) ToClusterEndpointMapOutput added in v3.25.0

func (i ClusterEndpointMap) ToClusterEndpointMapOutput() ClusterEndpointMapOutput

func (ClusterEndpointMap) ToClusterEndpointMapOutputWithContext added in v3.25.0

func (i ClusterEndpointMap) ToClusterEndpointMapOutputWithContext(ctx context.Context) ClusterEndpointMapOutput

type ClusterEndpointMapInput added in v3.25.0

type ClusterEndpointMapInput interface {
	pulumi.Input

	ToClusterEndpointMapOutput() ClusterEndpointMapOutput
	ToClusterEndpointMapOutputWithContext(context.Context) ClusterEndpointMapOutput
}

ClusterEndpointMapInput is an input type that accepts ClusterEndpointMap and ClusterEndpointMapOutput values. You can construct a concrete instance of `ClusterEndpointMapInput` via:

ClusterEndpointMap{ "key": ClusterEndpointArgs{...} }

type ClusterEndpointMapOutput added in v3.25.0

type ClusterEndpointMapOutput struct{ *pulumi.OutputState }

func (ClusterEndpointMapOutput) ElementType added in v3.25.0

func (ClusterEndpointMapOutput) ElementType() reflect.Type

func (ClusterEndpointMapOutput) MapIndex added in v3.25.0

func (ClusterEndpointMapOutput) ToClusterEndpointMapOutput added in v3.25.0

func (o ClusterEndpointMapOutput) ToClusterEndpointMapOutput() ClusterEndpointMapOutput

func (ClusterEndpointMapOutput) ToClusterEndpointMapOutputWithContext added in v3.25.0

func (o ClusterEndpointMapOutput) ToClusterEndpointMapOutputWithContext(ctx context.Context) ClusterEndpointMapOutput

type ClusterEndpointOutput added in v3.13.0

type ClusterEndpointOutput struct {
	*pulumi.OutputState
}

func (ClusterEndpointOutput) ElementType added in v3.13.0

func (ClusterEndpointOutput) ElementType() reflect.Type

func (ClusterEndpointOutput) ToClusterEndpointOutput added in v3.13.0

func (o ClusterEndpointOutput) ToClusterEndpointOutput() ClusterEndpointOutput

func (ClusterEndpointOutput) ToClusterEndpointOutputWithContext added in v3.13.0

func (o ClusterEndpointOutput) ToClusterEndpointOutputWithContext(ctx context.Context) ClusterEndpointOutput

func (ClusterEndpointOutput) ToClusterEndpointPtrOutput added in v3.25.0

func (o ClusterEndpointOutput) ToClusterEndpointPtrOutput() ClusterEndpointPtrOutput

func (ClusterEndpointOutput) ToClusterEndpointPtrOutputWithContext added in v3.25.0

func (o ClusterEndpointOutput) ToClusterEndpointPtrOutputWithContext(ctx context.Context) ClusterEndpointPtrOutput

type ClusterEndpointPtrInput added in v3.25.0

type ClusterEndpointPtrInput interface {
	pulumi.Input

	ToClusterEndpointPtrOutput() ClusterEndpointPtrOutput
	ToClusterEndpointPtrOutputWithContext(ctx context.Context) ClusterEndpointPtrOutput
}

type ClusterEndpointPtrOutput added in v3.25.0

type ClusterEndpointPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterEndpointPtrOutput) ElementType added in v3.25.0

func (ClusterEndpointPtrOutput) ElementType() reflect.Type

func (ClusterEndpointPtrOutput) ToClusterEndpointPtrOutput added in v3.25.0

func (o ClusterEndpointPtrOutput) ToClusterEndpointPtrOutput() ClusterEndpointPtrOutput

func (ClusterEndpointPtrOutput) ToClusterEndpointPtrOutputWithContext added in v3.25.0

func (o ClusterEndpointPtrOutput) ToClusterEndpointPtrOutputWithContext(ctx context.Context) ClusterEndpointPtrOutput

type ClusterEndpointState

type ClusterEndpointState struct {
	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringPtrInput
	// The identifier to use for the new endpoint. This parameter is stored as a lowercase string.
	ClusterEndpointIdentifier pulumi.StringPtrInput
	// The cluster identifier.
	ClusterIdentifier pulumi.StringPtrInput
	// The type of the endpoint. One of: READER , ANY .
	CustomEndpointType pulumi.StringPtrInput
	// A custom endpoint for the Aurora cluster
	Endpoint pulumi.StringPtrInput
	// List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty. Conflicts with `staticMembers`.
	ExcludedMembers pulumi.StringArrayInput
	// List of DB instance identifiers that are part of the custom endpoint group. Conflicts with `excludedMembers`.
	StaticMembers pulumi.StringArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (ClusterEndpointState) ElementType

func (ClusterEndpointState) ElementType() reflect.Type

type ClusterInput added in v3.13.0

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"`
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. 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/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringOutput `pulumi:"caCertIdentifier"`
	// The identifier of the `rds.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringOutput `pulumi:"clusterIdentifier"`
	// Indicates whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.
	CopyTagsToSnapshot pulumi.BoolPtrOutput `pulumi:"copyTagsToSnapshot"`
	// The name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringOutput `pulumi:"dbParameterGroupName"`
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// The region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringOutput `pulumi:"dbiResourceId"`
	// 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 RDS instance. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringPtrOutput `pulumi:"engine"`
	// The database engine version. When managing the engine version in the cluster, it is recommended to add the `ignoreChanges` for this argument to prevent the provider from proposing changes to the instance engine version directly.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The indentifier for the RDS instance, if omitted, this 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 Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details.
	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 interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrOutput `pulumi:"monitoringInterval"`
	// The ARN for the IAM role that permits RDS to send
	// enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringOutput `pulumi:"monitoringRoleArn"`
	// Specifies whether Performance Insights is enabled or not.
	PerformanceInsightsEnabled pulumi.BoolOutput `pulumi:"performanceInsightsEnabled"`
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
	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.
	// Eg: "04:00-09:00"
	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 promoted to writer.
	PromotionTier pulumi.IntPtrOutput `pulumi:"promotionTier"`
	// Bool to control if instance is publicly accessible.
	// Default `false`. See the documentation on [Creating DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) for more
	// details on controlling this property.
	PubliclyAccessible pulumi.BoolPtrOutput `pulumi:"publiclyAccessible"`
	// Specifies whether the DB cluster is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the instance.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.
	Writer pulumi.BoolOutput `pulumi:"writer"`
}

Provides an RDS Cluster Instance Resource. A Cluster Instance Resource defines attributes that are specific to a single instance in a [RDS Cluster](https://www.terraform.io/docs/providers/aws/r/rds_cluster.html), specifically running Amazon Aurora.

Unlike other RDS resources that support replication, with Amazon Aurora you do not designate a primary and subsequent replicas. Instead, you simply add RDS Instances and Aurora manages the replication. You can use the [count](https://www.terraform.io/docs/configuration/meta-arguments/count.html) meta-parameter to make multiple instances and join them all to the same RDS Cluster, or you may specify different Cluster Instance resources with various `instanceClass` sizes.

For more information on Amazon Aurora, see [Aurora on Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) in the Amazon RDS User Guide.

> **NOTE:** Deletion Protection from the RDS service can only be enabled at the cluster level, not for individual cluster instances. You can still add the [`protect` CustomResourceOption](https://www.pulumi.com/docs/intro/concepts/programming-model/#protect) to this resource configuration if you desire protection from accidental deletion.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

```

## Import

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

```sh

$ pulumi import aws:rds/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 added in v3.13.0

func (*ClusterInstance) ElementType() reflect.Type

func (*ClusterInstance) ToClusterInstanceOutput added in v3.13.0

func (i *ClusterInstance) ToClusterInstanceOutput() ClusterInstanceOutput

func (*ClusterInstance) ToClusterInstanceOutputWithContext added in v3.13.0

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

func (*ClusterInstance) ToClusterInstancePtrOutput added in v3.25.0

func (i *ClusterInstance) ToClusterInstancePtrOutput() ClusterInstancePtrOutput

func (*ClusterInstance) ToClusterInstancePtrOutputWithContext added in v3.25.0

func (i *ClusterInstance) ToClusterInstancePtrOutputWithContext(ctx context.Context) ClusterInstancePtrOutput

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
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringPtrInput
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The identifier of the `rds.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringInput
	// Indicates whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// The name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.
	DbSubnetGroupName pulumi.StringPtrInput
	// The name of the database engine to be used for the RDS instance. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringPtrInput
	// The database engine version. When managing the engine version in the cluster, it is recommended to add the `ignoreChanges` for this argument to prevent the provider from proposing changes to the instance engine version directly.
	EngineVersion pulumi.StringPtrInput
	// The indentifier for the RDS instance, if omitted, this 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 Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details.
	InstanceClass pulumi.StringInput
	// The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrInput
	// The ARN for the IAM role that permits RDS to send
	// enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringPtrInput
	// Specifies whether Performance Insights is enabled or not.
	PerformanceInsightsEnabled pulumi.BoolPtrInput
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The daily time range during which automated backups are created if automated backups are enabled.
	// Eg: "04:00-09:00"
	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 promoted to writer.
	PromotionTier pulumi.IntPtrInput
	// Bool to control if instance is publicly accessible.
	// Default `false`. See the documentation on [Creating DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) for more
	// details on controlling this property.
	PubliclyAccessible pulumi.BoolPtrInput
	// A map of tags to assign to the instance.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterInstance resource.

func (ClusterInstanceArgs) ElementType

func (ClusterInstanceArgs) ElementType() reflect.Type

type ClusterInstanceArray added in v3.25.0

type ClusterInstanceArray []ClusterInstanceInput

func (ClusterInstanceArray) ElementType added in v3.25.0

func (ClusterInstanceArray) ElementType() reflect.Type

func (ClusterInstanceArray) ToClusterInstanceArrayOutput added in v3.25.0

func (i ClusterInstanceArray) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArray) ToClusterInstanceArrayOutputWithContext added in v3.25.0

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

type ClusterInstanceArrayInput added in v3.25.0

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 added in v3.25.0

type ClusterInstanceArrayOutput struct{ *pulumi.OutputState }

func (ClusterInstanceArrayOutput) ElementType added in v3.25.0

func (ClusterInstanceArrayOutput) ElementType() reflect.Type

func (ClusterInstanceArrayOutput) Index added in v3.25.0

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput added in v3.25.0

func (o ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutputWithContext added in v3.25.0

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

type ClusterInstanceInput added in v3.13.0

type ClusterInstanceInput interface {
	pulumi.Input

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

type ClusterInstanceMap added in v3.25.0

type ClusterInstanceMap map[string]ClusterInstanceInput

func (ClusterInstanceMap) ElementType added in v3.25.0

func (ClusterInstanceMap) ElementType() reflect.Type

func (ClusterInstanceMap) ToClusterInstanceMapOutput added in v3.25.0

func (i ClusterInstanceMap) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMap) ToClusterInstanceMapOutputWithContext added in v3.25.0

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

type ClusterInstanceMapInput added in v3.25.0

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 added in v3.25.0

type ClusterInstanceMapOutput struct{ *pulumi.OutputState }

func (ClusterInstanceMapOutput) ElementType added in v3.25.0

func (ClusterInstanceMapOutput) ElementType() reflect.Type

func (ClusterInstanceMapOutput) MapIndex added in v3.25.0

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutput added in v3.25.0

func (o ClusterInstanceMapOutput) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutputWithContext added in v3.25.0

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

type ClusterInstanceOutput added in v3.13.0

type ClusterInstanceOutput struct {
	*pulumi.OutputState
}

func (ClusterInstanceOutput) ElementType added in v3.13.0

func (ClusterInstanceOutput) ElementType() reflect.Type

func (ClusterInstanceOutput) ToClusterInstanceOutput added in v3.13.0

func (o ClusterInstanceOutput) ToClusterInstanceOutput() ClusterInstanceOutput

func (ClusterInstanceOutput) ToClusterInstanceOutputWithContext added in v3.13.0

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

func (ClusterInstanceOutput) ToClusterInstancePtrOutput added in v3.25.0

func (o ClusterInstanceOutput) ToClusterInstancePtrOutput() ClusterInstancePtrOutput

func (ClusterInstanceOutput) ToClusterInstancePtrOutputWithContext added in v3.25.0

func (o ClusterInstanceOutput) ToClusterInstancePtrOutputWithContext(ctx context.Context) ClusterInstancePtrOutput

type ClusterInstancePtrInput added in v3.25.0

type ClusterInstancePtrInput interface {
	pulumi.Input

	ToClusterInstancePtrOutput() ClusterInstancePtrOutput
	ToClusterInstancePtrOutputWithContext(ctx context.Context) ClusterInstancePtrOutput
}

type ClusterInstancePtrOutput added in v3.25.0

type ClusterInstancePtrOutput struct {
	*pulumi.OutputState
}

func (ClusterInstancePtrOutput) ElementType added in v3.25.0

func (ClusterInstancePtrOutput) ElementType() reflect.Type

func (ClusterInstancePtrOutput) ToClusterInstancePtrOutput added in v3.25.0

func (o ClusterInstancePtrOutput) ToClusterInstancePtrOutput() ClusterInstancePtrOutput

func (ClusterInstancePtrOutput) ToClusterInstancePtrOutputWithContext added in v3.25.0

func (o ClusterInstancePtrOutput) ToClusterInstancePtrOutputWithContext(ctx context.Context) ClusterInstancePtrOutput

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
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) about the details.
	AvailabilityZone pulumi.StringPtrInput
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The identifier of the `rds.Cluster` in which to launch this instance.
	ClusterIdentifier pulumi.StringPtrInput
	// Indicates whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// The name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.
	DbSubnetGroupName pulumi.StringPtrInput
	// The region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringPtrInput
	// The DNS address for this instance. May not be writable
	Endpoint pulumi.StringPtrInput
	// The name of the database engine to be used for the RDS instance. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringPtrInput
	// The database engine version. When managing the engine version in the cluster, it is recommended to add the `ignoreChanges` for this argument to prevent the provider from proposing changes to the instance engine version directly.
	EngineVersion pulumi.StringPtrInput
	// The indentifier for the RDS instance, if omitted, this 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 Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details.
	InstanceClass pulumi.StringPtrInput
	// The ARN for the KMS encryption key if one is set to the cluster.
	KmsKeyId pulumi.StringPtrInput
	// The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrInput
	// The ARN for the IAM role that permits RDS to send
	// enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringPtrInput
	// Specifies whether Performance Insights is enabled or not.
	PerformanceInsightsEnabled pulumi.BoolPtrInput
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The database port
	Port pulumi.IntPtrInput
	// The daily time range during which automated backups are created if automated backups are enabled.
	// Eg: "04:00-09:00"
	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 promoted to writer.
	PromotionTier pulumi.IntPtrInput
	// Bool to control if instance is publicly accessible.
	// Default `false`. See the documentation on [Creating DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) for more
	// details on controlling this property.
	PubliclyAccessible pulumi.BoolPtrInput
	// Specifies whether the DB cluster is encrypted.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the instance.
	Tags 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 added in v3.25.0

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType added in v3.25.0

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput added in v3.25.0

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext added in v3.25.0

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

type ClusterMapInput added in v3.25.0

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 added in v3.25.0

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType added in v3.25.0

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex added in v3.25.0

func (ClusterMapOutput) ToClusterMapOutput added in v3.25.0

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext added in v3.25.0

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

type ClusterOutput added in v3.13.0

type ClusterOutput struct {
	*pulumi.OutputState
}

func (ClusterOutput) ElementType added in v3.13.0

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) ToClusterOutput added in v3.13.0

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext added in v3.13.0

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

func (ClusterOutput) ToClusterPtrOutput added in v3.25.0

func (o ClusterOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterOutput) ToClusterPtrOutputWithContext added in v3.25.0

func (o ClusterOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterParameterGroup

type ClusterParameterGroup struct {
	pulumi.CustomResourceState

	// The ARN of the db cluster parameter group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the DB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringOutput `pulumi:"description"`
	// The family of the DB cluster parameter group.
	Family pulumi.StringOutput `pulumi:"family"`
	// The name of the DB 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 DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-cluster-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) after initial creation of the group.
	Parameters ClusterParameterGroupParameterArrayOutput `pulumi:"parameters"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an RDS DB cluster parameter group resource. Documentation of the available parameters for various Aurora engines can be found at:

* [Aurora MySQL Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Reference.html) * [Aurora PostgreSQL Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraPostgreSQL.Reference.html)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewClusterParameterGroup(ctx, "_default", &rds.ClusterParameterGroupArgs{
			Description: pulumi.String("RDS default cluster parameter group"),
			Family:      pulumi.String("aurora5.6"),
			Parameters: rds.ClusterParameterGroupParameterArray{
				&rds.ClusterParameterGroupParameterArgs{
					Name:  pulumi.String("character_set_server"),
					Value: pulumi.String("utf8"),
				},
				&rds.ClusterParameterGroupParameterArgs{
					Name:  pulumi.String("character_set_client"),
					Value: pulumi.String("utf8"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:rds/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 added in v3.13.0

func (*ClusterParameterGroup) ElementType() reflect.Type

func (*ClusterParameterGroup) ToClusterParameterGroupOutput added in v3.13.0

func (i *ClusterParameterGroup) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (*ClusterParameterGroup) ToClusterParameterGroupOutputWithContext added in v3.13.0

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

func (*ClusterParameterGroup) ToClusterParameterGroupPtrOutput added in v3.25.0

func (i *ClusterParameterGroup) ToClusterParameterGroupPtrOutput() ClusterParameterGroupPtrOutput

func (*ClusterParameterGroup) ToClusterParameterGroupPtrOutputWithContext added in v3.25.0

func (i *ClusterParameterGroup) ToClusterParameterGroupPtrOutputWithContext(ctx context.Context) ClusterParameterGroupPtrOutput

type ClusterParameterGroupArgs

type ClusterParameterGroupArgs struct {
	// The description of the DB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DB cluster parameter group.
	Family pulumi.StringInput
	// The name of the DB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-cluster-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) after initial creation of the group.
	Parameters ClusterParameterGroupParameterArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterParameterGroup resource.

func (ClusterParameterGroupArgs) ElementType

func (ClusterParameterGroupArgs) ElementType() reflect.Type

type ClusterParameterGroupArray added in v3.25.0

type ClusterParameterGroupArray []ClusterParameterGroupInput

func (ClusterParameterGroupArray) ElementType added in v3.25.0

func (ClusterParameterGroupArray) ElementType() reflect.Type

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput added in v3.25.0

func (i ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutputWithContext added in v3.25.0

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

type ClusterParameterGroupArrayInput added in v3.25.0

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 added in v3.25.0

type ClusterParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupArrayOutput) ElementType added in v3.25.0

func (ClusterParameterGroupArrayOutput) Index added in v3.25.0

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput added in v3.25.0

func (o ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutputWithContext added in v3.25.0

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

type ClusterParameterGroupInput added in v3.13.0

type ClusterParameterGroupInput interface {
	pulumi.Input

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

type ClusterParameterGroupMap added in v3.25.0

type ClusterParameterGroupMap map[string]ClusterParameterGroupInput

func (ClusterParameterGroupMap) ElementType added in v3.25.0

func (ClusterParameterGroupMap) ElementType() reflect.Type

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutput added in v3.25.0

func (i ClusterParameterGroupMap) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutputWithContext added in v3.25.0

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

type ClusterParameterGroupMapInput added in v3.25.0

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 added in v3.25.0

type ClusterParameterGroupMapOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupMapOutput) ElementType added in v3.25.0

func (ClusterParameterGroupMapOutput) MapIndex added in v3.25.0

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput added in v3.25.0

func (o ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutputWithContext added in v3.25.0

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

type ClusterParameterGroupOutput added in v3.13.0

type ClusterParameterGroupOutput struct {
	*pulumi.OutputState
}

func (ClusterParameterGroupOutput) ElementType added in v3.13.0

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutput added in v3.13.0

func (o ClusterParameterGroupOutput) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutputWithContext added in v3.13.0

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

func (ClusterParameterGroupOutput) ToClusterParameterGroupPtrOutput added in v3.25.0

func (o ClusterParameterGroupOutput) ToClusterParameterGroupPtrOutput() ClusterParameterGroupPtrOutput

func (ClusterParameterGroupOutput) ToClusterParameterGroupPtrOutputWithContext added in v3.25.0

func (o ClusterParameterGroupOutput) ToClusterParameterGroupPtrOutputWithContext(ctx context.Context) ClusterParameterGroupPtrOutput

type ClusterParameterGroupParameter

type ClusterParameterGroupParameter struct {
	// "immediate" (default), or "pending-reboot". Some
	// engines can't apply some parameters without a reboot, and you will need to
	// specify "pending-reboot" here.
	ApplyMethod *string `pulumi:"applyMethod"`
	// The name of the DB parameter.
	Name string `pulumi:"name"`
	// The value of the DB parameter.
	Value string `pulumi:"value"`
}

type ClusterParameterGroupParameterArgs

type ClusterParameterGroupParameterArgs struct {
	// "immediate" (default), or "pending-reboot". Some
	// engines can't apply some parameters without a reboot, and you will need to
	// specify "pending-reboot" here.
	ApplyMethod pulumi.StringPtrInput `pulumi:"applyMethod"`
	// The name of the DB parameter.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the DB 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

"immediate" (default), or "pending-reboot". Some engines can't apply some parameters without a reboot, and you will need to specify "pending-reboot" here.

func (ClusterParameterGroupParameterOutput) ElementType

func (ClusterParameterGroupParameterOutput) Name

The name of the DB 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 DB parameter.

type ClusterParameterGroupPtrInput added in v3.25.0

type ClusterParameterGroupPtrInput interface {
	pulumi.Input

	ToClusterParameterGroupPtrOutput() ClusterParameterGroupPtrOutput
	ToClusterParameterGroupPtrOutputWithContext(ctx context.Context) ClusterParameterGroupPtrOutput
}

type ClusterParameterGroupPtrOutput added in v3.25.0

type ClusterParameterGroupPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterParameterGroupPtrOutput) ElementType added in v3.25.0

func (ClusterParameterGroupPtrOutput) ToClusterParameterGroupPtrOutput added in v3.25.0

func (o ClusterParameterGroupPtrOutput) ToClusterParameterGroupPtrOutput() ClusterParameterGroupPtrOutput

func (ClusterParameterGroupPtrOutput) ToClusterParameterGroupPtrOutputWithContext added in v3.25.0

func (o ClusterParameterGroupPtrOutput) ToClusterParameterGroupPtrOutputWithContext(ctx context.Context) ClusterParameterGroupPtrOutput

type ClusterParameterGroupState

type ClusterParameterGroupState struct {
	// The ARN of the db cluster parameter group.
	Arn pulumi.StringPtrInput
	// The description of the DB cluster parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DB cluster parameter group.
	Family pulumi.StringPtrInput
	// The name of the DB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-cluster-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) after initial creation of the group.
	Parameters ClusterParameterGroupParameterArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (ClusterParameterGroupState) ElementType

func (ClusterParameterGroupState) ElementType() reflect.Type

type ClusterPtrInput added in v3.25.0

type ClusterPtrInput interface {
	pulumi.Input

	ToClusterPtrOutput() ClusterPtrOutput
	ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput
}

type ClusterPtrOutput added in v3.25.0

type ClusterPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterPtrOutput) ElementType added in v3.25.0

func (ClusterPtrOutput) ElementType() reflect.Type

func (ClusterPtrOutput) ToClusterPtrOutput added in v3.25.0

func (o ClusterPtrOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterPtrOutput) ToClusterPtrOutputWithContext added in v3.25.0

func (o ClusterPtrOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterRestoreToPointInTime added in v3.13.0

type ClusterRestoreToPointInTime struct {
	// Date and time in UTC format to restore the database cluster to. Conflicts with `useLatestRestorableTime`.
	RestoreToTime *string `pulumi:"restoreToTime"`
	// Type of restore to be performed.
	// Valid options are `full-copy` (default) and `copy-on-write`.
	RestoreType *string `pulumi:"restoreType"`
	// The identifier of the source database cluster from which to restore.
	SourceClusterIdentifier string `pulumi:"sourceClusterIdentifier"`
	// Set to true to restore the database cluster to the latest restorable backup time. Defaults to false. Conflicts with `restoreToTime`.
	UseLatestRestorableTime *bool `pulumi:"useLatestRestorableTime"`
}

type ClusterRestoreToPointInTimeArgs added in v3.13.0

type ClusterRestoreToPointInTimeArgs struct {
	// Date and time in UTC format to restore the database cluster to. Conflicts with `useLatestRestorableTime`.
	RestoreToTime pulumi.StringPtrInput `pulumi:"restoreToTime"`
	// Type of restore to be performed.
	// Valid options are `full-copy` (default) and `copy-on-write`.
	RestoreType pulumi.StringPtrInput `pulumi:"restoreType"`
	// The identifier of the source database cluster from which to restore.
	SourceClusterIdentifier pulumi.StringInput `pulumi:"sourceClusterIdentifier"`
	// Set to true to restore the database cluster to the latest restorable backup time. Defaults to false. Conflicts with `restoreToTime`.
	UseLatestRestorableTime pulumi.BoolPtrInput `pulumi:"useLatestRestorableTime"`
}

func (ClusterRestoreToPointInTimeArgs) ElementType added in v3.13.0

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutput added in v3.13.0

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutput() ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutputWithContext added in v3.13.0

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutputWithContext(ctx context.Context) ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutput added in v3.13.0

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutputWithContext(ctx context.Context) ClusterRestoreToPointInTimePtrOutput

type ClusterRestoreToPointInTimeInput added in v3.13.0

type ClusterRestoreToPointInTimeInput interface {
	pulumi.Input

	ToClusterRestoreToPointInTimeOutput() ClusterRestoreToPointInTimeOutput
	ToClusterRestoreToPointInTimeOutputWithContext(context.Context) ClusterRestoreToPointInTimeOutput
}

ClusterRestoreToPointInTimeInput is an input type that accepts ClusterRestoreToPointInTimeArgs and ClusterRestoreToPointInTimeOutput values. You can construct a concrete instance of `ClusterRestoreToPointInTimeInput` via:

ClusterRestoreToPointInTimeArgs{...}

type ClusterRestoreToPointInTimeOutput added in v3.13.0

type ClusterRestoreToPointInTimeOutput struct{ *pulumi.OutputState }

func (ClusterRestoreToPointInTimeOutput) ElementType added in v3.13.0

func (ClusterRestoreToPointInTimeOutput) RestoreToTime added in v3.13.0

Date and time in UTC format to restore the database cluster to. Conflicts with `useLatestRestorableTime`.

func (ClusterRestoreToPointInTimeOutput) RestoreType added in v3.13.0

Type of restore to be performed. Valid options are `full-copy` (default) and `copy-on-write`.

func (ClusterRestoreToPointInTimeOutput) SourceClusterIdentifier added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) SourceClusterIdentifier() pulumi.StringOutput

The identifier of the source database cluster from which to restore.

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutput added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutput() ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutputWithContext added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutputWithContext(ctx context.Context) ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutput added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutputWithContext(ctx context.Context) ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimeOutput) UseLatestRestorableTime added in v3.13.0

func (o ClusterRestoreToPointInTimeOutput) UseLatestRestorableTime() pulumi.BoolPtrOutput

Set to true to restore the database cluster to the latest restorable backup time. Defaults to false. Conflicts with `restoreToTime`.

type ClusterRestoreToPointInTimePtrInput added in v3.13.0

type ClusterRestoreToPointInTimePtrInput interface {
	pulumi.Input

	ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput
	ToClusterRestoreToPointInTimePtrOutputWithContext(context.Context) ClusterRestoreToPointInTimePtrOutput
}

ClusterRestoreToPointInTimePtrInput is an input type that accepts ClusterRestoreToPointInTimeArgs, ClusterRestoreToPointInTimePtr and ClusterRestoreToPointInTimePtrOutput values. You can construct a concrete instance of `ClusterRestoreToPointInTimePtrInput` via:

        ClusterRestoreToPointInTimeArgs{...}

or:

        nil

func ClusterRestoreToPointInTimePtr added in v3.13.0

type ClusterRestoreToPointInTimePtrOutput added in v3.13.0

type ClusterRestoreToPointInTimePtrOutput struct{ *pulumi.OutputState }

func (ClusterRestoreToPointInTimePtrOutput) Elem added in v3.13.0

func (ClusterRestoreToPointInTimePtrOutput) ElementType added in v3.13.0

func (ClusterRestoreToPointInTimePtrOutput) RestoreToTime added in v3.13.0

Date and time in UTC format to restore the database cluster to. Conflicts with `useLatestRestorableTime`.

func (ClusterRestoreToPointInTimePtrOutput) RestoreType added in v3.13.0

Type of restore to be performed. Valid options are `full-copy` (default) and `copy-on-write`.

func (ClusterRestoreToPointInTimePtrOutput) SourceClusterIdentifier added in v3.13.0

func (o ClusterRestoreToPointInTimePtrOutput) SourceClusterIdentifier() pulumi.StringPtrOutput

The identifier of the source database cluster from which to restore.

func (ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutput added in v3.13.0

func (o ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (o ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutputWithContext(ctx context.Context) ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimePtrOutput) UseLatestRestorableTime added in v3.13.0

func (o ClusterRestoreToPointInTimePtrOutput) UseLatestRestorableTime() pulumi.BoolPtrOutput

Set to true to restore the database cluster to the latest restorable backup time. Defaults to false. Conflicts with `restoreToTime`.

type ClusterS3Import

type ClusterS3Import struct {
	// The bucket name where your backup is stored
	BucketName string `pulumi:"bucketName"`
	// Can be blank, but is the path to your backup
	BucketPrefix *string `pulumi:"bucketPrefix"`
	// Role applied to load the data.
	IngestionRole string `pulumi:"ingestionRole"`
	// Source engine for the backup
	SourceEngine string `pulumi:"sourceEngine"`
	// Version of the source engine used to make the backup
	SourceEngineVersion string `pulumi:"sourceEngineVersion"`
}

type ClusterS3ImportArgs

type ClusterS3ImportArgs struct {
	// The bucket name where your backup is stored
	BucketName pulumi.StringInput `pulumi:"bucketName"`
	// Can be blank, but is the path to your backup
	BucketPrefix pulumi.StringPtrInput `pulumi:"bucketPrefix"`
	// Role applied to load the data.
	IngestionRole pulumi.StringInput `pulumi:"ingestionRole"`
	// Source engine for the backup
	SourceEngine pulumi.StringInput `pulumi:"sourceEngine"`
	// Version of the source engine used to make the backup
	SourceEngineVersion pulumi.StringInput `pulumi:"sourceEngineVersion"`
}

func (ClusterS3ImportArgs) ElementType

func (ClusterS3ImportArgs) ElementType() reflect.Type

func (ClusterS3ImportArgs) ToClusterS3ImportOutput

func (i ClusterS3ImportArgs) ToClusterS3ImportOutput() ClusterS3ImportOutput

func (ClusterS3ImportArgs) ToClusterS3ImportOutputWithContext

func (i ClusterS3ImportArgs) ToClusterS3ImportOutputWithContext(ctx context.Context) ClusterS3ImportOutput

func (ClusterS3ImportArgs) ToClusterS3ImportPtrOutput

func (i ClusterS3ImportArgs) ToClusterS3ImportPtrOutput() ClusterS3ImportPtrOutput

func (ClusterS3ImportArgs) ToClusterS3ImportPtrOutputWithContext

func (i ClusterS3ImportArgs) ToClusterS3ImportPtrOutputWithContext(ctx context.Context) ClusterS3ImportPtrOutput

type ClusterS3ImportInput

type ClusterS3ImportInput interface {
	pulumi.Input

	ToClusterS3ImportOutput() ClusterS3ImportOutput
	ToClusterS3ImportOutputWithContext(context.Context) ClusterS3ImportOutput
}

ClusterS3ImportInput is an input type that accepts ClusterS3ImportArgs and ClusterS3ImportOutput values. You can construct a concrete instance of `ClusterS3ImportInput` via:

ClusterS3ImportArgs{...}

type ClusterS3ImportOutput

type ClusterS3ImportOutput struct{ *pulumi.OutputState }

func (ClusterS3ImportOutput) BucketName

func (o ClusterS3ImportOutput) BucketName() pulumi.StringOutput

The bucket name where your backup is stored

func (ClusterS3ImportOutput) BucketPrefix

func (o ClusterS3ImportOutput) BucketPrefix() pulumi.StringPtrOutput

Can be blank, but is the path to your backup

func (ClusterS3ImportOutput) ElementType

func (ClusterS3ImportOutput) ElementType() reflect.Type

func (ClusterS3ImportOutput) IngestionRole

func (o ClusterS3ImportOutput) IngestionRole() pulumi.StringOutput

Role applied to load the data.

func (ClusterS3ImportOutput) SourceEngine

func (o ClusterS3ImportOutput) SourceEngine() pulumi.StringOutput

Source engine for the backup

func (ClusterS3ImportOutput) SourceEngineVersion

func (o ClusterS3ImportOutput) SourceEngineVersion() pulumi.StringOutput

Version of the source engine used to make the backup

func (ClusterS3ImportOutput) ToClusterS3ImportOutput

func (o ClusterS3ImportOutput) ToClusterS3ImportOutput() ClusterS3ImportOutput

func (ClusterS3ImportOutput) ToClusterS3ImportOutputWithContext

func (o ClusterS3ImportOutput) ToClusterS3ImportOutputWithContext(ctx context.Context) ClusterS3ImportOutput

func (ClusterS3ImportOutput) ToClusterS3ImportPtrOutput

func (o ClusterS3ImportOutput) ToClusterS3ImportPtrOutput() ClusterS3ImportPtrOutput

func (ClusterS3ImportOutput) ToClusterS3ImportPtrOutputWithContext

func (o ClusterS3ImportOutput) ToClusterS3ImportPtrOutputWithContext(ctx context.Context) ClusterS3ImportPtrOutput

type ClusterS3ImportPtrInput

type ClusterS3ImportPtrInput interface {
	pulumi.Input

	ToClusterS3ImportPtrOutput() ClusterS3ImportPtrOutput
	ToClusterS3ImportPtrOutputWithContext(context.Context) ClusterS3ImportPtrOutput
}

ClusterS3ImportPtrInput is an input type that accepts ClusterS3ImportArgs, ClusterS3ImportPtr and ClusterS3ImportPtrOutput values. You can construct a concrete instance of `ClusterS3ImportPtrInput` via:

        ClusterS3ImportArgs{...}

or:

        nil

type ClusterS3ImportPtrOutput

type ClusterS3ImportPtrOutput struct{ *pulumi.OutputState }

func (ClusterS3ImportPtrOutput) BucketName

The bucket name where your backup is stored

func (ClusterS3ImportPtrOutput) BucketPrefix

Can be blank, but is the path to your backup

func (ClusterS3ImportPtrOutput) Elem

func (ClusterS3ImportPtrOutput) ElementType

func (ClusterS3ImportPtrOutput) ElementType() reflect.Type

func (ClusterS3ImportPtrOutput) IngestionRole

Role applied to load the data.

func (ClusterS3ImportPtrOutput) SourceEngine

Source engine for the backup

func (ClusterS3ImportPtrOutput) SourceEngineVersion

func (o ClusterS3ImportPtrOutput) SourceEngineVersion() pulumi.StringPtrOutput

Version of the source engine used to make the backup

func (ClusterS3ImportPtrOutput) ToClusterS3ImportPtrOutput

func (o ClusterS3ImportPtrOutput) ToClusterS3ImportPtrOutput() ClusterS3ImportPtrOutput

func (ClusterS3ImportPtrOutput) ToClusterS3ImportPtrOutputWithContext

func (o ClusterS3ImportPtrOutput) ToClusterS3ImportPtrOutputWithContext(ctx context.Context) ClusterS3ImportPtrOutput

type ClusterScalingConfiguration

type ClusterScalingConfiguration struct {
	// Whether to enable automatic pause. A DB cluster can be paused only when it's idle (it has no connections). If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it. Defaults to `true`.
	AutoPause *bool `pulumi:"autoPause"`
	// The maximum capacity for an Aurora DB cluster in `serverless` DB engine mode. The maximum capacity must be greater than or equal to the minimum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `16`.
	MaxCapacity *int `pulumi:"maxCapacity"`
	// The minimum capacity for an Aurora DB cluster in `serverless` DB engine mode. The minimum capacity must be lesser than or equal to the maximum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `1`.
	MinCapacity *int `pulumi:"minCapacity"`
	// The time, in seconds, before an Aurora DB cluster in serverless mode is paused. Valid values are `300` through `86400`. Defaults to `300`.
	SecondsUntilAutoPause *int `pulumi:"secondsUntilAutoPause"`
	// The action to take when the timeout is reached. Valid values: `ForceApplyCapacityChange`, `RollbackCapacityChange`. Defaults to `RollbackCapacityChange`. See [documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.timeout-action).
	TimeoutAction *string `pulumi:"timeoutAction"`
}

type ClusterScalingConfigurationArgs

type ClusterScalingConfigurationArgs struct {
	// Whether to enable automatic pause. A DB cluster can be paused only when it's idle (it has no connections). If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it. Defaults to `true`.
	AutoPause pulumi.BoolPtrInput `pulumi:"autoPause"`
	// The maximum capacity for an Aurora DB cluster in `serverless` DB engine mode. The maximum capacity must be greater than or equal to the minimum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `16`.
	MaxCapacity pulumi.IntPtrInput `pulumi:"maxCapacity"`
	// The minimum capacity for an Aurora DB cluster in `serverless` DB engine mode. The minimum capacity must be lesser than or equal to the maximum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `1`.
	MinCapacity pulumi.IntPtrInput `pulumi:"minCapacity"`
	// The time, in seconds, before an Aurora DB cluster in serverless mode is paused. Valid values are `300` through `86400`. Defaults to `300`.
	SecondsUntilAutoPause pulumi.IntPtrInput `pulumi:"secondsUntilAutoPause"`
	// The action to take when the timeout is reached. Valid values: `ForceApplyCapacityChange`, `RollbackCapacityChange`. Defaults to `RollbackCapacityChange`. See [documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.timeout-action).
	TimeoutAction pulumi.StringPtrInput `pulumi:"timeoutAction"`
}

func (ClusterScalingConfigurationArgs) ElementType

func (ClusterScalingConfigurationArgs) ToClusterScalingConfigurationOutput

func (i ClusterScalingConfigurationArgs) ToClusterScalingConfigurationOutput() ClusterScalingConfigurationOutput

func (ClusterScalingConfigurationArgs) ToClusterScalingConfigurationOutputWithContext

func (i ClusterScalingConfigurationArgs) ToClusterScalingConfigurationOutputWithContext(ctx context.Context) ClusterScalingConfigurationOutput

func (ClusterScalingConfigurationArgs) ToClusterScalingConfigurationPtrOutput

func (i ClusterScalingConfigurationArgs) ToClusterScalingConfigurationPtrOutput() ClusterScalingConfigurationPtrOutput

func (ClusterScalingConfigurationArgs) ToClusterScalingConfigurationPtrOutputWithContext

func (i ClusterScalingConfigurationArgs) ToClusterScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterScalingConfigurationPtrOutput

type ClusterScalingConfigurationInput

type ClusterScalingConfigurationInput interface {
	pulumi.Input

	ToClusterScalingConfigurationOutput() ClusterScalingConfigurationOutput
	ToClusterScalingConfigurationOutputWithContext(context.Context) ClusterScalingConfigurationOutput
}

ClusterScalingConfigurationInput is an input type that accepts ClusterScalingConfigurationArgs and ClusterScalingConfigurationOutput values. You can construct a concrete instance of `ClusterScalingConfigurationInput` via:

ClusterScalingConfigurationArgs{...}

type ClusterScalingConfigurationOutput

type ClusterScalingConfigurationOutput struct{ *pulumi.OutputState }

func (ClusterScalingConfigurationOutput) AutoPause

Whether to enable automatic pause. A DB cluster can be paused only when it's idle (it has no connections). If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it. Defaults to `true`.

func (ClusterScalingConfigurationOutput) ElementType

func (ClusterScalingConfigurationOutput) MaxCapacity

The maximum capacity for an Aurora DB cluster in `serverless` DB engine mode. The maximum capacity must be greater than or equal to the minimum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `16`.

func (ClusterScalingConfigurationOutput) MinCapacity

The minimum capacity for an Aurora DB cluster in `serverless` DB engine mode. The minimum capacity must be lesser than or equal to the maximum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `1`.

func (ClusterScalingConfigurationOutput) SecondsUntilAutoPause

func (o ClusterScalingConfigurationOutput) SecondsUntilAutoPause() pulumi.IntPtrOutput

The time, in seconds, before an Aurora DB cluster in serverless mode is paused. Valid values are `300` through `86400`. Defaults to `300`.

func (ClusterScalingConfigurationOutput) TimeoutAction

The action to take when the timeout is reached. Valid values: `ForceApplyCapacityChange`, `RollbackCapacityChange`. Defaults to `RollbackCapacityChange`. See [documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.timeout-action).

func (ClusterScalingConfigurationOutput) ToClusterScalingConfigurationOutput

func (o ClusterScalingConfigurationOutput) ToClusterScalingConfigurationOutput() ClusterScalingConfigurationOutput

func (ClusterScalingConfigurationOutput) ToClusterScalingConfigurationOutputWithContext

func (o ClusterScalingConfigurationOutput) ToClusterScalingConfigurationOutputWithContext(ctx context.Context) ClusterScalingConfigurationOutput

func (ClusterScalingConfigurationOutput) ToClusterScalingConfigurationPtrOutput

func (o ClusterScalingConfigurationOutput) ToClusterScalingConfigurationPtrOutput() ClusterScalingConfigurationPtrOutput

func (ClusterScalingConfigurationOutput) ToClusterScalingConfigurationPtrOutputWithContext

func (o ClusterScalingConfigurationOutput) ToClusterScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterScalingConfigurationPtrOutput

type ClusterScalingConfigurationPtrInput

type ClusterScalingConfigurationPtrInput interface {
	pulumi.Input

	ToClusterScalingConfigurationPtrOutput() ClusterScalingConfigurationPtrOutput
	ToClusterScalingConfigurationPtrOutputWithContext(context.Context) ClusterScalingConfigurationPtrOutput
}

ClusterScalingConfigurationPtrInput is an input type that accepts ClusterScalingConfigurationArgs, ClusterScalingConfigurationPtr and ClusterScalingConfigurationPtrOutput values. You can construct a concrete instance of `ClusterScalingConfigurationPtrInput` via:

        ClusterScalingConfigurationArgs{...}

or:

        nil

type ClusterScalingConfigurationPtrOutput

type ClusterScalingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ClusterScalingConfigurationPtrOutput) AutoPause

Whether to enable automatic pause. A DB cluster can be paused only when it's idle (it has no connections). If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it. Defaults to `true`.

func (ClusterScalingConfigurationPtrOutput) Elem

func (ClusterScalingConfigurationPtrOutput) ElementType

func (ClusterScalingConfigurationPtrOutput) MaxCapacity

The maximum capacity for an Aurora DB cluster in `serverless` DB engine mode. The maximum capacity must be greater than or equal to the minimum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `16`.

func (ClusterScalingConfigurationPtrOutput) MinCapacity

The minimum capacity for an Aurora DB cluster in `serverless` DB engine mode. The minimum capacity must be lesser than or equal to the maximum capacity. Valid Aurora MySQL capacity values are `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `256`. Valid Aurora PostgreSQL capacity values are (`2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`). Defaults to `1`.

func (ClusterScalingConfigurationPtrOutput) SecondsUntilAutoPause

func (o ClusterScalingConfigurationPtrOutput) SecondsUntilAutoPause() pulumi.IntPtrOutput

The time, in seconds, before an Aurora DB cluster in serverless mode is paused. Valid values are `300` through `86400`. Defaults to `300`.

func (ClusterScalingConfigurationPtrOutput) TimeoutAction

The action to take when the timeout is reached. Valid values: `ForceApplyCapacityChange`, `RollbackCapacityChange`. Defaults to `RollbackCapacityChange`. See [documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.timeout-action).

func (ClusterScalingConfigurationPtrOutput) ToClusterScalingConfigurationPtrOutput

func (o ClusterScalingConfigurationPtrOutput) ToClusterScalingConfigurationPtrOutput() ClusterScalingConfigurationPtrOutput

func (ClusterScalingConfigurationPtrOutput) ToClusterScalingConfigurationPtrOutputWithContext

func (o ClusterScalingConfigurationPtrOutput) ToClusterScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterScalingConfigurationPtrOutput

type ClusterSnapshot

type ClusterSnapshot struct {
	pulumi.CustomResourceState

	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage pulumi.IntOutput `pulumi:"allocatedStorage"`
	// List of EC2 Availability Zones that instances in the DB cluster snapshot can be restored in.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The DB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringOutput `pulumi:"dbClusterIdentifier"`
	// The Amazon Resource Name (ARN) for the DB 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 DB cluster snapshot.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// If storageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster snapshot.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// License model information for the restored DB cluster.
	LicenseModel pulumi.StringOutput `pulumi:"licenseModel"`
	// Port that the DB 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 DB Cluster Snapshot.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies whether the DB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the DB cluster.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The VPC ID associated with the DB cluster snapshot.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages an RDS database cluster snapshot for Aurora clusters. For managing RDS database instance snapshots, see the `rds.Snapshot` resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

```

## Import

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

```sh

$ pulumi import aws:rds/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 added in v3.13.0

func (*ClusterSnapshot) ElementType() reflect.Type

func (*ClusterSnapshot) ToClusterSnapshotOutput added in v3.13.0

func (i *ClusterSnapshot) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (*ClusterSnapshot) ToClusterSnapshotOutputWithContext added in v3.13.0

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

func (*ClusterSnapshot) ToClusterSnapshotPtrOutput added in v3.25.0

func (i *ClusterSnapshot) ToClusterSnapshotPtrOutput() ClusterSnapshotPtrOutput

func (*ClusterSnapshot) ToClusterSnapshotPtrOutputWithContext added in v3.25.0

func (i *ClusterSnapshot) ToClusterSnapshotPtrOutputWithContext(ctx context.Context) ClusterSnapshotPtrOutput

type ClusterSnapshotArgs

type ClusterSnapshotArgs struct {
	// The DB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringInput
	// The Identifier for the snapshot.
	DbClusterSnapshotIdentifier pulumi.StringInput
	// A map of tags to assign to the DB cluster.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterSnapshot resource.

func (ClusterSnapshotArgs) ElementType

func (ClusterSnapshotArgs) ElementType() reflect.Type

type ClusterSnapshotArray added in v3.25.0

type ClusterSnapshotArray []ClusterSnapshotInput

func (ClusterSnapshotArray) ElementType added in v3.25.0

func (ClusterSnapshotArray) ElementType() reflect.Type

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutput added in v3.25.0

func (i ClusterSnapshotArray) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutputWithContext added in v3.25.0

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

type ClusterSnapshotArrayInput added in v3.25.0

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 added in v3.25.0

type ClusterSnapshotArrayOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotArrayOutput) ElementType added in v3.25.0

func (ClusterSnapshotArrayOutput) ElementType() reflect.Type

func (ClusterSnapshotArrayOutput) Index added in v3.25.0

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput added in v3.25.0

func (o ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutputWithContext added in v3.25.0

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

type ClusterSnapshotInput added in v3.13.0

type ClusterSnapshotInput interface {
	pulumi.Input

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

type ClusterSnapshotMap added in v3.25.0

type ClusterSnapshotMap map[string]ClusterSnapshotInput

func (ClusterSnapshotMap) ElementType added in v3.25.0

func (ClusterSnapshotMap) ElementType() reflect.Type

func (ClusterSnapshotMap) ToClusterSnapshotMapOutput added in v3.25.0

func (i ClusterSnapshotMap) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMap) ToClusterSnapshotMapOutputWithContext added in v3.25.0

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

type ClusterSnapshotMapInput added in v3.25.0

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 added in v3.25.0

type ClusterSnapshotMapOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotMapOutput) ElementType added in v3.25.0

func (ClusterSnapshotMapOutput) ElementType() reflect.Type

func (ClusterSnapshotMapOutput) MapIndex added in v3.25.0

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput added in v3.25.0

func (o ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutputWithContext added in v3.25.0

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

type ClusterSnapshotOutput added in v3.13.0

type ClusterSnapshotOutput struct {
	*pulumi.OutputState
}

func (ClusterSnapshotOutput) ElementType added in v3.13.0

func (ClusterSnapshotOutput) ElementType() reflect.Type

func (ClusterSnapshotOutput) ToClusterSnapshotOutput added in v3.13.0

func (o ClusterSnapshotOutput) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (ClusterSnapshotOutput) ToClusterSnapshotOutputWithContext added in v3.13.0

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

func (ClusterSnapshotOutput) ToClusterSnapshotPtrOutput added in v3.25.0

func (o ClusterSnapshotOutput) ToClusterSnapshotPtrOutput() ClusterSnapshotPtrOutput

func (ClusterSnapshotOutput) ToClusterSnapshotPtrOutputWithContext added in v3.25.0

func (o ClusterSnapshotOutput) ToClusterSnapshotPtrOutputWithContext(ctx context.Context) ClusterSnapshotPtrOutput

type ClusterSnapshotPtrInput added in v3.25.0

type ClusterSnapshotPtrInput interface {
	pulumi.Input

	ToClusterSnapshotPtrOutput() ClusterSnapshotPtrOutput
	ToClusterSnapshotPtrOutputWithContext(ctx context.Context) ClusterSnapshotPtrOutput
}

type ClusterSnapshotPtrOutput added in v3.25.0

type ClusterSnapshotPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterSnapshotPtrOutput) ElementType added in v3.25.0

func (ClusterSnapshotPtrOutput) ElementType() reflect.Type

func (ClusterSnapshotPtrOutput) ToClusterSnapshotPtrOutput added in v3.25.0

func (o ClusterSnapshotPtrOutput) ToClusterSnapshotPtrOutput() ClusterSnapshotPtrOutput

func (ClusterSnapshotPtrOutput) ToClusterSnapshotPtrOutputWithContext added in v3.25.0

func (o ClusterSnapshotPtrOutput) ToClusterSnapshotPtrOutputWithContext(ctx context.Context) ClusterSnapshotPtrOutput

type ClusterSnapshotState

type ClusterSnapshotState struct {
	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage pulumi.IntPtrInput
	// List of EC2 Availability Zones that instances in the DB cluster snapshot can be restored in.
	AvailabilityZones pulumi.StringArrayInput
	// The DB Cluster Identifier from which to take the snapshot.
	DbClusterIdentifier pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) for the DB 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 DB cluster snapshot.
	EngineVersion pulumi.StringPtrInput
	// If storageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster snapshot.
	KmsKeyId pulumi.StringPtrInput
	// License model information for the restored DB cluster.
	LicenseModel pulumi.StringPtrInput
	// Port that the DB cluster was listening on at the time of the snapshot.
	Port                       pulumi.IntPtrInput
	SnapshotType               pulumi.StringPtrInput
	SourceDbClusterSnapshotArn pulumi.StringPtrInput
	// The status of this DB Cluster Snapshot.
	Status pulumi.StringPtrInput
	// Specifies whether the DB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster.
	Tags pulumi.StringMapInput
	// The VPC ID associated with the DB cluster snapshot.
	VpcId pulumi.StringPtrInput
}

func (ClusterSnapshotState) ElementType

func (ClusterSnapshotState) ElementType() reflect.Type

type ClusterState

type ClusterState struct {
	// Enable to allow major engine version upgrades when changing engine versions. Defaults to `false`.
	AllowMajorVersionUpgrade pulumi.BoolPtrInput
	// Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`. See [Amazon RDS Documentation for more information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) of cluster
	Arn pulumi.StringPtrInput
	// A list of EC2 Availability Zones for the DB cluster storage where DB cluster instances can be created. RDS automatically assigns 3 AZs if less than 3 AZs are configured, which will show as a difference requiring resource recreation next provider update. It is recommended to specify 3 AZs or use [the `ignoreChanges` argument](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) if necessary.
	AvailabilityZones pulumi.StringArrayInput
	// The target backtrack window, in seconds. Only available for `aurora` engine currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)
	BacktrackWindow pulumi.IntPtrInput
	// The days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntPtrInput
	// The cluster identifier. If omitted, this 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 RDS Instances that are a part of this cluster
	ClusterMembers pulumi.StringArrayInput
	// The RDS Cluster Resource ID
	ClusterResourceId pulumi.StringPtrInput
	// Copy all Cluster `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// Name for an automatically created database on cluster creation. There are different naming restrictions per database engine: [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	DatabaseName pulumi.StringPtrInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// A DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringPtrInput
	// If the DB instance 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
	// Enable HTTP endpoint (data API). Only valid when `engineMode` is set to `serverless`.
	EnableHttpEndpoint pulumi.BoolPtrInput
	// Set of log types to export to cloudwatch. If omitted, no logs will be exported. The following log types are supported: `audit`, `error`, `general`, `slowquery`, `postgresql` (PostgreSQL).
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The DNS address of the RDS instance
	Endpoint pulumi.StringPtrInput
	// The name of the database engine to be used for this DB cluster. Defaults to `aurora`. Valid Values: `aurora`, `aurora-mysql`, `aurora-postgresql`
	Engine pulumi.StringPtrInput
	// The database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `multimaster`, `parallelquery`, `provisioned`, `serverless`. Defaults to: `provisioned`. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/aurora-serverless.html) for limitations when using `serverless`.
	EngineMode pulumi.StringPtrInput
	// The database engine version. Updating this argument results in an outage. See the [Aurora MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html) and [Aurora Postgres](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.html) documentation for your configured engine to determine this value. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`.
	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 `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// The Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringPtrInput
	// Specifies whether or mappings of AWS Identity and Access Management (IAM) accounts to database accounts is enabled. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) for availability and limitations.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrInput
	// A List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayInput
	// 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 [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints)
	MasterPassword pulumi.StringPtrInput
	// Username for the master DB user. Please refer to the [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot.
	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 region. e.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 Aurora cluster, automatically
	// load-balanced across replicas
	ReaderEndpoint pulumi.StringPtrInput
	// ARN of a source DB cluster or DB instance if this DB cluster is to be created as a Read Replica. If DB Cluster is part of a Global Cluster, use `ignoreChanges`.
	ReplicationSourceIdentifier pulumi.StringPtrInput
	// Nested attribute for [point in time restore](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_PIT.html). More details below.
	RestoreToPointInTime ClusterRestoreToPointInTimePtrInput
	S3Import             ClusterS3ImportPtrInput
	// Nested attribute with scaling properties. Only valid when `engineMode` is set to `serverless`. More details below.
	ScalingConfiguration ClusterScalingConfigurationPtrInput
	// 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.
	SnapshotIdentifier pulumi.StringPtrInput
	// The source region for an encrypted replica DB cluster.
	SourceRegion pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster.
	Tags pulumi.StringMapInput
	// List of VPC security groups to associate with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type EngineMode added in v3.18.0

type EngineMode pulumi.String

func (EngineMode) ElementType added in v3.18.0

func (EngineMode) ElementType() reflect.Type

func (EngineMode) ToStringOutput added in v3.18.0

func (e EngineMode) ToStringOutput() pulumi.StringOutput

func (EngineMode) ToStringOutputWithContext added in v3.18.0

func (e EngineMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (EngineMode) ToStringPtrOutput added in v3.18.0

func (e EngineMode) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineMode) ToStringPtrOutputWithContext added in v3.18.0

func (e EngineMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type EngineType added in v3.18.0

type EngineType pulumi.String

func (EngineType) ElementType added in v3.18.0

func (EngineType) ElementType() reflect.Type

func (EngineType) ToStringOutput added in v3.18.0

func (e EngineType) ToStringOutput() pulumi.StringOutput

func (EngineType) ToStringOutputWithContext added in v3.18.0

func (e EngineType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (EngineType) ToStringPtrOutput added in v3.18.0

func (e EngineType) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineType) ToStringPtrOutputWithContext added in v3.18.0

func (e EngineType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type EventSubscription

type EventSubscription struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name of the RDS event notification subscription
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The AWS customer account associated with the RDS 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 http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html or run `aws rds describe-event-categories`.
	EventCategories pulumi.StringArrayOutput `pulumi:"eventCategories"`
	// The name of the DB event subscription. By default generated by this provider.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the DB event subscription. Conflicts with `name`.
	NamePrefix pulumi.StringPtrOutput `pulumi:"namePrefix"`
	// The SNS topic to send events to.
	SnsTopic pulumi.StringOutput `pulumi:"snsTopic"`
	// 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-security-group`, `db-parameter-group`, `db-snapshot`, `db-cluster` or `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.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides a DB event subscription resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultInstance, err := rds.NewInstance(ctx, "defaultInstance", &rds.InstanceArgs{
			AllocatedStorage:   pulumi.Int(10),
			Engine:             pulumi.String("mysql"),
			EngineVersion:      pulumi.String("5.6.17"),
			InstanceClass:      pulumi.String("db.t2.micro"),
			Name:               pulumi.String("mydb"),
			Username:           pulumi.String("foo"),
			Password:           pulumi.String("bar"),
			DbSubnetGroupName:  pulumi.String("my_database_subnet_group"),
			ParameterGroupName: pulumi.String("default.mysql5.6"),
		})
		if err != nil {
			return err
		}
		defaultTopic, err := sns.NewTopic(ctx, "defaultTopic", nil)
		if err != nil {
			return err
		}
		_, err = rds.NewEventSubscription(ctx, "defaultEventSubscription", &rds.EventSubscriptionArgs{
			SnsTopic:   defaultTopic.Arn,
			SourceType: pulumi.String("db-instance"),
			SourceIds: pulumi.StringArray{
				defaultInstance.ID(),
			},
			EventCategories: pulumi.StringArray{
				pulumi.String("availability"),
				pulumi.String("deletion"),
				pulumi.String("failover"),
				pulumi.String("failure"),
				pulumi.String("low storage"),
				pulumi.String("maintenance"),
				pulumi.String("notification"),
				pulumi.String("read replica"),
				pulumi.String("recovery"),
				pulumi.String("restoration"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:rds/eventSubscription:EventSubscription default rds-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 added in v3.13.0

func (*EventSubscription) ElementType() reflect.Type

func (*EventSubscription) ToEventSubscriptionOutput added in v3.13.0

func (i *EventSubscription) ToEventSubscriptionOutput() EventSubscriptionOutput

func (*EventSubscription) ToEventSubscriptionOutputWithContext added in v3.13.0

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

func (*EventSubscription) ToEventSubscriptionPtrOutput added in v3.25.0

func (i *EventSubscription) ToEventSubscriptionPtrOutput() EventSubscriptionPtrOutput

func (*EventSubscription) ToEventSubscriptionPtrOutputWithContext added in v3.25.0

func (i *EventSubscription) ToEventSubscriptionPtrOutputWithContext(ctx context.Context) EventSubscriptionPtrOutput

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 http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html or run `aws rds describe-event-categories`.
	EventCategories pulumi.StringArrayInput
	// The name of the DB event subscription. By default generated by this provider.
	Name pulumi.StringPtrInput
	// The name of the DB event subscription. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The SNS topic to send events to.
	SnsTopic 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-security-group`, `db-parameter-group`, `db-snapshot`, `db-cluster` or `db-cluster-snapshot`. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a EventSubscription resource.

func (EventSubscriptionArgs) ElementType

func (EventSubscriptionArgs) ElementType() reflect.Type

type EventSubscriptionArray added in v3.25.0

type EventSubscriptionArray []EventSubscriptionInput

func (EventSubscriptionArray) ElementType added in v3.25.0

func (EventSubscriptionArray) ElementType() reflect.Type

func (EventSubscriptionArray) ToEventSubscriptionArrayOutput added in v3.25.0

func (i EventSubscriptionArray) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArray) ToEventSubscriptionArrayOutputWithContext added in v3.25.0

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

type EventSubscriptionArrayInput added in v3.25.0

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 added in v3.25.0

type EventSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (EventSubscriptionArrayOutput) ElementType added in v3.25.0

func (EventSubscriptionArrayOutput) Index added in v3.25.0

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput added in v3.25.0

func (o EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutputWithContext added in v3.25.0

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

type EventSubscriptionInput added in v3.13.0

type EventSubscriptionInput interface {
	pulumi.Input

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

type EventSubscriptionMap added in v3.25.0

type EventSubscriptionMap map[string]EventSubscriptionInput

func (EventSubscriptionMap) ElementType added in v3.25.0

func (EventSubscriptionMap) ElementType() reflect.Type

func (EventSubscriptionMap) ToEventSubscriptionMapOutput added in v3.25.0

func (i EventSubscriptionMap) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMap) ToEventSubscriptionMapOutputWithContext added in v3.25.0

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

type EventSubscriptionMapInput added in v3.25.0

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 added in v3.25.0

type EventSubscriptionMapOutput struct{ *pulumi.OutputState }

func (EventSubscriptionMapOutput) ElementType added in v3.25.0

func (EventSubscriptionMapOutput) ElementType() reflect.Type

func (EventSubscriptionMapOutput) MapIndex added in v3.25.0

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutput added in v3.25.0

func (o EventSubscriptionMapOutput) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutputWithContext added in v3.25.0

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

type EventSubscriptionOutput added in v3.13.0

type EventSubscriptionOutput struct {
	*pulumi.OutputState
}

func (EventSubscriptionOutput) ElementType added in v3.13.0

func (EventSubscriptionOutput) ElementType() reflect.Type

func (EventSubscriptionOutput) ToEventSubscriptionOutput added in v3.13.0

func (o EventSubscriptionOutput) ToEventSubscriptionOutput() EventSubscriptionOutput

func (EventSubscriptionOutput) ToEventSubscriptionOutputWithContext added in v3.13.0

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

func (EventSubscriptionOutput) ToEventSubscriptionPtrOutput added in v3.25.0

func (o EventSubscriptionOutput) ToEventSubscriptionPtrOutput() EventSubscriptionPtrOutput

func (EventSubscriptionOutput) ToEventSubscriptionPtrOutputWithContext added in v3.25.0

func (o EventSubscriptionOutput) ToEventSubscriptionPtrOutputWithContext(ctx context.Context) EventSubscriptionPtrOutput

type EventSubscriptionPtrInput added in v3.25.0

type EventSubscriptionPtrInput interface {
	pulumi.Input

	ToEventSubscriptionPtrOutput() EventSubscriptionPtrOutput
	ToEventSubscriptionPtrOutputWithContext(ctx context.Context) EventSubscriptionPtrOutput
}

type EventSubscriptionPtrOutput added in v3.25.0

type EventSubscriptionPtrOutput struct {
	*pulumi.OutputState
}

func (EventSubscriptionPtrOutput) ElementType added in v3.25.0

func (EventSubscriptionPtrOutput) ElementType() reflect.Type

func (EventSubscriptionPtrOutput) ToEventSubscriptionPtrOutput added in v3.25.0

func (o EventSubscriptionPtrOutput) ToEventSubscriptionPtrOutput() EventSubscriptionPtrOutput

func (EventSubscriptionPtrOutput) ToEventSubscriptionPtrOutputWithContext added in v3.25.0

func (o EventSubscriptionPtrOutput) ToEventSubscriptionPtrOutputWithContext(ctx context.Context) EventSubscriptionPtrOutput

type EventSubscriptionState

type EventSubscriptionState struct {
	// The Amazon Resource Name of the RDS event notification subscription
	Arn pulumi.StringPtrInput
	// The AWS customer account associated with the RDS 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 http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html or run `aws rds describe-event-categories`.
	EventCategories pulumi.StringArrayInput
	// The name of the DB event subscription. By default generated by this provider.
	Name pulumi.StringPtrInput
	// The name of the DB event subscription. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The SNS topic to send events to.
	SnsTopic 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-security-group`, `db-parameter-group`, `db-snapshot`, `db-cluster` or `db-cluster-snapshot`. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (EventSubscriptionState) ElementType

func (EventSubscriptionState) ElementType() reflect.Type

type GetCertificateArgs added in v3.10.0

type GetCertificateArgs struct {
	// Certificate identifier. For example, `rds-ca-2019`.
	Id *string `pulumi:"id"`
	// When enabled, returns the certificate with the latest `ValidTill`.
	LatestValidTill *bool `pulumi:"latestValidTill"`
}

A collection of arguments for invoking getCertificate.

type GetCertificateResult added in v3.10.0

type GetCertificateResult struct {
	// Amazon Resource Name (ARN) of the certificate.
	Arn string `pulumi:"arn"`
	// Type of certificate. For example, `CA`.
	CertificateType string `pulumi:"certificateType"`
	// Boolean whether there is an override for the default certificate identifier.
	CustomerOverride bool `pulumi:"customerOverride"`
	// If there is an override for the default certificate identifier, when the override expires.
	CustomerOverrideValidTill string `pulumi:"customerOverrideValidTill"`
	Id                        string `pulumi:"id"`
	LatestValidTill           *bool  `pulumi:"latestValidTill"`
	// Thumbprint of the certificate.
	Thumbprint string `pulumi:"thumbprint"`
	// [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) of certificate starting validity date.
	ValidFrom string `pulumi:"validFrom"`
	// [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) of certificate ending validity date.
	ValidTill string `pulumi:"validTill"`
}

A collection of values returned by getCertificate.

func GetCertificate added in v3.10.0

func GetCertificate(ctx *pulumi.Context, args *GetCertificateArgs, opts ...pulumi.InvokeOption) (*GetCertificateResult, error)

Information about an RDS Certificate.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		_, err := rds.GetCertificate(ctx, &rds.GetCertificateArgs{
			LatestValidTill: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEngineVersionArgs added in v3.5.0

type GetEngineVersionArgs struct {
	// DB engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`.
	Engine string `pulumi:"engine"`
	// The name of a specific DB parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`.
	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, `5.7.22`, `10.1.34`, and `12.3`. 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 GetEngineVersionResult added in v3.5.0

type GetEngineVersionResult struct {
	// The default character set for new instances of this engine version.
	DefaultCharacterSet string `pulumi:"defaultCharacterSet"`
	Engine              string `pulumi:"engine"`
	// The 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"`
	// The status of the DB engine version, either available or deprecated.
	Status string `pulumi:"status"`
	// Set of the character sets supported by this engine.
	SupportedCharacterSets []string `pulumi:"supportedCharacterSets"`
	// Set of features supported by the DB engine.
	SupportedFeatureNames []string `pulumi:"supportedFeatureNames"`
	// Set of the supported DB engine modes.
	SupportedModes []string `pulumi:"supportedModes"`
	// Set of the time zones supported by this engine.
	SupportedTimezones []string `pulumi:"supportedTimezones"`
	// Indicates whether you can use Aurora global databases with a specific DB engine version.
	SupportsGlobalDatabases bool `pulumi:"supportsGlobalDatabases"`
	// Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs.
	SupportsLogExportsToCloudwatch bool `pulumi:"supportsLogExportsToCloudwatch"`
	// Indicates whether you can use Aurora parallel query with a specific DB engine version.
	SupportsParallelQuery bool `pulumi:"supportsParallelQuery"`
	// Indicates whether the database engine version supports read replicas.
	SupportsReadReplica bool `pulumi:"supportsReadReplica"`
	// Set of engine versions that this database engine version can be upgraded to.
	ValidUpgradeTargets []string `pulumi:"validUpgradeTargets"`
	Version             string   `pulumi:"version"`
	// The description of the database engine version.
	VersionDescription string `pulumi:"versionDescription"`
}

A collection of values returned by getEngineVersion.

func GetEngineVersion added in v3.5.0

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

Information about an RDS engine version.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetEngineVersion(ctx, &rds.GetEngineVersionArgs{
			Engine: "mysql",
			PreferredVersions: []string{
				"5.7.42",
				"5.7.19",
				"5.7.17",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEventCategoriesArgs

type GetEventCategoriesArgs struct {
	// The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, db-snapshot, db-cluster or db-cluster-snapshot.
	SourceType *string `pulumi:"sourceType"`
}

A collection of arguments for invoking getEventCategories.

type GetEventCategoriesResult

type GetEventCategoriesResult struct {
	// A list of the event categories.
	EventCategories []string `pulumi:"eventCategories"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	SourceType *string `pulumi:"sourceType"`
}

A collection of values returned by getEventCategories.

func GetEventCategories

func GetEventCategories(ctx *pulumi.Context, args *GetEventCategoriesArgs, opts ...pulumi.InvokeOption) (*GetEventCategoriesResult, error)

## Example Usage

List the event categories of all the RDS resources.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleEventCategories, err := rds.GetEventCategories(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("example", exampleEventCategories.EventCategories)
		return nil
	})
}

```

List the event categories specific to the RDS resource `db-snapshot`.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "db-snapshot"
		exampleEventCategories, err := rds.GetEventCategories(ctx, &rds.GetEventCategoriesArgs{
			SourceType: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("example", exampleEventCategories.EventCategories)
		return nil
	})
}

```

type GetOrderableDbInstanceArgs added in v3.3.0

type GetOrderableDbInstanceArgs struct {
	// Availability zone group.
	AvailabilityZoneGroup *string `pulumi:"availabilityZoneGroup"`
	// DB engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`.
	Engine string `pulumi:"engine"`
	// Version of the DB engine. If none is provided, the AWS-defined default version will be used.
	EngineVersion *string `pulumi:"engineVersion"`
	// DB instance class. Examples of classes are `db.m3.2xlarge`, `db.t2.small`, and `db.m3.medium`.
	InstanceClass *string `pulumi:"instanceClass"`
	// License model. Examples of license models are `general-public-license`, `bring-your-own-license`, and `amazon-license`.
	LicenseModel *string `pulumi:"licenseModel"`
	// Ordered list of preferred RDS DB instance 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.
	PreferredEngineVersions []string `pulumi:"preferredEngineVersions"`
	// Ordered list of preferred RDS 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.
	PreferredInstanceClasses []string `pulumi:"preferredInstanceClasses"`
	// Storage types. Examples of storage types are `standard`, `io1`, `gp2`, and `aurora`.
	StorageType *string `pulumi:"storageType"`
	// Enable this to ensure a DB instance supports Enhanced Monitoring at intervals from 1 to 60 seconds.
	SupportsEnhancedMonitoring *bool `pulumi:"supportsEnhancedMonitoring"`
	// Enable this to ensure a DB instance supports Aurora global databases with a specific combination of other DB engine attributes.
	SupportsGlobalDatabases *bool `pulumi:"supportsGlobalDatabases"`
	// Enable this to ensure a DB instance supports IAM database authentication.
	SupportsIamDatabaseAuthentication *bool `pulumi:"supportsIamDatabaseAuthentication"`
	// Enable this to ensure a DB instance supports provisioned IOPS.
	SupportsIops *bool `pulumi:"supportsIops"`
	// Enable this to ensure a DB instance supports Kerberos Authentication.
	SupportsKerberosAuthentication *bool `pulumi:"supportsKerberosAuthentication"`
	// Enable this to ensure a DB instance supports Performance Insights.
	SupportsPerformanceInsights *bool `pulumi:"supportsPerformanceInsights"`
	// Enable this to ensure Amazon RDS can automatically scale storage for DB instances that use the specified DB instance class.
	SupportsStorageAutoscaling *bool `pulumi:"supportsStorageAutoscaling"`
	// Enable this to ensure a DB instance supports encrypted storage.
	SupportsStorageEncryption *bool `pulumi:"supportsStorageEncryption"`
	// Boolean that indicates whether to show only VPC or non-VPC offerings.
	Vpc *bool `pulumi:"vpc"`
}

A collection of arguments for invoking getOrderableDbInstance.

type GetOrderableDbInstanceResult added in v3.3.0

type GetOrderableDbInstanceResult struct {
	AvailabilityZoneGroup string `pulumi:"availabilityZoneGroup"`
	// 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"`
	// Maximum total provisioned IOPS for a DB instance.
	MaxIopsPerDbInstance int `pulumi:"maxIopsPerDbInstance"`
	// Maximum provisioned IOPS per GiB for a DB instance.
	MaxIopsPerGib float64 `pulumi:"maxIopsPerGib"`
	// Maximum storage size for a DB instance.
	MaxStorageSize int `pulumi:"maxStorageSize"`
	// Minimum total provisioned IOPS for a DB instance.
	MinIopsPerDbInstance int `pulumi:"minIopsPerDbInstance"`
	// Minimum provisioned IOPS per GiB for a DB instance.
	MinIopsPerGib float64 `pulumi:"minIopsPerGib"`
	// Minimum storage size for a DB instance.
	MinStorageSize int `pulumi:"minStorageSize"`
	// Whether a DB instance is Multi-AZ capable.
	MultiAzCapable bool `pulumi:"multiAzCapable"`
	// Whether a DB instance supports RDS on Outposts.
	OutpostCapable           bool     `pulumi:"outpostCapable"`
	PreferredEngineVersions  []string `pulumi:"preferredEngineVersions"`
	PreferredInstanceClasses []string `pulumi:"preferredInstanceClasses"`
	// Whether a DB instance can have a read replica.
	ReadReplicaCapable bool   `pulumi:"readReplicaCapable"`
	StorageType        string `pulumi:"storageType"`
	// A list of the supported DB engine modes.
	SupportedEngineModes              []string `pulumi:"supportedEngineModes"`
	SupportsEnhancedMonitoring        bool     `pulumi:"supportsEnhancedMonitoring"`
	SupportsGlobalDatabases           bool     `pulumi:"supportsGlobalDatabases"`
	SupportsIamDatabaseAuthentication bool     `pulumi:"supportsIamDatabaseAuthentication"`
	SupportsIops                      bool     `pulumi:"supportsIops"`
	SupportsKerberosAuthentication    bool     `pulumi:"supportsKerberosAuthentication"`
	SupportsPerformanceInsights       bool     `pulumi:"supportsPerformanceInsights"`
	SupportsStorageAutoscaling        bool     `pulumi:"supportsStorageAutoscaling"`
	SupportsStorageEncryption         bool     `pulumi:"supportsStorageEncryption"`
	Vpc                               bool     `pulumi:"vpc"`
}

A collection of values returned by getOrderableDbInstance.

func GetOrderableDbInstance added in v3.3.0

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

Information about RDS orderable DB instances and valid parameter combinations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "5.7.22"
		opt1 := "general-public-license"
		opt2 := "standard"
		_, err := rds.GetOrderableDbInstance(ctx, &rds.GetOrderableDbInstanceArgs{
			Engine:        "mysql",
			EngineVersion: &opt0,
			LicenseModel:  &opt1,
			PreferredInstanceClasses: []string{
				"db.r6.xlarge",
				"db.m4.large",
				"db.t3.small",
			},
			StorageType: &opt2,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

Valid parameter combinations can also be found with `preferredEngineVersions` and/or `preferredInstanceClasses`.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "general-public-license"
		_, err := rds.GetOrderableDbInstance(ctx, &rds.GetOrderableDbInstanceArgs{
			Engine:       "mysql",
			LicenseModel: &opt0,
			PreferredEngineVersions: []string{
				"5.6.35",
				"5.6.41",
				"5.6.44",
			},
			PreferredInstanceClasses: []string{
				"db.t2.small",
				"db.t3.medium",
				"db.t3.large",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GlobalCluster

type GlobalCluster struct {
	pulumi.CustomResourceState

	// RDS 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. Valid values: `aurora`, `aurora-mysql`, `aurora-postgresql`. Defaults to `aurora`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Engine version of the Aurora global database.
	// * **NOTE:** When the engine is set to `aurora-mysql`, an engine version compatible with global database is required. The earliest available version is `5.7.mysql_aurora.2.06.0`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// 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"`
	// 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 RDS Global Cluster, which is an Aurora global database spread across multiple regions. The global database contains a single primary cluster with read-write capability, and a read-only secondary cluster that receives data from the primary cluster through high-speed replication performed by the Aurora storage subsystem.

More information about Aurora global databases can be found in the [Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html#aurora-global-database-creating).

## Example Usage ### New Global Cluster

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/providers"
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := providers.Newaws(ctx, "primary", &providers.awsArgs{
			Region: pulumi.String("us-east-2"),
		})
		if err != nil {
			return err
		}
		_, err = providers.Newaws(ctx, "secondary", &providers.awsArgs{
			Region: pulumi.String("us-west-2"),
		})
		if err != nil {
			return err
		}
		example, err := rds.NewGlobalCluster(ctx, "example", &rds.GlobalClusterArgs{
			GlobalClusterIdentifier: pulumi.String("example"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		primaryCluster, err := rds.NewCluster(ctx, "primaryCluster", &rds.ClusterArgs{
			GlobalClusterIdentifier: example.ID(),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		primaryClusterInstance, err := rds.NewClusterInstance(ctx, "primaryClusterInstance", &rds.ClusterInstanceArgs{
			ClusterIdentifier: primaryCluster.ID(),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		secondaryCluster, err := rds.NewCluster(ctx, "secondaryCluster", &rds.ClusterArgs{
			GlobalClusterIdentifier: example.ID(),
		}, pulumi.Provider(aws.Secondary), pulumi.DependsOn([]pulumi.Resource{
			primaryClusterInstance,
		}))
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "secondaryClusterInstance", &rds.ClusterInstanceArgs{
			ClusterIdentifier: secondaryCluster.ID(),
		}, pulumi.Provider(aws.Secondary))
		if err != nil {
			return err
		}
		return nil
	})
}

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

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

```

## Import

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

```sh

$ pulumi import aws:rds/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 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_rds_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 added in v3.13.0

func (*GlobalCluster) ElementType() reflect.Type

func (*GlobalCluster) ToGlobalClusterOutput added in v3.13.0

func (i *GlobalCluster) ToGlobalClusterOutput() GlobalClusterOutput

func (*GlobalCluster) ToGlobalClusterOutputWithContext added in v3.13.0

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

func (*GlobalCluster) ToGlobalClusterPtrOutput added in v3.25.0

func (i *GlobalCluster) ToGlobalClusterPtrOutput() GlobalClusterPtrOutput

func (*GlobalCluster) ToGlobalClusterPtrOutputWithContext added in v3.25.0

func (i *GlobalCluster) ToGlobalClusterPtrOutputWithContext(ctx context.Context) GlobalClusterPtrOutput

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. Valid values: `aurora`, `aurora-mysql`, `aurora-postgresql`. Defaults to `aurora`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringPtrInput
	// Engine version of the Aurora global database.
	// * **NOTE:** When the engine is set to `aurora-mysql`, an engine version compatible with global database is required. The earliest available version is `5.7.mysql_aurora.2.06.0`.
	EngineVersion pulumi.StringPtrInput
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrInput
	// 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 added in v3.25.0

type GlobalClusterArray []GlobalClusterInput

func (GlobalClusterArray) ElementType added in v3.25.0

func (GlobalClusterArray) ElementType() reflect.Type

func (GlobalClusterArray) ToGlobalClusterArrayOutput added in v3.25.0

func (i GlobalClusterArray) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArray) ToGlobalClusterArrayOutputWithContext added in v3.25.0

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

type GlobalClusterArrayInput added in v3.25.0

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 added in v3.25.0

type GlobalClusterArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterArrayOutput) ElementType added in v3.25.0

func (GlobalClusterArrayOutput) ElementType() reflect.Type

func (GlobalClusterArrayOutput) Index added in v3.25.0

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutput added in v3.25.0

func (o GlobalClusterArrayOutput) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutputWithContext added in v3.25.0

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

type GlobalClusterGlobalClusterMember added in v3.1.0

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 added in v3.1.0

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 added in v3.1.0

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput added in v3.1.0

func (i GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutputWithContext added in v3.1.0

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

type GlobalClusterGlobalClusterMemberArray added in v3.1.0

type GlobalClusterGlobalClusterMemberArray []GlobalClusterGlobalClusterMemberInput

func (GlobalClusterGlobalClusterMemberArray) ElementType added in v3.1.0

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput added in v3.1.0

func (i GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext added in v3.1.0

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

type GlobalClusterGlobalClusterMemberArrayInput added in v3.1.0

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 added in v3.1.0

type GlobalClusterGlobalClusterMemberArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberArrayOutput) ElementType added in v3.1.0

func (GlobalClusterGlobalClusterMemberArrayOutput) Index added in v3.1.0

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput added in v3.1.0

func (o GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext added in v3.1.0

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

type GlobalClusterGlobalClusterMemberInput added in v3.1.0

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 added in v3.1.0

type GlobalClusterGlobalClusterMemberOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberOutput) DbClusterArn added in v3.1.0

Amazon Resource Name (ARN) of member DB Cluster

func (GlobalClusterGlobalClusterMemberOutput) ElementType added in v3.1.0

func (GlobalClusterGlobalClusterMemberOutput) IsWriter added in v3.1.0

Whether the member is the primary DB Cluster

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput added in v3.1.0

func (o GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutputWithContext added in v3.1.0

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

type GlobalClusterInput added in v3.13.0

type GlobalClusterInput interface {
	pulumi.Input

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

type GlobalClusterMap added in v3.25.0

type GlobalClusterMap map[string]GlobalClusterInput

func (GlobalClusterMap) ElementType added in v3.25.0

func (GlobalClusterMap) ElementType() reflect.Type

func (GlobalClusterMap) ToGlobalClusterMapOutput added in v3.25.0

func (i GlobalClusterMap) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMap) ToGlobalClusterMapOutputWithContext added in v3.25.0

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

type GlobalClusterMapInput added in v3.25.0

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 added in v3.25.0

type GlobalClusterMapOutput struct{ *pulumi.OutputState }

func (GlobalClusterMapOutput) ElementType added in v3.25.0

func (GlobalClusterMapOutput) ElementType() reflect.Type

func (GlobalClusterMapOutput) MapIndex added in v3.25.0

func (GlobalClusterMapOutput) ToGlobalClusterMapOutput added in v3.25.0

func (o GlobalClusterMapOutput) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMapOutput) ToGlobalClusterMapOutputWithContext added in v3.25.0

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

type GlobalClusterOutput added in v3.13.0

type GlobalClusterOutput struct {
	*pulumi.OutputState
}

func (GlobalClusterOutput) ElementType added in v3.13.0

func (GlobalClusterOutput) ElementType() reflect.Type

func (GlobalClusterOutput) ToGlobalClusterOutput added in v3.13.0

func (o GlobalClusterOutput) ToGlobalClusterOutput() GlobalClusterOutput

func (GlobalClusterOutput) ToGlobalClusterOutputWithContext added in v3.13.0

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

func (GlobalClusterOutput) ToGlobalClusterPtrOutput added in v3.25.0

func (o GlobalClusterOutput) ToGlobalClusterPtrOutput() GlobalClusterPtrOutput

func (GlobalClusterOutput) ToGlobalClusterPtrOutputWithContext added in v3.25.0

func (o GlobalClusterOutput) ToGlobalClusterPtrOutputWithContext(ctx context.Context) GlobalClusterPtrOutput

type GlobalClusterPtrInput added in v3.25.0

type GlobalClusterPtrInput interface {
	pulumi.Input

	ToGlobalClusterPtrOutput() GlobalClusterPtrOutput
	ToGlobalClusterPtrOutputWithContext(ctx context.Context) GlobalClusterPtrOutput
}

type GlobalClusterPtrOutput added in v3.25.0

type GlobalClusterPtrOutput struct {
	*pulumi.OutputState
}

func (GlobalClusterPtrOutput) ElementType added in v3.25.0

func (GlobalClusterPtrOutput) ElementType() reflect.Type

func (GlobalClusterPtrOutput) ToGlobalClusterPtrOutput added in v3.25.0

func (o GlobalClusterPtrOutput) ToGlobalClusterPtrOutput() GlobalClusterPtrOutput

func (GlobalClusterPtrOutput) ToGlobalClusterPtrOutputWithContext added in v3.25.0

func (o GlobalClusterPtrOutput) ToGlobalClusterPtrOutputWithContext(ctx context.Context) GlobalClusterPtrOutput

type GlobalClusterState

type GlobalClusterState struct {
	// RDS 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. Valid values: `aurora`, `aurora-mysql`, `aurora-postgresql`. Defaults to `aurora`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringPtrInput
	// Engine version of the Aurora global database.
	// * **NOTE:** When the engine is set to `aurora-mysql`, an engine version compatible with global database is required. The earliest available version is `5.7.mysql_aurora.2.06.0`.
	EngineVersion pulumi.StringPtrInput
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrInput
	// 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
	// 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 Instance

type Instance struct {
	pulumi.CustomResourceState

	// The hostname of the RDS instance. See also `endpoint` and `port`.
	Address pulumi.StringOutput `pulumi:"address"`
	// The allocated storage in gibibytes. If `maxAllocatedStorage` is configured, this argument represents the initial storage allocation and differences from the configuration will be ignored automatically when Storage Autoscaling occurs.
	AllocatedStorage pulumi.IntOutput `pulumi:"allocatedStorage"`
	// Indicates that major version
	// upgrades are allowed. Changing this parameter does not result in an outage and
	// the change is asynchronously applied as soon as possible.
	AllowMajorVersionUpgrade pulumi.BoolPtrOutput `pulumi:"allowMajorVersionUpgrade"`
	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`. See [Amazon RDS Documentation for more
	// information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolOutput `pulumi:"applyImmediately"`
	// The ARN of the RDS instance.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Indicates that minor engine upgrades
	// will be applied automatically to the DB instance during the maintenance window.
	// Defaults to true.
	AutoMinorVersionUpgrade pulumi.BoolPtrOutput `pulumi:"autoMinorVersionUpgrade"`
	// The AZ for the RDS instance.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The days to retain backups for. Must be
	// between `0` and `35`. Must be greater than `0` if the database is used as a source for a Read Replica. [See Read Replica][1].
	BackupRetentionPeriod pulumi.IntOutput `pulumi:"backupRetentionPeriod"`
	// The daily time range (in UTC) during which
	// automated backups are created if they are enabled. Example: "09:46-10:16". Must
	// not overlap with `maintenanceWindow`.
	BackupWindow pulumi.StringOutput `pulumi:"backupWindow"`
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringOutput `pulumi:"caCertIdentifier"`
	// The character set name to use for DB
	// encoding in Oracle and Microsoft SQL instances (collation). This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html)
	// or [Server-Level Collation for Microsoft SQL Server](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.CommonDBATasks.Collation.html) for more information.
	CharacterSetName pulumi.StringOutput `pulumi:"characterSetName"`
	// Copy all Instance `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrOutput `pulumi:"copyTagsToSnapshot"`
	// Name of `DB subnet group`. DB instance will
	// be created in the VPC associated with the DB subnet group. If unspecified, will
	// be created in the `default` VPC, or in EC2 Classic, if available. When working
	// with read replicas, it should be specified only if the source database
	// specifies an instance in another AWS Region. See [DBSubnetGroupName in API
	// action CreateDBInstanceReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html)
	// for additional read replica contraints.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// Specifies whether to remove automated backups immediately after the DB instance is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrOutput `pulumi:"deleteAutomatedBackups"`
	// If the DB instance 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"`
	// The ID of the Directory Service Active Directory domain to create the instance in.
	Domain pulumi.StringPtrOutput `pulumi:"domain"`
	// The name of the IAM role to be used when making API calls to the Directory Service.
	DomainIamRoleName pulumi.StringPtrOutput `pulumi:"domainIamRoleName"`
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. Valid values (depending on `engine`). MySQL and MariaDB: `audit`, `error`, `general`, `slowquery`. PostgreSQL: `postgresql`, `upgrade`. MSSQL: `agent` , `error`. Oracle: `alert`, `audit`, `listener`, `trace`.
	EnabledCloudwatchLogsExports pulumi.StringArrayOutput `pulumi:"enabledCloudwatchLogsExports"`
	// The connection endpoint in `address:port` format.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) The database engine to use.  For supported values, see the Engine parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine must match the `DB cluster`'s engine'.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// The engine version to use. If `autoMinorVersionUpgrade`
	// is enabled, you can provide a prefix of the version such as `5.7` (for `5.7.10`) and
	// this attribute will ignore differences in the patch version automatically (e.g. `5.7.17`).
	// For supported values, see the EngineVersion parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine version must match the `DB cluster`'s engine version'.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The name of your final DB snapshot
	// when this DB instance is deleted. Must be provided if `skipFinalSnapshot` is
	// set to `false`. The value must begin with a letter, only contain alphanumeric characters and hyphens, and not end with a hyphen or contain two consecutive hyphens. Must not be provided when deleting a read replica.
	FinalSnapshotIdentifier pulumi.StringPtrOutput `pulumi:"finalSnapshotIdentifier"`
	// The canonical hosted zone ID of the DB instance (to be used
	// in a Route 53 Alias record).
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Specifies whether or
	// mappings of AWS Identity and Access Management (IAM) accounts to database
	// accounts is enabled.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrOutput `pulumi:"iamDatabaseAuthenticationEnabled"`
	// The name of the RDS instance,
	// if omitted, this 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 type of the RDS instance.
	InstanceClass pulumi.StringOutput `pulumi:"instanceClass"`
	// The amount of provisioned IOPS. Setting this implies a
	// storageType of "io1".
	Iops pulumi.IntPtrOutput `pulumi:"iops"`
	// The ARN for the KMS encryption key. If creating an
	// encrypted replica, set this to the destination KMS ARN.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// The latest time, in UTC [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), to which a database can be restored with point-in-time restore.
	LatestRestorableTime pulumi.StringOutput `pulumi:"latestRestorableTime"`
	// (Optional, but required for some DB engines, i.e. Oracle
	// SE1) License model information for this DB instance.
	LicenseModel pulumi.StringOutput `pulumi:"licenseModel"`
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". See [RDS
	// Maintenance Window
	// docs](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow)
	// for more information.
	MaintenanceWindow pulumi.StringOutput `pulumi:"maintenanceWindow"`
	// When configured, the upper limit to which Amazon RDS can automatically scale the storage of the DB instance. Configuring this will automatically ignore differences to `allocatedStorage`. Must be greater than or equal to `allocatedStorage` or `0` to disable Storage Autoscaling.
	MaxAllocatedStorage pulumi.IntPtrOutput `pulumi:"maxAllocatedStorage"`
	// The interval, in seconds, between points
	// when Enhanced Monitoring metrics are collected for the DB instance. To disable
	// collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid
	// Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrOutput `pulumi:"monitoringInterval"`
	// The ARN for the IAM role that permits RDS
	// to send enhanced monitoring metrics to CloudWatch Logs. You can find more
	// information on the [AWS
	// Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringOutput `pulumi:"monitoringRoleArn"`
	// Specifies if the RDS instance is multi-AZ
	MultiAz pulumi.BoolOutput `pulumi:"multiAz"`
	// The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance. Note that this does not apply for Oracle or SQL Server engines. See the [AWS documentation](http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines.
	Name pulumi.StringOutput `pulumi:"name"`
	// Name of the DB option group to associate.
	OptionGroupName pulumi.StringOutput `pulumi:"optionGroupName"`
	// Name of the DB parameter group to
	// associate.
	ParameterGroupName pulumi.StringOutput `pulumi:"parameterGroupName"`
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Specifies whether Performance Insights are enabled. Defaults to false.
	PerformanceInsightsEnabled pulumi.BoolPtrOutput `pulumi:"performanceInsightsEnabled"`
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. Once KMS key is set, it can never be changed.
	PerformanceInsightsKmsKeyId pulumi.StringOutput `pulumi:"performanceInsightsKmsKeyId"`
	// The amount of time in days to retain Performance Insights data. Either 7 (7 days) or 731 (2 years). When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntOutput `pulumi:"performanceInsightsRetentionPeriod"`
	// The port on which the DB accepts connections.
	Port pulumi.IntOutput `pulumi:"port"`
	// Bool to control if instance is publicly
	// accessible. Default is `false`.
	PubliclyAccessible pulumi.BoolPtrOutput     `pulumi:"publiclyAccessible"`
	Replicas           pulumi.StringArrayOutput `pulumi:"replicas"`
	// Specifies that this resource is a Replicate
	// database, and to use this value as the source database. This correlates to the
	// `identifier` of another Amazon RDS Database to replicate (if replicating within
	// a single region) or ARN of the Amazon RDS Database to replicate (if replicating
	// cross-region). Note that if you are
	// creating a cross-region replica of an encrypted database you will also need to
	// specify a `kmsKeyId`. See [DB Instance Replication][1] and [Working with
	// PostgreSQL and MySQL Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html)
	// for more information on using Replication.
	ReplicateSourceDb pulumi.StringPtrOutput `pulumi:"replicateSourceDb"`
	// The RDS Resource ID of this instance.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// A configuration block for restoring a DB instance to an arbitrary point in time. Requires the `identifier` argument to be set with the name of the new DB instance to be created. See Restore To Point In Time below for details.
	RestoreToPointInTime InstanceRestoreToPointInTimePtrOutput `pulumi:"restoreToPointInTime"`
	// Restore from a Percona Xtrabackup in S3.  See [Importing Data into an Amazon RDS MySQL DB Instance](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html)
	S3Import InstanceS3ImportPtrOutput `pulumi:"s3Import"`
	// List of DB Security Groups to
	// associate. Only used for [DB Instances on the _EC2-Classic_
	// Platform](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html#USER_VPC.FindDefaultVPC).
	SecurityGroupNames pulumi.StringArrayOutput `pulumi:"securityGroupNames"`
	// Determines whether a final DB snapshot is
	// created before the DB instance is deleted. If true is specified, no DBSnapshot
	// is created. If false is specified, a DB snapshot is created before the DB
	// instance is deleted, using the value from `finalSnapshotIdentifier`. Default
	// is `false`.
	SkipFinalSnapshot pulumi.BoolPtrOutput `pulumi:"skipFinalSnapshot"`
	// Specifies whether or not to create this
	// database from a snapshot. This correlates to the snapshot ID you'd find in the
	// RDS console, e.g: rds:production-2015-06-26-06-05.
	SnapshotIdentifier pulumi.StringOutput `pulumi:"snapshotIdentifier"`
	// The RDS instance status.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies whether the DB instance is
	// encrypted. Note that if you are creating a cross-region read replica this field
	// is ignored and you should instead declare `kmsKeyId` with a valid ARN. The
	// default is `false` if not specified.
	StorageEncrypted pulumi.BoolPtrOutput `pulumi:"storageEncrypted"`
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), or "io1" (provisioned IOPS SSD). The default is "io1" if `iops` is
	// specified, "gp2" if not.
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Time zone of the DB instance. `timezone` is currently
	// only supported by Microsoft SQL Server. The `timezone` can only be set on
	// creation. See [MSSQL User
	// Guide](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.TimeZone)
	// for more information.
	Timezone pulumi.StringOutput `pulumi:"timezone"`
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Username for the master DB user.
	Username pulumi.StringOutput `pulumi:"username"`
	// List of VPC security groups to
	// associate.
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
}

Provides an RDS instance resource. A DB instance is an isolated database environment in the cloud. A DB instance can contain multiple user-created databases.

Changes to a DB instance can occur when you manually change a parameter, such as `allocatedStorage`, 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).

When upgrading the major version of an engine, `allowMajorVersionUpgrade` must be set to `true`.

> **Note:** using `applyImmediately` can result in a brief downtime as the server reboots. See the AWS Docs on [RDS Maintenance][2] for more information.

## RDS Instance Class Types

Amazon RDS supports three types of instance classes: Standard, Memory Optimized, and Burstable Performance. For more information please read the AWS RDS documentation about [DB Instance Class Types](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html)

## Example Usage ### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewInstance(ctx, "_default", &rds.InstanceArgs{
			AllocatedStorage:   pulumi.Int(10),
			Engine:             pulumi.String("mysql"),
			EngineVersion:      pulumi.String("5.7"),
			InstanceClass:      pulumi.String("db.t3.micro"),
			Name:               pulumi.String("mydb"),
			ParameterGroupName: pulumi.String("default.mysql5.7"),
			Password:           pulumi.String("foobarbaz"),
			SkipFinalSnapshot:  pulumi.Bool(true),
			Username:           pulumi.String("foo"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Storage Autoscaling

To enable Storage Autoscaling with instances that support the feature, define the `maxAllocatedStorage` argument higher than the `allocatedStorage` argument. This provider will automatically hide differences with the `allocatedStorage` argument value if autoscaling occurs.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewInstance(ctx, "example", &rds.InstanceArgs{
			AllocatedStorage:    pulumi.Int(50),
			MaxAllocatedStorage: pulumi.Int(100),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:rds/instance:Instance default mydb-rds-instance

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType added in v3.13.0

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput added in v3.13.0

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext added in v3.13.0

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToInstancePtrOutput added in v3.25.0

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext added in v3.25.0

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// The allocated storage in gibibytes. If `maxAllocatedStorage` is configured, this argument represents the initial storage allocation and differences from the configuration will be ignored automatically when Storage Autoscaling occurs.
	AllocatedStorage pulumi.IntPtrInput
	// Indicates that major version
	// upgrades are allowed. Changing this parameter does not result in an outage and
	// the change is asynchronously applied as soon as possible.
	AllowMajorVersionUpgrade pulumi.BoolPtrInput
	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`. See [Amazon RDS Documentation for more
	// information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolPtrInput
	// Indicates that minor engine upgrades
	// will be applied automatically to the DB instance during the maintenance window.
	// Defaults to true.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The AZ for the RDS instance.
	AvailabilityZone pulumi.StringPtrInput
	// The days to retain backups for. Must be
	// between `0` and `35`. Must be greater than `0` if the database is used as a source for a Read Replica. [See Read Replica][1].
	BackupRetentionPeriod pulumi.IntPtrInput
	// The daily time range (in UTC) during which
	// automated backups are created if they are enabled. Example: "09:46-10:16". Must
	// not overlap with `maintenanceWindow`.
	BackupWindow pulumi.StringPtrInput
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The character set name to use for DB
	// encoding in Oracle and Microsoft SQL instances (collation). This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html)
	// or [Server-Level Collation for Microsoft SQL Server](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.CommonDBATasks.Collation.html) for more information.
	CharacterSetName pulumi.StringPtrInput
	// Copy all Instance `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// Name of `DB subnet group`. DB instance will
	// be created in the VPC associated with the DB subnet group. If unspecified, will
	// be created in the `default` VPC, or in EC2 Classic, if available. When working
	// with read replicas, it should be specified only if the source database
	// specifies an instance in another AWS Region. See [DBSubnetGroupName in API
	// action CreateDBInstanceReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html)
	// for additional read replica contraints.
	DbSubnetGroupName pulumi.StringPtrInput
	// Specifies whether to remove automated backups immediately after the DB instance is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrInput
	// If the DB instance 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
	// The ID of the Directory Service Active Directory domain to create the instance in.
	Domain pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service.
	DomainIamRoleName pulumi.StringPtrInput
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. Valid values (depending on `engine`). MySQL and MariaDB: `audit`, `error`, `general`, `slowquery`. PostgreSQL: `postgresql`, `upgrade`. MSSQL: `agent` , `error`. Oracle: `alert`, `audit`, `listener`, `trace`.
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) The database engine to use.  For supported values, see the Engine parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine must match the `DB cluster`'s engine'.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringPtrInput
	// The engine version to use. If `autoMinorVersionUpgrade`
	// is enabled, you can provide a prefix of the version such as `5.7` (for `5.7.10`) and
	// this attribute will ignore differences in the patch version automatically (e.g. `5.7.17`).
	// For supported values, see the EngineVersion parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine version must match the `DB cluster`'s engine version'.
	EngineVersion pulumi.StringPtrInput
	// The name of your final DB snapshot
	// when this DB instance is deleted. Must be provided if `skipFinalSnapshot` is
	// set to `false`. The value must begin with a letter, only contain alphanumeric characters and hyphens, and not end with a hyphen or contain two consecutive hyphens. Must not be provided when deleting a read replica.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// Specifies whether or
	// mappings of AWS Identity and Access Management (IAM) accounts to database
	// accounts is enabled.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrInput
	// The name of the RDS instance,
	// if omitted, this 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 type of the RDS instance.
	InstanceClass pulumi.StringInput
	// The amount of provisioned IOPS. Setting this implies a
	// storageType of "io1".
	Iops pulumi.IntPtrInput
	// The ARN for the KMS encryption key. If creating an
	// encrypted replica, set this to the destination KMS ARN.
	KmsKeyId pulumi.StringPtrInput
	// (Optional, but required for some DB engines, i.e. Oracle
	// SE1) License model information for this DB instance.
	LicenseModel pulumi.StringPtrInput
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". See [RDS
	// Maintenance Window
	// docs](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow)
	// for more information.
	MaintenanceWindow pulumi.StringPtrInput
	// When configured, the upper limit to which Amazon RDS can automatically scale the storage of the DB instance. Configuring this will automatically ignore differences to `allocatedStorage`. Must be greater than or equal to `allocatedStorage` or `0` to disable Storage Autoscaling.
	MaxAllocatedStorage pulumi.IntPtrInput
	// The interval, in seconds, between points
	// when Enhanced Monitoring metrics are collected for the DB instance. To disable
	// collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid
	// Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrInput
	// The ARN for the IAM role that permits RDS
	// to send enhanced monitoring metrics to CloudWatch Logs. You can find more
	// information on the [AWS
	// Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringPtrInput
	// Specifies if the RDS instance is multi-AZ
	MultiAz pulumi.BoolPtrInput
	// The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance. Note that this does not apply for Oracle or SQL Server engines. See the [AWS documentation](http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines.
	Name pulumi.StringPtrInput
	// Name of the DB option group to associate.
	OptionGroupName pulumi.StringPtrInput
	// Name of the DB parameter group to
	// associate.
	ParameterGroupName pulumi.StringPtrInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file.
	Password pulumi.StringPtrInput
	// Specifies whether Performance Insights are enabled. Defaults to false.
	PerformanceInsightsEnabled pulumi.BoolPtrInput
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. Once KMS key is set, it can never be changed.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The amount of time in days to retain Performance Insights data. Either 7 (7 days) or 731 (2 years). When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntPtrInput
	// The port on which the DB accepts connections.
	Port pulumi.IntPtrInput
	// Bool to control if instance is publicly
	// accessible. Default is `false`.
	PubliclyAccessible pulumi.BoolPtrInput
	// Specifies that this resource is a Replicate
	// database, and to use this value as the source database. This correlates to the
	// `identifier` of another Amazon RDS Database to replicate (if replicating within
	// a single region) or ARN of the Amazon RDS Database to replicate (if replicating
	// cross-region). Note that if you are
	// creating a cross-region replica of an encrypted database you will also need to
	// specify a `kmsKeyId`. See [DB Instance Replication][1] and [Working with
	// PostgreSQL and MySQL Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html)
	// for more information on using Replication.
	ReplicateSourceDb pulumi.StringPtrInput
	// A configuration block for restoring a DB instance to an arbitrary point in time. Requires the `identifier` argument to be set with the name of the new DB instance to be created. See Restore To Point In Time below for details.
	RestoreToPointInTime InstanceRestoreToPointInTimePtrInput
	// Restore from a Percona Xtrabackup in S3.  See [Importing Data into an Amazon RDS MySQL DB Instance](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html)
	S3Import InstanceS3ImportPtrInput
	// List of DB Security Groups to
	// associate. Only used for [DB Instances on the _EC2-Classic_
	// Platform](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html#USER_VPC.FindDefaultVPC).
	SecurityGroupNames pulumi.StringArrayInput
	// Determines whether a final DB snapshot is
	// created before the DB instance is deleted. If true is specified, no DBSnapshot
	// is created. If false is specified, a DB snapshot is created before the DB
	// instance is deleted, using the value from `finalSnapshotIdentifier`. Default
	// is `false`.
	SkipFinalSnapshot pulumi.BoolPtrInput
	// Specifies whether or not to create this
	// database from a snapshot. This correlates to the snapshot ID you'd find in the
	// RDS console, e.g: rds:production-2015-06-26-06-05.
	SnapshotIdentifier pulumi.StringPtrInput
	// Specifies whether the DB instance is
	// encrypted. Note that if you are creating a cross-region read replica this field
	// is ignored and you should instead declare `kmsKeyId` with a valid ARN. The
	// default is `false` if not specified.
	StorageEncrypted pulumi.BoolPtrInput
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), or "io1" (provisioned IOPS SSD). The default is "io1" if `iops` is
	// specified, "gp2" if not.
	StorageType pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Time zone of the DB instance. `timezone` is currently
	// only supported by Microsoft SQL Server. The `timezone` can only be set on
	// creation. See [MSSQL User
	// Guide](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.TimeZone)
	// for more information.
	Timezone pulumi.StringPtrInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Username for the master DB user.
	Username pulumi.StringPtrInput
	// List of VPC security groups to
	// associate.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray added in v3.25.0

type InstanceArray []InstanceInput

func (InstanceArray) ElementType added in v3.25.0

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput added in v3.25.0

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext added in v3.25.0

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput added in v3.25.0

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput added in v3.25.0

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType added in v3.25.0

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index added in v3.25.0

func (InstanceArrayOutput) ToInstanceArrayOutput added in v3.25.0

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext added in v3.25.0

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput added in v3.13.0

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap added in v3.25.0

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType added in v3.25.0

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput added in v3.25.0

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext added in v3.25.0

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput added in v3.25.0

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput added in v3.25.0

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType added in v3.25.0

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex added in v3.25.0

func (InstanceMapOutput) ToInstanceMapOutput added in v3.25.0

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext added in v3.25.0

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput added in v3.13.0

type InstanceOutput struct {
	*pulumi.OutputState
}

func (InstanceOutput) ElementType added in v3.13.0

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput added in v3.13.0

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext added in v3.13.0

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToInstancePtrOutput added in v3.25.0

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext added in v3.25.0

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstancePtrInput added in v3.25.0

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput added in v3.25.0

type InstancePtrOutput struct {
	*pulumi.OutputState
}

func (InstancePtrOutput) ElementType added in v3.25.0

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput added in v3.25.0

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext added in v3.25.0

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceRestoreToPointInTime added in v3.13.0

type InstanceRestoreToPointInTime struct {
	// The date and time to restore from. Value must be a time in Universal Coordinated Time (UTC) format and must be before the latest restorable time for the DB instance. Cannot be specified with `useLatestRestorableTime`.
	RestoreTime *string `pulumi:"restoreTime"`
	// The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbiResourceId` is not specified.
	SourceDbInstanceIdentifier *string `pulumi:"sourceDbInstanceIdentifier"`
	// The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` is not specified.
	SourceDbiResourceId *string `pulumi:"sourceDbiResourceId"`
	// A boolean value that indicates whether the DB instance is restored from the latest backup time. Defaults to `false`. Cannot be specified with `restoreTime`.
	UseLatestRestorableTime *bool `pulumi:"useLatestRestorableTime"`
}

type InstanceRestoreToPointInTimeArgs added in v3.13.0

type InstanceRestoreToPointInTimeArgs struct {
	// The date and time to restore from. Value must be a time in Universal Coordinated Time (UTC) format and must be before the latest restorable time for the DB instance. Cannot be specified with `useLatestRestorableTime`.
	RestoreTime pulumi.StringPtrInput `pulumi:"restoreTime"`
	// The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbiResourceId` is not specified.
	SourceDbInstanceIdentifier pulumi.StringPtrInput `pulumi:"sourceDbInstanceIdentifier"`
	// The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` is not specified.
	SourceDbiResourceId pulumi.StringPtrInput `pulumi:"sourceDbiResourceId"`
	// A boolean value that indicates whether the DB instance is restored from the latest backup time. Defaults to `false`. Cannot be specified with `restoreTime`.
	UseLatestRestorableTime pulumi.BoolPtrInput `pulumi:"useLatestRestorableTime"`
}

func (InstanceRestoreToPointInTimeArgs) ElementType added in v3.13.0

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutput added in v3.13.0

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutput() InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutputWithContext added in v3.13.0

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutputWithContext(ctx context.Context) InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutput added in v3.13.0

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutputWithContext(ctx context.Context) InstanceRestoreToPointInTimePtrOutput

type InstanceRestoreToPointInTimeInput added in v3.13.0

type InstanceRestoreToPointInTimeInput interface {
	pulumi.Input

	ToInstanceRestoreToPointInTimeOutput() InstanceRestoreToPointInTimeOutput
	ToInstanceRestoreToPointInTimeOutputWithContext(context.Context) InstanceRestoreToPointInTimeOutput
}

InstanceRestoreToPointInTimeInput is an input type that accepts InstanceRestoreToPointInTimeArgs and InstanceRestoreToPointInTimeOutput values. You can construct a concrete instance of `InstanceRestoreToPointInTimeInput` via:

InstanceRestoreToPointInTimeArgs{...}

type InstanceRestoreToPointInTimeOutput added in v3.13.0

type InstanceRestoreToPointInTimeOutput struct{ *pulumi.OutputState }

func (InstanceRestoreToPointInTimeOutput) ElementType added in v3.13.0

func (InstanceRestoreToPointInTimeOutput) RestoreTime added in v3.13.0

The date and time to restore from. Value must be a time in Universal Coordinated Time (UTC) format and must be before the latest restorable time for the DB instance. Cannot be specified with `useLatestRestorableTime`.

func (InstanceRestoreToPointInTimeOutput) SourceDbInstanceIdentifier added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) SourceDbInstanceIdentifier() pulumi.StringPtrOutput

The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimeOutput) SourceDbiResourceId added in v3.13.0

The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` is not specified.

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutput added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutput() InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutputWithContext added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutputWithContext(ctx context.Context) InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutput added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext(ctx context.Context) InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimeOutput) UseLatestRestorableTime added in v3.13.0

func (o InstanceRestoreToPointInTimeOutput) UseLatestRestorableTime() pulumi.BoolPtrOutput

A boolean value that indicates whether the DB instance is restored from the latest backup time. Defaults to `false`. Cannot be specified with `restoreTime`.

type InstanceRestoreToPointInTimePtrInput added in v3.13.0

type InstanceRestoreToPointInTimePtrInput interface {
	pulumi.Input

	ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput
	ToInstanceRestoreToPointInTimePtrOutputWithContext(context.Context) InstanceRestoreToPointInTimePtrOutput
}

InstanceRestoreToPointInTimePtrInput is an input type that accepts InstanceRestoreToPointInTimeArgs, InstanceRestoreToPointInTimePtr and InstanceRestoreToPointInTimePtrOutput values. You can construct a concrete instance of `InstanceRestoreToPointInTimePtrInput` via:

        InstanceRestoreToPointInTimeArgs{...}

or:

        nil

func InstanceRestoreToPointInTimePtr added in v3.13.0

type InstanceRestoreToPointInTimePtrOutput added in v3.13.0

type InstanceRestoreToPointInTimePtrOutput struct{ *pulumi.OutputState }

func (InstanceRestoreToPointInTimePtrOutput) Elem added in v3.13.0

func (InstanceRestoreToPointInTimePtrOutput) ElementType added in v3.13.0

func (InstanceRestoreToPointInTimePtrOutput) RestoreTime added in v3.13.0

The date and time to restore from. Value must be a time in Universal Coordinated Time (UTC) format and must be before the latest restorable time for the DB instance. Cannot be specified with `useLatestRestorableTime`.

func (InstanceRestoreToPointInTimePtrOutput) SourceDbInstanceIdentifier added in v3.13.0

func (o InstanceRestoreToPointInTimePtrOutput) SourceDbInstanceIdentifier() pulumi.StringPtrOutput

The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimePtrOutput) SourceDbiResourceId added in v3.13.0

The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` is not specified.

func (InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutput added in v3.13.0

func (o InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext added in v3.13.0

func (o InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext(ctx context.Context) InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimePtrOutput) UseLatestRestorableTime added in v3.13.0

func (o InstanceRestoreToPointInTimePtrOutput) UseLatestRestorableTime() pulumi.BoolPtrOutput

A boolean value that indicates whether the DB instance is restored from the latest backup time. Defaults to `false`. Cannot be specified with `restoreTime`.

type InstanceS3Import

type InstanceS3Import struct {
	// The bucket name where your backup is stored
	BucketName string `pulumi:"bucketName"`
	// Can be blank, but is the path to your backup
	BucketPrefix *string `pulumi:"bucketPrefix"`
	// Role applied to load the data.
	IngestionRole string `pulumi:"ingestionRole"`
	// Source engine for the backup
	SourceEngine string `pulumi:"sourceEngine"`
	// Version of the source engine used to make the backup
	SourceEngineVersion string `pulumi:"sourceEngineVersion"`
}

type InstanceS3ImportArgs

type InstanceS3ImportArgs struct {
	// The bucket name where your backup is stored
	BucketName pulumi.StringInput `pulumi:"bucketName"`
	// Can be blank, but is the path to your backup
	BucketPrefix pulumi.StringPtrInput `pulumi:"bucketPrefix"`
	// Role applied to load the data.
	IngestionRole pulumi.StringInput `pulumi:"ingestionRole"`
	// Source engine for the backup
	SourceEngine pulumi.StringInput `pulumi:"sourceEngine"`
	// Version of the source engine used to make the backup
	SourceEngineVersion pulumi.StringInput `pulumi:"sourceEngineVersion"`
}

func (InstanceS3ImportArgs) ElementType

func (InstanceS3ImportArgs) ElementType() reflect.Type

func (InstanceS3ImportArgs) ToInstanceS3ImportOutput

func (i InstanceS3ImportArgs) ToInstanceS3ImportOutput() InstanceS3ImportOutput

func (InstanceS3ImportArgs) ToInstanceS3ImportOutputWithContext

func (i InstanceS3ImportArgs) ToInstanceS3ImportOutputWithContext(ctx context.Context) InstanceS3ImportOutput

func (InstanceS3ImportArgs) ToInstanceS3ImportPtrOutput

func (i InstanceS3ImportArgs) ToInstanceS3ImportPtrOutput() InstanceS3ImportPtrOutput

func (InstanceS3ImportArgs) ToInstanceS3ImportPtrOutputWithContext

func (i InstanceS3ImportArgs) ToInstanceS3ImportPtrOutputWithContext(ctx context.Context) InstanceS3ImportPtrOutput

type InstanceS3ImportInput

type InstanceS3ImportInput interface {
	pulumi.Input

	ToInstanceS3ImportOutput() InstanceS3ImportOutput
	ToInstanceS3ImportOutputWithContext(context.Context) InstanceS3ImportOutput
}

InstanceS3ImportInput is an input type that accepts InstanceS3ImportArgs and InstanceS3ImportOutput values. You can construct a concrete instance of `InstanceS3ImportInput` via:

InstanceS3ImportArgs{...}

type InstanceS3ImportOutput

type InstanceS3ImportOutput struct{ *pulumi.OutputState }

func (InstanceS3ImportOutput) BucketName

The bucket name where your backup is stored

func (InstanceS3ImportOutput) BucketPrefix

Can be blank, but is the path to your backup

func (InstanceS3ImportOutput) ElementType

func (InstanceS3ImportOutput) ElementType() reflect.Type

func (InstanceS3ImportOutput) IngestionRole

func (o InstanceS3ImportOutput) IngestionRole() pulumi.StringOutput

Role applied to load the data.

func (InstanceS3ImportOutput) SourceEngine

func (o InstanceS3ImportOutput) SourceEngine() pulumi.StringOutput

Source engine for the backup

func (InstanceS3ImportOutput) SourceEngineVersion

func (o InstanceS3ImportOutput) SourceEngineVersion() pulumi.StringOutput

Version of the source engine used to make the backup

func (InstanceS3ImportOutput) ToInstanceS3ImportOutput

func (o InstanceS3ImportOutput) ToInstanceS3ImportOutput() InstanceS3ImportOutput

func (InstanceS3ImportOutput) ToInstanceS3ImportOutputWithContext

func (o InstanceS3ImportOutput) ToInstanceS3ImportOutputWithContext(ctx context.Context) InstanceS3ImportOutput

func (InstanceS3ImportOutput) ToInstanceS3ImportPtrOutput

func (o InstanceS3ImportOutput) ToInstanceS3ImportPtrOutput() InstanceS3ImportPtrOutput

func (InstanceS3ImportOutput) ToInstanceS3ImportPtrOutputWithContext

func (o InstanceS3ImportOutput) ToInstanceS3ImportPtrOutputWithContext(ctx context.Context) InstanceS3ImportPtrOutput

type InstanceS3ImportPtrInput

type InstanceS3ImportPtrInput interface {
	pulumi.Input

	ToInstanceS3ImportPtrOutput() InstanceS3ImportPtrOutput
	ToInstanceS3ImportPtrOutputWithContext(context.Context) InstanceS3ImportPtrOutput
}

InstanceS3ImportPtrInput is an input type that accepts InstanceS3ImportArgs, InstanceS3ImportPtr and InstanceS3ImportPtrOutput values. You can construct a concrete instance of `InstanceS3ImportPtrInput` via:

        InstanceS3ImportArgs{...}

or:

        nil

type InstanceS3ImportPtrOutput

type InstanceS3ImportPtrOutput struct{ *pulumi.OutputState }

func (InstanceS3ImportPtrOutput) BucketName

The bucket name where your backup is stored

func (InstanceS3ImportPtrOutput) BucketPrefix

Can be blank, but is the path to your backup

func (InstanceS3ImportPtrOutput) Elem

func (InstanceS3ImportPtrOutput) ElementType

func (InstanceS3ImportPtrOutput) ElementType() reflect.Type

func (InstanceS3ImportPtrOutput) IngestionRole

Role applied to load the data.

func (InstanceS3ImportPtrOutput) SourceEngine

Source engine for the backup

func (InstanceS3ImportPtrOutput) SourceEngineVersion

func (o InstanceS3ImportPtrOutput) SourceEngineVersion() pulumi.StringPtrOutput

Version of the source engine used to make the backup

func (InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutput

func (o InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutput() InstanceS3ImportPtrOutput

func (InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutputWithContext

func (o InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutputWithContext(ctx context.Context) InstanceS3ImportPtrOutput

type InstanceState

type InstanceState struct {
	// The hostname of the RDS instance. See also `endpoint` and `port`.
	Address pulumi.StringPtrInput
	// The allocated storage in gibibytes. If `maxAllocatedStorage` is configured, this argument represents the initial storage allocation and differences from the configuration will be ignored automatically when Storage Autoscaling occurs.
	AllocatedStorage pulumi.IntPtrInput
	// Indicates that major version
	// upgrades are allowed. Changing this parameter does not result in an outage and
	// the change is asynchronously applied as soon as possible.
	AllowMajorVersionUpgrade pulumi.BoolPtrInput
	// Specifies whether any database modifications
	// are applied immediately, or during the next maintenance window. Default is
	// `false`. See [Amazon RDS Documentation for more
	// information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)
	ApplyImmediately pulumi.BoolPtrInput
	// The ARN of the RDS instance.
	Arn pulumi.StringPtrInput
	// Indicates that minor engine upgrades
	// will be applied automatically to the DB instance during the maintenance window.
	// Defaults to true.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// The AZ for the RDS instance.
	AvailabilityZone pulumi.StringPtrInput
	// The days to retain backups for. Must be
	// between `0` and `35`. Must be greater than `0` if the database is used as a source for a Read Replica. [See Read Replica][1].
	BackupRetentionPeriod pulumi.IntPtrInput
	// The daily time range (in UTC) during which
	// automated backups are created if they are enabled. Example: "09:46-10:16". Must
	// not overlap with `maintenanceWindow`.
	BackupWindow pulumi.StringPtrInput
	// The identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// The character set name to use for DB
	// encoding in Oracle and Microsoft SQL instances (collation). This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html)
	// or [Server-Level Collation for Microsoft SQL Server](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.CommonDBATasks.Collation.html) for more information.
	CharacterSetName pulumi.StringPtrInput
	// Copy all Instance `tags` to snapshots. Default is `false`.
	CopyTagsToSnapshot pulumi.BoolPtrInput
	// Name of `DB subnet group`. DB instance will
	// be created in the VPC associated with the DB subnet group. If unspecified, will
	// be created in the `default` VPC, or in EC2 Classic, if available. When working
	// with read replicas, it should be specified only if the source database
	// specifies an instance in another AWS Region. See [DBSubnetGroupName in API
	// action CreateDBInstanceReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html)
	// for additional read replica contraints.
	DbSubnetGroupName pulumi.StringPtrInput
	// Specifies whether to remove automated backups immediately after the DB instance is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrInput
	// If the DB instance 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
	// The ID of the Directory Service Active Directory domain to create the instance in.
	Domain pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service.
	DomainIamRoleName pulumi.StringPtrInput
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. Valid values (depending on `engine`). MySQL and MariaDB: `audit`, `error`, `general`, `slowquery`. PostgreSQL: `postgresql`, `upgrade`. MSSQL: `agent` , `error`. Oracle: `alert`, `audit`, `listener`, `trace`.
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The connection endpoint in `address:port` format.
	Endpoint pulumi.StringPtrInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) The database engine to use.  For supported values, see the Engine parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine must match the `DB cluster`'s engine'.
	// For information on the difference between the available Aurora MySQL engines
	// see [Comparison between Aurora MySQL 1 and Aurora MySQL 2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html)
	// in the Amazon RDS User Guide.
	Engine pulumi.StringPtrInput
	// The engine version to use. If `autoMinorVersionUpgrade`
	// is enabled, you can provide a prefix of the version such as `5.7` (for `5.7.10`) and
	// this attribute will ignore differences in the patch version automatically (e.g. `5.7.17`).
	// For supported values, see the EngineVersion parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	// Note that for Amazon Aurora instances the engine version must match the `DB cluster`'s engine version'.
	EngineVersion pulumi.StringPtrInput
	// The name of your final DB snapshot
	// when this DB instance is deleted. Must be provided if `skipFinalSnapshot` is
	// set to `false`. The value must begin with a letter, only contain alphanumeric characters and hyphens, and not end with a hyphen or contain two consecutive hyphens. Must not be provided when deleting a read replica.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// The canonical hosted zone ID of the DB instance (to be used
	// in a Route 53 Alias record).
	HostedZoneId pulumi.StringPtrInput
	// Specifies whether or
	// mappings of AWS Identity and Access Management (IAM) accounts to database
	// accounts is enabled.
	IamDatabaseAuthenticationEnabled pulumi.BoolPtrInput
	// The name of the RDS instance,
	// if omitted, this 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 type of the RDS instance.
	InstanceClass pulumi.StringPtrInput
	// The amount of provisioned IOPS. Setting this implies a
	// storageType of "io1".
	Iops pulumi.IntPtrInput
	// The ARN for the KMS encryption key. If creating an
	// encrypted replica, set this to the destination KMS ARN.
	KmsKeyId pulumi.StringPtrInput
	// The latest time, in UTC [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), to which a database can be restored with point-in-time restore.
	LatestRestorableTime pulumi.StringPtrInput
	// (Optional, but required for some DB engines, i.e. Oracle
	// SE1) License model information for this DB instance.
	LicenseModel pulumi.StringPtrInput
	// The window to perform maintenance in.
	// Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". See [RDS
	// Maintenance Window
	// docs](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow)
	// for more information.
	MaintenanceWindow pulumi.StringPtrInput
	// When configured, the upper limit to which Amazon RDS can automatically scale the storage of the DB instance. Configuring this will automatically ignore differences to `allocatedStorage`. Must be greater than or equal to `allocatedStorage` or `0` to disable Storage Autoscaling.
	MaxAllocatedStorage pulumi.IntPtrInput
	// The interval, in seconds, between points
	// when Enhanced Monitoring metrics are collected for the DB instance. To disable
	// collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid
	// Values: 0, 1, 5, 10, 15, 30, 60.
	MonitoringInterval pulumi.IntPtrInput
	// The ARN for the IAM role that permits RDS
	// to send enhanced monitoring metrics to CloudWatch Logs. You can find more
	// information on the [AWS
	// Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html)
	// what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
	MonitoringRoleArn pulumi.StringPtrInput
	// Specifies if the RDS instance is multi-AZ
	MultiAz pulumi.BoolPtrInput
	// The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance. Note that this does not apply for Oracle or SQL Server engines. See the [AWS documentation](http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines.
	Name pulumi.StringPtrInput
	// Name of the DB option group to associate.
	OptionGroupName pulumi.StringPtrInput
	// Name of the DB parameter group to
	// associate.
	ParameterGroupName pulumi.StringPtrInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file.
	Password pulumi.StringPtrInput
	// Specifies whether Performance Insights are enabled. Defaults to false.
	PerformanceInsightsEnabled pulumi.BoolPtrInput
	// The ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. Once KMS key is set, it can never be changed.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// The amount of time in days to retain Performance Insights data. Either 7 (7 days) or 731 (2 years). When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntPtrInput
	// The port on which the DB accepts connections.
	Port pulumi.IntPtrInput
	// Bool to control if instance is publicly
	// accessible. Default is `false`.
	PubliclyAccessible pulumi.BoolPtrInput
	Replicas           pulumi.StringArrayInput
	// Specifies that this resource is a Replicate
	// database, and to use this value as the source database. This correlates to the
	// `identifier` of another Amazon RDS Database to replicate (if replicating within
	// a single region) or ARN of the Amazon RDS Database to replicate (if replicating
	// cross-region). Note that if you are
	// creating a cross-region replica of an encrypted database you will also need to
	// specify a `kmsKeyId`. See [DB Instance Replication][1] and [Working with
	// PostgreSQL and MySQL Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html)
	// for more information on using Replication.
	ReplicateSourceDb pulumi.StringPtrInput
	// The RDS Resource ID of this instance.
	ResourceId pulumi.StringPtrInput
	// A configuration block for restoring a DB instance to an arbitrary point in time. Requires the `identifier` argument to be set with the name of the new DB instance to be created. See Restore To Point In Time below for details.
	RestoreToPointInTime InstanceRestoreToPointInTimePtrInput
	// Restore from a Percona Xtrabackup in S3.  See [Importing Data into an Amazon RDS MySQL DB Instance](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html)
	S3Import InstanceS3ImportPtrInput
	// List of DB Security Groups to
	// associate. Only used for [DB Instances on the _EC2-Classic_
	// Platform](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html#USER_VPC.FindDefaultVPC).
	SecurityGroupNames pulumi.StringArrayInput
	// Determines whether a final DB snapshot is
	// created before the DB instance is deleted. If true is specified, no DBSnapshot
	// is created. If false is specified, a DB snapshot is created before the DB
	// instance is deleted, using the value from `finalSnapshotIdentifier`. Default
	// is `false`.
	SkipFinalSnapshot pulumi.BoolPtrInput
	// Specifies whether or not to create this
	// database from a snapshot. This correlates to the snapshot ID you'd find in the
	// RDS console, e.g: rds:production-2015-06-26-06-05.
	SnapshotIdentifier pulumi.StringPtrInput
	// The RDS instance status.
	Status pulumi.StringPtrInput
	// Specifies whether the DB instance is
	// encrypted. Note that if you are creating a cross-region read replica this field
	// is ignored and you should instead declare `kmsKeyId` with a valid ARN. The
	// default is `false` if not specified.
	StorageEncrypted pulumi.BoolPtrInput
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), or "io1" (provisioned IOPS SSD). The default is "io1" if `iops` is
	// specified, "gp2" if not.
	StorageType pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Time zone of the DB instance. `timezone` is currently
	// only supported by Microsoft SQL Server. The `timezone` can only be set on
	// creation. See [MSSQL User
	// Guide](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.TimeZone)
	// for more information.
	Timezone pulumi.StringPtrInput
	// (Required unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided) Username for the master DB user.
	Username pulumi.StringPtrInput
	// List of VPC security groups to
	// associate.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceType added in v3.18.0

type InstanceType pulumi.String

func (InstanceType) ElementType added in v3.18.0

func (InstanceType) ElementType() reflect.Type

func (InstanceType) ToStringOutput added in v3.18.0

func (e InstanceType) ToStringOutput() pulumi.StringOutput

func (InstanceType) ToStringOutputWithContext added in v3.18.0

func (e InstanceType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstanceType) ToStringPtrOutput added in v3.18.0

func (e InstanceType) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceType) ToStringPtrOutputWithContext added in v3.18.0

func (e InstanceType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type LookupClusterArgs

type LookupClusterArgs struct {
	// The cluster identifier of the RDS cluster.
	ClusterIdentifier string            `pulumi:"clusterIdentifier"`
	Tags              map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getCluster.

type LookupClusterResult

type LookupClusterResult struct {
	Arn                              string   `pulumi:"arn"`
	AvailabilityZones                []string `pulumi:"availabilityZones"`
	BacktrackWindow                  int      `pulumi:"backtrackWindow"`
	BackupRetentionPeriod            int      `pulumi:"backupRetentionPeriod"`
	ClusterIdentifier                string   `pulumi:"clusterIdentifier"`
	ClusterMembers                   []string `pulumi:"clusterMembers"`
	ClusterResourceId                string   `pulumi:"clusterResourceId"`
	DatabaseName                     string   `pulumi:"databaseName"`
	DbClusterParameterGroupName      string   `pulumi:"dbClusterParameterGroupName"`
	DbSubnetGroupName                string   `pulumi:"dbSubnetGroupName"`
	EnabledCloudwatchLogsExports     []string `pulumi:"enabledCloudwatchLogsExports"`
	Endpoint                         string   `pulumi:"endpoint"`
	Engine                           string   `pulumi:"engine"`
	EngineVersion                    string   `pulumi:"engineVersion"`
	FinalSnapshotIdentifier          string   `pulumi:"finalSnapshotIdentifier"`
	HostedZoneId                     string   `pulumi:"hostedZoneId"`
	IamDatabaseAuthenticationEnabled bool     `pulumi:"iamDatabaseAuthenticationEnabled"`
	IamRoles                         []string `pulumi:"iamRoles"`
	// The provider-assigned unique ID for this managed resource.
	Id                          string            `pulumi:"id"`
	KmsKeyId                    string            `pulumi:"kmsKeyId"`
	MasterUsername              string            `pulumi:"masterUsername"`
	Port                        int               `pulumi:"port"`
	PreferredBackupWindow       string            `pulumi:"preferredBackupWindow"`
	PreferredMaintenanceWindow  string            `pulumi:"preferredMaintenanceWindow"`
	ReaderEndpoint              string            `pulumi:"readerEndpoint"`
	ReplicationSourceIdentifier string            `pulumi:"replicationSourceIdentifier"`
	StorageEncrypted            bool              `pulumi:"storageEncrypted"`
	Tags                        map[string]string `pulumi:"tags"`
	VpcSecurityGroupIds         []string          `pulumi:"vpcSecurityGroupIds"`
}

A collection of values returned by getCluster.

func LookupCluster

func LookupCluster(ctx *pulumi.Context, args *LookupClusterArgs, opts ...pulumi.InvokeOption) (*LookupClusterResult, error)

Provides information about an RDS cluster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.LookupCluster(ctx, &rds.LookupClusterArgs{
			ClusterIdentifier: "clusterName",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupClusterSnapshotArgs

type LookupClusterSnapshotArgs struct {
	// Returns the list of snapshots created by the specific db_cluster
	DbClusterIdentifier *string `pulumi:"dbClusterIdentifier"`
	// Returns information on a specific snapshot_id.
	DbClusterSnapshotIdentifier *string `pulumi:"dbClusterSnapshotIdentifier"`
	// Set this value to true to include manual DB Cluster Snapshots that are public and can be
	// copied or restored by any AWS account, otherwise set this value to false. The default is `false`.
	IncludePublic *bool `pulumi:"includePublic"`
	// Set this value to true to include shared manual DB Cluster Snapshots from other
	// AWS accounts that this AWS account has been given permission to copy or restore, otherwise set this value to false.
	// The default is `false`.
	IncludeShared *bool `pulumi:"includeShared"`
	// If more than one result is returned, use the most recent Snapshot.
	MostRecent *bool `pulumi:"mostRecent"`
	// The type of snapshots to be returned. If you don't specify a SnapshotType
	// value, then both automated and manual DB cluster snapshots are returned. Shared and public DB Cluster Snapshots are not
	// included in the returned results by default. Possible values are, `automated`, `manual`, `shared` and `public`.
	SnapshotType *string `pulumi:"snapshotType"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getClusterSnapshot.

type LookupClusterSnapshotResult

type LookupClusterSnapshotResult struct {
	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage int `pulumi:"allocatedStorage"`
	// List of EC2 Availability Zones that instances in the DB cluster snapshot can be restored in.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	// Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.
	DbClusterIdentifier *string `pulumi:"dbClusterIdentifier"`
	// The Amazon Resource Name (ARN) for the DB Cluster Snapshot.
	DbClusterSnapshotArn        string  `pulumi:"dbClusterSnapshotArn"`
	DbClusterSnapshotIdentifier *string `pulumi:"dbClusterSnapshotIdentifier"`
	// Specifies the name of the database engine.
	Engine string `pulumi:"engine"`
	// Version of the database engine for this DB cluster snapshot.
	EngineVersion string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id            string `pulumi:"id"`
	IncludePublic *bool  `pulumi:"includePublic"`
	IncludeShared *bool  `pulumi:"includeShared"`
	// If storageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster snapshot.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// License model information for the restored DB cluster.
	LicenseModel string `pulumi:"licenseModel"`
	MostRecent   *bool  `pulumi:"mostRecent"`
	// Port that the DB cluster was listening on at the time of the snapshot.
	Port int `pulumi:"port"`
	// Time when the snapshot was taken, in Universal Coordinated Time (UTC).
	SnapshotCreateTime         string  `pulumi:"snapshotCreateTime"`
	SnapshotType               *string `pulumi:"snapshotType"`
	SourceDbClusterSnapshotArn string  `pulumi:"sourceDbClusterSnapshotArn"`
	// The status of this DB Cluster Snapshot.
	Status string `pulumi:"status"`
	// Specifies whether the DB cluster snapshot is encrypted.
	StorageEncrypted bool `pulumi:"storageEncrypted"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
	// The VPC ID associated with the DB cluster snapshot.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getClusterSnapshot.

func LookupClusterSnapshot

func LookupClusterSnapshot(ctx *pulumi.Context, args *LookupClusterSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupClusterSnapshotResult, error)

Use this data source to get information about a DB Cluster Snapshot for use when provisioning DB clusters.

> **NOTE:** This data source does not apply to snapshots created on DB Instances. See the `rds.Snapshot` data source for DB Instance snapshots.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "development_cluster"
		opt1 := true
		developmentFinalSnapshot, err := rds.LookupClusterSnapshot(ctx, &rds.LookupClusterSnapshotArgs{
			DbClusterIdentifier: &opt0,
			MostRecent:          &opt1,
		}, nil)
		if err != nil {
			return err
		}
		auroraCluster, err := rds.NewCluster(ctx, "auroraCluster", &rds.ClusterArgs{
			ClusterIdentifier:  pulumi.String("development_cluster"),
			SnapshotIdentifier: pulumi.String(developmentFinalSnapshot.Id),
			DbSubnetGroupName:  pulumi.String("my_db_subnet_group"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "auroraClusterInstance", &rds.ClusterInstanceArgs{
			ClusterIdentifier: auroraCluster.ID(),
			InstanceClass:     pulumi.String("db.t2.small"),
			DbSubnetGroupName: pulumi.String("my_db_subnet_group"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupInstanceArgs

type LookupInstanceArgs struct {
	// The name of the RDS instance
	DbInstanceIdentifier string            `pulumi:"dbInstanceIdentifier"`
	Tags                 map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getInstance.

type LookupInstanceResult

type LookupInstanceResult struct {
	// The hostname of the RDS instance. See also `endpoint` and `port`.
	Address string `pulumi:"address"`
	// Specifies the allocated storage size specified in gigabytes.
	AllocatedStorage int `pulumi:"allocatedStorage"`
	// Indicates that minor version patches are applied automatically.
	AutoMinorVersionUpgrade bool `pulumi:"autoMinorVersionUpgrade"`
	// Specifies the name of the Availability Zone the DB instance is located in.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Specifies the number of days for which automatic DB snapshots are retained.
	BackupRetentionPeriod int `pulumi:"backupRetentionPeriod"`
	// Specifies the identifier of the CA certificate for the DB instance.
	CaCertIdentifier string `pulumi:"caCertIdentifier"`
	// If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.
	DbClusterIdentifier string `pulumi:"dbClusterIdentifier"`
	// The Amazon Resource Name (ARN) for the DB instance.
	DbInstanceArn string `pulumi:"dbInstanceArn"`
	// Contains the name of the compute and memory capacity class of the DB instance.
	DbInstanceClass      string `pulumi:"dbInstanceClass"`
	DbInstanceIdentifier string `pulumi:"dbInstanceIdentifier"`
	// Specifies the port that the DB instance listens on.
	DbInstancePort int `pulumi:"dbInstancePort"`
	// Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance.
	DbName string `pulumi:"dbName"`
	// Provides the list of DB parameter groups applied to this DB instance.
	DbParameterGroups []string `pulumi:"dbParameterGroups"`
	// Provides List of DB security groups associated to this DB instance.
	DbSecurityGroups []string `pulumi:"dbSecurityGroups"`
	// Specifies the name of the subnet group associated with the DB instance.
	DbSubnetGroup string `pulumi:"dbSubnetGroup"`
	// List of log types to export to cloudwatch.
	EnabledCloudwatchLogsExports []string `pulumi:"enabledCloudwatchLogsExports"`
	// The connection endpoint in `address:port` format.
	Endpoint string `pulumi:"endpoint"`
	// Provides the name of the database engine to be used for this DB instance.
	Engine string `pulumi:"engine"`
	// Indicates the database engine version.
	EngineVersion string `pulumi:"engineVersion"`
	// The canonical hosted zone ID of the DB instance (to be used in a Route 53 Alias record).
	HostedZoneId string `pulumi:"hostedZoneId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Specifies the Provisioned IOPS (I/O operations per second) value.
	Iops int `pulumi:"iops"`
	// If StorageEncrypted is true, the KMS key identifier for the encrypted DB instance.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// License model information for this DB instance.
	LicenseModel string `pulumi:"licenseModel"`
	// Contains the master username for the DB instance.
	MasterUsername string `pulumi:"masterUsername"`
	// The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.
	MonitoringInterval int `pulumi:"monitoringInterval"`
	// The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to CloudWatch Logs.
	MonitoringRoleArn string `pulumi:"monitoringRoleArn"`
	// Specifies if the DB instance is a Multi-AZ deployment.
	MultiAz bool `pulumi:"multiAz"`
	// Provides the list of option group memberships for this DB instance.
	OptionGroupMemberships []string `pulumi:"optionGroupMemberships"`
	// The database port.
	Port int `pulumi:"port"`
	// Specifies the daily time range during which automated backups are created.
	PreferredBackupWindow string `pulumi:"preferredBackupWindow"`
	// Specifies the weekly time range during which system maintenance can occur in UTC.
	PreferredMaintenanceWindow string `pulumi:"preferredMaintenanceWindow"`
	// Specifies the accessibility options for the DB instance.
	PubliclyAccessible bool `pulumi:"publiclyAccessible"`
	// The identifier of the source DB that this is a replica of.
	ReplicateSourceDb string `pulumi:"replicateSourceDb"`
	// The RDS Resource ID of this instance.
	ResourceId string `pulumi:"resourceId"`
	// Specifies whether the DB instance is encrypted.
	StorageEncrypted bool `pulumi:"storageEncrypted"`
	// Specifies the storage type associated with DB instance.
	StorageType string            `pulumi:"storageType"`
	Tags        map[string]string `pulumi:"tags"`
	// The time zone of the DB instance.
	Timezone string `pulumi:"timezone"`
	// Provides a list of VPC security group elements that the DB instance belongs to.
	VpcSecurityGroups []string `pulumi:"vpcSecurityGroups"`
}

A collection of values returned by getInstance.

func LookupInstance

func LookupInstance(ctx *pulumi.Context, args *LookupInstanceArgs, opts ...pulumi.InvokeOption) (*LookupInstanceResult, error)

Use this data source to get information about an RDS instance

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.LookupInstance(ctx, &rds.LookupInstanceArgs{
			DbInstanceIdentifier: "my-test-database",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSnapshotArgs

type LookupSnapshotArgs struct {
	// Returns the list of snapshots created by the specific db_instance
	DbInstanceIdentifier *string `pulumi:"dbInstanceIdentifier"`
	// Returns information on a specific snapshot_id.
	DbSnapshotIdentifier *string `pulumi:"dbSnapshotIdentifier"`
	// Set this value to true to include manual DB snapshots that are public and can be
	// copied or restored by any AWS account, otherwise set this value to false. The default is `false`.
	IncludePublic *bool `pulumi:"includePublic"`
	// Set this value to true to include shared manual DB snapshots from other
	// AWS accounts that this AWS account has been given permission to copy or restore, otherwise set this value to false.
	// The default is `false`.
	IncludeShared *bool `pulumi:"includeShared"`
	// If more than one result is returned, use the most
	// recent Snapshot.
	MostRecent *bool `pulumi:"mostRecent"`
	// The type of snapshots to be returned. If you don't specify a SnapshotType
	// value, then both automated and manual snapshots are returned. Shared and public DB snapshots are not
	// included in the returned results by default. Possible values are, `automated`, `manual`, `shared` and `public`.
	SnapshotType *string `pulumi:"snapshotType"`
}

A collection of arguments for invoking getSnapshot.

type LookupSnapshotResult

type LookupSnapshotResult struct {
	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage int `pulumi:"allocatedStorage"`
	// Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.
	AvailabilityZone     string  `pulumi:"availabilityZone"`
	DbInstanceIdentifier *string `pulumi:"dbInstanceIdentifier"`
	// The Amazon Resource Name (ARN) for the DB snapshot.
	DbSnapshotArn        string  `pulumi:"dbSnapshotArn"`
	DbSnapshotIdentifier *string `pulumi:"dbSnapshotIdentifier"`
	// Specifies whether the DB snapshot is encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// Specifies the name of the database engine.
	Engine string `pulumi:"engine"`
	// Specifies the version of the database engine.
	EngineVersion string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id            string `pulumi:"id"`
	IncludePublic *bool  `pulumi:"includePublic"`
	IncludeShared *bool  `pulumi:"includeShared"`
	// Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.
	Iops int `pulumi:"iops"`
	// The ARN for the KMS encryption key.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// License model information for the restored DB instance.
	LicenseModel string `pulumi:"licenseModel"`
	MostRecent   *bool  `pulumi:"mostRecent"`
	// Provides the option group name for the DB snapshot.
	OptionGroupName string `pulumi:"optionGroupName"`
	Port            int    `pulumi:"port"`
	// Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).
	SnapshotCreateTime string  `pulumi:"snapshotCreateTime"`
	SnapshotType       *string `pulumi:"snapshotType"`
	// The DB snapshot Arn that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.
	SourceDbSnapshotIdentifier string `pulumi:"sourceDbSnapshotIdentifier"`
	// The region that the DB snapshot was created in or copied from.
	SourceRegion string `pulumi:"sourceRegion"`
	// Specifies the status of this DB snapshot.
	Status string `pulumi:"status"`
	// Specifies the storage type associated with DB snapshot.
	StorageType string `pulumi:"storageType"`
	// Specifies the ID of the VPC associated with the DB snapshot.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getSnapshot.

func LookupSnapshot

func LookupSnapshot(ctx *pulumi.Context, args *LookupSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotResult, error)

Use this data source to get information about a DB Snapshot for use when provisioning DB instances

> **NOTE:** This data source does not apply to snapshots created on Aurora DB clusters. See the `rds.ClusterSnapshot` data source for DB Cluster snapshots.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prod, err := rds.NewInstance(ctx, "prod", &rds.InstanceArgs{
			AllocatedStorage:   pulumi.Int(10),
			Engine:             pulumi.String("mysql"),
			EngineVersion:      pulumi.String("5.6.17"),
			InstanceClass:      pulumi.String("db.t2.micro"),
			Name:               pulumi.String("mydb"),
			Username:           pulumi.String("foo"),
			Password:           pulumi.String("bar"),
			DbSubnetGroupName:  pulumi.String("my_database_subnet_group"),
			ParameterGroupName: pulumi.String("default.mysql5.6"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewInstance(ctx, "dev", &rds.InstanceArgs{
			InstanceClass: pulumi.String("db.t2.micro"),
			Name:          pulumi.String("mydbdev"),
			SnapshotIdentifier: latestProdSnapshot.ApplyT(func(latestProdSnapshot rds.LookupSnapshotResult) (string, error) {
				return latestProdSnapshot.Id, nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSubnetGroupArgs added in v3.3.0

type LookupSubnetGroupArgs struct {
	// The name of the RDS database subnet group.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getSubnetGroup.

type LookupSubnetGroupResult added in v3.3.0

type LookupSubnetGroupResult struct {
	// The Amazon Resource Name (ARN) for the DB subnet group.
	Arn string `pulumi:"arn"`
	// Provides the description of the DB subnet group.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// Provides the status of the DB subnet group.
	Status string `pulumi:"status"`
	// Contains a list of subnet identifiers.
	SubnetIds []string `pulumi:"subnetIds"`
	// Provides the VPC ID of the subnet group.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getSubnetGroup.

func LookupSubnetGroup added in v3.3.0

func LookupSubnetGroup(ctx *pulumi.Context, args *LookupSubnetGroupArgs, opts ...pulumi.InvokeOption) (*LookupSubnetGroupResult, error)

Use this data source to get information about an RDS subnet group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.LookupSubnetGroup(ctx, &rds.LookupSubnetGroupArgs{
			Name: "my-test-database-subnet-group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type OptionGroup

type OptionGroup struct {
	pulumi.CustomResourceState

	// The ARN of the db option group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specifies the name of the engine that this option group should be associated with.
	EngineName pulumi.StringOutput `pulumi:"engineName"`
	// Specifies the major version of the engine that this option group should be associated with.
	MajorEngineVersion pulumi.StringOutput `pulumi:"majorEngineVersion"`
	// The Name of the setting.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`. Must be lowercase, to match as it is stored in AWS.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// The description of the option group. Defaults to "Managed by Pulumi".
	OptionGroupDescription pulumi.StringOutput `pulumi:"optionGroupDescription"`
	// A list of Options to apply.
	Options OptionGroupOptionArrayOutput `pulumi:"options"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an RDS DB option group resource. Documentation of the available options for various RDS engines can be found at:

* [MariaDB Options](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MariaDB.Options.html) * [Microsoft SQL Server Options](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.Options.html) * [MySQL Options](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.Options.html) * [Oracle Options](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.Options.html)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewOptionGroup(ctx, "example", &rds.OptionGroupArgs{
			OptionGroupDescription: pulumi.String("Option Group"),
			EngineName:             pulumi.String("sqlserver-ee"),
			MajorEngineVersion:     pulumi.String("11.00"),
			Options: rds.OptionGroupOptionArray{
				&rds.OptionGroupOptionArgs{
					OptionName: pulumi.String("Timezone"),
					OptionSettings: rds.OptionGroupOptionOptionSettingArray{
						&rds.OptionGroupOptionOptionSettingArgs{
							Name:  pulumi.String("TIME_ZONE"),
							Value: pulumi.String("UTC"),
						},
					},
				},
				&rds.OptionGroupOptionArgs{
					OptionName: pulumi.String("SQLSERVER_BACKUP_RESTORE"),
					OptionSettings: rds.OptionGroupOptionOptionSettingArray{
						&rds.OptionGroupOptionOptionSettingArgs{
							Name:  pulumi.String("IAM_ROLE_ARN"),
							Value: pulumi.Any(aws_iam_role.Example.Arn),
						},
					},
				},
				&rds.OptionGroupOptionArgs{
					OptionName: pulumi.String("TDE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **Note**: Any modifications to the `dbOptionGroup` are set to happen immediately as we default to applying immediately.

## Import

DB Option groups can be imported using the `name`, e.g.

```sh

$ pulumi import aws:rds/optionGroup:OptionGroup bar mysql-option-group

```

func GetOptionGroup

func GetOptionGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OptionGroupState, opts ...pulumi.ResourceOption) (*OptionGroup, error)

GetOptionGroup gets an existing OptionGroup 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 NewOptionGroup

func NewOptionGroup(ctx *pulumi.Context,
	name string, args *OptionGroupArgs, opts ...pulumi.ResourceOption) (*OptionGroup, error)

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

func (*OptionGroup) ElementType added in v3.13.0

func (*OptionGroup) ElementType() reflect.Type

func (*OptionGroup) ToOptionGroupOutput added in v3.13.0

func (i *OptionGroup) ToOptionGroupOutput() OptionGroupOutput

func (*OptionGroup) ToOptionGroupOutputWithContext added in v3.13.0

func (i *OptionGroup) ToOptionGroupOutputWithContext(ctx context.Context) OptionGroupOutput

func (*OptionGroup) ToOptionGroupPtrOutput added in v3.25.0

func (i *OptionGroup) ToOptionGroupPtrOutput() OptionGroupPtrOutput

func (*OptionGroup) ToOptionGroupPtrOutputWithContext added in v3.25.0

func (i *OptionGroup) ToOptionGroupPtrOutputWithContext(ctx context.Context) OptionGroupPtrOutput

type OptionGroupArgs

type OptionGroupArgs struct {
	// Specifies the name of the engine that this option group should be associated with.
	EngineName pulumi.StringInput
	// Specifies the major version of the engine that this option group should be associated with.
	MajorEngineVersion pulumi.StringInput
	// The Name of the setting.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`. Must be lowercase, to match as it is stored in AWS.
	NamePrefix pulumi.StringPtrInput
	// The description of the option group. Defaults to "Managed by Pulumi".
	OptionGroupDescription pulumi.StringPtrInput
	// A list of Options to apply.
	Options OptionGroupOptionArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a OptionGroup resource.

func (OptionGroupArgs) ElementType

func (OptionGroupArgs) ElementType() reflect.Type

type OptionGroupArray added in v3.25.0

type OptionGroupArray []OptionGroupInput

func (OptionGroupArray) ElementType added in v3.25.0

func (OptionGroupArray) ElementType() reflect.Type

func (OptionGroupArray) ToOptionGroupArrayOutput added in v3.25.0

func (i OptionGroupArray) ToOptionGroupArrayOutput() OptionGroupArrayOutput

func (OptionGroupArray) ToOptionGroupArrayOutputWithContext added in v3.25.0

func (i OptionGroupArray) ToOptionGroupArrayOutputWithContext(ctx context.Context) OptionGroupArrayOutput

type OptionGroupArrayInput added in v3.25.0

type OptionGroupArrayInput interface {
	pulumi.Input

	ToOptionGroupArrayOutput() OptionGroupArrayOutput
	ToOptionGroupArrayOutputWithContext(context.Context) OptionGroupArrayOutput
}

OptionGroupArrayInput is an input type that accepts OptionGroupArray and OptionGroupArrayOutput values. You can construct a concrete instance of `OptionGroupArrayInput` via:

OptionGroupArray{ OptionGroupArgs{...} }

type OptionGroupArrayOutput added in v3.25.0

type OptionGroupArrayOutput struct{ *pulumi.OutputState }

func (OptionGroupArrayOutput) ElementType added in v3.25.0

func (OptionGroupArrayOutput) ElementType() reflect.Type

func (OptionGroupArrayOutput) Index added in v3.25.0

func (OptionGroupArrayOutput) ToOptionGroupArrayOutput added in v3.25.0

func (o OptionGroupArrayOutput) ToOptionGroupArrayOutput() OptionGroupArrayOutput

func (OptionGroupArrayOutput) ToOptionGroupArrayOutputWithContext added in v3.25.0

func (o OptionGroupArrayOutput) ToOptionGroupArrayOutputWithContext(ctx context.Context) OptionGroupArrayOutput

type OptionGroupInput added in v3.13.0

type OptionGroupInput interface {
	pulumi.Input

	ToOptionGroupOutput() OptionGroupOutput
	ToOptionGroupOutputWithContext(ctx context.Context) OptionGroupOutput
}

type OptionGroupMap added in v3.25.0

type OptionGroupMap map[string]OptionGroupInput

func (OptionGroupMap) ElementType added in v3.25.0

func (OptionGroupMap) ElementType() reflect.Type

func (OptionGroupMap) ToOptionGroupMapOutput added in v3.25.0

func (i OptionGroupMap) ToOptionGroupMapOutput() OptionGroupMapOutput

func (OptionGroupMap) ToOptionGroupMapOutputWithContext added in v3.25.0

func (i OptionGroupMap) ToOptionGroupMapOutputWithContext(ctx context.Context) OptionGroupMapOutput

type OptionGroupMapInput added in v3.25.0

type OptionGroupMapInput interface {
	pulumi.Input

	ToOptionGroupMapOutput() OptionGroupMapOutput
	ToOptionGroupMapOutputWithContext(context.Context) OptionGroupMapOutput
}

OptionGroupMapInput is an input type that accepts OptionGroupMap and OptionGroupMapOutput values. You can construct a concrete instance of `OptionGroupMapInput` via:

OptionGroupMap{ "key": OptionGroupArgs{...} }

type OptionGroupMapOutput added in v3.25.0

type OptionGroupMapOutput struct{ *pulumi.OutputState }

func (OptionGroupMapOutput) ElementType added in v3.25.0

func (OptionGroupMapOutput) ElementType() reflect.Type

func (OptionGroupMapOutput) MapIndex added in v3.25.0

func (OptionGroupMapOutput) ToOptionGroupMapOutput added in v3.25.0

func (o OptionGroupMapOutput) ToOptionGroupMapOutput() OptionGroupMapOutput

func (OptionGroupMapOutput) ToOptionGroupMapOutputWithContext added in v3.25.0

func (o OptionGroupMapOutput) ToOptionGroupMapOutputWithContext(ctx context.Context) OptionGroupMapOutput

type OptionGroupOption

type OptionGroupOption struct {
	// A list of DB Security Groups for which the option is enabled.
	DbSecurityGroupMemberships []string `pulumi:"dbSecurityGroupMemberships"`
	// The Name of the Option (e.g. MEMCACHED).
	OptionName string `pulumi:"optionName"`
	// A list of option settings to apply.
	OptionSettings []OptionGroupOptionOptionSetting `pulumi:"optionSettings"`
	// The Port number when connecting to the Option (e.g. 11211).
	Port *int `pulumi:"port"`
	// The version of the option (e.g. 13.1.0.0).
	Version *string `pulumi:"version"`
	// A list of VPC Security Groups for which the option is enabled.
	VpcSecurityGroupMemberships []string `pulumi:"vpcSecurityGroupMemberships"`
}

type OptionGroupOptionArgs

type OptionGroupOptionArgs struct {
	// A list of DB Security Groups for which the option is enabled.
	DbSecurityGroupMemberships pulumi.StringArrayInput `pulumi:"dbSecurityGroupMemberships"`
	// The Name of the Option (e.g. MEMCACHED).
	OptionName pulumi.StringInput `pulumi:"optionName"`
	// A list of option settings to apply.
	OptionSettings OptionGroupOptionOptionSettingArrayInput `pulumi:"optionSettings"`
	// The Port number when connecting to the Option (e.g. 11211).
	Port pulumi.IntPtrInput `pulumi:"port"`
	// The version of the option (e.g. 13.1.0.0).
	Version pulumi.StringPtrInput `pulumi:"version"`
	// A list of VPC Security Groups for which the option is enabled.
	VpcSecurityGroupMemberships pulumi.StringArrayInput `pulumi:"vpcSecurityGroupMemberships"`
}

func (OptionGroupOptionArgs) ElementType

func (OptionGroupOptionArgs) ElementType() reflect.Type

func (OptionGroupOptionArgs) ToOptionGroupOptionOutput

func (i OptionGroupOptionArgs) ToOptionGroupOptionOutput() OptionGroupOptionOutput

func (OptionGroupOptionArgs) ToOptionGroupOptionOutputWithContext

func (i OptionGroupOptionArgs) ToOptionGroupOptionOutputWithContext(ctx context.Context) OptionGroupOptionOutput

type OptionGroupOptionArray

type OptionGroupOptionArray []OptionGroupOptionInput

func (OptionGroupOptionArray) ElementType

func (OptionGroupOptionArray) ElementType() reflect.Type

func (OptionGroupOptionArray) ToOptionGroupOptionArrayOutput

func (i OptionGroupOptionArray) ToOptionGroupOptionArrayOutput() OptionGroupOptionArrayOutput

func (OptionGroupOptionArray) ToOptionGroupOptionArrayOutputWithContext

func (i OptionGroupOptionArray) ToOptionGroupOptionArrayOutputWithContext(ctx context.Context) OptionGroupOptionArrayOutput

type OptionGroupOptionArrayInput

type OptionGroupOptionArrayInput interface {
	pulumi.Input

	ToOptionGroupOptionArrayOutput() OptionGroupOptionArrayOutput
	ToOptionGroupOptionArrayOutputWithContext(context.Context) OptionGroupOptionArrayOutput
}

OptionGroupOptionArrayInput is an input type that accepts OptionGroupOptionArray and OptionGroupOptionArrayOutput values. You can construct a concrete instance of `OptionGroupOptionArrayInput` via:

OptionGroupOptionArray{ OptionGroupOptionArgs{...} }

type OptionGroupOptionArrayOutput

type OptionGroupOptionArrayOutput struct{ *pulumi.OutputState }

func (OptionGroupOptionArrayOutput) ElementType

func (OptionGroupOptionArrayOutput) Index

func (OptionGroupOptionArrayOutput) ToOptionGroupOptionArrayOutput

func (o OptionGroupOptionArrayOutput) ToOptionGroupOptionArrayOutput() OptionGroupOptionArrayOutput

func (OptionGroupOptionArrayOutput) ToOptionGroupOptionArrayOutputWithContext

func (o OptionGroupOptionArrayOutput) ToOptionGroupOptionArrayOutputWithContext(ctx context.Context) OptionGroupOptionArrayOutput

type OptionGroupOptionInput

type OptionGroupOptionInput interface {
	pulumi.Input

	ToOptionGroupOptionOutput() OptionGroupOptionOutput
	ToOptionGroupOptionOutputWithContext(context.Context) OptionGroupOptionOutput
}

OptionGroupOptionInput is an input type that accepts OptionGroupOptionArgs and OptionGroupOptionOutput values. You can construct a concrete instance of `OptionGroupOptionInput` via:

OptionGroupOptionArgs{...}

type OptionGroupOptionOptionSetting

type OptionGroupOptionOptionSetting struct {
	// The Name of the setting.
	Name string `pulumi:"name"`
	// The Value of the setting.
	Value string `pulumi:"value"`
}

type OptionGroupOptionOptionSettingArgs

type OptionGroupOptionOptionSettingArgs struct {
	// The Name of the setting.
	Name pulumi.StringInput `pulumi:"name"`
	// The Value of the setting.
	Value pulumi.StringInput `pulumi:"value"`
}

func (OptionGroupOptionOptionSettingArgs) ElementType

func (OptionGroupOptionOptionSettingArgs) ToOptionGroupOptionOptionSettingOutput

func (i OptionGroupOptionOptionSettingArgs) ToOptionGroupOptionOptionSettingOutput() OptionGroupOptionOptionSettingOutput

func (OptionGroupOptionOptionSettingArgs) ToOptionGroupOptionOptionSettingOutputWithContext

func (i OptionGroupOptionOptionSettingArgs) ToOptionGroupOptionOptionSettingOutputWithContext(ctx context.Context) OptionGroupOptionOptionSettingOutput

type OptionGroupOptionOptionSettingArray

type OptionGroupOptionOptionSettingArray []OptionGroupOptionOptionSettingInput

func (OptionGroupOptionOptionSettingArray) ElementType

func (OptionGroupOptionOptionSettingArray) ToOptionGroupOptionOptionSettingArrayOutput

func (i OptionGroupOptionOptionSettingArray) ToOptionGroupOptionOptionSettingArrayOutput() OptionGroupOptionOptionSettingArrayOutput

func (OptionGroupOptionOptionSettingArray) ToOptionGroupOptionOptionSettingArrayOutputWithContext

func (i OptionGroupOptionOptionSettingArray) ToOptionGroupOptionOptionSettingArrayOutputWithContext(ctx context.Context) OptionGroupOptionOptionSettingArrayOutput

type OptionGroupOptionOptionSettingArrayInput

type OptionGroupOptionOptionSettingArrayInput interface {
	pulumi.Input

	ToOptionGroupOptionOptionSettingArrayOutput() OptionGroupOptionOptionSettingArrayOutput
	ToOptionGroupOptionOptionSettingArrayOutputWithContext(context.Context) OptionGroupOptionOptionSettingArrayOutput
}

OptionGroupOptionOptionSettingArrayInput is an input type that accepts OptionGroupOptionOptionSettingArray and OptionGroupOptionOptionSettingArrayOutput values. You can construct a concrete instance of `OptionGroupOptionOptionSettingArrayInput` via:

OptionGroupOptionOptionSettingArray{ OptionGroupOptionOptionSettingArgs{...} }

type OptionGroupOptionOptionSettingArrayOutput

type OptionGroupOptionOptionSettingArrayOutput struct{ *pulumi.OutputState }

func (OptionGroupOptionOptionSettingArrayOutput) ElementType

func (OptionGroupOptionOptionSettingArrayOutput) Index

func (OptionGroupOptionOptionSettingArrayOutput) ToOptionGroupOptionOptionSettingArrayOutput

func (o OptionGroupOptionOptionSettingArrayOutput) ToOptionGroupOptionOptionSettingArrayOutput() OptionGroupOptionOptionSettingArrayOutput

func (OptionGroupOptionOptionSettingArrayOutput) ToOptionGroupOptionOptionSettingArrayOutputWithContext

func (o OptionGroupOptionOptionSettingArrayOutput) ToOptionGroupOptionOptionSettingArrayOutputWithContext(ctx context.Context) OptionGroupOptionOptionSettingArrayOutput

type OptionGroupOptionOptionSettingInput

type OptionGroupOptionOptionSettingInput interface {
	pulumi.Input

	ToOptionGroupOptionOptionSettingOutput() OptionGroupOptionOptionSettingOutput
	ToOptionGroupOptionOptionSettingOutputWithContext(context.Context) OptionGroupOptionOptionSettingOutput
}

OptionGroupOptionOptionSettingInput is an input type that accepts OptionGroupOptionOptionSettingArgs and OptionGroupOptionOptionSettingOutput values. You can construct a concrete instance of `OptionGroupOptionOptionSettingInput` via:

OptionGroupOptionOptionSettingArgs{...}

type OptionGroupOptionOptionSettingOutput

type OptionGroupOptionOptionSettingOutput struct{ *pulumi.OutputState }

func (OptionGroupOptionOptionSettingOutput) ElementType

func (OptionGroupOptionOptionSettingOutput) Name

The Name of the setting.

func (OptionGroupOptionOptionSettingOutput) ToOptionGroupOptionOptionSettingOutput

func (o OptionGroupOptionOptionSettingOutput) ToOptionGroupOptionOptionSettingOutput() OptionGroupOptionOptionSettingOutput

func (OptionGroupOptionOptionSettingOutput) ToOptionGroupOptionOptionSettingOutputWithContext

func (o OptionGroupOptionOptionSettingOutput) ToOptionGroupOptionOptionSettingOutputWithContext(ctx context.Context) OptionGroupOptionOptionSettingOutput

func (OptionGroupOptionOptionSettingOutput) Value

The Value of the setting.

type OptionGroupOptionOutput

type OptionGroupOptionOutput struct{ *pulumi.OutputState }

func (OptionGroupOptionOutput) DbSecurityGroupMemberships

func (o OptionGroupOptionOutput) DbSecurityGroupMemberships() pulumi.StringArrayOutput

A list of DB Security Groups for which the option is enabled.

func (OptionGroupOptionOutput) ElementType

func (OptionGroupOptionOutput) ElementType() reflect.Type

func (OptionGroupOptionOutput) OptionName

The Name of the Option (e.g. MEMCACHED).

func (OptionGroupOptionOutput) OptionSettings

A list of option settings to apply.

func (OptionGroupOptionOutput) Port

The Port number when connecting to the Option (e.g. 11211).

func (OptionGroupOptionOutput) ToOptionGroupOptionOutput

func (o OptionGroupOptionOutput) ToOptionGroupOptionOutput() OptionGroupOptionOutput

func (OptionGroupOptionOutput) ToOptionGroupOptionOutputWithContext

func (o OptionGroupOptionOutput) ToOptionGroupOptionOutputWithContext(ctx context.Context) OptionGroupOptionOutput

func (OptionGroupOptionOutput) Version

The version of the option (e.g. 13.1.0.0).

func (OptionGroupOptionOutput) VpcSecurityGroupMemberships

func (o OptionGroupOptionOutput) VpcSecurityGroupMemberships() pulumi.StringArrayOutput

A list of VPC Security Groups for which the option is enabled.

type OptionGroupOutput added in v3.13.0

type OptionGroupOutput struct {
	*pulumi.OutputState
}

func (OptionGroupOutput) ElementType added in v3.13.0

func (OptionGroupOutput) ElementType() reflect.Type

func (OptionGroupOutput) ToOptionGroupOutput added in v3.13.0

func (o OptionGroupOutput) ToOptionGroupOutput() OptionGroupOutput

func (OptionGroupOutput) ToOptionGroupOutputWithContext added in v3.13.0

func (o OptionGroupOutput) ToOptionGroupOutputWithContext(ctx context.Context) OptionGroupOutput

func (OptionGroupOutput) ToOptionGroupPtrOutput added in v3.25.0

func (o OptionGroupOutput) ToOptionGroupPtrOutput() OptionGroupPtrOutput

func (OptionGroupOutput) ToOptionGroupPtrOutputWithContext added in v3.25.0

func (o OptionGroupOutput) ToOptionGroupPtrOutputWithContext(ctx context.Context) OptionGroupPtrOutput

type OptionGroupPtrInput added in v3.25.0

type OptionGroupPtrInput interface {
	pulumi.Input

	ToOptionGroupPtrOutput() OptionGroupPtrOutput
	ToOptionGroupPtrOutputWithContext(ctx context.Context) OptionGroupPtrOutput
}

type OptionGroupPtrOutput added in v3.25.0

type OptionGroupPtrOutput struct {
	*pulumi.OutputState
}

func (OptionGroupPtrOutput) ElementType added in v3.25.0

func (OptionGroupPtrOutput) ElementType() reflect.Type

func (OptionGroupPtrOutput) ToOptionGroupPtrOutput added in v3.25.0

func (o OptionGroupPtrOutput) ToOptionGroupPtrOutput() OptionGroupPtrOutput

func (OptionGroupPtrOutput) ToOptionGroupPtrOutputWithContext added in v3.25.0

func (o OptionGroupPtrOutput) ToOptionGroupPtrOutputWithContext(ctx context.Context) OptionGroupPtrOutput

type OptionGroupState

type OptionGroupState struct {
	// The ARN of the db option group.
	Arn pulumi.StringPtrInput
	// Specifies the name of the engine that this option group should be associated with.
	EngineName pulumi.StringPtrInput
	// Specifies the major version of the engine that this option group should be associated with.
	MajorEngineVersion pulumi.StringPtrInput
	// The Name of the setting.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`. Must be lowercase, to match as it is stored in AWS.
	NamePrefix pulumi.StringPtrInput
	// The description of the option group. Defaults to "Managed by Pulumi".
	OptionGroupDescription pulumi.StringPtrInput
	// A list of Options to apply.
	Options OptionGroupOptionArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (OptionGroupState) ElementType

func (OptionGroupState) ElementType() reflect.Type

type ParameterGroup

type ParameterGroup struct {
	pulumi.CustomResourceState

	// The ARN of the db parameter group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the DB parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringOutput `pulumi:"description"`
	// The family of the DB parameter group.
	Family pulumi.StringOutput `pulumi:"family"`
	// The name of the DB 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 DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) after initial creation of the group.
	Parameters ParameterGroupParameterArrayOutput `pulumi:"parameters"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an RDS DB parameter group resource .Documentation of the available parameters for various RDS engines can be found at:

* [Aurora MySQL Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Reference.html) * [Aurora PostgreSQL Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraPostgreSQL.Reference.html) * [MariaDB Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MariaDB.Parameters.html) * [Oracle Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ModifyInstance.Oracle.html#USER_ModifyInstance.Oracle.sqlnet) * [PostgreSQL Parameters](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.PostgreSQL.CommonDBATasks.html#Appendix.PostgreSQL.CommonDBATasks.Parameters)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewParameterGroup(ctx, "_default", &rds.ParameterGroupArgs{
			Family: pulumi.String("mysql5.6"),
			Parameters: rds.ParameterGroupParameterArray{
				&rds.ParameterGroupParameterArgs{
					Name:  pulumi.String("character_set_server"),
					Value: pulumi.String("utf8"),
				},
				&rds.ParameterGroupParameterArgs{
					Name:  pulumi.String("character_set_client"),
					Value: pulumi.String("utf8"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DB Parameter groups can be imported using the `name`, e.g.

```sh

$ pulumi import aws:rds/parameterGroup:ParameterGroup rds_pg rds-pg

```

func GetParameterGroup

func GetParameterGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ParameterGroupState, opts ...pulumi.ResourceOption) (*ParameterGroup, error)

GetParameterGroup gets an existing ParameterGroup 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 NewParameterGroup

func NewParameterGroup(ctx *pulumi.Context,
	name string, args *ParameterGroupArgs, opts ...pulumi.ResourceOption) (*ParameterGroup, error)

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

func (*ParameterGroup) ElementType added in v3.13.0

func (*ParameterGroup) ElementType() reflect.Type

func (*ParameterGroup) ToParameterGroupOutput added in v3.13.0

func (i *ParameterGroup) ToParameterGroupOutput() ParameterGroupOutput

func (*ParameterGroup) ToParameterGroupOutputWithContext added in v3.13.0

func (i *ParameterGroup) ToParameterGroupOutputWithContext(ctx context.Context) ParameterGroupOutput

func (*ParameterGroup) ToParameterGroupPtrOutput added in v3.25.0

func (i *ParameterGroup) ToParameterGroupPtrOutput() ParameterGroupPtrOutput

func (*ParameterGroup) ToParameterGroupPtrOutputWithContext added in v3.25.0

func (i *ParameterGroup) ToParameterGroupPtrOutputWithContext(ctx context.Context) ParameterGroupPtrOutput

type ParameterGroupArgs

type ParameterGroupArgs struct {
	// The description of the DB parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DB parameter group.
	Family pulumi.StringInput
	// The name of the DB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) after initial creation of the group.
	Parameters ParameterGroupParameterArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ParameterGroup resource.

func (ParameterGroupArgs) ElementType

func (ParameterGroupArgs) ElementType() reflect.Type

type ParameterGroupArray added in v3.25.0

type ParameterGroupArray []ParameterGroupInput

func (ParameterGroupArray) ElementType added in v3.25.0

func (ParameterGroupArray) ElementType() reflect.Type

func (ParameterGroupArray) ToParameterGroupArrayOutput added in v3.25.0

func (i ParameterGroupArray) ToParameterGroupArrayOutput() ParameterGroupArrayOutput

func (ParameterGroupArray) ToParameterGroupArrayOutputWithContext added in v3.25.0

func (i ParameterGroupArray) ToParameterGroupArrayOutputWithContext(ctx context.Context) ParameterGroupArrayOutput

type ParameterGroupArrayInput added in v3.25.0

type ParameterGroupArrayInput interface {
	pulumi.Input

	ToParameterGroupArrayOutput() ParameterGroupArrayOutput
	ToParameterGroupArrayOutputWithContext(context.Context) ParameterGroupArrayOutput
}

ParameterGroupArrayInput is an input type that accepts ParameterGroupArray and ParameterGroupArrayOutput values. You can construct a concrete instance of `ParameterGroupArrayInput` via:

ParameterGroupArray{ ParameterGroupArgs{...} }

type ParameterGroupArrayOutput added in v3.25.0

type ParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (ParameterGroupArrayOutput) ElementType added in v3.25.0

func (ParameterGroupArrayOutput) ElementType() reflect.Type

func (ParameterGroupArrayOutput) Index added in v3.25.0

func (ParameterGroupArrayOutput) ToParameterGroupArrayOutput added in v3.25.0

func (o ParameterGroupArrayOutput) ToParameterGroupArrayOutput() ParameterGroupArrayOutput

func (ParameterGroupArrayOutput) ToParameterGroupArrayOutputWithContext added in v3.25.0

func (o ParameterGroupArrayOutput) ToParameterGroupArrayOutputWithContext(ctx context.Context) ParameterGroupArrayOutput

type ParameterGroupInput added in v3.13.0

type ParameterGroupInput interface {
	pulumi.Input

	ToParameterGroupOutput() ParameterGroupOutput
	ToParameterGroupOutputWithContext(ctx context.Context) ParameterGroupOutput
}

type ParameterGroupMap added in v3.25.0

type ParameterGroupMap map[string]ParameterGroupInput

func (ParameterGroupMap) ElementType added in v3.25.0

func (ParameterGroupMap) ElementType() reflect.Type

func (ParameterGroupMap) ToParameterGroupMapOutput added in v3.25.0

func (i ParameterGroupMap) ToParameterGroupMapOutput() ParameterGroupMapOutput

func (ParameterGroupMap) ToParameterGroupMapOutputWithContext added in v3.25.0

func (i ParameterGroupMap) ToParameterGroupMapOutputWithContext(ctx context.Context) ParameterGroupMapOutput

type ParameterGroupMapInput added in v3.25.0

type ParameterGroupMapInput interface {
	pulumi.Input

	ToParameterGroupMapOutput() ParameterGroupMapOutput
	ToParameterGroupMapOutputWithContext(context.Context) ParameterGroupMapOutput
}

ParameterGroupMapInput is an input type that accepts ParameterGroupMap and ParameterGroupMapOutput values. You can construct a concrete instance of `ParameterGroupMapInput` via:

ParameterGroupMap{ "key": ParameterGroupArgs{...} }

type ParameterGroupMapOutput added in v3.25.0

type ParameterGroupMapOutput struct{ *pulumi.OutputState }

func (ParameterGroupMapOutput) ElementType added in v3.25.0

func (ParameterGroupMapOutput) ElementType() reflect.Type

func (ParameterGroupMapOutput) MapIndex added in v3.25.0

func (ParameterGroupMapOutput) ToParameterGroupMapOutput added in v3.25.0

func (o ParameterGroupMapOutput) ToParameterGroupMapOutput() ParameterGroupMapOutput

func (ParameterGroupMapOutput) ToParameterGroupMapOutputWithContext added in v3.25.0

func (o ParameterGroupMapOutput) ToParameterGroupMapOutputWithContext(ctx context.Context) ParameterGroupMapOutput

type ParameterGroupOutput added in v3.13.0

type ParameterGroupOutput struct {
	*pulumi.OutputState
}

func (ParameterGroupOutput) ElementType added in v3.13.0

func (ParameterGroupOutput) ElementType() reflect.Type

func (ParameterGroupOutput) ToParameterGroupOutput added in v3.13.0

func (o ParameterGroupOutput) ToParameterGroupOutput() ParameterGroupOutput

func (ParameterGroupOutput) ToParameterGroupOutputWithContext added in v3.13.0

func (o ParameterGroupOutput) ToParameterGroupOutputWithContext(ctx context.Context) ParameterGroupOutput

func (ParameterGroupOutput) ToParameterGroupPtrOutput added in v3.25.0

func (o ParameterGroupOutput) ToParameterGroupPtrOutput() ParameterGroupPtrOutput

func (ParameterGroupOutput) ToParameterGroupPtrOutputWithContext added in v3.25.0

func (o ParameterGroupOutput) ToParameterGroupPtrOutputWithContext(ctx context.Context) ParameterGroupPtrOutput

type ParameterGroupParameter

type ParameterGroupParameter struct {
	// "immediate" (default), or "pending-reboot". Some
	// engines can't apply some parameters without a reboot, and you will need to
	// specify "pending-reboot" here.
	ApplyMethod *string `pulumi:"applyMethod"`
	// The name of the DB parameter.
	Name string `pulumi:"name"`
	// The value of the DB parameter.
	Value string `pulumi:"value"`
}

type ParameterGroupParameterArgs

type ParameterGroupParameterArgs struct {
	// "immediate" (default), or "pending-reboot". Some
	// engines can't apply some parameters without a reboot, and you will need to
	// specify "pending-reboot" here.
	ApplyMethod pulumi.StringPtrInput `pulumi:"applyMethod"`
	// The name of the DB parameter.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the DB parameter.
	Value pulumi.StringInput `pulumi:"value"`
}

func (ParameterGroupParameterArgs) ElementType

func (ParameterGroupParameterArgs) ToParameterGroupParameterOutput

func (i ParameterGroupParameterArgs) ToParameterGroupParameterOutput() ParameterGroupParameterOutput

func (ParameterGroupParameterArgs) ToParameterGroupParameterOutputWithContext

func (i ParameterGroupParameterArgs) ToParameterGroupParameterOutputWithContext(ctx context.Context) ParameterGroupParameterOutput

type ParameterGroupParameterArray

type ParameterGroupParameterArray []ParameterGroupParameterInput

func (ParameterGroupParameterArray) ElementType

func (ParameterGroupParameterArray) ToParameterGroupParameterArrayOutput

func (i ParameterGroupParameterArray) ToParameterGroupParameterArrayOutput() ParameterGroupParameterArrayOutput

func (ParameterGroupParameterArray) ToParameterGroupParameterArrayOutputWithContext

func (i ParameterGroupParameterArray) ToParameterGroupParameterArrayOutputWithContext(ctx context.Context) ParameterGroupParameterArrayOutput

type ParameterGroupParameterArrayInput

type ParameterGroupParameterArrayInput interface {
	pulumi.Input

	ToParameterGroupParameterArrayOutput() ParameterGroupParameterArrayOutput
	ToParameterGroupParameterArrayOutputWithContext(context.Context) ParameterGroupParameterArrayOutput
}

ParameterGroupParameterArrayInput is an input type that accepts ParameterGroupParameterArray and ParameterGroupParameterArrayOutput values. You can construct a concrete instance of `ParameterGroupParameterArrayInput` via:

ParameterGroupParameterArray{ ParameterGroupParameterArgs{...} }

type ParameterGroupParameterArrayOutput

type ParameterGroupParameterArrayOutput struct{ *pulumi.OutputState }

func (ParameterGroupParameterArrayOutput) ElementType

func (ParameterGroupParameterArrayOutput) Index

func (ParameterGroupParameterArrayOutput) ToParameterGroupParameterArrayOutput

func (o ParameterGroupParameterArrayOutput) ToParameterGroupParameterArrayOutput() ParameterGroupParameterArrayOutput

func (ParameterGroupParameterArrayOutput) ToParameterGroupParameterArrayOutputWithContext

func (o ParameterGroupParameterArrayOutput) ToParameterGroupParameterArrayOutputWithContext(ctx context.Context) ParameterGroupParameterArrayOutput

type ParameterGroupParameterInput

type ParameterGroupParameterInput interface {
	pulumi.Input

	ToParameterGroupParameterOutput() ParameterGroupParameterOutput
	ToParameterGroupParameterOutputWithContext(context.Context) ParameterGroupParameterOutput
}

ParameterGroupParameterInput is an input type that accepts ParameterGroupParameterArgs and ParameterGroupParameterOutput values. You can construct a concrete instance of `ParameterGroupParameterInput` via:

ParameterGroupParameterArgs{...}

type ParameterGroupParameterOutput

type ParameterGroupParameterOutput struct{ *pulumi.OutputState }

func (ParameterGroupParameterOutput) ApplyMethod

"immediate" (default), or "pending-reboot". Some engines can't apply some parameters without a reboot, and you will need to specify "pending-reboot" here.

func (ParameterGroupParameterOutput) ElementType

func (ParameterGroupParameterOutput) Name

The name of the DB parameter.

func (ParameterGroupParameterOutput) ToParameterGroupParameterOutput

func (o ParameterGroupParameterOutput) ToParameterGroupParameterOutput() ParameterGroupParameterOutput

func (ParameterGroupParameterOutput) ToParameterGroupParameterOutputWithContext

func (o ParameterGroupParameterOutput) ToParameterGroupParameterOutputWithContext(ctx context.Context) ParameterGroupParameterOutput

func (ParameterGroupParameterOutput) Value

The value of the DB parameter.

type ParameterGroupPtrInput added in v3.25.0

type ParameterGroupPtrInput interface {
	pulumi.Input

	ToParameterGroupPtrOutput() ParameterGroupPtrOutput
	ToParameterGroupPtrOutputWithContext(ctx context.Context) ParameterGroupPtrOutput
}

type ParameterGroupPtrOutput added in v3.25.0

type ParameterGroupPtrOutput struct {
	*pulumi.OutputState
}

func (ParameterGroupPtrOutput) ElementType added in v3.25.0

func (ParameterGroupPtrOutput) ElementType() reflect.Type

func (ParameterGroupPtrOutput) ToParameterGroupPtrOutput added in v3.25.0

func (o ParameterGroupPtrOutput) ToParameterGroupPtrOutput() ParameterGroupPtrOutput

func (ParameterGroupPtrOutput) ToParameterGroupPtrOutputWithContext added in v3.25.0

func (o ParameterGroupPtrOutput) ToParameterGroupPtrOutputWithContext(ctx context.Context) ParameterGroupPtrOutput

type ParameterGroupState

type ParameterGroupState struct {
	// The ARN of the db parameter group.
	Arn pulumi.StringPtrInput
	// The description of the DB parameter group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The family of the DB parameter group.
	Family pulumi.StringPtrInput
	// The name of the DB parameter.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// A list of DB parameters to apply. Note that parameters may differ from a family to an other. Full list of all parameters can be discovered via [`aws rds describe-db-parameters`](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) after initial creation of the group.
	Parameters ParameterGroupParameterArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (ParameterGroupState) ElementType

func (ParameterGroupState) ElementType() reflect.Type

type Proxy added in v3.3.0

type Proxy struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) for the proxy.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Configuration block(s) with authorization mechanisms to connect to the associated instances or clusters. Described below.
	Auths ProxyAuthArrayOutput `pulumi:"auths"`
	// Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.
	DebugLogging pulumi.BoolPtrOutput `pulumi:"debugLogging"`
	// The endpoint that you can use to connect to the proxy. You include the endpoint value in the connection string for a database client application.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. The engine family applies to MySQL and PostgreSQL for both RDS and Aurora. Valid values are `MYSQL` and `POSTGRESQL`.
	EngineFamily pulumi.StringOutput `pulumi:"engineFamily"`
	// The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.
	IdleClientTimeout pulumi.IntOutput `pulumi:"idleClientTimeout"`
	// The identifier for the proxy. This name must be unique for all proxies owned by your AWS account in the specified AWS Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can't end with a hyphen or contain two consecutive hyphens.
	Name pulumi.StringOutput `pulumi:"name"`
	// A Boolean parameter that specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.
	RequireTls pulumi.BoolPtrOutput `pulumi:"requireTls"`
	// The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in AWS Secrets Manager.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// One or more VPC security group IDs to associate with the new proxy.
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
	// One or more VPC subnet IDs to associate with the new proxy.
	VpcSubnetIds pulumi.StringArrayOutput `pulumi:"vpcSubnetIds"`
}

Provides an RDS DB proxy resource. For additional information, see the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-proxy.html).

## Import

DB proxies can be imported using the `name`, e.g.

```sh

$ pulumi import aws:rds/proxy:Proxy example example

```

func GetProxy added in v3.3.0

func GetProxy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProxyState, opts ...pulumi.ResourceOption) (*Proxy, error)

GetProxy gets an existing Proxy 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 NewProxy added in v3.3.0

func NewProxy(ctx *pulumi.Context,
	name string, args *ProxyArgs, opts ...pulumi.ResourceOption) (*Proxy, error)

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

func (*Proxy) ElementType added in v3.13.0

func (*Proxy) ElementType() reflect.Type

func (*Proxy) ToProxyOutput added in v3.13.0

func (i *Proxy) ToProxyOutput() ProxyOutput

func (*Proxy) ToProxyOutputWithContext added in v3.13.0

func (i *Proxy) ToProxyOutputWithContext(ctx context.Context) ProxyOutput

func (*Proxy) ToProxyPtrOutput added in v3.25.0

func (i *Proxy) ToProxyPtrOutput() ProxyPtrOutput

func (*Proxy) ToProxyPtrOutputWithContext added in v3.25.0

func (i *Proxy) ToProxyPtrOutputWithContext(ctx context.Context) ProxyPtrOutput

type ProxyArgs added in v3.3.0

type ProxyArgs struct {
	// Configuration block(s) with authorization mechanisms to connect to the associated instances or clusters. Described below.
	Auths ProxyAuthArrayInput
	// Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.
	DebugLogging pulumi.BoolPtrInput
	// The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. The engine family applies to MySQL and PostgreSQL for both RDS and Aurora. Valid values are `MYSQL` and `POSTGRESQL`.
	EngineFamily pulumi.StringInput
	// The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.
	IdleClientTimeout pulumi.IntPtrInput
	// The identifier for the proxy. This name must be unique for all proxies owned by your AWS account in the specified AWS Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can't end with a hyphen or contain two consecutive hyphens.
	Name pulumi.StringPtrInput
	// A Boolean parameter that specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.
	RequireTls pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in AWS Secrets Manager.
	RoleArn pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// One or more VPC security group IDs to associate with the new proxy.
	VpcSecurityGroupIds pulumi.StringArrayInput
	// One or more VPC subnet IDs to associate with the new proxy.
	VpcSubnetIds pulumi.StringArrayInput
}

The set of arguments for constructing a Proxy resource.

func (ProxyArgs) ElementType added in v3.3.0

func (ProxyArgs) ElementType() reflect.Type

type ProxyArray added in v3.25.0

type ProxyArray []ProxyInput

func (ProxyArray) ElementType added in v3.25.0

func (ProxyArray) ElementType() reflect.Type

func (ProxyArray) ToProxyArrayOutput added in v3.25.0

func (i ProxyArray) ToProxyArrayOutput() ProxyArrayOutput

func (ProxyArray) ToProxyArrayOutputWithContext added in v3.25.0

func (i ProxyArray) ToProxyArrayOutputWithContext(ctx context.Context) ProxyArrayOutput

type ProxyArrayInput added in v3.25.0

type ProxyArrayInput interface {
	pulumi.Input

	ToProxyArrayOutput() ProxyArrayOutput
	ToProxyArrayOutputWithContext(context.Context) ProxyArrayOutput
}

ProxyArrayInput is an input type that accepts ProxyArray and ProxyArrayOutput values. You can construct a concrete instance of `ProxyArrayInput` via:

ProxyArray{ ProxyArgs{...} }

type ProxyArrayOutput added in v3.25.0

type ProxyArrayOutput struct{ *pulumi.OutputState }

func (ProxyArrayOutput) ElementType added in v3.25.0

func (ProxyArrayOutput) ElementType() reflect.Type

func (ProxyArrayOutput) Index added in v3.25.0

func (ProxyArrayOutput) ToProxyArrayOutput added in v3.25.0

func (o ProxyArrayOutput) ToProxyArrayOutput() ProxyArrayOutput

func (ProxyArrayOutput) ToProxyArrayOutputWithContext added in v3.25.0

func (o ProxyArrayOutput) ToProxyArrayOutputWithContext(ctx context.Context) ProxyArrayOutput

type ProxyAuth added in v3.3.0

type ProxyAuth struct {
	// The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`.
	AuthScheme *string `pulumi:"authScheme"`
	// A user-specified description about the authentication used by a proxy to log in as a specific database user.
	Description *string `pulumi:"description"`
	// Whether to require or disallow AWS Identity and Access Management (IAM) authentication for connections to the proxy. One of `DISABLED`, `REQUIRED`.
	IamAuth *string `pulumi:"iamAuth"`
	// The Amazon Resource Name (ARN) representing the secret that the proxy uses to authenticate to the RDS DB instance or Aurora DB cluster. These secrets are stored within Amazon Secrets Manager.
	SecretArn *string `pulumi:"secretArn"`
}

type ProxyAuthArgs added in v3.3.0

type ProxyAuthArgs struct {
	// The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`.
	AuthScheme pulumi.StringPtrInput `pulumi:"authScheme"`
	// A user-specified description about the authentication used by a proxy to log in as a specific database user.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Whether to require or disallow AWS Identity and Access Management (IAM) authentication for connections to the proxy. One of `DISABLED`, `REQUIRED`.
	IamAuth pulumi.StringPtrInput `pulumi:"iamAuth"`
	// The Amazon Resource Name (ARN) representing the secret that the proxy uses to authenticate to the RDS DB instance or Aurora DB cluster. These secrets are stored within Amazon Secrets Manager.
	SecretArn pulumi.StringPtrInput `pulumi:"secretArn"`
}

func (ProxyAuthArgs) ElementType added in v3.3.0

func (ProxyAuthArgs) ElementType() reflect.Type

func (ProxyAuthArgs) ToProxyAuthOutput added in v3.3.0

func (i ProxyAuthArgs) ToProxyAuthOutput() ProxyAuthOutput

func (ProxyAuthArgs) ToProxyAuthOutputWithContext added in v3.3.0

func (i ProxyAuthArgs) ToProxyAuthOutputWithContext(ctx context.Context) ProxyAuthOutput

type ProxyAuthArray added in v3.3.0

type ProxyAuthArray []ProxyAuthInput

func (ProxyAuthArray) ElementType added in v3.3.0

func (ProxyAuthArray) ElementType() reflect.Type

func (ProxyAuthArray) ToProxyAuthArrayOutput added in v3.3.0

func (i ProxyAuthArray) ToProxyAuthArrayOutput() ProxyAuthArrayOutput

func (ProxyAuthArray) ToProxyAuthArrayOutputWithContext added in v3.3.0

func (i ProxyAuthArray) ToProxyAuthArrayOutputWithContext(ctx context.Context) ProxyAuthArrayOutput

type ProxyAuthArrayInput added in v3.3.0

type ProxyAuthArrayInput interface {
	pulumi.Input

	ToProxyAuthArrayOutput() ProxyAuthArrayOutput
	ToProxyAuthArrayOutputWithContext(context.Context) ProxyAuthArrayOutput
}

ProxyAuthArrayInput is an input type that accepts ProxyAuthArray and ProxyAuthArrayOutput values. You can construct a concrete instance of `ProxyAuthArrayInput` via:

ProxyAuthArray{ ProxyAuthArgs{...} }

type ProxyAuthArrayOutput added in v3.3.0

type ProxyAuthArrayOutput struct{ *pulumi.OutputState }

func (ProxyAuthArrayOutput) ElementType added in v3.3.0

func (ProxyAuthArrayOutput) ElementType() reflect.Type

func (ProxyAuthArrayOutput) Index added in v3.3.0

func (ProxyAuthArrayOutput) ToProxyAuthArrayOutput added in v3.3.0

func (o ProxyAuthArrayOutput) ToProxyAuthArrayOutput() ProxyAuthArrayOutput

func (ProxyAuthArrayOutput) ToProxyAuthArrayOutputWithContext added in v3.3.0

func (o ProxyAuthArrayOutput) ToProxyAuthArrayOutputWithContext(ctx context.Context) ProxyAuthArrayOutput

type ProxyAuthInput added in v3.3.0

type ProxyAuthInput interface {
	pulumi.Input

	ToProxyAuthOutput() ProxyAuthOutput
	ToProxyAuthOutputWithContext(context.Context) ProxyAuthOutput
}

ProxyAuthInput is an input type that accepts ProxyAuthArgs and ProxyAuthOutput values. You can construct a concrete instance of `ProxyAuthInput` via:

ProxyAuthArgs{...}

type ProxyAuthOutput added in v3.3.0

type ProxyAuthOutput struct{ *pulumi.OutputState }

func (ProxyAuthOutput) AuthScheme added in v3.3.0

func (o ProxyAuthOutput) AuthScheme() pulumi.StringPtrOutput

The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`.

func (ProxyAuthOutput) Description added in v3.3.0

func (o ProxyAuthOutput) Description() pulumi.StringPtrOutput

A user-specified description about the authentication used by a proxy to log in as a specific database user.

func (ProxyAuthOutput) ElementType added in v3.3.0

func (ProxyAuthOutput) ElementType() reflect.Type

func (ProxyAuthOutput) IamAuth added in v3.3.0

Whether to require or disallow AWS Identity and Access Management (IAM) authentication for connections to the proxy. One of `DISABLED`, `REQUIRED`.

func (ProxyAuthOutput) SecretArn added in v3.3.0

func (o ProxyAuthOutput) SecretArn() pulumi.StringPtrOutput

The Amazon Resource Name (ARN) representing the secret that the proxy uses to authenticate to the RDS DB instance or Aurora DB cluster. These secrets are stored within Amazon Secrets Manager.

func (ProxyAuthOutput) ToProxyAuthOutput added in v3.3.0

func (o ProxyAuthOutput) ToProxyAuthOutput() ProxyAuthOutput

func (ProxyAuthOutput) ToProxyAuthOutputWithContext added in v3.3.0

func (o ProxyAuthOutput) ToProxyAuthOutputWithContext(ctx context.Context) ProxyAuthOutput

type ProxyDefaultTargetGroup added in v3.3.0

type ProxyDefaultTargetGroup struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) representing the target group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The settings that determine the size and behavior of the connection pool for the target group.
	ConnectionPoolConfig ProxyDefaultTargetGroupConnectionPoolConfigOutput `pulumi:"connectionPoolConfig"`
	// Name of the RDS DB Proxy.
	DbProxyName pulumi.StringOutput `pulumi:"dbProxyName"`
	// The name of the default target group.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a resource to manage an RDS DB proxy default target group resource.

The `rds.ProxyDefaultTargetGroup` behaves differently from normal resources, in that the provider does not _create_ or _destroy_ this resource, since it implicitly exists as part of an RDS DB Proxy. On the provider resource creation it is automatically imported and on resource destruction, the provider performs no actions in RDS.

## Import

DB proxy default target groups can be imported using the `db_proxy_name`, e.g.

```sh

$ pulumi import aws:rds/proxyDefaultTargetGroup:ProxyDefaultTargetGroup example example

```

func GetProxyDefaultTargetGroup added in v3.3.0

func GetProxyDefaultTargetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProxyDefaultTargetGroupState, opts ...pulumi.ResourceOption) (*ProxyDefaultTargetGroup, error)

GetProxyDefaultTargetGroup gets an existing ProxyDefaultTargetGroup 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 NewProxyDefaultTargetGroup added in v3.3.0

func NewProxyDefaultTargetGroup(ctx *pulumi.Context,
	name string, args *ProxyDefaultTargetGroupArgs, opts ...pulumi.ResourceOption) (*ProxyDefaultTargetGroup, error)

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

func (*ProxyDefaultTargetGroup) ElementType added in v3.13.0

func (*ProxyDefaultTargetGroup) ElementType() reflect.Type

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutput added in v3.13.0

func (i *ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutput() ProxyDefaultTargetGroupOutput

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutputWithContext added in v3.13.0

func (i *ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupOutput

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupPtrOutput added in v3.25.0

func (i *ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupPtrOutput() ProxyDefaultTargetGroupPtrOutput

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupPtrOutputWithContext added in v3.25.0

func (i *ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupPtrOutput

type ProxyDefaultTargetGroupArgs added in v3.3.0

type ProxyDefaultTargetGroupArgs struct {
	// The settings that determine the size and behavior of the connection pool for the target group.
	ConnectionPoolConfig ProxyDefaultTargetGroupConnectionPoolConfigPtrInput
	// Name of the RDS DB Proxy.
	DbProxyName pulumi.StringInput
}

The set of arguments for constructing a ProxyDefaultTargetGroup resource.

func (ProxyDefaultTargetGroupArgs) ElementType added in v3.3.0

type ProxyDefaultTargetGroupArray added in v3.25.0

type ProxyDefaultTargetGroupArray []ProxyDefaultTargetGroupInput

func (ProxyDefaultTargetGroupArray) ElementType added in v3.25.0

func (ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutput added in v3.25.0

func (i ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutput() ProxyDefaultTargetGroupArrayOutput

func (ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutputWithContext added in v3.25.0

func (i ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupArrayOutput

type ProxyDefaultTargetGroupArrayInput added in v3.25.0

type ProxyDefaultTargetGroupArrayInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupArrayOutput() ProxyDefaultTargetGroupArrayOutput
	ToProxyDefaultTargetGroupArrayOutputWithContext(context.Context) ProxyDefaultTargetGroupArrayOutput
}

ProxyDefaultTargetGroupArrayInput is an input type that accepts ProxyDefaultTargetGroupArray and ProxyDefaultTargetGroupArrayOutput values. You can construct a concrete instance of `ProxyDefaultTargetGroupArrayInput` via:

ProxyDefaultTargetGroupArray{ ProxyDefaultTargetGroupArgs{...} }

type ProxyDefaultTargetGroupArrayOutput added in v3.25.0

type ProxyDefaultTargetGroupArrayOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupArrayOutput) ElementType added in v3.25.0

func (ProxyDefaultTargetGroupArrayOutput) Index added in v3.25.0

func (ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutput added in v3.25.0

func (o ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutput() ProxyDefaultTargetGroupArrayOutput

func (ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutputWithContext added in v3.25.0

func (o ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupArrayOutput

type ProxyDefaultTargetGroupConnectionPoolConfig added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfig struct {
	// The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.
	ConnectionBorrowTimeout *int `pulumi:"connectionBorrowTimeout"`
	// One or more SQL statements for the proxy to run when opening each new database connection. Typically used with `SET` statements to make sure that each connection has identical settings such as time zone and character set. This setting is empty by default. For multiple statements, use semicolons as the separator. You can also include multiple variables in a single `SET` statement, such as `SET x=1, y=2`.
	InitQuery *string `pulumi:"initQuery"`
	// The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.
	MaxConnectionsPercent *int `pulumi:"maxConnectionsPercent"`
	// Controls how actively the proxy closes idle database connections in the connection pool. A high value enables the proxy to leave a high percentage of idle connections open. A low value causes the proxy to close idle client connections and return the underlying database connections to the connection pool. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.
	MaxIdleConnectionsPercent *int `pulumi:"maxIdleConnectionsPercent"`
	// Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. Currently, the only allowed value is `EXCLUDE_VARIABLE_SETS`.
	SessionPinningFilters []string `pulumi:"sessionPinningFilters"`
}

type ProxyDefaultTargetGroupConnectionPoolConfigArgs added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfigArgs struct {
	// The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.
	ConnectionBorrowTimeout pulumi.IntPtrInput `pulumi:"connectionBorrowTimeout"`
	// One or more SQL statements for the proxy to run when opening each new database connection. Typically used with `SET` statements to make sure that each connection has identical settings such as time zone and character set. This setting is empty by default. For multiple statements, use semicolons as the separator. You can also include multiple variables in a single `SET` statement, such as `SET x=1, y=2`.
	InitQuery pulumi.StringPtrInput `pulumi:"initQuery"`
	// The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.
	MaxConnectionsPercent pulumi.IntPtrInput `pulumi:"maxConnectionsPercent"`
	// Controls how actively the proxy closes idle database connections in the connection pool. A high value enables the proxy to leave a high percentage of idle connections open. A low value causes the proxy to close idle client connections and return the underlying database connections to the connection pool. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.
	MaxIdleConnectionsPercent pulumi.IntPtrInput `pulumi:"maxIdleConnectionsPercent"`
	// Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. Currently, the only allowed value is `EXCLUDE_VARIABLE_SETS`.
	SessionPinningFilters pulumi.StringArrayInput `pulumi:"sessionPinningFilters"`
}

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ElementType added in v3.3.0

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutput added in v3.3.0

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutput() ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext added in v3.3.0

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput added in v3.3.0

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput() ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext added in v3.3.0

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

type ProxyDefaultTargetGroupConnectionPoolConfigInput added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfigInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupConnectionPoolConfigOutput() ProxyDefaultTargetGroupConnectionPoolConfigOutput
	ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext(context.Context) ProxyDefaultTargetGroupConnectionPoolConfigOutput
}

ProxyDefaultTargetGroupConnectionPoolConfigInput is an input type that accepts ProxyDefaultTargetGroupConnectionPoolConfigArgs and ProxyDefaultTargetGroupConnectionPoolConfigOutput values. You can construct a concrete instance of `ProxyDefaultTargetGroupConnectionPoolConfigInput` via:

ProxyDefaultTargetGroupConnectionPoolConfigArgs{...}

type ProxyDefaultTargetGroupConnectionPoolConfigOutput added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfigOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ConnectionBorrowTimeout added in v3.3.0

The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ElementType added in v3.3.0

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) InitQuery added in v3.3.0

One or more SQL statements for the proxy to run when opening each new database connection. Typically used with `SET` statements to make sure that each connection has identical settings such as time zone and character set. This setting is empty by default. For multiple statements, use semicolons as the separator. You can also include multiple variables in a single `SET` statement, such as `SET x=1, y=2`.

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) MaxConnectionsPercent added in v3.3.0

The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) MaxIdleConnectionsPercent added in v3.3.0

Controls how actively the proxy closes idle database connections in the connection pool. A high value enables the proxy to leave a high percentage of idle connections open. A low value causes the proxy to close idle client connections and return the underlying database connections to the connection pool. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) SessionPinningFilters added in v3.3.0

Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. Currently, the only allowed value is `EXCLUDE_VARIABLE_SETS`.

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutput added in v3.3.0

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutput() ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext added in v3.3.0

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput added in v3.3.0

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput() ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext added in v3.3.0

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

type ProxyDefaultTargetGroupConnectionPoolConfigPtrInput added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfigPtrInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput() ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput
	ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext(context.Context) ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput
}

ProxyDefaultTargetGroupConnectionPoolConfigPtrInput is an input type that accepts ProxyDefaultTargetGroupConnectionPoolConfigArgs, ProxyDefaultTargetGroupConnectionPoolConfigPtr and ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput values. You can construct a concrete instance of `ProxyDefaultTargetGroupConnectionPoolConfigPtrInput` via:

        ProxyDefaultTargetGroupConnectionPoolConfigArgs{...}

or:

        nil

type ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput added in v3.3.0

type ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ConnectionBorrowTimeout added in v3.3.0

The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) Elem added in v3.3.0

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ElementType added in v3.3.0

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) InitQuery added in v3.3.0

One or more SQL statements for the proxy to run when opening each new database connection. Typically used with `SET` statements to make sure that each connection has identical settings such as time zone and character set. This setting is empty by default. For multiple statements, use semicolons as the separator. You can also include multiple variables in a single `SET` statement, such as `SET x=1, y=2`.

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) MaxConnectionsPercent added in v3.3.0

The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) MaxIdleConnectionsPercent added in v3.3.0

Controls how actively the proxy closes idle database connections in the connection pool. A high value enables the proxy to leave a high percentage of idle connections open. A low value causes the proxy to close idle client connections and return the underlying database connections to the connection pool. For Aurora MySQL, it is expressed as a percentage of the maxConnections setting for the RDS DB instance or Aurora DB cluster used by the target group.

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) SessionPinningFilters added in v3.3.0

Each item in the list represents a class of SQL operations that normally cause all later statements in a session using a proxy to be pinned to the same underlying database connection. Including an item in the list exempts that class of SQL operations from the pinning behavior. Currently, the only allowed value is `EXCLUDE_VARIABLE_SETS`.

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput added in v3.3.0

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext added in v3.3.0

func (o ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

type ProxyDefaultTargetGroupInput added in v3.13.0

type ProxyDefaultTargetGroupInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupOutput() ProxyDefaultTargetGroupOutput
	ToProxyDefaultTargetGroupOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupOutput
}

type ProxyDefaultTargetGroupMap added in v3.25.0

type ProxyDefaultTargetGroupMap map[string]ProxyDefaultTargetGroupInput

func (ProxyDefaultTargetGroupMap) ElementType added in v3.25.0

func (ProxyDefaultTargetGroupMap) ElementType() reflect.Type

func (ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutput added in v3.25.0

func (i ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutput() ProxyDefaultTargetGroupMapOutput

func (ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutputWithContext added in v3.25.0

func (i ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupMapOutput

type ProxyDefaultTargetGroupMapInput added in v3.25.0

type ProxyDefaultTargetGroupMapInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupMapOutput() ProxyDefaultTargetGroupMapOutput
	ToProxyDefaultTargetGroupMapOutputWithContext(context.Context) ProxyDefaultTargetGroupMapOutput
}

ProxyDefaultTargetGroupMapInput is an input type that accepts ProxyDefaultTargetGroupMap and ProxyDefaultTargetGroupMapOutput values. You can construct a concrete instance of `ProxyDefaultTargetGroupMapInput` via:

ProxyDefaultTargetGroupMap{ "key": ProxyDefaultTargetGroupArgs{...} }

type ProxyDefaultTargetGroupMapOutput added in v3.25.0

type ProxyDefaultTargetGroupMapOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupMapOutput) ElementType added in v3.25.0

func (ProxyDefaultTargetGroupMapOutput) MapIndex added in v3.25.0

func (ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutput added in v3.25.0

func (o ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutput() ProxyDefaultTargetGroupMapOutput

func (ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutputWithContext added in v3.25.0

func (o ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupMapOutput

type ProxyDefaultTargetGroupOutput added in v3.13.0

type ProxyDefaultTargetGroupOutput struct {
	*pulumi.OutputState
}

func (ProxyDefaultTargetGroupOutput) ElementType added in v3.13.0

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutput added in v3.13.0

func (o ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutput() ProxyDefaultTargetGroupOutput

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutputWithContext added in v3.13.0

func (o ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupOutput

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupPtrOutput added in v3.25.0

func (o ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupPtrOutput() ProxyDefaultTargetGroupPtrOutput

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupPtrOutputWithContext added in v3.25.0

func (o ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupPtrOutput

type ProxyDefaultTargetGroupPtrInput added in v3.25.0

type ProxyDefaultTargetGroupPtrInput interface {
	pulumi.Input

	ToProxyDefaultTargetGroupPtrOutput() ProxyDefaultTargetGroupPtrOutput
	ToProxyDefaultTargetGroupPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupPtrOutput
}

type ProxyDefaultTargetGroupPtrOutput added in v3.25.0

type ProxyDefaultTargetGroupPtrOutput struct {
	*pulumi.OutputState
}

func (ProxyDefaultTargetGroupPtrOutput) ElementType added in v3.25.0

func (ProxyDefaultTargetGroupPtrOutput) ToProxyDefaultTargetGroupPtrOutput added in v3.25.0

func (o ProxyDefaultTargetGroupPtrOutput) ToProxyDefaultTargetGroupPtrOutput() ProxyDefaultTargetGroupPtrOutput

func (ProxyDefaultTargetGroupPtrOutput) ToProxyDefaultTargetGroupPtrOutputWithContext added in v3.25.0

func (o ProxyDefaultTargetGroupPtrOutput) ToProxyDefaultTargetGroupPtrOutputWithContext(ctx context.Context) ProxyDefaultTargetGroupPtrOutput

type ProxyDefaultTargetGroupState added in v3.3.0

type ProxyDefaultTargetGroupState struct {
	// The Amazon Resource Name (ARN) representing the target group.
	Arn pulumi.StringPtrInput
	// The settings that determine the size and behavior of the connection pool for the target group.
	ConnectionPoolConfig ProxyDefaultTargetGroupConnectionPoolConfigPtrInput
	// Name of the RDS DB Proxy.
	DbProxyName pulumi.StringPtrInput
	// The name of the default target group.
	Name pulumi.StringPtrInput
}

func (ProxyDefaultTargetGroupState) ElementType added in v3.3.0

type ProxyInput added in v3.13.0

type ProxyInput interface {
	pulumi.Input

	ToProxyOutput() ProxyOutput
	ToProxyOutputWithContext(ctx context.Context) ProxyOutput
}

type ProxyMap added in v3.25.0

type ProxyMap map[string]ProxyInput

func (ProxyMap) ElementType added in v3.25.0

func (ProxyMap) ElementType() reflect.Type

func (ProxyMap) ToProxyMapOutput added in v3.25.0

func (i ProxyMap) ToProxyMapOutput() ProxyMapOutput

func (ProxyMap) ToProxyMapOutputWithContext added in v3.25.0

func (i ProxyMap) ToProxyMapOutputWithContext(ctx context.Context) ProxyMapOutput

type ProxyMapInput added in v3.25.0

type ProxyMapInput interface {
	pulumi.Input

	ToProxyMapOutput() ProxyMapOutput
	ToProxyMapOutputWithContext(context.Context) ProxyMapOutput
}

ProxyMapInput is an input type that accepts ProxyMap and ProxyMapOutput values. You can construct a concrete instance of `ProxyMapInput` via:

ProxyMap{ "key": ProxyArgs{...} }

type ProxyMapOutput added in v3.25.0

type ProxyMapOutput struct{ *pulumi.OutputState }

func (ProxyMapOutput) ElementType added in v3.25.0

func (ProxyMapOutput) ElementType() reflect.Type

func (ProxyMapOutput) MapIndex added in v3.25.0

func (ProxyMapOutput) ToProxyMapOutput added in v3.25.0

func (o ProxyMapOutput) ToProxyMapOutput() ProxyMapOutput

func (ProxyMapOutput) ToProxyMapOutputWithContext added in v3.25.0

func (o ProxyMapOutput) ToProxyMapOutputWithContext(ctx context.Context) ProxyMapOutput

type ProxyOutput added in v3.13.0

type ProxyOutput struct {
	*pulumi.OutputState
}

func (ProxyOutput) ElementType added in v3.13.0

func (ProxyOutput) ElementType() reflect.Type

func (ProxyOutput) ToProxyOutput added in v3.13.0

func (o ProxyOutput) ToProxyOutput() ProxyOutput

func (ProxyOutput) ToProxyOutputWithContext added in v3.13.0

func (o ProxyOutput) ToProxyOutputWithContext(ctx context.Context) ProxyOutput

func (ProxyOutput) ToProxyPtrOutput added in v3.25.0

func (o ProxyOutput) ToProxyPtrOutput() ProxyPtrOutput

func (ProxyOutput) ToProxyPtrOutputWithContext added in v3.25.0

func (o ProxyOutput) ToProxyPtrOutputWithContext(ctx context.Context) ProxyPtrOutput

type ProxyPtrInput added in v3.25.0

type ProxyPtrInput interface {
	pulumi.Input

	ToProxyPtrOutput() ProxyPtrOutput
	ToProxyPtrOutputWithContext(ctx context.Context) ProxyPtrOutput
}

type ProxyPtrOutput added in v3.25.0

type ProxyPtrOutput struct {
	*pulumi.OutputState
}

func (ProxyPtrOutput) ElementType added in v3.25.0

func (ProxyPtrOutput) ElementType() reflect.Type

func (ProxyPtrOutput) ToProxyPtrOutput added in v3.25.0

func (o ProxyPtrOutput) ToProxyPtrOutput() ProxyPtrOutput

func (ProxyPtrOutput) ToProxyPtrOutputWithContext added in v3.25.0

func (o ProxyPtrOutput) ToProxyPtrOutputWithContext(ctx context.Context) ProxyPtrOutput

type ProxyState added in v3.3.0

type ProxyState struct {
	// The Amazon Resource Name (ARN) for the proxy.
	Arn pulumi.StringPtrInput
	// Configuration block(s) with authorization mechanisms to connect to the associated instances or clusters. Described below.
	Auths ProxyAuthArrayInput
	// Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.
	DebugLogging pulumi.BoolPtrInput
	// The endpoint that you can use to connect to the proxy. You include the endpoint value in the connection string for a database client application.
	Endpoint pulumi.StringPtrInput
	// The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. The engine family applies to MySQL and PostgreSQL for both RDS and Aurora. Valid values are `MYSQL` and `POSTGRESQL`.
	EngineFamily pulumi.StringPtrInput
	// The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.
	IdleClientTimeout pulumi.IntPtrInput
	// The identifier for the proxy. This name must be unique for all proxies owned by your AWS account in the specified AWS Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can't end with a hyphen or contain two consecutive hyphens.
	Name pulumi.StringPtrInput
	// A Boolean parameter that specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.
	RequireTls pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in AWS Secrets Manager.
	RoleArn pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// One or more VPC security group IDs to associate with the new proxy.
	VpcSecurityGroupIds pulumi.StringArrayInput
	// One or more VPC subnet IDs to associate with the new proxy.
	VpcSubnetIds pulumi.StringArrayInput
}

func (ProxyState) ElementType added in v3.3.0

func (ProxyState) ElementType() reflect.Type

type ProxyTarget added in v3.6.0

type ProxyTarget struct {
	pulumi.CustomResourceState

	// DB cluster identifier.
	DbClusterIdentifier pulumi.StringPtrOutput `pulumi:"dbClusterIdentifier"`
	// DB instance identifier.
	DbInstanceIdentifier pulumi.StringPtrOutput `pulumi:"dbInstanceIdentifier"`
	// The name of the DB proxy.
	DbProxyName pulumi.StringOutput `pulumi:"dbProxyName"`
	// Hostname for the target RDS DB Instance. Only returned for `RDS_INSTANCE` type.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// Port for the target RDS DB Instance or Aurora DB Cluster.
	Port pulumi.IntOutput `pulumi:"port"`
	// Identifier representing the DB Instance or DB Cluster target.
	RdsResourceId pulumi.StringOutput `pulumi:"rdsResourceId"`
	// Amazon Resource Name (ARN) for the DB instance or DB cluster. Currently not returned by the RDS API.
	TargetArn pulumi.StringOutput `pulumi:"targetArn"`
	// The name of the target group.
	TargetGroupName pulumi.StringOutput `pulumi:"targetGroupName"`
	// DB Cluster identifier for the DB Instance target. Not returned unless manually importing an `RDS_INSTANCE` target that is part of a DB Cluster.
	TrackedClusterId pulumi.StringOutput `pulumi:"trackedClusterId"`
	// Type of target. e.g. `RDS_INSTANCE` or `TRACKED_CLUSTER`
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides an RDS DB proxy target resource.

## Import

RDS DB Proxy Targets can be imported using the `db_proxy_name`, `target_group_name`, target type (e.g. `RDS_INSTANCE` or `TRACKED_CLUSTER`), and resource identifier separated by forward slashes (`/`), e.g. Instances

```sh

$ pulumi import aws:rds/proxyTarget:ProxyTarget example example-proxy/default/RDS_INSTANCE/example-instance

```

Provisioned Clusters

```sh

$ pulumi import aws:rds/proxyTarget:ProxyTarget example example-proxy/default/TRACKED_CLUSTER/example-cluster

```

func GetProxyTarget added in v3.6.0

func GetProxyTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProxyTargetState, opts ...pulumi.ResourceOption) (*ProxyTarget, error)

GetProxyTarget gets an existing ProxyTarget 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 NewProxyTarget added in v3.6.0

func NewProxyTarget(ctx *pulumi.Context,
	name string, args *ProxyTargetArgs, opts ...pulumi.ResourceOption) (*ProxyTarget, error)

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

func (*ProxyTarget) ElementType added in v3.13.0

func (*ProxyTarget) ElementType() reflect.Type

func (*ProxyTarget) ToProxyTargetOutput added in v3.13.0

func (i *ProxyTarget) ToProxyTargetOutput() ProxyTargetOutput

func (*ProxyTarget) ToProxyTargetOutputWithContext added in v3.13.0

func (i *ProxyTarget) ToProxyTargetOutputWithContext(ctx context.Context) ProxyTargetOutput

func (*ProxyTarget) ToProxyTargetPtrOutput added in v3.25.0

func (i *ProxyTarget) ToProxyTargetPtrOutput() ProxyTargetPtrOutput

func (*ProxyTarget) ToProxyTargetPtrOutputWithContext added in v3.25.0

func (i *ProxyTarget) ToProxyTargetPtrOutputWithContext(ctx context.Context) ProxyTargetPtrOutput

type ProxyTargetArgs added in v3.6.0

type ProxyTargetArgs struct {
	// DB cluster identifier.
	DbClusterIdentifier pulumi.StringPtrInput
	// DB instance identifier.
	DbInstanceIdentifier pulumi.StringPtrInput
	// The name of the DB proxy.
	DbProxyName pulumi.StringInput
	// The name of the target group.
	TargetGroupName pulumi.StringInput
}

The set of arguments for constructing a ProxyTarget resource.

func (ProxyTargetArgs) ElementType added in v3.6.0

func (ProxyTargetArgs) ElementType() reflect.Type

type ProxyTargetArray added in v3.25.0

type ProxyTargetArray []ProxyTargetInput

func (ProxyTargetArray) ElementType added in v3.25.0

func (ProxyTargetArray) ElementType() reflect.Type

func (ProxyTargetArray) ToProxyTargetArrayOutput added in v3.25.0

func (i ProxyTargetArray) ToProxyTargetArrayOutput() ProxyTargetArrayOutput

func (ProxyTargetArray) ToProxyTargetArrayOutputWithContext added in v3.25.0

func (i ProxyTargetArray) ToProxyTargetArrayOutputWithContext(ctx context.Context) ProxyTargetArrayOutput

type ProxyTargetArrayInput added in v3.25.0

type ProxyTargetArrayInput interface {
	pulumi.Input

	ToProxyTargetArrayOutput() ProxyTargetArrayOutput
	ToProxyTargetArrayOutputWithContext(context.Context) ProxyTargetArrayOutput
}

ProxyTargetArrayInput is an input type that accepts ProxyTargetArray and ProxyTargetArrayOutput values. You can construct a concrete instance of `ProxyTargetArrayInput` via:

ProxyTargetArray{ ProxyTargetArgs{...} }

type ProxyTargetArrayOutput added in v3.25.0

type ProxyTargetArrayOutput struct{ *pulumi.OutputState }

func (ProxyTargetArrayOutput) ElementType added in v3.25.0

func (ProxyTargetArrayOutput) ElementType() reflect.Type

func (ProxyTargetArrayOutput) Index added in v3.25.0

func (ProxyTargetArrayOutput) ToProxyTargetArrayOutput added in v3.25.0

func (o ProxyTargetArrayOutput) ToProxyTargetArrayOutput() ProxyTargetArrayOutput

func (ProxyTargetArrayOutput) ToProxyTargetArrayOutputWithContext added in v3.25.0

func (o ProxyTargetArrayOutput) ToProxyTargetArrayOutputWithContext(ctx context.Context) ProxyTargetArrayOutput

type ProxyTargetInput added in v3.13.0

type ProxyTargetInput interface {
	pulumi.Input

	ToProxyTargetOutput() ProxyTargetOutput
	ToProxyTargetOutputWithContext(ctx context.Context) ProxyTargetOutput
}

type ProxyTargetMap added in v3.25.0

type ProxyTargetMap map[string]ProxyTargetInput

func (ProxyTargetMap) ElementType added in v3.25.0

func (ProxyTargetMap) ElementType() reflect.Type

func (ProxyTargetMap) ToProxyTargetMapOutput added in v3.25.0

func (i ProxyTargetMap) ToProxyTargetMapOutput() ProxyTargetMapOutput

func (ProxyTargetMap) ToProxyTargetMapOutputWithContext added in v3.25.0

func (i ProxyTargetMap) ToProxyTargetMapOutputWithContext(ctx context.Context) ProxyTargetMapOutput

type ProxyTargetMapInput added in v3.25.0

type ProxyTargetMapInput interface {
	pulumi.Input

	ToProxyTargetMapOutput() ProxyTargetMapOutput
	ToProxyTargetMapOutputWithContext(context.Context) ProxyTargetMapOutput
}

ProxyTargetMapInput is an input type that accepts ProxyTargetMap and ProxyTargetMapOutput values. You can construct a concrete instance of `ProxyTargetMapInput` via:

ProxyTargetMap{ "key": ProxyTargetArgs{...} }

type ProxyTargetMapOutput added in v3.25.0

type ProxyTargetMapOutput struct{ *pulumi.OutputState }

func (ProxyTargetMapOutput) ElementType added in v3.25.0

func (ProxyTargetMapOutput) ElementType() reflect.Type

func (ProxyTargetMapOutput) MapIndex added in v3.25.0

func (ProxyTargetMapOutput) ToProxyTargetMapOutput added in v3.25.0

func (o ProxyTargetMapOutput) ToProxyTargetMapOutput() ProxyTargetMapOutput

func (ProxyTargetMapOutput) ToProxyTargetMapOutputWithContext added in v3.25.0

func (o ProxyTargetMapOutput) ToProxyTargetMapOutputWithContext(ctx context.Context) ProxyTargetMapOutput

type ProxyTargetOutput added in v3.13.0

type ProxyTargetOutput struct {
	*pulumi.OutputState
}

func (ProxyTargetOutput) ElementType added in v3.13.0

func (ProxyTargetOutput) ElementType() reflect.Type

func (ProxyTargetOutput) ToProxyTargetOutput added in v3.13.0

func (o ProxyTargetOutput) ToProxyTargetOutput() ProxyTargetOutput

func (ProxyTargetOutput) ToProxyTargetOutputWithContext added in v3.13.0

func (o ProxyTargetOutput) ToProxyTargetOutputWithContext(ctx context.Context) ProxyTargetOutput

func (ProxyTargetOutput) ToProxyTargetPtrOutput added in v3.25.0

func (o ProxyTargetOutput) ToProxyTargetPtrOutput() ProxyTargetPtrOutput

func (ProxyTargetOutput) ToProxyTargetPtrOutputWithContext added in v3.25.0

func (o ProxyTargetOutput) ToProxyTargetPtrOutputWithContext(ctx context.Context) ProxyTargetPtrOutput

type ProxyTargetPtrInput added in v3.25.0

type ProxyTargetPtrInput interface {
	pulumi.Input

	ToProxyTargetPtrOutput() ProxyTargetPtrOutput
	ToProxyTargetPtrOutputWithContext(ctx context.Context) ProxyTargetPtrOutput
}

type ProxyTargetPtrOutput added in v3.25.0

type ProxyTargetPtrOutput struct {
	*pulumi.OutputState
}

func (ProxyTargetPtrOutput) ElementType added in v3.25.0

func (ProxyTargetPtrOutput) ElementType() reflect.Type

func (ProxyTargetPtrOutput) ToProxyTargetPtrOutput added in v3.25.0

func (o ProxyTargetPtrOutput) ToProxyTargetPtrOutput() ProxyTargetPtrOutput

func (ProxyTargetPtrOutput) ToProxyTargetPtrOutputWithContext added in v3.25.0

func (o ProxyTargetPtrOutput) ToProxyTargetPtrOutputWithContext(ctx context.Context) ProxyTargetPtrOutput

type ProxyTargetState added in v3.6.0

type ProxyTargetState struct {
	// DB cluster identifier.
	DbClusterIdentifier pulumi.StringPtrInput
	// DB instance identifier.
	DbInstanceIdentifier pulumi.StringPtrInput
	// The name of the DB proxy.
	DbProxyName pulumi.StringPtrInput
	// Hostname for the target RDS DB Instance. Only returned for `RDS_INSTANCE` type.
	Endpoint pulumi.StringPtrInput
	// Port for the target RDS DB Instance or Aurora DB Cluster.
	Port pulumi.IntPtrInput
	// Identifier representing the DB Instance or DB Cluster target.
	RdsResourceId pulumi.StringPtrInput
	// Amazon Resource Name (ARN) for the DB instance or DB cluster. Currently not returned by the RDS API.
	TargetArn pulumi.StringPtrInput
	// The name of the target group.
	TargetGroupName pulumi.StringPtrInput
	// DB Cluster identifier for the DB Instance target. Not returned unless manually importing an `RDS_INSTANCE` target that is part of a DB Cluster.
	TrackedClusterId pulumi.StringPtrInput
	// Type of target. e.g. `RDS_INSTANCE` or `TRACKED_CLUSTER`
	Type pulumi.StringPtrInput
}

func (ProxyTargetState) ElementType added in v3.6.0

func (ProxyTargetState) ElementType() reflect.Type

type RoleAssociation

type RoleAssociation struct {
	pulumi.CustomResourceState

	// DB Instance Identifier to associate with the IAM Role.
	DbInstanceIdentifier pulumi.StringOutput `pulumi:"dbInstanceIdentifier"`
	// Name of the feature for association. This can be found in the AWS documentation relevant to the integration or a full list is available in the `SupportedFeatureNames` list returned by [AWS CLI rds describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html).
	FeatureName pulumi.StringOutput `pulumi:"featureName"`
	// Amazon Resource Name (ARN) of the IAM Role to associate with the DB Instance.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
}

Manages an RDS DB Instance association with an IAM Role. Example use cases:

* [Amazon RDS Oracle integration with Amazon S3](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-s3-integration.html) * [Importing Amazon S3 Data into an RDS PostgreSQL DB Instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PostgreSQL.S3Import.html)

> To manage the RDS DB Instance IAM Role for [Enhanced Monitoring](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html), see the `rds.Instance` resource `monitoringRoleArn` argument instead.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewRoleAssociation(ctx, "example", &rds.RoleAssociationArgs{
			DbInstanceIdentifier: pulumi.Any(aws_db_instance.Example.Id),
			FeatureName:          pulumi.String("S3_INTEGRATION"),
			RoleArn:              pulumi.Any(aws_iam_role.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_db_instance_role_association` can be imported using the DB Instance Identifier and IAM Role ARN separated by a comma (`,`), e.g.

```sh

$ pulumi import aws:rds/roleAssociation:RoleAssociation example my-db-instance,arn:aws:iam::123456789012:role/my-role

```

func GetRoleAssociation

func GetRoleAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RoleAssociationState, opts ...pulumi.ResourceOption) (*RoleAssociation, error)

GetRoleAssociation gets an existing RoleAssociation 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 NewRoleAssociation

func NewRoleAssociation(ctx *pulumi.Context,
	name string, args *RoleAssociationArgs, opts ...pulumi.ResourceOption) (*RoleAssociation, error)

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

func (*RoleAssociation) ElementType added in v3.13.0

func (*RoleAssociation) ElementType() reflect.Type

func (*RoleAssociation) ToRoleAssociationOutput added in v3.13.0

func (i *RoleAssociation) ToRoleAssociationOutput() RoleAssociationOutput

func (*RoleAssociation) ToRoleAssociationOutputWithContext added in v3.13.0

func (i *RoleAssociation) ToRoleAssociationOutputWithContext(ctx context.Context) RoleAssociationOutput

func (*RoleAssociation) ToRoleAssociationPtrOutput added in v3.25.0

func (i *RoleAssociation) ToRoleAssociationPtrOutput() RoleAssociationPtrOutput

func (*RoleAssociation) ToRoleAssociationPtrOutputWithContext added in v3.25.0

func (i *RoleAssociation) ToRoleAssociationPtrOutputWithContext(ctx context.Context) RoleAssociationPtrOutput

type RoleAssociationArgs

type RoleAssociationArgs struct {
	// DB Instance Identifier to associate with the IAM Role.
	DbInstanceIdentifier pulumi.StringInput
	// Name of the feature for association. This can be found in the AWS documentation relevant to the integration or a full list is available in the `SupportedFeatureNames` list returned by [AWS CLI rds describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html).
	FeatureName pulumi.StringInput
	// Amazon Resource Name (ARN) of the IAM Role to associate with the DB Instance.
	RoleArn pulumi.StringInput
}

The set of arguments for constructing a RoleAssociation resource.

func (RoleAssociationArgs) ElementType

func (RoleAssociationArgs) ElementType() reflect.Type

type RoleAssociationArray added in v3.25.0

type RoleAssociationArray []RoleAssociationInput

func (RoleAssociationArray) ElementType added in v3.25.0

func (RoleAssociationArray) ElementType() reflect.Type

func (RoleAssociationArray) ToRoleAssociationArrayOutput added in v3.25.0

func (i RoleAssociationArray) ToRoleAssociationArrayOutput() RoleAssociationArrayOutput

func (RoleAssociationArray) ToRoleAssociationArrayOutputWithContext added in v3.25.0

func (i RoleAssociationArray) ToRoleAssociationArrayOutputWithContext(ctx context.Context) RoleAssociationArrayOutput

type RoleAssociationArrayInput added in v3.25.0

type RoleAssociationArrayInput interface {
	pulumi.Input

	ToRoleAssociationArrayOutput() RoleAssociationArrayOutput
	ToRoleAssociationArrayOutputWithContext(context.Context) RoleAssociationArrayOutput
}

RoleAssociationArrayInput is an input type that accepts RoleAssociationArray and RoleAssociationArrayOutput values. You can construct a concrete instance of `RoleAssociationArrayInput` via:

RoleAssociationArray{ RoleAssociationArgs{...} }

type RoleAssociationArrayOutput added in v3.25.0

type RoleAssociationArrayOutput struct{ *pulumi.OutputState }

func (RoleAssociationArrayOutput) ElementType added in v3.25.0

func (RoleAssociationArrayOutput) ElementType() reflect.Type

func (RoleAssociationArrayOutput) Index added in v3.25.0

func (RoleAssociationArrayOutput) ToRoleAssociationArrayOutput added in v3.25.0

func (o RoleAssociationArrayOutput) ToRoleAssociationArrayOutput() RoleAssociationArrayOutput

func (RoleAssociationArrayOutput) ToRoleAssociationArrayOutputWithContext added in v3.25.0

func (o RoleAssociationArrayOutput) ToRoleAssociationArrayOutputWithContext(ctx context.Context) RoleAssociationArrayOutput

type RoleAssociationInput added in v3.13.0

type RoleAssociationInput interface {
	pulumi.Input

	ToRoleAssociationOutput() RoleAssociationOutput
	ToRoleAssociationOutputWithContext(ctx context.Context) RoleAssociationOutput
}

type RoleAssociationMap added in v3.25.0

type RoleAssociationMap map[string]RoleAssociationInput

func (RoleAssociationMap) ElementType added in v3.25.0

func (RoleAssociationMap) ElementType() reflect.Type

func (RoleAssociationMap) ToRoleAssociationMapOutput added in v3.25.0

func (i RoleAssociationMap) ToRoleAssociationMapOutput() RoleAssociationMapOutput

func (RoleAssociationMap) ToRoleAssociationMapOutputWithContext added in v3.25.0

func (i RoleAssociationMap) ToRoleAssociationMapOutputWithContext(ctx context.Context) RoleAssociationMapOutput

type RoleAssociationMapInput added in v3.25.0

type RoleAssociationMapInput interface {
	pulumi.Input

	ToRoleAssociationMapOutput() RoleAssociationMapOutput
	ToRoleAssociationMapOutputWithContext(context.Context) RoleAssociationMapOutput
}

RoleAssociationMapInput is an input type that accepts RoleAssociationMap and RoleAssociationMapOutput values. You can construct a concrete instance of `RoleAssociationMapInput` via:

RoleAssociationMap{ "key": RoleAssociationArgs{...} }

type RoleAssociationMapOutput added in v3.25.0

type RoleAssociationMapOutput struct{ *pulumi.OutputState }

func (RoleAssociationMapOutput) ElementType added in v3.25.0

func (RoleAssociationMapOutput) ElementType() reflect.Type

func (RoleAssociationMapOutput) MapIndex added in v3.25.0

func (RoleAssociationMapOutput) ToRoleAssociationMapOutput added in v3.25.0

func (o RoleAssociationMapOutput) ToRoleAssociationMapOutput() RoleAssociationMapOutput

func (RoleAssociationMapOutput) ToRoleAssociationMapOutputWithContext added in v3.25.0

func (o RoleAssociationMapOutput) ToRoleAssociationMapOutputWithContext(ctx context.Context) RoleAssociationMapOutput

type RoleAssociationOutput added in v3.13.0

type RoleAssociationOutput struct {
	*pulumi.OutputState
}

func (RoleAssociationOutput) ElementType added in v3.13.0

func (RoleAssociationOutput) ElementType() reflect.Type

func (RoleAssociationOutput) ToRoleAssociationOutput added in v3.13.0

func (o RoleAssociationOutput) ToRoleAssociationOutput() RoleAssociationOutput

func (RoleAssociationOutput) ToRoleAssociationOutputWithContext added in v3.13.0

func (o RoleAssociationOutput) ToRoleAssociationOutputWithContext(ctx context.Context) RoleAssociationOutput

func (RoleAssociationOutput) ToRoleAssociationPtrOutput added in v3.25.0

func (o RoleAssociationOutput) ToRoleAssociationPtrOutput() RoleAssociationPtrOutput

func (RoleAssociationOutput) ToRoleAssociationPtrOutputWithContext added in v3.25.0

func (o RoleAssociationOutput) ToRoleAssociationPtrOutputWithContext(ctx context.Context) RoleAssociationPtrOutput

type RoleAssociationPtrInput added in v3.25.0

type RoleAssociationPtrInput interface {
	pulumi.Input

	ToRoleAssociationPtrOutput() RoleAssociationPtrOutput
	ToRoleAssociationPtrOutputWithContext(ctx context.Context) RoleAssociationPtrOutput
}

type RoleAssociationPtrOutput added in v3.25.0

type RoleAssociationPtrOutput struct {
	*pulumi.OutputState
}

func (RoleAssociationPtrOutput) ElementType added in v3.25.0

func (RoleAssociationPtrOutput) ElementType() reflect.Type

func (RoleAssociationPtrOutput) ToRoleAssociationPtrOutput added in v3.25.0

func (o RoleAssociationPtrOutput) ToRoleAssociationPtrOutput() RoleAssociationPtrOutput

func (RoleAssociationPtrOutput) ToRoleAssociationPtrOutputWithContext added in v3.25.0

func (o RoleAssociationPtrOutput) ToRoleAssociationPtrOutputWithContext(ctx context.Context) RoleAssociationPtrOutput

type RoleAssociationState

type RoleAssociationState struct {
	// DB Instance Identifier to associate with the IAM Role.
	DbInstanceIdentifier pulumi.StringPtrInput
	// Name of the feature for association. This can be found in the AWS documentation relevant to the integration or a full list is available in the `SupportedFeatureNames` list returned by [AWS CLI rds describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html).
	FeatureName pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the IAM Role to associate with the DB Instance.
	RoleArn pulumi.StringPtrInput
}

func (RoleAssociationState) ElementType

func (RoleAssociationState) ElementType() reflect.Type

type SecurityGroup

type SecurityGroup struct {
	pulumi.CustomResourceState

	// The arn of the DB security group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the DB security group. Defaults to "Managed by Pulumi".
	Description pulumi.StringOutput `pulumi:"description"`
	// A list of ingress rules.
	Ingress SecurityGroupIngressArrayOutput `pulumi:"ingress"`
	// The name of the DB security group.
	Name pulumi.StringOutput `pulumi:"name"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an RDS security group resource. This is only for DB instances in the EC2-Classic Platform. For instances inside a VPC, use the `aws_db_instance.vpc_security_group_ids` attribute instead.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewSecurityGroup(ctx, "_default", &rds.SecurityGroupArgs{
			Ingress: rds.SecurityGroupIngressArray{
				&rds.SecurityGroupIngressArgs{
					Cidr: pulumi.String("10.0.0.0/24"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DB Security groups can be imported using the `name`, e.g.

```sh

$ pulumi import aws:rds/securityGroup:SecurityGroup default aws_rds_sg-1

```

func GetSecurityGroup

func GetSecurityGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupState, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

GetSecurityGroup gets an existing SecurityGroup 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 NewSecurityGroup

func NewSecurityGroup(ctx *pulumi.Context,
	name string, args *SecurityGroupArgs, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

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

func (*SecurityGroup) ElementType added in v3.13.0

func (*SecurityGroup) ElementType() reflect.Type

func (*SecurityGroup) ToSecurityGroupOutput added in v3.13.0

func (i *SecurityGroup) ToSecurityGroupOutput() SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupOutputWithContext added in v3.13.0

func (i *SecurityGroup) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupPtrOutput added in v3.25.0

func (i *SecurityGroup) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (*SecurityGroup) ToSecurityGroupPtrOutputWithContext added in v3.25.0

func (i *SecurityGroup) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupArgs

type SecurityGroupArgs struct {
	// The description of the DB security group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// A list of ingress rules.
	Ingress SecurityGroupIngressArrayInput
	// The name of the DB security group.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a SecurityGroup resource.

func (SecurityGroupArgs) ElementType

func (SecurityGroupArgs) ElementType() reflect.Type

type SecurityGroupArray added in v3.25.0

type SecurityGroupArray []SecurityGroupInput

func (SecurityGroupArray) ElementType added in v3.25.0

func (SecurityGroupArray) ElementType() reflect.Type

func (SecurityGroupArray) ToSecurityGroupArrayOutput added in v3.25.0

func (i SecurityGroupArray) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArray) ToSecurityGroupArrayOutputWithContext added in v3.25.0

func (i SecurityGroupArray) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupArrayInput added in v3.25.0

type SecurityGroupArrayInput interface {
	pulumi.Input

	ToSecurityGroupArrayOutput() SecurityGroupArrayOutput
	ToSecurityGroupArrayOutputWithContext(context.Context) SecurityGroupArrayOutput
}

SecurityGroupArrayInput is an input type that accepts SecurityGroupArray and SecurityGroupArrayOutput values. You can construct a concrete instance of `SecurityGroupArrayInput` via:

SecurityGroupArray{ SecurityGroupArgs{...} }

type SecurityGroupArrayOutput added in v3.25.0

type SecurityGroupArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupArrayOutput) ElementType added in v3.25.0

func (SecurityGroupArrayOutput) ElementType() reflect.Type

func (SecurityGroupArrayOutput) Index added in v3.25.0

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutput added in v3.25.0

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext added in v3.25.0

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupIngress

type SecurityGroupIngress struct {
	// The CIDR block to accept
	Cidr *string `pulumi:"cidr"`
	// The ID of the security group to authorize
	SecurityGroupId *string `pulumi:"securityGroupId"`
	// The name of the security group to authorize
	SecurityGroupName *string `pulumi:"securityGroupName"`
	// The owner Id of the security group provided
	// by `securityGroupName`.
	SecurityGroupOwnerId *string `pulumi:"securityGroupOwnerId"`
}

type SecurityGroupIngressArgs

type SecurityGroupIngressArgs struct {
	// The CIDR block to accept
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// The ID of the security group to authorize
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
	// The name of the security group to authorize
	SecurityGroupName pulumi.StringPtrInput `pulumi:"securityGroupName"`
	// The owner Id of the security group provided
	// by `securityGroupName`.
	SecurityGroupOwnerId pulumi.StringPtrInput `pulumi:"securityGroupOwnerId"`
}

func (SecurityGroupIngressArgs) ElementType

func (SecurityGroupIngressArgs) ElementType() reflect.Type

func (SecurityGroupIngressArgs) ToSecurityGroupIngressOutput

func (i SecurityGroupIngressArgs) ToSecurityGroupIngressOutput() SecurityGroupIngressOutput

func (SecurityGroupIngressArgs) ToSecurityGroupIngressOutputWithContext

func (i SecurityGroupIngressArgs) ToSecurityGroupIngressOutputWithContext(ctx context.Context) SecurityGroupIngressOutput

type SecurityGroupIngressArray

type SecurityGroupIngressArray []SecurityGroupIngressInput

func (SecurityGroupIngressArray) ElementType

func (SecurityGroupIngressArray) ElementType() reflect.Type

func (SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutput

func (i SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput

func (SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutputWithContext

func (i SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutputWithContext(ctx context.Context) SecurityGroupIngressArrayOutput

type SecurityGroupIngressArrayInput

type SecurityGroupIngressArrayInput interface {
	pulumi.Input

	ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput
	ToSecurityGroupIngressArrayOutputWithContext(context.Context) SecurityGroupIngressArrayOutput
}

SecurityGroupIngressArrayInput is an input type that accepts SecurityGroupIngressArray and SecurityGroupIngressArrayOutput values. You can construct a concrete instance of `SecurityGroupIngressArrayInput` via:

SecurityGroupIngressArray{ SecurityGroupIngressArgs{...} }

type SecurityGroupIngressArrayOutput

type SecurityGroupIngressArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressArrayOutput) ElementType

func (SecurityGroupIngressArrayOutput) Index

func (SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutput

func (o SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput

func (SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutputWithContext

func (o SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutputWithContext(ctx context.Context) SecurityGroupIngressArrayOutput

type SecurityGroupIngressInput

type SecurityGroupIngressInput interface {
	pulumi.Input

	ToSecurityGroupIngressOutput() SecurityGroupIngressOutput
	ToSecurityGroupIngressOutputWithContext(context.Context) SecurityGroupIngressOutput
}

SecurityGroupIngressInput is an input type that accepts SecurityGroupIngressArgs and SecurityGroupIngressOutput values. You can construct a concrete instance of `SecurityGroupIngressInput` via:

SecurityGroupIngressArgs{...}

type SecurityGroupIngressOutput

type SecurityGroupIngressOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressOutput) Cidr

The CIDR block to accept

func (SecurityGroupIngressOutput) ElementType

func (SecurityGroupIngressOutput) ElementType() reflect.Type

func (SecurityGroupIngressOutput) SecurityGroupId

The ID of the security group to authorize

func (SecurityGroupIngressOutput) SecurityGroupName

func (o SecurityGroupIngressOutput) SecurityGroupName() pulumi.StringPtrOutput

The name of the security group to authorize

func (SecurityGroupIngressOutput) SecurityGroupOwnerId

func (o SecurityGroupIngressOutput) SecurityGroupOwnerId() pulumi.StringPtrOutput

The owner Id of the security group provided by `securityGroupName`.

func (SecurityGroupIngressOutput) ToSecurityGroupIngressOutput

func (o SecurityGroupIngressOutput) ToSecurityGroupIngressOutput() SecurityGroupIngressOutput

func (SecurityGroupIngressOutput) ToSecurityGroupIngressOutputWithContext

func (o SecurityGroupIngressOutput) ToSecurityGroupIngressOutputWithContext(ctx context.Context) SecurityGroupIngressOutput

type SecurityGroupInput added in v3.13.0

type SecurityGroupInput interface {
	pulumi.Input

	ToSecurityGroupOutput() SecurityGroupOutput
	ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput
}

type SecurityGroupMap added in v3.25.0

type SecurityGroupMap map[string]SecurityGroupInput

func (SecurityGroupMap) ElementType added in v3.25.0

func (SecurityGroupMap) ElementType() reflect.Type

func (SecurityGroupMap) ToSecurityGroupMapOutput added in v3.25.0

func (i SecurityGroupMap) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMap) ToSecurityGroupMapOutputWithContext added in v3.25.0

func (i SecurityGroupMap) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupMapInput added in v3.25.0

type SecurityGroupMapInput interface {
	pulumi.Input

	ToSecurityGroupMapOutput() SecurityGroupMapOutput
	ToSecurityGroupMapOutputWithContext(context.Context) SecurityGroupMapOutput
}

SecurityGroupMapInput is an input type that accepts SecurityGroupMap and SecurityGroupMapOutput values. You can construct a concrete instance of `SecurityGroupMapInput` via:

SecurityGroupMap{ "key": SecurityGroupArgs{...} }

type SecurityGroupMapOutput added in v3.25.0

type SecurityGroupMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupMapOutput) ElementType added in v3.25.0

func (SecurityGroupMapOutput) ElementType() reflect.Type

func (SecurityGroupMapOutput) MapIndex added in v3.25.0

func (SecurityGroupMapOutput) ToSecurityGroupMapOutput added in v3.25.0

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext added in v3.25.0

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupOutput added in v3.13.0

type SecurityGroupOutput struct {
	*pulumi.OutputState
}

func (SecurityGroupOutput) ElementType added in v3.13.0

func (SecurityGroupOutput) ElementType() reflect.Type

func (SecurityGroupOutput) ToSecurityGroupOutput added in v3.13.0

func (o SecurityGroupOutput) ToSecurityGroupOutput() SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupOutputWithContext added in v3.13.0

func (o SecurityGroupOutput) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupPtrOutput added in v3.25.0

func (o SecurityGroupOutput) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (SecurityGroupOutput) ToSecurityGroupPtrOutputWithContext added in v3.25.0

func (o SecurityGroupOutput) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupPtrInput added in v3.25.0

type SecurityGroupPtrInput interface {
	pulumi.Input

	ToSecurityGroupPtrOutput() SecurityGroupPtrOutput
	ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput
}

type SecurityGroupPtrOutput added in v3.25.0

type SecurityGroupPtrOutput struct {
	*pulumi.OutputState
}

func (SecurityGroupPtrOutput) ElementType added in v3.25.0

func (SecurityGroupPtrOutput) ElementType() reflect.Type

func (SecurityGroupPtrOutput) ToSecurityGroupPtrOutput added in v3.25.0

func (o SecurityGroupPtrOutput) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (SecurityGroupPtrOutput) ToSecurityGroupPtrOutputWithContext added in v3.25.0

func (o SecurityGroupPtrOutput) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupState

type SecurityGroupState struct {
	// The arn of the DB security group.
	Arn pulumi.StringPtrInput
	// The description of the DB security group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// A list of ingress rules.
	Ingress SecurityGroupIngressArrayInput
	// The name of the DB security group.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (SecurityGroupState) ElementType

func (SecurityGroupState) ElementType() reflect.Type

type Snapshot

type Snapshot struct {
	pulumi.CustomResourceState

	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage pulumi.IntOutput `pulumi:"allocatedStorage"`
	// Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The DB Instance Identifier from which to take the snapshot.
	DbInstanceIdentifier pulumi.StringOutput `pulumi:"dbInstanceIdentifier"`
	// The Amazon Resource Name (ARN) for the DB snapshot.
	DbSnapshotArn pulumi.StringOutput `pulumi:"dbSnapshotArn"`
	// The Identifier for the snapshot.
	DbSnapshotIdentifier pulumi.StringOutput `pulumi:"dbSnapshotIdentifier"`
	// Specifies whether the DB snapshot is encrypted.
	Encrypted pulumi.BoolOutput `pulumi:"encrypted"`
	// Specifies the name of the database engine.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Specifies the version of the database engine.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.
	Iops pulumi.IntOutput `pulumi:"iops"`
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// License model information for the restored DB instance.
	LicenseModel pulumi.StringOutput `pulumi:"licenseModel"`
	// Provides the option group name for the DB snapshot.
	OptionGroupName pulumi.StringOutput `pulumi:"optionGroupName"`
	Port            pulumi.IntOutput    `pulumi:"port"`
	SnapshotType    pulumi.StringOutput `pulumi:"snapshotType"`
	// The DB snapshot Arn that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.
	SourceDbSnapshotIdentifier pulumi.StringOutput `pulumi:"sourceDbSnapshotIdentifier"`
	// The region that the DB snapshot was created in or copied from.
	SourceRegion pulumi.StringOutput `pulumi:"sourceRegion"`
	// Specifies the status of this DB snapshot.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies the storage type associated with DB snapshot.
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the storage type associated with DB snapshot.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages an RDS database instance snapshot. For managing RDS database cluster snapshots, see the `rds.ClusterSnapshot` resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		bar, err := rds.NewInstance(ctx, "bar", &rds.InstanceArgs{
			AllocatedStorage:      pulumi.Int(10),
			Engine:                pulumi.String("mysql"),
			EngineVersion:         pulumi.String("5.6.21"),
			InstanceClass:         pulumi.String("db.t2.micro"),
			Name:                  pulumi.String("baz"),
			Password:              pulumi.String("barbarbarbar"),
			Username:              pulumi.String("foo"),
			MaintenanceWindow:     pulumi.String("Fri:09:00-Fri:09:30"),
			BackupRetentionPeriod: pulumi.Int(0),
			ParameterGroupName:    pulumi.String("default.mysql5.6"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewSnapshot(ctx, "test", &rds.SnapshotArgs{
			DbInstanceIdentifier: bar.ID(),
			DbSnapshotIdentifier: pulumi.String("testsnapshot1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:rds/snapshot:Snapshot example my-snapshot

```

func GetSnapshot

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error)

GetSnapshot gets an existing Snapshot 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 NewSnapshot

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOption) (*Snapshot, error)

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

func (*Snapshot) ElementType added in v3.13.0

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput added in v3.13.0

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext added in v3.13.0

func (i *Snapshot) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

func (*Snapshot) ToSnapshotPtrOutput added in v3.25.0

func (i *Snapshot) ToSnapshotPtrOutput() SnapshotPtrOutput

func (*Snapshot) ToSnapshotPtrOutputWithContext added in v3.25.0

func (i *Snapshot) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotArgs

type SnapshotArgs struct {
	// The DB Instance Identifier from which to take the snapshot.
	DbInstanceIdentifier pulumi.StringInput
	// The Identifier for the snapshot.
	DbSnapshotIdentifier pulumi.StringInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray added in v3.25.0

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType added in v3.25.0

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput added in v3.25.0

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext added in v3.25.0

func (i SnapshotArray) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotArrayInput added in v3.25.0

type SnapshotArrayInput interface {
	pulumi.Input

	ToSnapshotArrayOutput() SnapshotArrayOutput
	ToSnapshotArrayOutputWithContext(context.Context) SnapshotArrayOutput
}

SnapshotArrayInput is an input type that accepts SnapshotArray and SnapshotArrayOutput values. You can construct a concrete instance of `SnapshotArrayInput` via:

SnapshotArray{ SnapshotArgs{...} }

type SnapshotArrayOutput added in v3.25.0

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType added in v3.25.0

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index added in v3.25.0

func (SnapshotArrayOutput) ToSnapshotArrayOutput added in v3.25.0

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext added in v3.25.0

func (o SnapshotArrayOutput) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotInput added in v3.13.0

type SnapshotInput interface {
	pulumi.Input

	ToSnapshotOutput() SnapshotOutput
	ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput
}

type SnapshotMap added in v3.25.0

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType added in v3.25.0

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput added in v3.25.0

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext added in v3.25.0

func (i SnapshotMap) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotMapInput added in v3.25.0

type SnapshotMapInput interface {
	pulumi.Input

	ToSnapshotMapOutput() SnapshotMapOutput
	ToSnapshotMapOutputWithContext(context.Context) SnapshotMapOutput
}

SnapshotMapInput is an input type that accepts SnapshotMap and SnapshotMapOutput values. You can construct a concrete instance of `SnapshotMapInput` via:

SnapshotMap{ "key": SnapshotArgs{...} }

type SnapshotMapOutput added in v3.25.0

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType added in v3.25.0

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex added in v3.25.0

func (SnapshotMapOutput) ToSnapshotMapOutput added in v3.25.0

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext added in v3.25.0

func (o SnapshotMapOutput) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotOutput added in v3.13.0

type SnapshotOutput struct {
	*pulumi.OutputState
}

func (SnapshotOutput) ElementType added in v3.13.0

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) ToSnapshotOutput added in v3.13.0

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext added in v3.13.0

func (o SnapshotOutput) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

func (SnapshotOutput) ToSnapshotPtrOutput added in v3.25.0

func (o SnapshotOutput) ToSnapshotPtrOutput() SnapshotPtrOutput

func (SnapshotOutput) ToSnapshotPtrOutputWithContext added in v3.25.0

func (o SnapshotOutput) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotPtrInput added in v3.25.0

type SnapshotPtrInput interface {
	pulumi.Input

	ToSnapshotPtrOutput() SnapshotPtrOutput
	ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput
}

type SnapshotPtrOutput added in v3.25.0

type SnapshotPtrOutput struct {
	*pulumi.OutputState
}

func (SnapshotPtrOutput) ElementType added in v3.25.0

func (SnapshotPtrOutput) ElementType() reflect.Type

func (SnapshotPtrOutput) ToSnapshotPtrOutput added in v3.25.0

func (o SnapshotPtrOutput) ToSnapshotPtrOutput() SnapshotPtrOutput

func (SnapshotPtrOutput) ToSnapshotPtrOutputWithContext added in v3.25.0

func (o SnapshotPtrOutput) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotState

type SnapshotState struct {
	// Specifies the allocated storage size in gigabytes (GB).
	AllocatedStorage pulumi.IntPtrInput
	// Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.
	AvailabilityZone pulumi.StringPtrInput
	// The DB Instance Identifier from which to take the snapshot.
	DbInstanceIdentifier pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) for the DB snapshot.
	DbSnapshotArn pulumi.StringPtrInput
	// The Identifier for the snapshot.
	DbSnapshotIdentifier pulumi.StringPtrInput
	// Specifies whether the DB snapshot is encrypted.
	Encrypted pulumi.BoolPtrInput
	// Specifies the name of the database engine.
	Engine pulumi.StringPtrInput
	// Specifies the version of the database engine.
	EngineVersion pulumi.StringPtrInput
	// Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.
	Iops pulumi.IntPtrInput
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringPtrInput
	// License model information for the restored DB instance.
	LicenseModel pulumi.StringPtrInput
	// Provides the option group name for the DB snapshot.
	OptionGroupName pulumi.StringPtrInput
	Port            pulumi.IntPtrInput
	SnapshotType    pulumi.StringPtrInput
	// The DB snapshot Arn that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.
	SourceDbSnapshotIdentifier pulumi.StringPtrInput
	// The region that the DB snapshot was created in or copied from.
	SourceRegion pulumi.StringPtrInput
	// Specifies the status of this DB snapshot.
	Status pulumi.StringPtrInput
	// Specifies the storage type associated with DB snapshot.
	StorageType pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// Specifies the storage type associated with DB snapshot.
	VpcId pulumi.StringPtrInput
}

func (SnapshotState) ElementType

func (SnapshotState) ElementType() reflect.Type

type StorageType added in v3.18.0

type StorageType pulumi.String

func (StorageType) ElementType added in v3.18.0

func (StorageType) ElementType() reflect.Type

func (StorageType) ToStringOutput added in v3.18.0

func (e StorageType) ToStringOutput() pulumi.StringOutput

func (StorageType) ToStringOutputWithContext added in v3.18.0

func (e StorageType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (StorageType) ToStringPtrOutput added in v3.18.0

func (e StorageType) ToStringPtrOutput() pulumi.StringPtrOutput

func (StorageType) ToStringPtrOutputWithContext added in v3.18.0

func (e StorageType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type SubnetGroup

type SubnetGroup struct {
	pulumi.CustomResourceState

	// The ARN of the db subnet group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The description of the DB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringOutput `pulumi:"description"`
	// The name of the DB 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.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an RDS DB subnet group resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

```

## Import

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

```sh

$ pulumi import aws:rds/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 added in v3.13.0

func (*SubnetGroup) ElementType() reflect.Type

func (*SubnetGroup) ToSubnetGroupOutput added in v3.13.0

func (i *SubnetGroup) ToSubnetGroupOutput() SubnetGroupOutput

func (*SubnetGroup) ToSubnetGroupOutputWithContext added in v3.13.0

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

func (*SubnetGroup) ToSubnetGroupPtrOutput added in v3.25.0

func (i *SubnetGroup) ToSubnetGroupPtrOutput() SubnetGroupPtrOutput

func (*SubnetGroup) ToSubnetGroupPtrOutputWithContext added in v3.25.0

func (i *SubnetGroup) ToSubnetGroupPtrOutputWithContext(ctx context.Context) SubnetGroupPtrOutput

type SubnetGroupArgs

type SubnetGroupArgs struct {
	// The description of the DB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The name of the DB 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.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a SubnetGroup resource.

func (SubnetGroupArgs) ElementType

func (SubnetGroupArgs) ElementType() reflect.Type

type SubnetGroupArray added in v3.25.0

type SubnetGroupArray []SubnetGroupInput

func (SubnetGroupArray) ElementType added in v3.25.0

func (SubnetGroupArray) ElementType() reflect.Type

func (SubnetGroupArray) ToSubnetGroupArrayOutput added in v3.25.0

func (i SubnetGroupArray) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArray) ToSubnetGroupArrayOutputWithContext added in v3.25.0

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

type SubnetGroupArrayInput added in v3.25.0

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 added in v3.25.0

type SubnetGroupArrayOutput struct{ *pulumi.OutputState }

func (SubnetGroupArrayOutput) ElementType added in v3.25.0

func (SubnetGroupArrayOutput) ElementType() reflect.Type

func (SubnetGroupArrayOutput) Index added in v3.25.0

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutput added in v3.25.0

func (o SubnetGroupArrayOutput) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutputWithContext added in v3.25.0

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

type SubnetGroupInput added in v3.13.0

type SubnetGroupInput interface {
	pulumi.Input

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

type SubnetGroupMap added in v3.25.0

type SubnetGroupMap map[string]SubnetGroupInput

func (SubnetGroupMap) ElementType added in v3.25.0

func (SubnetGroupMap) ElementType() reflect.Type

func (SubnetGroupMap) ToSubnetGroupMapOutput added in v3.25.0

func (i SubnetGroupMap) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMap) ToSubnetGroupMapOutputWithContext added in v3.25.0

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

type SubnetGroupMapInput added in v3.25.0

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 added in v3.25.0

type SubnetGroupMapOutput struct{ *pulumi.OutputState }

func (SubnetGroupMapOutput) ElementType added in v3.25.0

func (SubnetGroupMapOutput) ElementType() reflect.Type

func (SubnetGroupMapOutput) MapIndex added in v3.25.0

func (SubnetGroupMapOutput) ToSubnetGroupMapOutput added in v3.25.0

func (o SubnetGroupMapOutput) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMapOutput) ToSubnetGroupMapOutputWithContext added in v3.25.0

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

type SubnetGroupOutput added in v3.13.0

type SubnetGroupOutput struct {
	*pulumi.OutputState
}

func (SubnetGroupOutput) ElementType added in v3.13.0

func (SubnetGroupOutput) ElementType() reflect.Type

func (SubnetGroupOutput) ToSubnetGroupOutput added in v3.13.0

func (o SubnetGroupOutput) ToSubnetGroupOutput() SubnetGroupOutput

func (SubnetGroupOutput) ToSubnetGroupOutputWithContext added in v3.13.0

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

func (SubnetGroupOutput) ToSubnetGroupPtrOutput added in v3.25.0

func (o SubnetGroupOutput) ToSubnetGroupPtrOutput() SubnetGroupPtrOutput

func (SubnetGroupOutput) ToSubnetGroupPtrOutputWithContext added in v3.25.0

func (o SubnetGroupOutput) ToSubnetGroupPtrOutputWithContext(ctx context.Context) SubnetGroupPtrOutput

type SubnetGroupPtrInput added in v3.25.0

type SubnetGroupPtrInput interface {
	pulumi.Input

	ToSubnetGroupPtrOutput() SubnetGroupPtrOutput
	ToSubnetGroupPtrOutputWithContext(ctx context.Context) SubnetGroupPtrOutput
}

type SubnetGroupPtrOutput added in v3.25.0

type SubnetGroupPtrOutput struct {
	*pulumi.OutputState
}

func (SubnetGroupPtrOutput) ElementType added in v3.25.0

func (SubnetGroupPtrOutput) ElementType() reflect.Type

func (SubnetGroupPtrOutput) ToSubnetGroupPtrOutput added in v3.25.0

func (o SubnetGroupPtrOutput) ToSubnetGroupPtrOutput() SubnetGroupPtrOutput

func (SubnetGroupPtrOutput) ToSubnetGroupPtrOutputWithContext added in v3.25.0

func (o SubnetGroupPtrOutput) ToSubnetGroupPtrOutputWithContext(ctx context.Context) SubnetGroupPtrOutput

type SubnetGroupState

type SubnetGroupState struct {
	// The ARN of the db subnet group.
	Arn pulumi.StringPtrInput
	// The description of the DB subnet group. Defaults to "Managed by Pulumi".
	Description pulumi.StringPtrInput
	// The name of the DB 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.
	Tags 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