rds

package
v6.23.0 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2024 License: Apache-2.0 Imports: 7 Imported by: 3

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_T4G_Micro    = InstanceType("db.t4g.micro")
	InstanceType_T4G_Small    = InstanceType("db.t4g.small")
	InstanceType_T4G_Medium   = InstanceType("db.t4g.medium")
	InstanceType_T4G_Large    = InstanceType("db.t4g.large")
	InstanceType_T4G_XLarge   = InstanceType("db.t4g.xlarge")
	InstanceType_T4G_2XLarge  = InstanceType("db.t4g.2xlarge")
	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_M6G_Large    = InstanceType("db.m6g.large")
	InstanceType_M6G_XLarge   = InstanceType("db.m6g.xlarge")
	InstanceType_M6G_2XLarge  = InstanceType("db.m6g.2xlarge")
	InstanceType_M6G_4XLarge  = InstanceType("db.m6g.4xlarge")
	InstanceType_M6G_8XLarge  = InstanceType("db.m6g.8xlarge")
	InstanceType_M6G_12XLarge = InstanceType("db.m6g.12xlarge")
	InstanceType_M6G_16XLarge = InstanceType("db.m6g.16xlarge")
	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_R6G_Large    = InstanceType("db.r6g.large")
	InstanceType_R6G_XLarge   = InstanceType("db.r6g.xlarge")
	InstanceType_R6G_2XLarge  = InstanceType("db.r6g.2xlarge")
	InstanceType_R6G_4XLarge  = InstanceType("db.r6g.4xlarge")
	InstanceType_R6G_8XLarge  = InstanceType("db.r6g.8xlarge")
	InstanceType_R6G_12XLarge = InstanceType("db.r6g.12xlarge")
	InstanceType_R6G_16XLarge = InstanceType("db.r6g.16xlarge")
	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")
	StorageTypeGP3      = StorageType("gp3")
	StorageTypeIO1      = StorageType("io1")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.
	AllocatedStorage pulumi.IntOutput `pulumi:"allocatedStorage"`
	// 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"`
	// 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 pulumi up.
	// We recommend specifying 3 AZs or using the `lifecycle` configuration block `ignoreChanges` argument if necessary.
	// A maximum of 3 AZs can be configured.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// Target backtrack window, in seconds. Only available for `aurora` and `aurora-mysql` engines 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"`
	// Days to retain backups for. Default `1`
	BackupRetentionPeriod pulumi.IntOutput `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"`
	// 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"`
	// The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example `db.m6g.xlarge`. Not all DB instance classes are available in all AWS Regions, or for all database engines. For the full list of DB instance classes and availability for your engine, see [DB instance class](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) in the Amazon RDS User Guide.
	DbClusterInstanceClass pulumi.StringPtrOutput `pulumi:"dbClusterInstanceClass"`
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringOutput `pulumi:"dbClusterParameterGroupName"`
	// Instance parameter group to associate with all instances of the DB cluster. The `dbInstanceParameterGroupName` parameter is only valid in combination with the `allowMajorVersionUpgrade` parameter.
	DbInstanceParameterGroupName pulumi.StringPtrOutput `pulumi:"dbInstanceParameterGroupName"`
	// DB subnet group to associate with this DB cluster.
	// **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringOutput `pulumi:"dbSubnetGroupName"`
	// For use with RDS Custom.
	DbSystemId pulumi.StringOutput `pulumi:"dbSystemId"`
	// Specifies whether to remove automated backups immediately after the DB cluster is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrOutput `pulumi:"deleteAutomatedBackups"`
	// If the DB 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"`
	// The ID of the Directory Service Active Directory domain to create the cluster 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"`
	// Whether cluster should forward writes to an associated global cluster. Applied to secondary clusters to enable them to forward writes to an `rds.GlobalCluster`'s primary cluster. See the [Aurora Userguide documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-write-forwarding.html) for more information.
	EnableGlobalWriteForwarding pulumi.BoolPtrOutput `pulumi:"enableGlobalWriteForwarding"`
	// 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"`
	// DNS address of the RDS instance
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// Name of the database engine to be used for this DB cluster. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `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"`
	// 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, or by running `aws rds describe-db-engine-versions`. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`. The value can contain a partial version where supported by the API. The actual engine version used is returned in the attribute `engineVersionActual`, , see Attribute Reference below.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Running version of the database.
	EngineVersionActual pulumi.StringOutput `pulumi:"engineVersionActual"`
	// 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"`
	// Global cluster identifier specified on `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrOutput `pulumi:"globalClusterIdentifier"`
	// Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Specifies whether or not 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"`
	// List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayOutput `pulumi:"iamRoles"`
	// Amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid Iops values, see [Amazon RDS Provisioned IOPS storage to improve performance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS) in the Amazon RDS User Guide. (This setting is required to create a Multi-AZ DB cluster). Must be a multiple between .5 and 50 of the storage amount for the DB cluster.
	Iops pulumi.IntPtrOutput `pulumi:"iops"`
	// ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `masterPassword` is provided.
	ManageMasterUserPassword pulumi.BoolPtrOutput `pulumi:"manageMasterUserPassword"`
	// 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). Cannot be set if `manageMasterUserPassword` is set to `true`.
	MasterPassword pulumi.StringPtrOutput `pulumi:"masterPassword"`
	// Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId pulumi.StringOutput `pulumi:"masterUserSecretKmsKeyId"`
	// Block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.
	MasterUserSecrets ClusterMasterUserSecretArrayOutput `pulumi:"masterUserSecrets"`
	// 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"`
	// Network type of the cluster. Valid values: `IPV4`, `DUAL`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// Port on which the DB accepts connections
	Port pulumi.IntOutput `pulumi:"port"`
	// Daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC. Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringOutput `pulumi:"preferredBackupWindow"`
	// Weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30
	PreferredMaintenanceWindow pulumi.StringOutput `pulumi:"preferredMaintenanceWindow"`
	// 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 the `lifecycle` configuration block `ignoreChanges` argument to prevent this provider from showing differences for this argument instead of configuring this value.
	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"`
	// Nested attribute with scaling properties for ServerlessV2. Only valid when `engineMode` is set to `provisioned`. More details below.
	Serverlessv2ScalingConfiguration ClusterServerlessv2ScalingConfigurationPtrOutput `pulumi:"serverlessv2ScalingConfiguration"`
	// 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. Conflicts with `globalClusterIdentifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a 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"`
	// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### RDS Multi-AZ Cluster

> More information about RDS Multi-AZ Clusters can be found in the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html).

To create a Multi-AZ RDS cluster, you must additionally specify the `engine`, `storageType`, `allocatedStorage`, `iops` and `dbClusterInstanceClass` attributes.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "example", &rds.ClusterArgs{
			AllocatedStorage: pulumi.Int(100),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-west-2a"),
				pulumi.String("us-west-2b"),
				pulumi.String("us-west-2c"),
			},
			ClusterIdentifier:      pulumi.String("example"),
			DbClusterInstanceClass: pulumi.String("db.r6gd.xlarge"),
			Engine:                 pulumi.String("mysql"),
			Iops:                   pulumi.Int(1000),
			MasterPassword:         pulumi.String("mustbeeightcharaters"),
			MasterUsername:         pulumi.String("test"),
			StorageType:            pulumi.String("io1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS Serverless v2 Cluster

> More information about RDS Serverless v2 Clusters can be found in the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html).

> **Note:** Unlike Serverless v1, in Serverless v2 the `storageEncrypted` value is set to `false` by default. This is because Serverless v1 uses the `serverless` `engineMode`, but Serverless v2 uses the `provisioned` `engineMode`.

To create a Serverless v2 RDS cluster, you must additionally specify the `engineMode` and `serverlessv2ScalingConfiguration` attributes. An `rds.ClusterInstance` resource must also be added to the cluster with the `instanceClass` attribute specified.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := rds.NewCluster(ctx, "exampleCluster", &rds.ClusterArgs{
			ClusterIdentifier: pulumi.String("example"),
			Engine:            pulumi.String("aurora-postgresql"),
			EngineMode:        pulumi.String("provisioned"),
			EngineVersion:     pulumi.String("13.6"),
			DatabaseName:      pulumi.String("test"),
			MasterUsername:    pulumi.String("test"),
			MasterPassword:    pulumi.String("must_be_eight_characters"),
			StorageEncrypted:  pulumi.Bool(true),
			Serverlessv2ScalingConfiguration: &rds.ClusterServerlessv2ScalingConfigurationArgs{
				MaxCapacity: pulumi.Float64(1),
				MinCapacity: pulumi.Float64(0.5),
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "exampleClusterInstance", &rds.ClusterInstanceArgs{
			ClusterIdentifier: exampleCluster.ID(),
			InstanceClass:     pulumi.String("db.serverless"),
			Engine:            exampleCluster.Engine,
			EngineVersion:     exampleCluster.EngineVersion,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS/Aurora Managed Master Passwords via Secrets Manager, default KMS Key

> More information about RDS/Aurora Aurora integrates with Secrets Manager to manage master user passwords for your DB clusters can be found in the [RDS User Guide](https://aws.amazon.com/about-aws/whats-new/2022/12/amazon-rds-integration-aws-secrets-manager/) and [Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html).

You can specify the `manageMasterUserPassword` attribute to enable managing the master password with Secrets Manager. You can also update an existing cluster to use Secrets Manager by specify the `manageMasterUserPassword` attribute and removing the `masterPassword` attribute (removal is required).

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCluster(ctx, "test", &rds.ClusterArgs{
			ClusterIdentifier:        pulumi.String("example"),
			DatabaseName:             pulumi.String("test"),
			ManageMasterUserPassword: pulumi.Bool(true),
			MasterUsername:           pulumi.String("test"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS/Aurora Managed Master Passwords via Secrets Manager, specific KMS Key

> More information about RDS/Aurora Aurora integrates with Secrets Manager to manage master user passwords for your DB clusters can be found in the [RDS User Guide](https://aws.amazon.com/about-aws/whats-new/2022/12/amazon-rds-integration-aws-secrets-manager/) and [Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html).

You can specify the `masterUserSecretKmsKeyId` attribute to specify a specific KMS Key.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := kms.NewKey(ctx, "example", &kms.KeyArgs{
			Description: pulumi.String("Example KMS Key"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewCluster(ctx, "test", &rds.ClusterArgs{
			ClusterIdentifier:        pulumi.String("example"),
			DatabaseName:             pulumi.String("test"),
			ManageMasterUserPassword: pulumi.Bool(true),
			MasterUsername:           pulumi.String("test"),
			MasterUserSecretKmsKeyId: example.KeyId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Global Cluster Restored From Snapshot

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleClusterSnapshot, err := rds.LookupClusterSnapshot(ctx, &rds.LookupClusterSnapshotArgs{
			DbClusterIdentifier: pulumi.StringRef("example-original-cluster"),
			MostRecent:          pulumi.BoolRef(true),
		}, nil)
		if err != nil {
			return err
		}
		exampleCluster, err := rds.NewCluster(ctx, "exampleCluster", &rds.ClusterArgs{
			Engine:             pulumi.String("aurora"),
			EngineVersion:      pulumi.String("5.6.mysql_aurora.1.22.4"),
			ClusterIdentifier:  pulumi.String("example"),
			SnapshotIdentifier: *pulumi.String(exampleClusterSnapshot.Id),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewGlobalCluster(ctx, "exampleGlobalCluster", &rds.GlobalClusterArgs{
			GlobalClusterIdentifier:   pulumi.String("example"),
			SourceDbClusterIdentifier: exampleCluster.Arn,
			ForceDestroy:              pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import RDS Clusters using the `cluster_identifier`. For example:

```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

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext

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

type ClusterActivityStream

type ClusterActivityStream struct {
	pulumi.CustomResourceState

	// Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included. Defaults `false`.
	EngineNativeAuditFieldsIncluded pulumi.BoolPtrOutput `pulumi:"engineNativeAuditFieldsIncluded"`
	// The name of the Amazon Kinesis data stream to be used for the database activity stream.
	KinesisStreamName pulumi.StringOutput `pulumi:"kinesisStreamName"`
	// The AWS KMS key identifier for encrypting messages in the database activity stream. The AWS KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously. One of: `sync`, `async`.
	Mode pulumi.StringOutput `pulumi:"mode"`
	// The Amazon Resource Name (ARN) of the DB cluster.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
}

Manages RDS Aurora Cluster Database Activity Streams.

Database Activity Streams have some limits and requirements, refer to the [Monitoring Amazon Aurora using Database Activity Streams](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html) documentation for detailed limitations and requirements.

> **Note:** This resource always calls the RDS [`StartActivityStream`][2] API with the `ApplyImmediately` parameter set to `true`. This is because the provider needs the activity stream to be started in order for it to get the associated attributes.

> **Note:** This resource depends on having at least one `rds.ClusterInstance` created. To avoid race conditions when all resources are being created together, add an explicit resource reference using the resource `dependsOn` meta-argument.

> **Note:** This resource is available in all regions except the following: `cn-north-1`, `cn-northwest-1`, `us-gov-east-1`, `us-gov-west-1`

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultCluster, err := rds.NewCluster(ctx, "defaultCluster", &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("mustbeeightcharaters"),
			Engine:         pulumi.String("aurora-postgresql"),
			EngineVersion:  pulumi.String("13.4"),
		})
		if err != nil {
			return err
		}
		defaultClusterInstance, err := rds.NewClusterInstance(ctx, "defaultClusterInstance", &rds.ClusterInstanceArgs{
			Identifier:        pulumi.String("aurora-instance-demo"),
			ClusterIdentifier: defaultCluster.ClusterIdentifier,
			Engine:            defaultCluster.Engine,
			InstanceClass:     pulumi.String("db.r6g.large"),
		})
		if err != nil {
			return err
		}
		defaultKey, err := kms.NewKey(ctx, "defaultKey", &kms.KeyArgs{
			Description: pulumi.String("AWS KMS Key to encrypt Database Activity Stream"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterActivityStream(ctx, "defaultClusterActivityStream", &rds.ClusterActivityStreamArgs{
			ResourceArn: defaultCluster.Arn,
			Mode:        pulumi.String("async"),
			KmsKeyId:    defaultKey.KeyId,
		}, pulumi.DependsOn([]pulumi.Resource{
			defaultClusterInstance,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import RDS Aurora Cluster Database Activity Streams using the `resource_arn`. For example:

```sh

$ pulumi import aws:rds/clusterActivityStream:ClusterActivityStream default arn:aws:rds:us-west-2:123456789012:cluster:aurora-cluster-demo

```

func GetClusterActivityStream

func GetClusterActivityStream(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterActivityStreamState, opts ...pulumi.ResourceOption) (*ClusterActivityStream, error)

GetClusterActivityStream gets an existing ClusterActivityStream 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 NewClusterActivityStream

func NewClusterActivityStream(ctx *pulumi.Context,
	name string, args *ClusterActivityStreamArgs, opts ...pulumi.ResourceOption) (*ClusterActivityStream, error)

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

func (*ClusterActivityStream) ElementType

func (*ClusterActivityStream) ElementType() reflect.Type

func (*ClusterActivityStream) ToClusterActivityStreamOutput

func (i *ClusterActivityStream) ToClusterActivityStreamOutput() ClusterActivityStreamOutput

func (*ClusterActivityStream) ToClusterActivityStreamOutputWithContext

func (i *ClusterActivityStream) ToClusterActivityStreamOutputWithContext(ctx context.Context) ClusterActivityStreamOutput

type ClusterActivityStreamArgs

type ClusterActivityStreamArgs struct {
	// Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included. Defaults `false`.
	EngineNativeAuditFieldsIncluded pulumi.BoolPtrInput
	// The AWS KMS key identifier for encrypting messages in the database activity stream. The AWS KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
	KmsKeyId pulumi.StringInput
	// Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously. One of: `sync`, `async`.
	Mode pulumi.StringInput
	// The Amazon Resource Name (ARN) of the DB cluster.
	ResourceArn pulumi.StringInput
}

The set of arguments for constructing a ClusterActivityStream resource.

func (ClusterActivityStreamArgs) ElementType

func (ClusterActivityStreamArgs) ElementType() reflect.Type

type ClusterActivityStreamArray

type ClusterActivityStreamArray []ClusterActivityStreamInput

func (ClusterActivityStreamArray) ElementType

func (ClusterActivityStreamArray) ElementType() reflect.Type

func (ClusterActivityStreamArray) ToClusterActivityStreamArrayOutput

func (i ClusterActivityStreamArray) ToClusterActivityStreamArrayOutput() ClusterActivityStreamArrayOutput

func (ClusterActivityStreamArray) ToClusterActivityStreamArrayOutputWithContext

func (i ClusterActivityStreamArray) ToClusterActivityStreamArrayOutputWithContext(ctx context.Context) ClusterActivityStreamArrayOutput

type ClusterActivityStreamArrayInput

type ClusterActivityStreamArrayInput interface {
	pulumi.Input

	ToClusterActivityStreamArrayOutput() ClusterActivityStreamArrayOutput
	ToClusterActivityStreamArrayOutputWithContext(context.Context) ClusterActivityStreamArrayOutput
}

ClusterActivityStreamArrayInput is an input type that accepts ClusterActivityStreamArray and ClusterActivityStreamArrayOutput values. You can construct a concrete instance of `ClusterActivityStreamArrayInput` via:

ClusterActivityStreamArray{ ClusterActivityStreamArgs{...} }

type ClusterActivityStreamArrayOutput

type ClusterActivityStreamArrayOutput struct{ *pulumi.OutputState }

func (ClusterActivityStreamArrayOutput) ElementType

func (ClusterActivityStreamArrayOutput) Index

func (ClusterActivityStreamArrayOutput) ToClusterActivityStreamArrayOutput

func (o ClusterActivityStreamArrayOutput) ToClusterActivityStreamArrayOutput() ClusterActivityStreamArrayOutput

func (ClusterActivityStreamArrayOutput) ToClusterActivityStreamArrayOutputWithContext

func (o ClusterActivityStreamArrayOutput) ToClusterActivityStreamArrayOutputWithContext(ctx context.Context) ClusterActivityStreamArrayOutput

type ClusterActivityStreamInput

type ClusterActivityStreamInput interface {
	pulumi.Input

	ToClusterActivityStreamOutput() ClusterActivityStreamOutput
	ToClusterActivityStreamOutputWithContext(ctx context.Context) ClusterActivityStreamOutput
}

type ClusterActivityStreamMap

type ClusterActivityStreamMap map[string]ClusterActivityStreamInput

func (ClusterActivityStreamMap) ElementType

func (ClusterActivityStreamMap) ElementType() reflect.Type

func (ClusterActivityStreamMap) ToClusterActivityStreamMapOutput

func (i ClusterActivityStreamMap) ToClusterActivityStreamMapOutput() ClusterActivityStreamMapOutput

func (ClusterActivityStreamMap) ToClusterActivityStreamMapOutputWithContext

func (i ClusterActivityStreamMap) ToClusterActivityStreamMapOutputWithContext(ctx context.Context) ClusterActivityStreamMapOutput

type ClusterActivityStreamMapInput

type ClusterActivityStreamMapInput interface {
	pulumi.Input

	ToClusterActivityStreamMapOutput() ClusterActivityStreamMapOutput
	ToClusterActivityStreamMapOutputWithContext(context.Context) ClusterActivityStreamMapOutput
}

ClusterActivityStreamMapInput is an input type that accepts ClusterActivityStreamMap and ClusterActivityStreamMapOutput values. You can construct a concrete instance of `ClusterActivityStreamMapInput` via:

ClusterActivityStreamMap{ "key": ClusterActivityStreamArgs{...} }

type ClusterActivityStreamMapOutput

type ClusterActivityStreamMapOutput struct{ *pulumi.OutputState }

func (ClusterActivityStreamMapOutput) ElementType

func (ClusterActivityStreamMapOutput) MapIndex

func (ClusterActivityStreamMapOutput) ToClusterActivityStreamMapOutput

func (o ClusterActivityStreamMapOutput) ToClusterActivityStreamMapOutput() ClusterActivityStreamMapOutput

func (ClusterActivityStreamMapOutput) ToClusterActivityStreamMapOutputWithContext

func (o ClusterActivityStreamMapOutput) ToClusterActivityStreamMapOutputWithContext(ctx context.Context) ClusterActivityStreamMapOutput

type ClusterActivityStreamOutput

type ClusterActivityStreamOutput struct{ *pulumi.OutputState }

func (ClusterActivityStreamOutput) ElementType

func (ClusterActivityStreamOutput) EngineNativeAuditFieldsIncluded

func (o ClusterActivityStreamOutput) EngineNativeAuditFieldsIncluded() pulumi.BoolPtrOutput

Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included. Defaults `false`.

func (ClusterActivityStreamOutput) KinesisStreamName

func (o ClusterActivityStreamOutput) KinesisStreamName() pulumi.StringOutput

The name of the Amazon Kinesis data stream to be used for the database activity stream.

func (ClusterActivityStreamOutput) KmsKeyId

The AWS KMS key identifier for encrypting messages in the database activity stream. The AWS KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

func (ClusterActivityStreamOutput) Mode

Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously. One of: `sync`, `async`.

func (ClusterActivityStreamOutput) ResourceArn

The Amazon Resource Name (ARN) of the DB cluster.

func (ClusterActivityStreamOutput) ToClusterActivityStreamOutput

func (o ClusterActivityStreamOutput) ToClusterActivityStreamOutput() ClusterActivityStreamOutput

func (ClusterActivityStreamOutput) ToClusterActivityStreamOutputWithContext

func (o ClusterActivityStreamOutput) ToClusterActivityStreamOutputWithContext(ctx context.Context) ClusterActivityStreamOutput

type ClusterActivityStreamState

type ClusterActivityStreamState struct {
	// Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included. Defaults `false`.
	EngineNativeAuditFieldsIncluded pulumi.BoolPtrInput
	// The name of the Amazon Kinesis data stream to be used for the database activity stream.
	KinesisStreamName pulumi.StringPtrInput
	// The AWS KMS key identifier for encrypting messages in the database activity stream. The AWS KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
	KmsKeyId pulumi.StringPtrInput
	// Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously. One of: `sync`, `async`.
	Mode pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the DB cluster.
	ResourceArn pulumi.StringPtrInput
}

func (ClusterActivityStreamState) ElementType

func (ClusterActivityStreamState) ElementType() reflect.Type

type ClusterArgs

type ClusterArgs struct {
	// The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.
	AllocatedStorage pulumi.IntPtrInput
	// 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
	// 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 pulumi up.
	// We recommend specifying 3 AZs or using the `lifecycle` configuration block `ignoreChanges` argument if necessary.
	// A maximum of 3 AZs can be configured.
	AvailabilityZones pulumi.StringArrayInput
	// Target backtrack window, in seconds. Only available for `aurora` and `aurora-mysql` engines currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)
	BacktrackWindow pulumi.IntPtrInput
	// 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
	// The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example `db.m6g.xlarge`. Not all DB instance classes are available in all AWS Regions, or for all database engines. For the full list of DB instance classes and availability for your engine, see [DB instance class](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) in the Amazon RDS User Guide.
	DbClusterInstanceClass pulumi.StringPtrInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// Instance parameter group to associate with all instances of the DB cluster. The `dbInstanceParameterGroupName` parameter is only valid in combination with the `allowMajorVersionUpgrade` parameter.
	DbInstanceParameterGroupName pulumi.StringPtrInput
	// DB subnet group to associate with this DB cluster.
	// **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringPtrInput
	// For use with RDS Custom.
	DbSystemId pulumi.StringPtrInput
	// Specifies whether to remove automated backups immediately after the DB cluster is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrInput
	// If the DB 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
	// The ID of the Directory Service Active Directory domain to create the cluster in.
	Domain pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service.
	DomainIamRoleName pulumi.StringPtrInput
	// Whether cluster should forward writes to an associated global cluster. Applied to secondary clusters to enable them to forward writes to an `rds.GlobalCluster`'s primary cluster. See the [Aurora Userguide documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-write-forwarding.html) for more information.
	EnableGlobalWriteForwarding 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
	// Name of the database engine to be used for this DB cluster. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).
	Engine pulumi.StringInput
	// Database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `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
	// 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, or by running `aws rds describe-db-engine-versions`. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`. The value can contain a partial version where supported by the API. The actual engine version used is returned in the attribute `engineVersionActual`, , see Attribute Reference below.
	EngineVersion pulumi.StringPtrInput
	// Name of your final DB snapshot when this DB cluster is deleted. If omitted, no final snapshot will be made.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// Global cluster identifier specified on `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// Specifies whether or not 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
	// List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayInput
	// Amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid Iops values, see [Amazon RDS Provisioned IOPS storage to improve performance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS) in the Amazon RDS User Guide. (This setting is required to create a Multi-AZ DB cluster). Must be a multiple between .5 and 50 of the storage amount for the DB cluster.
	Iops pulumi.IntPtrInput
	// ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringPtrInput
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `masterPassword` is provided.
	ManageMasterUserPassword pulumi.BoolPtrInput
	// 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). Cannot be set if `manageMasterUserPassword` is set to `true`.
	MasterPassword pulumi.StringPtrInput
	// Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId 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
	// Network type of the cluster. Valid values: `IPV4`, `DUAL`.
	NetworkType pulumi.StringPtrInput
	// Port on which the DB accepts connections
	Port pulumi.IntPtrInput
	// Daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC. Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringPtrInput
	// 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 the `lifecycle` configuration block `ignoreChanges` argument to prevent this provider from showing differences for this argument instead of configuring this value.
	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
	// Nested attribute with scaling properties for ServerlessV2. Only valid when `engineMode` is set to `provisioned`. More details below.
	Serverlessv2ScalingConfiguration ClusterServerlessv2ScalingConfigurationPtrInput
	// 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. Conflicts with `globalClusterIdentifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a 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
	// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).
	StorageType pulumi.StringPtrInput
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// List of VPC security groups to associate with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray

type ClusterArray []ClusterInput

func (ClusterArray) ElementType

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext

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

type ClusterArrayInput

type ClusterArrayInput interface {
	pulumi.Input

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

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

ClusterArray{ ClusterArgs{...} }

type ClusterArrayOutput

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index

func (ClusterArrayOutput) ToClusterArrayOutput

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext

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

type 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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

Using `pulumi import`, import RDS Clusters Endpoint using the `cluster_endpoint_identifier`. For example:

```sh

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

```

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

func (*ClusterEndpoint) ElementType() reflect.Type

func (*ClusterEndpoint) ToClusterEndpointOutput

func (i *ClusterEndpoint) ToClusterEndpointOutput() ClusterEndpointOutput

func (*ClusterEndpoint) ToClusterEndpointOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterEndpoint resource.

func (ClusterEndpointArgs) ElementType

func (ClusterEndpointArgs) ElementType() reflect.Type

type ClusterEndpointArray

type ClusterEndpointArray []ClusterEndpointInput

func (ClusterEndpointArray) ElementType

func (ClusterEndpointArray) ElementType() reflect.Type

func (ClusterEndpointArray) ToClusterEndpointArrayOutput

func (i ClusterEndpointArray) ToClusterEndpointArrayOutput() ClusterEndpointArrayOutput

func (ClusterEndpointArray) ToClusterEndpointArrayOutputWithContext

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

type ClusterEndpointArrayInput

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

type ClusterEndpointArrayOutput struct{ *pulumi.OutputState }

func (ClusterEndpointArrayOutput) ElementType

func (ClusterEndpointArrayOutput) ElementType() reflect.Type

func (ClusterEndpointArrayOutput) Index

func (ClusterEndpointArrayOutput) ToClusterEndpointArrayOutput

func (o ClusterEndpointArrayOutput) ToClusterEndpointArrayOutput() ClusterEndpointArrayOutput

func (ClusterEndpointArrayOutput) ToClusterEndpointArrayOutputWithContext

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

type ClusterEndpointInput

type ClusterEndpointInput interface {
	pulumi.Input

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

type ClusterEndpointMap

type ClusterEndpointMap map[string]ClusterEndpointInput

func (ClusterEndpointMap) ElementType

func (ClusterEndpointMap) ElementType() reflect.Type

func (ClusterEndpointMap) ToClusterEndpointMapOutput

func (i ClusterEndpointMap) ToClusterEndpointMapOutput() ClusterEndpointMapOutput

func (ClusterEndpointMap) ToClusterEndpointMapOutputWithContext

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

type ClusterEndpointMapInput

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

type ClusterEndpointMapOutput struct{ *pulumi.OutputState }

func (ClusterEndpointMapOutput) ElementType

func (ClusterEndpointMapOutput) ElementType() reflect.Type

func (ClusterEndpointMapOutput) MapIndex

func (ClusterEndpointMapOutput) ToClusterEndpointMapOutput

func (o ClusterEndpointMapOutput) ToClusterEndpointMapOutput() ClusterEndpointMapOutput

func (ClusterEndpointMapOutput) ToClusterEndpointMapOutputWithContext

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

type ClusterEndpointOutput

type ClusterEndpointOutput struct{ *pulumi.OutputState }

func (ClusterEndpointOutput) Arn

Amazon Resource Name (ARN) of cluster

func (ClusterEndpointOutput) ClusterEndpointIdentifier

func (o ClusterEndpointOutput) ClusterEndpointIdentifier() pulumi.StringOutput

The identifier to use for the new endpoint. This parameter is stored as a lowercase string.

func (ClusterEndpointOutput) ClusterIdentifier

func (o ClusterEndpointOutput) ClusterIdentifier() pulumi.StringOutput

The cluster identifier.

func (ClusterEndpointOutput) CustomEndpointType

func (o ClusterEndpointOutput) CustomEndpointType() pulumi.StringOutput

The type of the endpoint. One of: READER , ANY .

func (ClusterEndpointOutput) ElementType

func (ClusterEndpointOutput) ElementType() reflect.Type

func (ClusterEndpointOutput) Endpoint

A custom endpoint for the Aurora cluster

func (ClusterEndpointOutput) ExcludedMembers

func (o ClusterEndpointOutput) ExcludedMembers() pulumi.StringArrayOutput

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`.

func (ClusterEndpointOutput) StaticMembers

List of DB instance identifiers that are part of the custom endpoint group. Conflicts with `excludedMembers`.

func (ClusterEndpointOutput) Tags

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

func (ClusterEndpointOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ClusterEndpointOutput) ToClusterEndpointOutput

func (o ClusterEndpointOutput) ToClusterEndpointOutput() ClusterEndpointOutput

func (ClusterEndpointOutput) ToClusterEndpointOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ClusterEndpointState) ElementType

func (ClusterEndpointState) ElementType() reflect.Type

type ClusterInput

type ClusterInput interface {
	pulumi.Input

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

type ClusterInstance

type ClusterInstance struct {
	pulumi.CustomResourceState

	// Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolOutput `pulumi:"applyImmediately"`
	// Amazon Resource Name (ARN) of cluster instance
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrOutput `pulumi:"autoMinorVersionUpgrade"`
	// 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"`
	// Identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringOutput `pulumi:"caCertIdentifier"`
	// 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"`
	// Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrOutput `pulumi:"customIamInstanceProfile"`
	// Name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringOutput `pulumi:"dbParameterGroupName"`
	// 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"`
	// Region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringOutput `pulumi:"dbiResourceId"`
	// DNS address for this instance. May not be writable
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// Name of the database engine to be used for the RDS cluster instance.
	// Valid Values: `aurora-mysql`, `aurora-postgresql`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database engine version.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Database engine version
	EngineVersionActual pulumi.StringOutput `pulumi:"engineVersionActual"`
	// Identifier for the RDS instance, if omitted, Pulumi 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"`
	// 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"`
	// ARN for the KMS encryption key if one is set to the cluster.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// 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"`
	// 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"`
	// Network type of the DB instance.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// Specifies whether Performance Insights is enabled or not.
	PerformanceInsightsEnabled pulumi.BoolOutput `pulumi:"performanceInsightsEnabled"`
	// 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"`
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntOutput `pulumi:"performanceInsightsRetentionPeriod"`
	// Database port
	Port pulumi.IntOutput `pulumi:"port"`
	// Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.
	PreferredBackupWindow pulumi.StringOutput `pulumi:"preferredBackupWindow"`
	// 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.BoolOutput `pulumi:"publiclyAccessible"`
	// Specifies whether the DB cluster is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.
	Writer pulumi.BoolOutput `pulumi:"writer"`
}

Provides an RDS Cluster Instance Resource. A Cluster Instance Resource defines attributes that are specific to a single instance in a RDS Cluster, 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][5] 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.

> **NOTE:** `aurora` is no longer a valid `engine` because of [Amazon Aurora's MySQL-Compatible Edition version 1 end of life](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.MySQL56.EOL.html).

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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 index := 0; index < 2; index++ {
			key0 := index
			val0 := index
			__res, err := rds.NewClusterInstance(ctx, fmt.Sprintf("clusterInstances-%v", key0), &rds.ClusterInstanceArgs{
				Identifier:        pulumi.String(fmt.Sprintf("aurora-cluster-demo-%v", 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

Using `pulumi import`, import RDS Cluster Instances using the `identifier`. For example:

```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

func (*ClusterInstance) ElementType() reflect.Type

func (*ClusterInstance) ToClusterInstanceOutput

func (i *ClusterInstance) ToClusterInstanceOutput() ClusterInstanceOutput

func (*ClusterInstance) ToClusterInstanceOutputWithContext

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

type ClusterInstanceArgs

type ClusterInstanceArgs struct {
	// Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolPtrInput
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// 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
	// Identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// 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
	// Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrInput
	// Name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringPtrInput
	// DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.
	DbSubnetGroupName pulumi.StringPtrInput
	// Name of the database engine to be used for the RDS cluster instance.
	// Valid Values: `aurora-mysql`, `aurora-postgresql`.
	Engine pulumi.StringInput
	// Database engine version.
	EngineVersion pulumi.StringPtrInput
	// Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier.
	Identifier pulumi.StringPtrInput
	// Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
	IdentifierPrefix pulumi.StringPtrInput
	// 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
	// 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
	// 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
	// ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntPtrInput
	// Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.
	PreferredBackupWindow pulumi.StringPtrInput
	// 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
	// Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterInstance resource.

func (ClusterInstanceArgs) ElementType

func (ClusterInstanceArgs) ElementType() reflect.Type

type ClusterInstanceArray

type ClusterInstanceArray []ClusterInstanceInput

func (ClusterInstanceArray) ElementType

func (ClusterInstanceArray) ElementType() reflect.Type

func (ClusterInstanceArray) ToClusterInstanceArrayOutput

func (i ClusterInstanceArray) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArray) ToClusterInstanceArrayOutputWithContext

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

type ClusterInstanceArrayInput

type ClusterInstanceArrayInput interface {
	pulumi.Input

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

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

ClusterInstanceArray{ ClusterInstanceArgs{...} }

type ClusterInstanceArrayOutput

type ClusterInstanceArrayOutput struct{ *pulumi.OutputState }

func (ClusterInstanceArrayOutput) ElementType

func (ClusterInstanceArrayOutput) ElementType() reflect.Type

func (ClusterInstanceArrayOutput) Index

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput

func (o ClusterInstanceArrayOutput) ToClusterInstanceArrayOutput() ClusterInstanceArrayOutput

func (ClusterInstanceArrayOutput) ToClusterInstanceArrayOutputWithContext

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

type ClusterInstanceInput

type ClusterInstanceInput interface {
	pulumi.Input

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

type ClusterInstanceMap

type ClusterInstanceMap map[string]ClusterInstanceInput

func (ClusterInstanceMap) ElementType

func (ClusterInstanceMap) ElementType() reflect.Type

func (ClusterInstanceMap) ToClusterInstanceMapOutput

func (i ClusterInstanceMap) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMap) ToClusterInstanceMapOutputWithContext

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

type ClusterInstanceMapInput

type ClusterInstanceMapInput interface {
	pulumi.Input

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

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

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

type ClusterInstanceMapOutput

type ClusterInstanceMapOutput struct{ *pulumi.OutputState }

func (ClusterInstanceMapOutput) ElementType

func (ClusterInstanceMapOutput) ElementType() reflect.Type

func (ClusterInstanceMapOutput) MapIndex

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutput

func (o ClusterInstanceMapOutput) ToClusterInstanceMapOutput() ClusterInstanceMapOutput

func (ClusterInstanceMapOutput) ToClusterInstanceMapOutputWithContext

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

type ClusterInstanceOutput

type ClusterInstanceOutput struct{ *pulumi.OutputState }

func (ClusterInstanceOutput) ApplyImmediately

func (o ClusterInstanceOutput) ApplyImmediately() pulumi.BoolOutput

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

func (ClusterInstanceOutput) Arn

Amazon Resource Name (ARN) of cluster instance

func (ClusterInstanceOutput) AutoMinorVersionUpgrade

func (o ClusterInstanceOutput) AutoMinorVersionUpgrade() pulumi.BoolPtrOutput

Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.

func (ClusterInstanceOutput) AvailabilityZone

func (o ClusterInstanceOutput) AvailabilityZone() pulumi.StringOutput

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.

func (ClusterInstanceOutput) CaCertIdentifier

func (o ClusterInstanceOutput) CaCertIdentifier() pulumi.StringOutput

Identifier of the CA certificate for the DB instance.

func (ClusterInstanceOutput) ClusterIdentifier

func (o ClusterInstanceOutput) ClusterIdentifier() pulumi.StringOutput

Identifier of the `rds.Cluster` in which to launch this instance.

func (ClusterInstanceOutput) CopyTagsToSnapshot

func (o ClusterInstanceOutput) CopyTagsToSnapshot() pulumi.BoolPtrOutput

Indicates whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.

func (ClusterInstanceOutput) CustomIamInstanceProfile added in v6.1.0

func (o ClusterInstanceOutput) CustomIamInstanceProfile() pulumi.StringPtrOutput

Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

func (ClusterInstanceOutput) DbParameterGroupName

func (o ClusterInstanceOutput) DbParameterGroupName() pulumi.StringOutput

Name of the DB parameter group to associate with this instance.

func (ClusterInstanceOutput) DbSubnetGroupName

func (o ClusterInstanceOutput) DbSubnetGroupName() pulumi.StringOutput

DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.

func (ClusterInstanceOutput) DbiResourceId

func (o ClusterInstanceOutput) DbiResourceId() pulumi.StringOutput

Region-unique, immutable identifier for the DB instance.

func (ClusterInstanceOutput) ElementType

func (ClusterInstanceOutput) ElementType() reflect.Type

func (ClusterInstanceOutput) Endpoint

DNS address for this instance. May not be writable

func (ClusterInstanceOutput) Engine

Name of the database engine to be used for the RDS cluster instance. Valid Values: `aurora-mysql`, `aurora-postgresql`.

func (ClusterInstanceOutput) EngineVersion

func (o ClusterInstanceOutput) EngineVersion() pulumi.StringOutput

Database engine version.

func (ClusterInstanceOutput) EngineVersionActual

func (o ClusterInstanceOutput) EngineVersionActual() pulumi.StringOutput

Database engine version

func (ClusterInstanceOutput) Identifier

func (o ClusterInstanceOutput) Identifier() pulumi.StringOutput

Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier.

func (ClusterInstanceOutput) IdentifierPrefix

func (o ClusterInstanceOutput) IdentifierPrefix() pulumi.StringOutput

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

func (ClusterInstanceOutput) InstanceClass

func (o ClusterInstanceOutput) InstanceClass() pulumi.StringOutput

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.

func (ClusterInstanceOutput) KmsKeyId

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

func (ClusterInstanceOutput) MonitoringInterval

func (o ClusterInstanceOutput) MonitoringInterval() pulumi.IntPtrOutput

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.

func (ClusterInstanceOutput) MonitoringRoleArn

func (o ClusterInstanceOutput) MonitoringRoleArn() pulumi.StringOutput

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.

func (ClusterInstanceOutput) NetworkType

func (o ClusterInstanceOutput) NetworkType() pulumi.StringOutput

Network type of the DB instance.

func (ClusterInstanceOutput) PerformanceInsightsEnabled

func (o ClusterInstanceOutput) PerformanceInsightsEnabled() pulumi.BoolOutput

Specifies whether Performance Insights is enabled or not.

func (ClusterInstanceOutput) PerformanceInsightsKmsKeyId

func (o ClusterInstanceOutput) PerformanceInsightsKmsKeyId() pulumi.StringOutput

ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.

func (ClusterInstanceOutput) PerformanceInsightsRetentionPeriod

func (o ClusterInstanceOutput) PerformanceInsightsRetentionPeriod() pulumi.IntOutput

Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.

func (ClusterInstanceOutput) Port

Database port

func (ClusterInstanceOutput) PreferredBackupWindow

func (o ClusterInstanceOutput) PreferredBackupWindow() pulumi.StringOutput

Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.

func (ClusterInstanceOutput) PreferredMaintenanceWindow

func (o ClusterInstanceOutput) PreferredMaintenanceWindow() pulumi.StringOutput

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

func (ClusterInstanceOutput) PromotionTier

func (o ClusterInstanceOutput) PromotionTier() pulumi.IntPtrOutput

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

func (ClusterInstanceOutput) PubliclyAccessible

func (o ClusterInstanceOutput) PubliclyAccessible() pulumi.BoolOutput

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.

func (ClusterInstanceOutput) StorageEncrypted

func (o ClusterInstanceOutput) StorageEncrypted() pulumi.BoolOutput

Specifies whether the DB cluster is encrypted.

func (ClusterInstanceOutput) Tags

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

func (ClusterInstanceOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ClusterInstanceOutput) ToClusterInstanceOutput

func (o ClusterInstanceOutput) ToClusterInstanceOutput() ClusterInstanceOutput

func (ClusterInstanceOutput) ToClusterInstanceOutputWithContext

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

func (ClusterInstanceOutput) Writer

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

type ClusterInstanceState

type ClusterInstanceState struct {
	// Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`.
	ApplyImmediately pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) of cluster instance
	Arn pulumi.StringPtrInput
	// Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
	AutoMinorVersionUpgrade pulumi.BoolPtrInput
	// 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
	// Identifier of the CA certificate for the DB instance.
	CaCertIdentifier pulumi.StringPtrInput
	// 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
	// Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrInput
	// Name of the DB parameter group to associate with this instance.
	DbParameterGroupName pulumi.StringPtrInput
	// DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`.
	DbSubnetGroupName pulumi.StringPtrInput
	// Region-unique, immutable identifier for the DB instance.
	DbiResourceId pulumi.StringPtrInput
	// DNS address for this instance. May not be writable
	Endpoint pulumi.StringPtrInput
	// Name of the database engine to be used for the RDS cluster instance.
	// Valid Values: `aurora-mysql`, `aurora-postgresql`.
	Engine pulumi.StringPtrInput
	// Database engine version.
	EngineVersion pulumi.StringPtrInput
	// Database engine version
	EngineVersionActual pulumi.StringPtrInput
	// Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier.
	Identifier pulumi.StringPtrInput
	// Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
	IdentifierPrefix pulumi.StringPtrInput
	// 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
	// ARN for the KMS encryption key if one is set to the cluster.
	KmsKeyId pulumi.StringPtrInput
	// 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
	// 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
	// Network type of the DB instance.
	NetworkType pulumi.StringPtrInput
	// Specifies whether Performance Insights is enabled or not.
	PerformanceInsightsEnabled pulumi.BoolPtrInput
	// ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
	PerformanceInsightsKmsKeyId pulumi.StringPtrInput
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
	PerformanceInsightsRetentionPeriod pulumi.IntPtrInput
	// Database port
	Port pulumi.IntPtrInput
	// Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.
	PreferredBackupWindow pulumi.StringPtrInput
	// 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
	// Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Boolean indicating if this instance is writable. `False` indicates this instance is a read replica.
	Writer pulumi.BoolPtrInput
}

func (ClusterInstanceState) ElementType

func (ClusterInstanceState) ElementType() reflect.Type

type ClusterMap

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext

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

type ClusterMapInput

type ClusterMapInput interface {
	pulumi.Input

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

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

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

type ClusterMapOutput

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex

func (ClusterMapOutput) ToClusterMapOutput

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext

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

type ClusterMasterUserSecret

type ClusterMasterUserSecret struct {
	// ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// Amazon Resource Name (ARN) of the secret.
	SecretArn *string `pulumi:"secretArn"`
	// Status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus *string `pulumi:"secretStatus"`
}

type ClusterMasterUserSecretArgs

type ClusterMasterUserSecretArgs struct {
	// ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// Amazon Resource Name (ARN) of the secret.
	SecretArn pulumi.StringPtrInput `pulumi:"secretArn"`
	// Status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus pulumi.StringPtrInput `pulumi:"secretStatus"`
}

func (ClusterMasterUserSecretArgs) ElementType

func (ClusterMasterUserSecretArgs) ToClusterMasterUserSecretOutput

func (i ClusterMasterUserSecretArgs) ToClusterMasterUserSecretOutput() ClusterMasterUserSecretOutput

func (ClusterMasterUserSecretArgs) ToClusterMasterUserSecretOutputWithContext

func (i ClusterMasterUserSecretArgs) ToClusterMasterUserSecretOutputWithContext(ctx context.Context) ClusterMasterUserSecretOutput

type ClusterMasterUserSecretArray

type ClusterMasterUserSecretArray []ClusterMasterUserSecretInput

func (ClusterMasterUserSecretArray) ElementType

func (ClusterMasterUserSecretArray) ToClusterMasterUserSecretArrayOutput

func (i ClusterMasterUserSecretArray) ToClusterMasterUserSecretArrayOutput() ClusterMasterUserSecretArrayOutput

func (ClusterMasterUserSecretArray) ToClusterMasterUserSecretArrayOutputWithContext

func (i ClusterMasterUserSecretArray) ToClusterMasterUserSecretArrayOutputWithContext(ctx context.Context) ClusterMasterUserSecretArrayOutput

type ClusterMasterUserSecretArrayInput

type ClusterMasterUserSecretArrayInput interface {
	pulumi.Input

	ToClusterMasterUserSecretArrayOutput() ClusterMasterUserSecretArrayOutput
	ToClusterMasterUserSecretArrayOutputWithContext(context.Context) ClusterMasterUserSecretArrayOutput
}

ClusterMasterUserSecretArrayInput is an input type that accepts ClusterMasterUserSecretArray and ClusterMasterUserSecretArrayOutput values. You can construct a concrete instance of `ClusterMasterUserSecretArrayInput` via:

ClusterMasterUserSecretArray{ ClusterMasterUserSecretArgs{...} }

type ClusterMasterUserSecretArrayOutput

type ClusterMasterUserSecretArrayOutput struct{ *pulumi.OutputState }

func (ClusterMasterUserSecretArrayOutput) ElementType

func (ClusterMasterUserSecretArrayOutput) Index

func (ClusterMasterUserSecretArrayOutput) ToClusterMasterUserSecretArrayOutput

func (o ClusterMasterUserSecretArrayOutput) ToClusterMasterUserSecretArrayOutput() ClusterMasterUserSecretArrayOutput

func (ClusterMasterUserSecretArrayOutput) ToClusterMasterUserSecretArrayOutputWithContext

func (o ClusterMasterUserSecretArrayOutput) ToClusterMasterUserSecretArrayOutputWithContext(ctx context.Context) ClusterMasterUserSecretArrayOutput

type ClusterMasterUserSecretInput

type ClusterMasterUserSecretInput interface {
	pulumi.Input

	ToClusterMasterUserSecretOutput() ClusterMasterUserSecretOutput
	ToClusterMasterUserSecretOutputWithContext(context.Context) ClusterMasterUserSecretOutput
}

ClusterMasterUserSecretInput is an input type that accepts ClusterMasterUserSecretArgs and ClusterMasterUserSecretOutput values. You can construct a concrete instance of `ClusterMasterUserSecretInput` via:

ClusterMasterUserSecretArgs{...}

type ClusterMasterUserSecretOutput

type ClusterMasterUserSecretOutput struct{ *pulumi.OutputState }

func (ClusterMasterUserSecretOutput) ElementType

func (ClusterMasterUserSecretOutput) KmsKeyId

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

func (ClusterMasterUserSecretOutput) SecretArn

Amazon Resource Name (ARN) of the secret.

func (ClusterMasterUserSecretOutput) SecretStatus

Status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.

func (ClusterMasterUserSecretOutput) ToClusterMasterUserSecretOutput

func (o ClusterMasterUserSecretOutput) ToClusterMasterUserSecretOutput() ClusterMasterUserSecretOutput

func (ClusterMasterUserSecretOutput) ToClusterMasterUserSecretOutputWithContext

func (o ClusterMasterUserSecretOutput) ToClusterMasterUserSecretOutputWithContext(ctx context.Context) ClusterMasterUserSecretOutput

type ClusterOutput

type ClusterOutput struct{ *pulumi.OutputState }

func (ClusterOutput) AllocatedStorage

func (o ClusterOutput) AllocatedStorage() pulumi.IntOutput

The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.

func (ClusterOutput) AllowMajorVersionUpgrade

func (o ClusterOutput) AllowMajorVersionUpgrade() pulumi.BoolPtrOutput

Enable to allow major engine version upgrades when changing engine versions. Defaults to `false`.

func (ClusterOutput) ApplyImmediately

func (o ClusterOutput) ApplyImmediately() pulumi.BoolOutput

Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`. See [Amazon RDS Documentation for more information.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)

func (ClusterOutput) Arn

Amazon Resource Name (ARN) of cluster

func (ClusterOutput) AvailabilityZones

func (o ClusterOutput) AvailabilityZones() pulumi.StringArrayOutput

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 pulumi up. We recommend specifying 3 AZs or using the `lifecycle` configuration block `ignoreChanges` argument if necessary. A maximum of 3 AZs can be configured.

func (ClusterOutput) BacktrackWindow

func (o ClusterOutput) BacktrackWindow() pulumi.IntPtrOutput

Target backtrack window, in seconds. Only available for `aurora` and `aurora-mysql` engines currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)

func (ClusterOutput) BackupRetentionPeriod

func (o ClusterOutput) BackupRetentionPeriod() pulumi.IntOutput

Days to retain backups for. Default `1`

func (ClusterOutput) ClusterIdentifier

func (o ClusterOutput) ClusterIdentifier() pulumi.StringOutput

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

func (ClusterOutput) ClusterIdentifierPrefix

func (o ClusterOutput) ClusterIdentifierPrefix() pulumi.StringOutput

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

func (ClusterOutput) ClusterMembers

func (o ClusterOutput) ClusterMembers() pulumi.StringArrayOutput

List of RDS Instances that are a part of this cluster

func (ClusterOutput) ClusterResourceId

func (o ClusterOutput) ClusterResourceId() pulumi.StringOutput

RDS Cluster Resource ID

func (ClusterOutput) CopyTagsToSnapshot

func (o ClusterOutput) CopyTagsToSnapshot() pulumi.BoolPtrOutput

Copy all Cluster `tags` to snapshots. Default is `false`.

func (ClusterOutput) DatabaseName

func (o ClusterOutput) DatabaseName() pulumi.StringOutput

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)

func (ClusterOutput) DbClusterInstanceClass

func (o ClusterOutput) DbClusterInstanceClass() pulumi.StringPtrOutput

The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example `db.m6g.xlarge`. Not all DB instance classes are available in all AWS Regions, or for all database engines. For the full list of DB instance classes and availability for your engine, see [DB instance class](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) in the Amazon RDS User Guide.

func (ClusterOutput) DbClusterParameterGroupName

func (o ClusterOutput) DbClusterParameterGroupName() pulumi.StringOutput

A cluster parameter group to associate with the cluster.

func (ClusterOutput) DbInstanceParameterGroupName

func (o ClusterOutput) DbInstanceParameterGroupName() pulumi.StringPtrOutput

Instance parameter group to associate with all instances of the DB cluster. The `dbInstanceParameterGroupName` parameter is only valid in combination with the `allowMajorVersionUpgrade` parameter.

func (ClusterOutput) DbSubnetGroupName

func (o ClusterOutput) DbSubnetGroupName() pulumi.StringOutput

DB subnet group to associate with this DB cluster. **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.

func (ClusterOutput) DbSystemId added in v6.1.0

func (o ClusterOutput) DbSystemId() pulumi.StringOutput

For use with RDS Custom.

func (ClusterOutput) DeleteAutomatedBackups added in v6.10.0

func (o ClusterOutput) DeleteAutomatedBackups() pulumi.BoolPtrOutput

Specifies whether to remove automated backups immediately after the DB cluster is deleted. Default is `true`.

func (ClusterOutput) DeletionProtection

func (o ClusterOutput) DeletionProtection() pulumi.BoolPtrOutput

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

func (ClusterOutput) Domain added in v6.23.0

The ID of the Directory Service Active Directory domain to create the cluster in.

func (ClusterOutput) DomainIamRoleName added in v6.23.0

func (o ClusterOutput) DomainIamRoleName() pulumi.StringPtrOutput

The name of the IAM role to be used when making API calls to the Directory Service.

func (ClusterOutput) ElementType

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) EnableGlobalWriteForwarding

func (o ClusterOutput) EnableGlobalWriteForwarding() pulumi.BoolPtrOutput

Whether cluster should forward writes to an associated global cluster. Applied to secondary clusters to enable them to forward writes to an `rds.GlobalCluster`'s primary cluster. See the [Aurora Userguide documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-write-forwarding.html) for more information.

func (ClusterOutput) EnableHttpEndpoint

func (o ClusterOutput) EnableHttpEndpoint() pulumi.BoolPtrOutput

Enable HTTP endpoint (data API). Only valid when `engineMode` is set to `serverless`.

func (ClusterOutput) EnabledCloudwatchLogsExports

func (o ClusterOutput) EnabledCloudwatchLogsExports() pulumi.StringArrayOutput

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).

func (ClusterOutput) Endpoint

func (o ClusterOutput) Endpoint() pulumi.StringOutput

DNS address of the RDS instance

func (ClusterOutput) Engine

func (o ClusterOutput) Engine() pulumi.StringOutput

Name of the database engine to be used for this DB cluster. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).

func (ClusterOutput) EngineMode

func (o ClusterOutput) EngineMode() pulumi.StringPtrOutput

Database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `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`.

func (ClusterOutput) EngineVersion

func (o ClusterOutput) EngineVersion() pulumi.StringOutput

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, or by running `aws rds describe-db-engine-versions`. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`. The value can contain a partial version where supported by the API. The actual engine version used is returned in the attribute `engineVersionActual`, , see Attribute Reference below.

func (ClusterOutput) EngineVersionActual

func (o ClusterOutput) EngineVersionActual() pulumi.StringOutput

Running version of the database.

func (ClusterOutput) FinalSnapshotIdentifier

func (o ClusterOutput) FinalSnapshotIdentifier() pulumi.StringPtrOutput

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

func (ClusterOutput) GlobalClusterIdentifier

func (o ClusterOutput) GlobalClusterIdentifier() pulumi.StringPtrOutput

Global cluster identifier specified on `rds.GlobalCluster`.

func (ClusterOutput) HostedZoneId

func (o ClusterOutput) HostedZoneId() pulumi.StringOutput

Route53 Hosted Zone ID of the endpoint

func (ClusterOutput) IamDatabaseAuthenticationEnabled

func (o ClusterOutput) IamDatabaseAuthenticationEnabled() pulumi.BoolPtrOutput

Specifies whether or not 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.

func (ClusterOutput) IamRoles

func (o ClusterOutput) IamRoles() pulumi.StringArrayOutput

List of ARNs for the IAM roles to associate to the RDS Cluster.

func (ClusterOutput) Iops

Amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid Iops values, see [Amazon RDS Provisioned IOPS storage to improve performance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS) in the Amazon RDS User Guide. (This setting is required to create a Multi-AZ DB cluster). Must be a multiple between .5 and 50 of the storage amount for the DB cluster.

func (ClusterOutput) KmsKeyId

func (o ClusterOutput) KmsKeyId() pulumi.StringOutput

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

func (ClusterOutput) ManageMasterUserPassword

func (o ClusterOutput) ManageMasterUserPassword() pulumi.BoolPtrOutput

Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `masterPassword` is provided.

func (ClusterOutput) MasterPassword

func (o ClusterOutput) MasterPassword() pulumi.StringPtrOutput

Password for the master DB user. Note that this may show up in logs, and it will be stored in the state file. Please refer to the [RDS Naming Constraints](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). Cannot be set if `manageMasterUserPassword` is set to `true`.

func (ClusterOutput) MasterUserSecretKmsKeyId

func (o ClusterOutput) MasterUserSecretKmsKeyId() pulumi.StringOutput

Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.

func (ClusterOutput) MasterUserSecrets

func (o ClusterOutput) MasterUserSecrets() ClusterMasterUserSecretArrayOutput

Block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.

func (ClusterOutput) MasterUsername

func (o ClusterOutput) MasterUsername() pulumi.StringOutput

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.

func (ClusterOutput) NetworkType

func (o ClusterOutput) NetworkType() pulumi.StringOutput

Network type of the cluster. Valid values: `IPV4`, `DUAL`.

func (ClusterOutput) Port

func (o ClusterOutput) Port() pulumi.IntOutput

Port on which the DB accepts connections

func (ClusterOutput) PreferredBackupWindow

func (o ClusterOutput) PreferredBackupWindow() pulumi.StringOutput

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

func (ClusterOutput) PreferredMaintenanceWindow

func (o ClusterOutput) PreferredMaintenanceWindow() pulumi.StringOutput

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

func (ClusterOutput) ReaderEndpoint

func (o ClusterOutput) ReaderEndpoint() pulumi.StringOutput

Read-only endpoint for the Aurora cluster, automatically load-balanced across replicas

func (ClusterOutput) ReplicationSourceIdentifier

func (o ClusterOutput) ReplicationSourceIdentifier() pulumi.StringPtrOutput

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 the `lifecycle` configuration block `ignoreChanges` argument to prevent this provider from showing differences for this argument instead of configuring this value.

func (ClusterOutput) RestoreToPointInTime

func (o ClusterOutput) RestoreToPointInTime() ClusterRestoreToPointInTimePtrOutput

Nested attribute for [point in time restore](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_PIT.html). More details below.

func (ClusterOutput) S3Import

func (ClusterOutput) ScalingConfiguration

func (o ClusterOutput) ScalingConfiguration() ClusterScalingConfigurationPtrOutput

Nested attribute with scaling properties. Only valid when `engineMode` is set to `serverless`. More details below.

func (ClusterOutput) Serverlessv2ScalingConfiguration

func (o ClusterOutput) Serverlessv2ScalingConfiguration() ClusterServerlessv2ScalingConfigurationPtrOutput

Nested attribute with scaling properties for ServerlessV2. Only valid when `engineMode` is set to `provisioned`. More details below.

func (ClusterOutput) SkipFinalSnapshot

func (o ClusterOutput) SkipFinalSnapshot() pulumi.BoolPtrOutput

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

func (ClusterOutput) SnapshotIdentifier

func (o ClusterOutput) SnapshotIdentifier() pulumi.StringPtrOutput

Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Conflicts with `globalClusterIdentifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a snapshot.

func (ClusterOutput) SourceRegion

func (o ClusterOutput) SourceRegion() pulumi.StringPtrOutput

The source region for an encrypted replica DB cluster.

func (ClusterOutput) StorageEncrypted

func (o ClusterOutput) StorageEncrypted() pulumi.BoolOutput

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.

func (ClusterOutput) StorageType

func (o ClusterOutput) StorageType() pulumi.StringOutput

(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).

func (ClusterOutput) Tags

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

func (ClusterOutput) TagsAll deprecated

func (o ClusterOutput) TagsAll() pulumi.StringMapOutput

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

Deprecated: Please use `tags` instead.

func (ClusterOutput) ToClusterOutput

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext

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

func (ClusterOutput) VpcSecurityGroupIds

func (o ClusterOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

List of VPC security groups to associate with the Cluster

type ClusterParameterGroup

type ClusterParameterGroup struct {
	pulumi.CustomResourceState

	// The ARN of the 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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

Using `pulumi import`, import RDS Cluster Parameter Groups using the `name`. For example:

```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

func (*ClusterParameterGroup) ElementType() reflect.Type

func (*ClusterParameterGroup) ToClusterParameterGroupOutput

func (i *ClusterParameterGroup) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (*ClusterParameterGroup) ToClusterParameterGroupOutputWithContext

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

type ClusterParameterGroupArgs

type ClusterParameterGroupArgs struct {
	// The description of the 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterParameterGroup resource.

func (ClusterParameterGroupArgs) ElementType

func (ClusterParameterGroupArgs) ElementType() reflect.Type

type ClusterParameterGroupArray

type ClusterParameterGroupArray []ClusterParameterGroupInput

func (ClusterParameterGroupArray) ElementType

func (ClusterParameterGroupArray) ElementType() reflect.Type

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput

func (i ClusterParameterGroupArray) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArray) ToClusterParameterGroupArrayOutputWithContext

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

type ClusterParameterGroupArrayInput

type ClusterParameterGroupArrayInput interface {
	pulumi.Input

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

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

ClusterParameterGroupArray{ ClusterParameterGroupArgs{...} }

type ClusterParameterGroupArrayOutput

type ClusterParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupArrayOutput) ElementType

func (ClusterParameterGroupArrayOutput) Index

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput

func (o ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutput() ClusterParameterGroupArrayOutput

func (ClusterParameterGroupArrayOutput) ToClusterParameterGroupArrayOutputWithContext

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

type ClusterParameterGroupInput

type ClusterParameterGroupInput interface {
	pulumi.Input

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

type ClusterParameterGroupMap

type ClusterParameterGroupMap map[string]ClusterParameterGroupInput

func (ClusterParameterGroupMap) ElementType

func (ClusterParameterGroupMap) ElementType() reflect.Type

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutput

func (i ClusterParameterGroupMap) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMap) ToClusterParameterGroupMapOutputWithContext

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

type ClusterParameterGroupMapInput

type ClusterParameterGroupMapInput interface {
	pulumi.Input

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

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

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

type ClusterParameterGroupMapOutput

type ClusterParameterGroupMapOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupMapOutput) ElementType

func (ClusterParameterGroupMapOutput) MapIndex

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput

func (o ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutput() ClusterParameterGroupMapOutput

func (ClusterParameterGroupMapOutput) ToClusterParameterGroupMapOutputWithContext

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

type ClusterParameterGroupOutput

type ClusterParameterGroupOutput struct{ *pulumi.OutputState }

func (ClusterParameterGroupOutput) Arn

The ARN of the db cluster parameter group.

func (ClusterParameterGroupOutput) Description

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

func (ClusterParameterGroupOutput) ElementType

func (ClusterParameterGroupOutput) Family

The family of the DB cluster parameter group.

func (ClusterParameterGroupOutput) Name

The name of the DB parameter.

func (ClusterParameterGroupOutput) NamePrefix

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

func (ClusterParameterGroupOutput) Parameters

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.

func (ClusterParameterGroupOutput) Tags

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

func (ClusterParameterGroupOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutput

func (o ClusterParameterGroupOutput) ToClusterParameterGroupOutput() ClusterParameterGroupOutput

func (ClusterParameterGroupOutput) ToClusterParameterGroupOutputWithContext

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

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 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ClusterParameterGroupState) ElementType

func (ClusterParameterGroupState) ElementType() reflect.Type

type ClusterRestoreToPointInTime

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"`
	// Identifier of the source database cluster from which to restore. When restoring from a cluster in another AWS account, the identifier is the ARN of that cluster.
	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

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"`
	// Identifier of the source database cluster from which to restore. When restoring from a cluster in another AWS account, the identifier is the ARN of that cluster.
	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

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutput

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutput() ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimeOutputWithContext

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

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutput

func (i ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimeArgs) ToClusterRestoreToPointInTimePtrOutputWithContext

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

type ClusterRestoreToPointInTimeInput

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

type ClusterRestoreToPointInTimeOutput struct{ *pulumi.OutputState }

func (ClusterRestoreToPointInTimeOutput) ElementType

func (ClusterRestoreToPointInTimeOutput) RestoreToTime

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

func (ClusterRestoreToPointInTimeOutput) RestoreType

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

func (ClusterRestoreToPointInTimeOutput) SourceClusterIdentifier

func (o ClusterRestoreToPointInTimeOutput) SourceClusterIdentifier() pulumi.StringOutput

Identifier of the source database cluster from which to restore. When restoring from a cluster in another AWS account, the identifier is the ARN of that cluster.

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutput

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutput() ClusterRestoreToPointInTimeOutput

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimeOutputWithContext

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

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutput

func (o ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimeOutput) ToClusterRestoreToPointInTimePtrOutputWithContext

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

func (ClusterRestoreToPointInTimeOutput) UseLatestRestorableTime

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

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

type ClusterRestoreToPointInTimePtrOutput

type ClusterRestoreToPointInTimePtrOutput struct{ *pulumi.OutputState }

func (ClusterRestoreToPointInTimePtrOutput) Elem

func (ClusterRestoreToPointInTimePtrOutput) ElementType

func (ClusterRestoreToPointInTimePtrOutput) RestoreToTime

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

func (ClusterRestoreToPointInTimePtrOutput) RestoreType

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

func (ClusterRestoreToPointInTimePtrOutput) SourceClusterIdentifier

func (o ClusterRestoreToPointInTimePtrOutput) SourceClusterIdentifier() pulumi.StringPtrOutput

Identifier of the source database cluster from which to restore. When restoring from a cluster in another AWS account, the identifier is the ARN of that cluster.

func (ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutput

func (o ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutput() ClusterRestoreToPointInTimePtrOutput

func (ClusterRestoreToPointInTimePtrOutput) ToClusterRestoreToPointInTimePtrOutputWithContext

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

func (ClusterRestoreToPointInTimePtrOutput) UseLatestRestorableTime

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 ClusterRoleAssociation

type ClusterRoleAssociation struct {
	pulumi.CustomResourceState

	// DB Cluster Identifier to associate with the IAM Role.
	DbClusterIdentifier pulumi.StringOutput `pulumi:"dbClusterIdentifier"`
	// 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 Cluster.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
}

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

* [Creating an IAM Role to Allow Amazon Aurora to Access AWS Services](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Integrating.Authorizing.IAM.CreateRole.html) * [Importing Amazon S3 Data into an RDS PostgreSQL DB Cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PostgreSQL.S3Import.html)

## Example Usage

```go package main

import (

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

)

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

```

## Import

Using `pulumi import`, import `aws_rds_cluster_role_association` using the DB Cluster Identifier and IAM Role ARN separated by a comma (`,`). For example:

```sh

$ pulumi import aws:rds/clusterRoleAssociation:ClusterRoleAssociation example my-db-cluster,arn:aws:iam::123456789012:role/my-role

```

func GetClusterRoleAssociation

func GetClusterRoleAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterRoleAssociationState, opts ...pulumi.ResourceOption) (*ClusterRoleAssociation, error)

GetClusterRoleAssociation gets an existing ClusterRoleAssociation 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 NewClusterRoleAssociation

func NewClusterRoleAssociation(ctx *pulumi.Context,
	name string, args *ClusterRoleAssociationArgs, opts ...pulumi.ResourceOption) (*ClusterRoleAssociation, error)

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

func (*ClusterRoleAssociation) ElementType

func (*ClusterRoleAssociation) ElementType() reflect.Type

func (*ClusterRoleAssociation) ToClusterRoleAssociationOutput

func (i *ClusterRoleAssociation) ToClusterRoleAssociationOutput() ClusterRoleAssociationOutput

func (*ClusterRoleAssociation) ToClusterRoleAssociationOutputWithContext

func (i *ClusterRoleAssociation) ToClusterRoleAssociationOutputWithContext(ctx context.Context) ClusterRoleAssociationOutput

type ClusterRoleAssociationArgs

type ClusterRoleAssociationArgs struct {
	// DB Cluster Identifier to associate with the IAM Role.
	DbClusterIdentifier 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 Cluster.
	RoleArn pulumi.StringInput
}

The set of arguments for constructing a ClusterRoleAssociation resource.

func (ClusterRoleAssociationArgs) ElementType

func (ClusterRoleAssociationArgs) ElementType() reflect.Type

type ClusterRoleAssociationArray

type ClusterRoleAssociationArray []ClusterRoleAssociationInput

func (ClusterRoleAssociationArray) ElementType

func (ClusterRoleAssociationArray) ToClusterRoleAssociationArrayOutput

func (i ClusterRoleAssociationArray) ToClusterRoleAssociationArrayOutput() ClusterRoleAssociationArrayOutput

func (ClusterRoleAssociationArray) ToClusterRoleAssociationArrayOutputWithContext

func (i ClusterRoleAssociationArray) ToClusterRoleAssociationArrayOutputWithContext(ctx context.Context) ClusterRoleAssociationArrayOutput

type ClusterRoleAssociationArrayInput

type ClusterRoleAssociationArrayInput interface {
	pulumi.Input

	ToClusterRoleAssociationArrayOutput() ClusterRoleAssociationArrayOutput
	ToClusterRoleAssociationArrayOutputWithContext(context.Context) ClusterRoleAssociationArrayOutput
}

ClusterRoleAssociationArrayInput is an input type that accepts ClusterRoleAssociationArray and ClusterRoleAssociationArrayOutput values. You can construct a concrete instance of `ClusterRoleAssociationArrayInput` via:

ClusterRoleAssociationArray{ ClusterRoleAssociationArgs{...} }

type ClusterRoleAssociationArrayOutput

type ClusterRoleAssociationArrayOutput struct{ *pulumi.OutputState }

func (ClusterRoleAssociationArrayOutput) ElementType

func (ClusterRoleAssociationArrayOutput) Index

func (ClusterRoleAssociationArrayOutput) ToClusterRoleAssociationArrayOutput

func (o ClusterRoleAssociationArrayOutput) ToClusterRoleAssociationArrayOutput() ClusterRoleAssociationArrayOutput

func (ClusterRoleAssociationArrayOutput) ToClusterRoleAssociationArrayOutputWithContext

func (o ClusterRoleAssociationArrayOutput) ToClusterRoleAssociationArrayOutputWithContext(ctx context.Context) ClusterRoleAssociationArrayOutput

type ClusterRoleAssociationInput

type ClusterRoleAssociationInput interface {
	pulumi.Input

	ToClusterRoleAssociationOutput() ClusterRoleAssociationOutput
	ToClusterRoleAssociationOutputWithContext(ctx context.Context) ClusterRoleAssociationOutput
}

type ClusterRoleAssociationMap

type ClusterRoleAssociationMap map[string]ClusterRoleAssociationInput

func (ClusterRoleAssociationMap) ElementType

func (ClusterRoleAssociationMap) ElementType() reflect.Type

func (ClusterRoleAssociationMap) ToClusterRoleAssociationMapOutput

func (i ClusterRoleAssociationMap) ToClusterRoleAssociationMapOutput() ClusterRoleAssociationMapOutput

func (ClusterRoleAssociationMap) ToClusterRoleAssociationMapOutputWithContext

func (i ClusterRoleAssociationMap) ToClusterRoleAssociationMapOutputWithContext(ctx context.Context) ClusterRoleAssociationMapOutput

type ClusterRoleAssociationMapInput

type ClusterRoleAssociationMapInput interface {
	pulumi.Input

	ToClusterRoleAssociationMapOutput() ClusterRoleAssociationMapOutput
	ToClusterRoleAssociationMapOutputWithContext(context.Context) ClusterRoleAssociationMapOutput
}

ClusterRoleAssociationMapInput is an input type that accepts ClusterRoleAssociationMap and ClusterRoleAssociationMapOutput values. You can construct a concrete instance of `ClusterRoleAssociationMapInput` via:

ClusterRoleAssociationMap{ "key": ClusterRoleAssociationArgs{...} }

type ClusterRoleAssociationMapOutput

type ClusterRoleAssociationMapOutput struct{ *pulumi.OutputState }

func (ClusterRoleAssociationMapOutput) ElementType

func (ClusterRoleAssociationMapOutput) MapIndex

func (ClusterRoleAssociationMapOutput) ToClusterRoleAssociationMapOutput

func (o ClusterRoleAssociationMapOutput) ToClusterRoleAssociationMapOutput() ClusterRoleAssociationMapOutput

func (ClusterRoleAssociationMapOutput) ToClusterRoleAssociationMapOutputWithContext

func (o ClusterRoleAssociationMapOutput) ToClusterRoleAssociationMapOutputWithContext(ctx context.Context) ClusterRoleAssociationMapOutput

type ClusterRoleAssociationOutput

type ClusterRoleAssociationOutput struct{ *pulumi.OutputState }

func (ClusterRoleAssociationOutput) DbClusterIdentifier

func (o ClusterRoleAssociationOutput) DbClusterIdentifier() pulumi.StringOutput

DB Cluster Identifier to associate with the IAM Role.

func (ClusterRoleAssociationOutput) ElementType

func (ClusterRoleAssociationOutput) FeatureName

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).

func (ClusterRoleAssociationOutput) RoleArn

Amazon Resource Name (ARN) of the IAM Role to associate with the DB Cluster.

func (ClusterRoleAssociationOutput) ToClusterRoleAssociationOutput

func (o ClusterRoleAssociationOutput) ToClusterRoleAssociationOutput() ClusterRoleAssociationOutput

func (ClusterRoleAssociationOutput) ToClusterRoleAssociationOutputWithContext

func (o ClusterRoleAssociationOutput) ToClusterRoleAssociationOutputWithContext(ctx context.Context) ClusterRoleAssociationOutput

type ClusterRoleAssociationState

type ClusterRoleAssociationState struct {
	// DB Cluster Identifier to associate with the IAM Role.
	DbClusterIdentifier 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 Cluster.
	RoleArn pulumi.StringPtrInput
}

func (ClusterRoleAssociationState) ElementType

type ClusterS3Import

type ClusterS3Import struct {
	// 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
	//
	// This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database. This only works currently with the aurora engine. See AWS for currently supported engines and options. See [Aurora S3 Migration Docs](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3).
	SourceEngineVersion string `pulumi:"sourceEngineVersion"`
}

type ClusterS3ImportArgs

type ClusterS3ImportArgs struct {
	// 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
	//
	// This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database. This only works currently with the aurora engine. See AWS for currently supported engines and options. See [Aurora S3 Migration Docs](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3).
	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

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

This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database. This only works currently with the aurora engine. See AWS for currently supported engines and options. See [Aurora S3 Migration Docs](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3).

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

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

This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database. This only works currently with the aurora engine. See AWS for currently supported engines and options. See [Aurora S3 Migration Docs](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3).

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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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

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

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

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

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

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

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

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

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 ClusterServerlessv2ScalingConfiguration

type ClusterServerlessv2ScalingConfiguration struct {
	// 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 float64 `pulumi:"maxCapacity"`
	// 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 float64 `pulumi:"minCapacity"`
}

type ClusterServerlessv2ScalingConfigurationArgs

type ClusterServerlessv2ScalingConfigurationArgs struct {
	// 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.Float64Input `pulumi:"maxCapacity"`
	// 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.Float64Input `pulumi:"minCapacity"`
}

func (ClusterServerlessv2ScalingConfigurationArgs) ElementType

func (ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationOutput

func (i ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationOutput() ClusterServerlessv2ScalingConfigurationOutput

func (ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationOutputWithContext

func (i ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationOutputWithContext(ctx context.Context) ClusterServerlessv2ScalingConfigurationOutput

func (ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationPtrOutput

func (i ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationPtrOutput() ClusterServerlessv2ScalingConfigurationPtrOutput

func (ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext

func (i ClusterServerlessv2ScalingConfigurationArgs) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterServerlessv2ScalingConfigurationPtrOutput

type ClusterServerlessv2ScalingConfigurationInput

type ClusterServerlessv2ScalingConfigurationInput interface {
	pulumi.Input

	ToClusterServerlessv2ScalingConfigurationOutput() ClusterServerlessv2ScalingConfigurationOutput
	ToClusterServerlessv2ScalingConfigurationOutputWithContext(context.Context) ClusterServerlessv2ScalingConfigurationOutput
}

ClusterServerlessv2ScalingConfigurationInput is an input type that accepts ClusterServerlessv2ScalingConfigurationArgs and ClusterServerlessv2ScalingConfigurationOutput values. You can construct a concrete instance of `ClusterServerlessv2ScalingConfigurationInput` via:

ClusterServerlessv2ScalingConfigurationArgs{...}

type ClusterServerlessv2ScalingConfigurationOutput

type ClusterServerlessv2ScalingConfigurationOutput struct{ *pulumi.OutputState }

func (ClusterServerlessv2ScalingConfigurationOutput) ElementType

func (ClusterServerlessv2ScalingConfigurationOutput) MaxCapacity

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 (ClusterServerlessv2ScalingConfigurationOutput) MinCapacity

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 (ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationOutput

func (o ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationOutput() ClusterServerlessv2ScalingConfigurationOutput

func (ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationOutputWithContext

func (o ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationOutputWithContext(ctx context.Context) ClusterServerlessv2ScalingConfigurationOutput

func (ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationPtrOutput

func (o ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationPtrOutput() ClusterServerlessv2ScalingConfigurationPtrOutput

func (ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext

func (o ClusterServerlessv2ScalingConfigurationOutput) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterServerlessv2ScalingConfigurationPtrOutput

type ClusterServerlessv2ScalingConfigurationPtrInput

type ClusterServerlessv2ScalingConfigurationPtrInput interface {
	pulumi.Input

	ToClusterServerlessv2ScalingConfigurationPtrOutput() ClusterServerlessv2ScalingConfigurationPtrOutput
	ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext(context.Context) ClusterServerlessv2ScalingConfigurationPtrOutput
}

ClusterServerlessv2ScalingConfigurationPtrInput is an input type that accepts ClusterServerlessv2ScalingConfigurationArgs, ClusterServerlessv2ScalingConfigurationPtr and ClusterServerlessv2ScalingConfigurationPtrOutput values. You can construct a concrete instance of `ClusterServerlessv2ScalingConfigurationPtrInput` via:

        ClusterServerlessv2ScalingConfigurationArgs{...}

or:

        nil

type ClusterServerlessv2ScalingConfigurationPtrOutput

type ClusterServerlessv2ScalingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ClusterServerlessv2ScalingConfigurationPtrOutput) Elem

func (ClusterServerlessv2ScalingConfigurationPtrOutput) ElementType

func (ClusterServerlessv2ScalingConfigurationPtrOutput) MaxCapacity

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 (ClusterServerlessv2ScalingConfigurationPtrOutput) MinCapacity

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 (ClusterServerlessv2ScalingConfigurationPtrOutput) ToClusterServerlessv2ScalingConfigurationPtrOutput

func (o ClusterServerlessv2ScalingConfigurationPtrOutput) ToClusterServerlessv2ScalingConfigurationPtrOutput() ClusterServerlessv2ScalingConfigurationPtrOutput

func (ClusterServerlessv2ScalingConfigurationPtrOutput) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext

func (o ClusterServerlessv2ScalingConfigurationPtrOutput) ToClusterServerlessv2ScalingConfigurationPtrOutputWithContext(ctx context.Context) ClusterServerlessv2ScalingConfigurationPtrOutput

type ClusterSnapshot

type ClusterSnapshot struct {
	pulumi.CustomResourceState

	// 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"`
	// 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"`
	// Whether the DB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"`
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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

Using `pulumi import`, import `aws_db_cluster_snapshot` using the cluster snapshot identifier. For example:

```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

func (*ClusterSnapshot) ElementType() reflect.Type

func (*ClusterSnapshot) ToClusterSnapshotOutput

func (i *ClusterSnapshot) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (*ClusterSnapshot) ToClusterSnapshotOutputWithContext

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

type ClusterSnapshotArgs

type ClusterSnapshotArgs struct {
	// The 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ClusterSnapshot resource.

func (ClusterSnapshotArgs) ElementType

func (ClusterSnapshotArgs) ElementType() reflect.Type

type ClusterSnapshotArray

type ClusterSnapshotArray []ClusterSnapshotInput

func (ClusterSnapshotArray) ElementType

func (ClusterSnapshotArray) ElementType() reflect.Type

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutput

func (i ClusterSnapshotArray) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArray) ToClusterSnapshotArrayOutputWithContext

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

type ClusterSnapshotArrayInput

type ClusterSnapshotArrayInput interface {
	pulumi.Input

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

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

ClusterSnapshotArray{ ClusterSnapshotArgs{...} }

type ClusterSnapshotArrayOutput

type ClusterSnapshotArrayOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotArrayOutput) ElementType

func (ClusterSnapshotArrayOutput) ElementType() reflect.Type

func (ClusterSnapshotArrayOutput) Index

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput

func (o ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutput() ClusterSnapshotArrayOutput

func (ClusterSnapshotArrayOutput) ToClusterSnapshotArrayOutputWithContext

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

type ClusterSnapshotInput

type ClusterSnapshotInput interface {
	pulumi.Input

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

type ClusterSnapshotMap

type ClusterSnapshotMap map[string]ClusterSnapshotInput

func (ClusterSnapshotMap) ElementType

func (ClusterSnapshotMap) ElementType() reflect.Type

func (ClusterSnapshotMap) ToClusterSnapshotMapOutput

func (i ClusterSnapshotMap) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMap) ToClusterSnapshotMapOutputWithContext

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

type ClusterSnapshotMapInput

type ClusterSnapshotMapInput interface {
	pulumi.Input

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

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

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

type ClusterSnapshotMapOutput

type ClusterSnapshotMapOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotMapOutput) ElementType

func (ClusterSnapshotMapOutput) ElementType() reflect.Type

func (ClusterSnapshotMapOutput) MapIndex

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput

func (o ClusterSnapshotMapOutput) ToClusterSnapshotMapOutput() ClusterSnapshotMapOutput

func (ClusterSnapshotMapOutput) ToClusterSnapshotMapOutputWithContext

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

type ClusterSnapshotOutput

type ClusterSnapshotOutput struct{ *pulumi.OutputState }

func (ClusterSnapshotOutput) AllocatedStorage

func (o ClusterSnapshotOutput) AllocatedStorage() pulumi.IntOutput

Allocated storage size in gigabytes (GB).

func (ClusterSnapshotOutput) AvailabilityZones

func (o ClusterSnapshotOutput) AvailabilityZones() pulumi.StringArrayOutput

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

func (ClusterSnapshotOutput) DbClusterIdentifier

func (o ClusterSnapshotOutput) DbClusterIdentifier() pulumi.StringOutput

The DB Cluster Identifier from which to take the snapshot.

func (ClusterSnapshotOutput) DbClusterSnapshotArn

func (o ClusterSnapshotOutput) DbClusterSnapshotArn() pulumi.StringOutput

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

func (ClusterSnapshotOutput) DbClusterSnapshotIdentifier

func (o ClusterSnapshotOutput) DbClusterSnapshotIdentifier() pulumi.StringOutput

The Identifier for the snapshot.

func (ClusterSnapshotOutput) ElementType

func (ClusterSnapshotOutput) ElementType() reflect.Type

func (ClusterSnapshotOutput) Engine

Name of the database engine.

func (ClusterSnapshotOutput) EngineVersion

func (o ClusterSnapshotOutput) EngineVersion() pulumi.StringOutput

Version of the database engine for this DB cluster snapshot.

func (ClusterSnapshotOutput) KmsKeyId

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

func (ClusterSnapshotOutput) LicenseModel

func (o ClusterSnapshotOutput) LicenseModel() pulumi.StringOutput

License model information for the restored DB cluster.

func (ClusterSnapshotOutput) Port

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

func (ClusterSnapshotOutput) SnapshotType

func (o ClusterSnapshotOutput) SnapshotType() pulumi.StringOutput

func (ClusterSnapshotOutput) SourceDbClusterSnapshotArn

func (o ClusterSnapshotOutput) SourceDbClusterSnapshotArn() pulumi.StringOutput

func (ClusterSnapshotOutput) Status

The status of this DB Cluster Snapshot.

func (ClusterSnapshotOutput) StorageEncrypted

func (o ClusterSnapshotOutput) StorageEncrypted() pulumi.BoolOutput

Whether the DB cluster snapshot is encrypted.

func (ClusterSnapshotOutput) Tags

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

func (ClusterSnapshotOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ClusterSnapshotOutput) ToClusterSnapshotOutput

func (o ClusterSnapshotOutput) ToClusterSnapshotOutput() ClusterSnapshotOutput

func (ClusterSnapshotOutput) ToClusterSnapshotOutputWithContext

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

func (ClusterSnapshotOutput) VpcId

The VPC ID associated with the DB cluster snapshot.

type ClusterSnapshotState

type ClusterSnapshotState struct {
	// 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
	// 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
	// Whether the DB cluster snapshot is encrypted.
	StorageEncrypted pulumi.BoolPtrInput
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll 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 {
	// The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.
	AllocatedStorage pulumi.IntPtrInput
	// 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
	// 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 pulumi up.
	// We recommend specifying 3 AZs or using the `lifecycle` configuration block `ignoreChanges` argument if necessary.
	// A maximum of 3 AZs can be configured.
	AvailabilityZones pulumi.StringArrayInput
	// Target backtrack window, in seconds. Only available for `aurora` and `aurora-mysql` engines currently. To disable backtracking, set this value to `0`. Defaults to `0`. Must be between `0` and `259200` (72 hours)
	BacktrackWindow pulumi.IntPtrInput
	// 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
	// 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
	// The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example `db.m6g.xlarge`. Not all DB instance classes are available in all AWS Regions, or for all database engines. For the full list of DB instance classes and availability for your engine, see [DB instance class](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) in the Amazon RDS User Guide.
	DbClusterInstanceClass pulumi.StringPtrInput
	// A cluster parameter group to associate with the cluster.
	DbClusterParameterGroupName pulumi.StringPtrInput
	// Instance parameter group to associate with all instances of the DB cluster. The `dbInstanceParameterGroupName` parameter is only valid in combination with the `allowMajorVersionUpgrade` parameter.
	DbInstanceParameterGroupName pulumi.StringPtrInput
	// DB subnet group to associate with this DB cluster.
	// **NOTE:** This must match the `dbSubnetGroupName` specified on every `rds.ClusterInstance` in the cluster.
	DbSubnetGroupName pulumi.StringPtrInput
	// For use with RDS Custom.
	DbSystemId pulumi.StringPtrInput
	// Specifies whether to remove automated backups immediately after the DB cluster is deleted. Default is `true`.
	DeleteAutomatedBackups pulumi.BoolPtrInput
	// If the DB 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
	// The ID of the Directory Service Active Directory domain to create the cluster in.
	Domain pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service.
	DomainIamRoleName pulumi.StringPtrInput
	// Whether cluster should forward writes to an associated global cluster. Applied to secondary clusters to enable them to forward writes to an `rds.GlobalCluster`'s primary cluster. See the [Aurora Userguide documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-write-forwarding.html) for more information.
	EnableGlobalWriteForwarding 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
	// DNS address of the RDS instance
	Endpoint pulumi.StringPtrInput
	// Name of the database engine to be used for this DB cluster. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).
	Engine pulumi.StringPtrInput
	// Database engine mode. Valid values: `global` (only valid for Aurora MySQL 1.21 and earlier), `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
	// 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, or by running `aws rds describe-db-engine-versions`. For example with Aurora MySQL 2, a potential value for this argument is `5.7.mysql_aurora.2.03.2`. The value can contain a partial version where supported by the API. The actual engine version used is returned in the attribute `engineVersionActual`, , see Attribute Reference below.
	EngineVersion pulumi.StringPtrInput
	// Running version of the database.
	EngineVersionActual pulumi.StringPtrInput
	// Name of your final DB snapshot when this DB cluster is deleted. If omitted, no final snapshot will be made.
	FinalSnapshotIdentifier pulumi.StringPtrInput
	// Global cluster identifier specified on `rds.GlobalCluster`.
	GlobalClusterIdentifier pulumi.StringPtrInput
	// Route53 Hosted Zone ID of the endpoint
	HostedZoneId pulumi.StringPtrInput
	// Specifies whether or not 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
	// List of ARNs for the IAM roles to associate to the RDS Cluster.
	IamRoles pulumi.StringArrayInput
	// Amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster. For information about valid Iops values, see [Amazon RDS Provisioned IOPS storage to improve performance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS) in the Amazon RDS User Guide. (This setting is required to create a Multi-AZ DB cluster). Must be a multiple between .5 and 50 of the storage amount for the DB cluster.
	Iops pulumi.IntPtrInput
	// ARN for the KMS encryption key. When specifying `kmsKeyId`, `storageEncrypted` needs to be set to true.
	KmsKeyId pulumi.StringPtrInput
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `masterPassword` is provided.
	ManageMasterUserPassword pulumi.BoolPtrInput
	// 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). Cannot be set if `manageMasterUserPassword` is set to `true`.
	MasterPassword pulumi.StringPtrInput
	// Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId pulumi.StringPtrInput
	// Block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.
	MasterUserSecrets ClusterMasterUserSecretArrayInput
	// 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
	// Network type of the cluster. Valid values: `IPV4`, `DUAL`.
	NetworkType pulumi.StringPtrInput
	// Port on which the DB accepts connections
	Port pulumi.IntPtrInput
	// Daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.Time in UTC. Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00
	PreferredBackupWindow pulumi.StringPtrInput
	// Weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30
	PreferredMaintenanceWindow pulumi.StringPtrInput
	// 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 the `lifecycle` configuration block `ignoreChanges` argument to prevent this provider from showing differences for this argument instead of configuring this value.
	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
	// Nested attribute with scaling properties for ServerlessV2. Only valid when `engineMode` is set to `provisioned`. More details below.
	Serverlessv2ScalingConfiguration ClusterServerlessv2ScalingConfigurationPtrInput
	// 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. Conflicts with `globalClusterIdentifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a 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
	// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).
	StorageType pulumi.StringPtrInput
	// A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// List of VPC security groups to associate with the Cluster
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type CustomDbEngineVersion added in v6.4.0

type CustomDbEngineVersion struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) for the custom engine version.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The date and time that the CEV was created.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The name of the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3BucketName pulumi.StringPtrOutput `pulumi:"databaseInstallationFilesS3BucketName"`
	// The prefix for the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3Prefix pulumi.StringPtrOutput `pulumi:"databaseInstallationFilesS3Prefix"`
	// The name of the DB parameter group family for the CEV.
	DbParameterGroupFamily pulumi.StringOutput `pulumi:"dbParameterGroupFamily"`
	// The description of the CEV.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the database engine. Valid values are `custom-oracle*`, `custom-sqlserver*`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// The version of the database engine.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The name of the manifest file within the local filesystem. Conflicts with `manifest`.
	Filename pulumi.StringPtrOutput `pulumi:"filename"`
	// The ID of the AMI that was created with the CEV.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// The ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// The major version of the database engine.
	MajorEngineVersion pulumi.StringOutput `pulumi:"majorEngineVersion"`
	// The manifest file, in JSON format, that contains the list of database installation files. Conflicts with `filename`.
	Manifest pulumi.StringPtrOutput `pulumi:"manifest"`
	// The returned manifest file, in JSON format, service generated and often different from input `manifest`.
	ManifestComputed pulumi.StringOutput `pulumi:"manifestComputed"`
	// Used to trigger updates. Must be set to a base64-encoded SHA256 hash of the manifest source specified with `filename`. The usual way to set this is filebase64sha256("manifest.json") where "manifest.json" is the local filename of the manifest source.
	ManifestHash pulumi.StringPtrOutput `pulumi:"manifestHash"`
	// The ID of the AMI to create the CEV from. Required for RDS Custom for SQL Server. For RDS Custom for Oracle, you can specify an AMI ID that was used in a different Oracle CEV.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// The status of the CEV. Valid values are `available`, `inactive`, `inactive-except-restore`.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an custom engine version (CEV) resource for Amazon RDS Custom. For additional information, see [Working with CEVs for RDS Custom for Oracle](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html) and [Working with CEVs for RDS Custom for SQL Server](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev-sqlserver.html) in the the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html).

## Example Usage ### RDS Custom for Oracle Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleKey, err := kms.NewKey(ctx, "exampleKey", &kms.KeyArgs{
			Description: pulumi.String("KMS symmetric key for RDS Custom for Oracle"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewCustomDbEngineVersion(ctx, "exampleCustomDbEngineVersion", &rds.CustomDbEngineVersionArgs{
			DatabaseInstallationFilesS3BucketName: pulumi.String("DOC-EXAMPLE-BUCKET"),
			DatabaseInstallationFilesS3Prefix:     pulumi.String("1915_GI/"),
			Engine:                                pulumi.String("custom-oracle-ee-cdb"),
			EngineVersion:                         pulumi.String("19.cdb_cev1"),
			KmsKeyId:                              exampleKey.Arn,
			Manifest:                              pulumi.String("  {\n	\"databaseInstallationFileNames\":[\"V982063-01.zip\"]\n  }\n"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS Custom for Oracle External Manifest Usage

```go package main

import (

"crypto/sha256"
"os"

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

)

func filebase64sha256OrPanic(path string) string {
	if fileData, err := os.ReadFile(path); err == nil {
		hashedData := sha256.Sum256([]byte(fileData))
		return base64.StdEncoding.EncodeToString(hashedData[:])
	} else {
		panic(err.Error())
	}
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleKey, err := kms.NewKey(ctx, "exampleKey", &kms.KeyArgs{
			Description: pulumi.String("KMS symmetric key for RDS Custom for Oracle"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewCustomDbEngineVersion(ctx, "exampleCustomDbEngineVersion", &rds.CustomDbEngineVersionArgs{
			DatabaseInstallationFilesS3BucketName: pulumi.String("DOC-EXAMPLE-BUCKET"),
			DatabaseInstallationFilesS3Prefix:     pulumi.String("1915_GI/"),
			Engine:                                pulumi.String("custom-oracle-ee-cdb"),
			EngineVersion:                         pulumi.String("19.cdb_cev1"),
			KmsKeyId:                              exampleKey.Arn,
			Filename:                              pulumi.String("manifest_1915_GI.json"),
			ManifestHash:                          filebase64sha256OrPanic(manifest_1915_GI.Json),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS Custom for SQL Server Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewCustomDbEngineVersion(ctx, "test", &rds.CustomDbEngineVersionArgs{
			Engine:        pulumi.String("custom-sqlserver-se"),
			EngineVersion: pulumi.String("15.00.4249.2.cev-1"),
			SourceImageId: pulumi.String("ami-0aa12345678a12ab1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### RDS Custom for SQL Server Usage with AMI from another region

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewAmiCopy(ctx, "example", &ec2.AmiCopyArgs{
			Description:     pulumi.String("A copy of ami-xxxxxxxx"),
			SourceAmiId:     pulumi.String("ami-xxxxxxxx"),
			SourceAmiRegion: pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewCustomDbEngineVersion(ctx, "test", &rds.CustomDbEngineVersionArgs{
			Engine:        pulumi.String("custom-sqlserver-se"),
			EngineVersion: pulumi.String("15.00.4249.2.cev-1"),
			SourceImageId: example.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import custom engine versions for Amazon RDS custom using the `engine` and `engine_version` separated by a colon (`:`). For example:

```sh

$ pulumi import aws:rds/customDbEngineVersion:CustomDbEngineVersion example custom-oracle-ee-cdb:19.cdb_cev1

```

func GetCustomDbEngineVersion added in v6.4.0

func GetCustomDbEngineVersion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomDbEngineVersionState, opts ...pulumi.ResourceOption) (*CustomDbEngineVersion, error)

GetCustomDbEngineVersion gets an existing CustomDbEngineVersion 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 NewCustomDbEngineVersion added in v6.4.0

func NewCustomDbEngineVersion(ctx *pulumi.Context,
	name string, args *CustomDbEngineVersionArgs, opts ...pulumi.ResourceOption) (*CustomDbEngineVersion, error)

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

func (*CustomDbEngineVersion) ElementType added in v6.4.0

func (*CustomDbEngineVersion) ElementType() reflect.Type

func (*CustomDbEngineVersion) ToCustomDbEngineVersionOutput added in v6.4.0

func (i *CustomDbEngineVersion) ToCustomDbEngineVersionOutput() CustomDbEngineVersionOutput

func (*CustomDbEngineVersion) ToCustomDbEngineVersionOutputWithContext added in v6.4.0

func (i *CustomDbEngineVersion) ToCustomDbEngineVersionOutputWithContext(ctx context.Context) CustomDbEngineVersionOutput

type CustomDbEngineVersionArgs added in v6.4.0

type CustomDbEngineVersionArgs struct {
	// The name of the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3BucketName pulumi.StringPtrInput
	// The prefix for the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3Prefix pulumi.StringPtrInput
	// The description of the CEV.
	Description pulumi.StringPtrInput
	// The name of the database engine. Valid values are `custom-oracle*`, `custom-sqlserver*`.
	Engine pulumi.StringInput
	// The version of the database engine.
	EngineVersion pulumi.StringInput
	// The name of the manifest file within the local filesystem. Conflicts with `manifest`.
	Filename pulumi.StringPtrInput
	// The ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.
	KmsKeyId pulumi.StringPtrInput
	// The manifest file, in JSON format, that contains the list of database installation files. Conflicts with `filename`.
	Manifest pulumi.StringPtrInput
	// Used to trigger updates. Must be set to a base64-encoded SHA256 hash of the manifest source specified with `filename`. The usual way to set this is filebase64sha256("manifest.json") where "manifest.json" is the local filename of the manifest source.
	ManifestHash pulumi.StringPtrInput
	// The ID of the AMI to create the CEV from. Required for RDS Custom for SQL Server. For RDS Custom for Oracle, you can specify an AMI ID that was used in a different Oracle CEV.
	SourceImageId pulumi.StringPtrInput
	// The status of the CEV. Valid values are `available`, `inactive`, `inactive-except-restore`.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a CustomDbEngineVersion resource.

func (CustomDbEngineVersionArgs) ElementType added in v6.4.0

func (CustomDbEngineVersionArgs) ElementType() reflect.Type

type CustomDbEngineVersionArray added in v6.4.0

type CustomDbEngineVersionArray []CustomDbEngineVersionInput

func (CustomDbEngineVersionArray) ElementType added in v6.4.0

func (CustomDbEngineVersionArray) ElementType() reflect.Type

func (CustomDbEngineVersionArray) ToCustomDbEngineVersionArrayOutput added in v6.4.0

func (i CustomDbEngineVersionArray) ToCustomDbEngineVersionArrayOutput() CustomDbEngineVersionArrayOutput

func (CustomDbEngineVersionArray) ToCustomDbEngineVersionArrayOutputWithContext added in v6.4.0

func (i CustomDbEngineVersionArray) ToCustomDbEngineVersionArrayOutputWithContext(ctx context.Context) CustomDbEngineVersionArrayOutput

type CustomDbEngineVersionArrayInput added in v6.4.0

type CustomDbEngineVersionArrayInput interface {
	pulumi.Input

	ToCustomDbEngineVersionArrayOutput() CustomDbEngineVersionArrayOutput
	ToCustomDbEngineVersionArrayOutputWithContext(context.Context) CustomDbEngineVersionArrayOutput
}

CustomDbEngineVersionArrayInput is an input type that accepts CustomDbEngineVersionArray and CustomDbEngineVersionArrayOutput values. You can construct a concrete instance of `CustomDbEngineVersionArrayInput` via:

CustomDbEngineVersionArray{ CustomDbEngineVersionArgs{...} }

type CustomDbEngineVersionArrayOutput added in v6.4.0

type CustomDbEngineVersionArrayOutput struct{ *pulumi.OutputState }

func (CustomDbEngineVersionArrayOutput) ElementType added in v6.4.0

func (CustomDbEngineVersionArrayOutput) Index added in v6.4.0

func (CustomDbEngineVersionArrayOutput) ToCustomDbEngineVersionArrayOutput added in v6.4.0

func (o CustomDbEngineVersionArrayOutput) ToCustomDbEngineVersionArrayOutput() CustomDbEngineVersionArrayOutput

func (CustomDbEngineVersionArrayOutput) ToCustomDbEngineVersionArrayOutputWithContext added in v6.4.0

func (o CustomDbEngineVersionArrayOutput) ToCustomDbEngineVersionArrayOutputWithContext(ctx context.Context) CustomDbEngineVersionArrayOutput

type CustomDbEngineVersionInput added in v6.4.0

type CustomDbEngineVersionInput interface {
	pulumi.Input

	ToCustomDbEngineVersionOutput() CustomDbEngineVersionOutput
	ToCustomDbEngineVersionOutputWithContext(ctx context.Context) CustomDbEngineVersionOutput
}

type CustomDbEngineVersionMap added in v6.4.0

type CustomDbEngineVersionMap map[string]CustomDbEngineVersionInput

func (CustomDbEngineVersionMap) ElementType added in v6.4.0

func (CustomDbEngineVersionMap) ElementType() reflect.Type

func (CustomDbEngineVersionMap) ToCustomDbEngineVersionMapOutput added in v6.4.0

func (i CustomDbEngineVersionMap) ToCustomDbEngineVersionMapOutput() CustomDbEngineVersionMapOutput

func (CustomDbEngineVersionMap) ToCustomDbEngineVersionMapOutputWithContext added in v6.4.0

func (i CustomDbEngineVersionMap) ToCustomDbEngineVersionMapOutputWithContext(ctx context.Context) CustomDbEngineVersionMapOutput

type CustomDbEngineVersionMapInput added in v6.4.0

type CustomDbEngineVersionMapInput interface {
	pulumi.Input

	ToCustomDbEngineVersionMapOutput() CustomDbEngineVersionMapOutput
	ToCustomDbEngineVersionMapOutputWithContext(context.Context) CustomDbEngineVersionMapOutput
}

CustomDbEngineVersionMapInput is an input type that accepts CustomDbEngineVersionMap and CustomDbEngineVersionMapOutput values. You can construct a concrete instance of `CustomDbEngineVersionMapInput` via:

CustomDbEngineVersionMap{ "key": CustomDbEngineVersionArgs{...} }

type CustomDbEngineVersionMapOutput added in v6.4.0

type CustomDbEngineVersionMapOutput struct{ *pulumi.OutputState }

func (CustomDbEngineVersionMapOutput) ElementType added in v6.4.0

func (CustomDbEngineVersionMapOutput) MapIndex added in v6.4.0

func (CustomDbEngineVersionMapOutput) ToCustomDbEngineVersionMapOutput added in v6.4.0

func (o CustomDbEngineVersionMapOutput) ToCustomDbEngineVersionMapOutput() CustomDbEngineVersionMapOutput

func (CustomDbEngineVersionMapOutput) ToCustomDbEngineVersionMapOutputWithContext added in v6.4.0

func (o CustomDbEngineVersionMapOutput) ToCustomDbEngineVersionMapOutputWithContext(ctx context.Context) CustomDbEngineVersionMapOutput

type CustomDbEngineVersionOutput added in v6.4.0

type CustomDbEngineVersionOutput struct{ *pulumi.OutputState }

func (CustomDbEngineVersionOutput) Arn added in v6.4.0

The Amazon Resource Name (ARN) for the custom engine version.

func (CustomDbEngineVersionOutput) CreateTime added in v6.4.0

The date and time that the CEV was created.

func (CustomDbEngineVersionOutput) DatabaseInstallationFilesS3BucketName added in v6.4.0

func (o CustomDbEngineVersionOutput) DatabaseInstallationFilesS3BucketName() pulumi.StringPtrOutput

The name of the Amazon S3 bucket that contains the database installation files.

func (CustomDbEngineVersionOutput) DatabaseInstallationFilesS3Prefix added in v6.4.0

func (o CustomDbEngineVersionOutput) DatabaseInstallationFilesS3Prefix() pulumi.StringPtrOutput

The prefix for the Amazon S3 bucket that contains the database installation files.

func (CustomDbEngineVersionOutput) DbParameterGroupFamily added in v6.4.0

func (o CustomDbEngineVersionOutput) DbParameterGroupFamily() pulumi.StringOutput

The name of the DB parameter group family for the CEV.

func (CustomDbEngineVersionOutput) Description added in v6.4.0

The description of the CEV.

func (CustomDbEngineVersionOutput) ElementType added in v6.4.0

func (CustomDbEngineVersionOutput) Engine added in v6.4.0

The name of the database engine. Valid values are `custom-oracle*`, `custom-sqlserver*`.

func (CustomDbEngineVersionOutput) EngineVersion added in v6.4.0

The version of the database engine.

func (CustomDbEngineVersionOutput) Filename added in v6.4.0

The name of the manifest file within the local filesystem. Conflicts with `manifest`.

func (CustomDbEngineVersionOutput) ImageId added in v6.4.0

The ID of the AMI that was created with the CEV.

func (CustomDbEngineVersionOutput) KmsKeyId added in v6.4.0

The ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.

func (CustomDbEngineVersionOutput) MajorEngineVersion added in v6.4.0

func (o CustomDbEngineVersionOutput) MajorEngineVersion() pulumi.StringOutput

The major version of the database engine.

func (CustomDbEngineVersionOutput) Manifest added in v6.4.0

The manifest file, in JSON format, that contains the list of database installation files. Conflicts with `filename`.

func (CustomDbEngineVersionOutput) ManifestComputed added in v6.4.0

func (o CustomDbEngineVersionOutput) ManifestComputed() pulumi.StringOutput

The returned manifest file, in JSON format, service generated and often different from input `manifest`.

func (CustomDbEngineVersionOutput) ManifestHash added in v6.4.0

Used to trigger updates. Must be set to a base64-encoded SHA256 hash of the manifest source specified with `filename`. The usual way to set this is filebase64sha256("manifest.json") where "manifest.json" is the local filename of the manifest source.

func (CustomDbEngineVersionOutput) SourceImageId added in v6.4.0

The ID of the AMI to create the CEV from. Required for RDS Custom for SQL Server. For RDS Custom for Oracle, you can specify an AMI ID that was used in a different Oracle CEV.

func (CustomDbEngineVersionOutput) Status added in v6.4.0

The status of the CEV. Valid values are `available`, `inactive`, `inactive-except-restore`.

func (CustomDbEngineVersionOutput) Tags added in v6.4.0

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

func (CustomDbEngineVersionOutput) TagsAll deprecated added in v6.4.0

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

Deprecated: Please use `tags` instead.

func (CustomDbEngineVersionOutput) ToCustomDbEngineVersionOutput added in v6.4.0

func (o CustomDbEngineVersionOutput) ToCustomDbEngineVersionOutput() CustomDbEngineVersionOutput

func (CustomDbEngineVersionOutput) ToCustomDbEngineVersionOutputWithContext added in v6.4.0

func (o CustomDbEngineVersionOutput) ToCustomDbEngineVersionOutputWithContext(ctx context.Context) CustomDbEngineVersionOutput

type CustomDbEngineVersionState added in v6.4.0

type CustomDbEngineVersionState struct {
	// The Amazon Resource Name (ARN) for the custom engine version.
	Arn pulumi.StringPtrInput
	// The date and time that the CEV was created.
	CreateTime pulumi.StringPtrInput
	// The name of the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3BucketName pulumi.StringPtrInput
	// The prefix for the Amazon S3 bucket that contains the database installation files.
	DatabaseInstallationFilesS3Prefix pulumi.StringPtrInput
	// The name of the DB parameter group family for the CEV.
	DbParameterGroupFamily pulumi.StringPtrInput
	// The description of the CEV.
	Description pulumi.StringPtrInput
	// The name of the database engine. Valid values are `custom-oracle*`, `custom-sqlserver*`.
	Engine pulumi.StringPtrInput
	// The version of the database engine.
	EngineVersion pulumi.StringPtrInput
	// The name of the manifest file within the local filesystem. Conflicts with `manifest`.
	Filename pulumi.StringPtrInput
	// The ID of the AMI that was created with the CEV.
	ImageId pulumi.StringPtrInput
	// The ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.
	KmsKeyId pulumi.StringPtrInput
	// The major version of the database engine.
	MajorEngineVersion pulumi.StringPtrInput
	// The manifest file, in JSON format, that contains the list of database installation files. Conflicts with `filename`.
	Manifest pulumi.StringPtrInput
	// The returned manifest file, in JSON format, service generated and often different from input `manifest`.
	ManifestComputed pulumi.StringPtrInput
	// Used to trigger updates. Must be set to a base64-encoded SHA256 hash of the manifest source specified with `filename`. The usual way to set this is filebase64sha256("manifest.json") where "manifest.json" is the local filename of the manifest source.
	ManifestHash pulumi.StringPtrInput
	// The ID of the AMI to create the CEV from. Required for RDS Custom for SQL Server. For RDS Custom for Oracle, you can specify an AMI ID that was used in a different Oracle CEV.
	SourceImageId pulumi.StringPtrInput
	// The status of the CEV. Valid values are `available`, `inactive`, `inactive-except-restore`.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (CustomDbEngineVersionState) ElementType added in v6.4.0

func (CustomDbEngineVersionState) ElementType() reflect.Type

type EngineMode

type EngineMode string

func (EngineMode) ElementType

func (EngineMode) ElementType() reflect.Type

func (EngineMode) ToEngineModeOutput

func (e EngineMode) ToEngineModeOutput() EngineModeOutput

func (EngineMode) ToEngineModeOutputWithContext

func (e EngineMode) ToEngineModeOutputWithContext(ctx context.Context) EngineModeOutput

func (EngineMode) ToEngineModePtrOutput

func (e EngineMode) ToEngineModePtrOutput() EngineModePtrOutput

func (EngineMode) ToEngineModePtrOutputWithContext

func (e EngineMode) ToEngineModePtrOutputWithContext(ctx context.Context) EngineModePtrOutput

func (EngineMode) ToStringOutput

func (e EngineMode) ToStringOutput() pulumi.StringOutput

func (EngineMode) ToStringOutputWithContext

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

func (EngineMode) ToStringPtrOutput

func (e EngineMode) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineMode) ToStringPtrOutputWithContext

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

type EngineModeInput

type EngineModeInput interface {
	pulumi.Input

	ToEngineModeOutput() EngineModeOutput
	ToEngineModeOutputWithContext(context.Context) EngineModeOutput
}

EngineModeInput is an input type that accepts values of the EngineMode enum A concrete instance of `EngineModeInput` can be one of the following:

EngineModeProvisioned
EngineModeServerless
EngineModeParallelQuery
EngineModeGlobal

type EngineModeOutput

type EngineModeOutput struct{ *pulumi.OutputState }

func (EngineModeOutput) ElementType

func (EngineModeOutput) ElementType() reflect.Type

func (EngineModeOutput) ToEngineModeOutput

func (o EngineModeOutput) ToEngineModeOutput() EngineModeOutput

func (EngineModeOutput) ToEngineModeOutputWithContext

func (o EngineModeOutput) ToEngineModeOutputWithContext(ctx context.Context) EngineModeOutput

func (EngineModeOutput) ToEngineModePtrOutput

func (o EngineModeOutput) ToEngineModePtrOutput() EngineModePtrOutput

func (EngineModeOutput) ToEngineModePtrOutputWithContext

func (o EngineModeOutput) ToEngineModePtrOutputWithContext(ctx context.Context) EngineModePtrOutput

func (EngineModeOutput) ToStringOutput

func (o EngineModeOutput) ToStringOutput() pulumi.StringOutput

func (EngineModeOutput) ToStringOutputWithContext

func (o EngineModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (EngineModeOutput) ToStringPtrOutput

func (o EngineModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineModeOutput) ToStringPtrOutputWithContext

func (o EngineModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type EngineModePtrInput

type EngineModePtrInput interface {
	pulumi.Input

	ToEngineModePtrOutput() EngineModePtrOutput
	ToEngineModePtrOutputWithContext(context.Context) EngineModePtrOutput
}

func EngineModePtr

func EngineModePtr(v string) EngineModePtrInput

type EngineModePtrOutput

type EngineModePtrOutput struct{ *pulumi.OutputState }

func (EngineModePtrOutput) Elem

func (EngineModePtrOutput) ElementType

func (EngineModePtrOutput) ElementType() reflect.Type

func (EngineModePtrOutput) ToEngineModePtrOutput

func (o EngineModePtrOutput) ToEngineModePtrOutput() EngineModePtrOutput

func (EngineModePtrOutput) ToEngineModePtrOutputWithContext

func (o EngineModePtrOutput) ToEngineModePtrOutputWithContext(ctx context.Context) EngineModePtrOutput

func (EngineModePtrOutput) ToStringPtrOutput

func (o EngineModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineModePtrOutput) ToStringPtrOutputWithContext

func (o EngineModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type EngineType

type EngineType string

func (EngineType) ElementType

func (EngineType) ElementType() reflect.Type

func (EngineType) ToEngineTypeOutput

func (e EngineType) ToEngineTypeOutput() EngineTypeOutput

func (EngineType) ToEngineTypeOutputWithContext

func (e EngineType) ToEngineTypeOutputWithContext(ctx context.Context) EngineTypeOutput

func (EngineType) ToEngineTypePtrOutput

func (e EngineType) ToEngineTypePtrOutput() EngineTypePtrOutput

func (EngineType) ToEngineTypePtrOutputWithContext

func (e EngineType) ToEngineTypePtrOutputWithContext(ctx context.Context) EngineTypePtrOutput

func (EngineType) ToStringOutput

func (e EngineType) ToStringOutput() pulumi.StringOutput

func (EngineType) ToStringOutputWithContext

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

func (EngineType) ToStringPtrOutput

func (e EngineType) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineType) ToStringPtrOutputWithContext

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

type EngineTypeInput

type EngineTypeInput interface {
	pulumi.Input

	ToEngineTypeOutput() EngineTypeOutput
	ToEngineTypeOutputWithContext(context.Context) EngineTypeOutput
}

EngineTypeInput is an input type that accepts values of the EngineType enum A concrete instance of `EngineTypeInput` can be one of the following:

EngineTypeAurora
EngineTypeAuroraMysql
EngineTypeAuroraPostgresql

type EngineTypeOutput

type EngineTypeOutput struct{ *pulumi.OutputState }

func (EngineTypeOutput) ElementType

func (EngineTypeOutput) ElementType() reflect.Type

func (EngineTypeOutput) ToEngineTypeOutput

func (o EngineTypeOutput) ToEngineTypeOutput() EngineTypeOutput

func (EngineTypeOutput) ToEngineTypeOutputWithContext

func (o EngineTypeOutput) ToEngineTypeOutputWithContext(ctx context.Context) EngineTypeOutput

func (EngineTypeOutput) ToEngineTypePtrOutput

func (o EngineTypeOutput) ToEngineTypePtrOutput() EngineTypePtrOutput

func (EngineTypeOutput) ToEngineTypePtrOutputWithContext

func (o EngineTypeOutput) ToEngineTypePtrOutputWithContext(ctx context.Context) EngineTypePtrOutput

func (EngineTypeOutput) ToStringOutput

func (o EngineTypeOutput) ToStringOutput() pulumi.StringOutput

func (EngineTypeOutput) ToStringOutputWithContext

func (o EngineTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (EngineTypeOutput) ToStringPtrOutput

func (o EngineTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineTypeOutput) ToStringPtrOutputWithContext

func (o EngineTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type EngineTypePtrInput

type EngineTypePtrInput interface {
	pulumi.Input

	ToEngineTypePtrOutput() EngineTypePtrOutput
	ToEngineTypePtrOutputWithContext(context.Context) EngineTypePtrOutput
}

func EngineTypePtr

func EngineTypePtr(v string) EngineTypePtrInput

type EngineTypePtrOutput

type EngineTypePtrOutput struct{ *pulumi.OutputState }

func (EngineTypePtrOutput) Elem

func (EngineTypePtrOutput) ElementType

func (EngineTypePtrOutput) ElementType() reflect.Type

func (EngineTypePtrOutput) ToEngineTypePtrOutput

func (o EngineTypePtrOutput) ToEngineTypePtrOutput() EngineTypePtrOutput

func (EngineTypePtrOutput) ToEngineTypePtrOutputWithContext

func (o EngineTypePtrOutput) ToEngineTypePtrOutputWithContext(ctx context.Context) EngineTypePtrOutput

func (EngineTypePtrOutput) ToStringPtrOutput

func (o EngineTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (EngineTypePtrOutput) ToStringPtrOutputWithContext

func (o EngineTypePtrOutput) 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.StringOutput `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`, `db-cluster-snapshot`, or `db-proxy`. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrOutput `pulumi:"sourceType"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a DB event subscription resource.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		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"),
			DbName:             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.Identifier,
			},
			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

Using `pulumi import`, import DB Event Subscriptions using the `name`. For example:

```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

func (*EventSubscription) ElementType() reflect.Type

func (*EventSubscription) ToEventSubscriptionOutput

func (i *EventSubscription) ToEventSubscriptionOutput() EventSubscriptionOutput

func (*EventSubscription) ToEventSubscriptionOutputWithContext

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

type EventSubscriptionArgs

type EventSubscriptionArgs struct {
	// A boolean flag to enable/disable the subscription. Defaults to true.
	Enabled pulumi.BoolPtrInput
	// A list of event categories for a SourceType that you want to subscribe to. See 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`, `db-cluster-snapshot`, or `db-proxy`. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a EventSubscription resource.

func (EventSubscriptionArgs) ElementType

func (EventSubscriptionArgs) ElementType() reflect.Type

type EventSubscriptionArray

type EventSubscriptionArray []EventSubscriptionInput

func (EventSubscriptionArray) ElementType

func (EventSubscriptionArray) ElementType() reflect.Type

func (EventSubscriptionArray) ToEventSubscriptionArrayOutput

func (i EventSubscriptionArray) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArray) ToEventSubscriptionArrayOutputWithContext

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

type EventSubscriptionArrayInput

type EventSubscriptionArrayInput interface {
	pulumi.Input

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

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

EventSubscriptionArray{ EventSubscriptionArgs{...} }

type EventSubscriptionArrayOutput

type EventSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (EventSubscriptionArrayOutput) ElementType

func (EventSubscriptionArrayOutput) Index

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput

func (o EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutput() EventSubscriptionArrayOutput

func (EventSubscriptionArrayOutput) ToEventSubscriptionArrayOutputWithContext

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

type EventSubscriptionInput

type EventSubscriptionInput interface {
	pulumi.Input

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

type EventSubscriptionMap

type EventSubscriptionMap map[string]EventSubscriptionInput

func (EventSubscriptionMap) ElementType

func (EventSubscriptionMap) ElementType() reflect.Type

func (EventSubscriptionMap) ToEventSubscriptionMapOutput

func (i EventSubscriptionMap) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMap) ToEventSubscriptionMapOutputWithContext

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

type EventSubscriptionMapInput

type EventSubscriptionMapInput interface {
	pulumi.Input

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

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

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

type EventSubscriptionMapOutput

type EventSubscriptionMapOutput struct{ *pulumi.OutputState }

func (EventSubscriptionMapOutput) ElementType

func (EventSubscriptionMapOutput) ElementType() reflect.Type

func (EventSubscriptionMapOutput) MapIndex

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutput

func (o EventSubscriptionMapOutput) ToEventSubscriptionMapOutput() EventSubscriptionMapOutput

func (EventSubscriptionMapOutput) ToEventSubscriptionMapOutputWithContext

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

type EventSubscriptionOutput

type EventSubscriptionOutput struct{ *pulumi.OutputState }

func (EventSubscriptionOutput) Arn

The Amazon Resource Name of the RDS event notification subscription

func (EventSubscriptionOutput) CustomerAwsId

func (o EventSubscriptionOutput) CustomerAwsId() pulumi.StringOutput

The AWS customer account associated with the RDS event notification subscription

func (EventSubscriptionOutput) ElementType

func (EventSubscriptionOutput) ElementType() reflect.Type

func (EventSubscriptionOutput) Enabled

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

func (EventSubscriptionOutput) EventCategories

func (o EventSubscriptionOutput) EventCategories() pulumi.StringArrayOutput

A list of event categories for a SourceType that you want to subscribe to. See http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html or run `aws rds describe-event-categories`.

func (EventSubscriptionOutput) Name

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

func (EventSubscriptionOutput) NamePrefix

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

func (EventSubscriptionOutput) SnsTopic

The SNS topic to send events to.

func (EventSubscriptionOutput) SourceIds

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

func (EventSubscriptionOutput) SourceType

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

func (EventSubscriptionOutput) Tags

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

func (EventSubscriptionOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (EventSubscriptionOutput) ToEventSubscriptionOutput

func (o EventSubscriptionOutput) ToEventSubscriptionOutput() EventSubscriptionOutput

func (EventSubscriptionOutput) ToEventSubscriptionOutputWithContext

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

type EventSubscriptionState

type EventSubscriptionState struct {
	// The Amazon Resource Name of the 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`, `db-cluster-snapshot`, or `db-proxy`. If not set, all sources will be subscribed to.
	SourceType pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (EventSubscriptionState) ElementType

func (EventSubscriptionState) ElementType() reflect.Type

type ExportTask

type ExportTask struct {
	pulumi.CustomResourceState

	// Data to be exported from the snapshot. If this parameter is not provided, all the snapshot data is exported. Valid values are documented in the [AWS StartExportTask API documentation](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartExportTask.html#API_StartExportTask_RequestParameters).
	ExportOnlies pulumi.StringArrayOutput `pulumi:"exportOnlies"`
	// Unique identifier for the snapshot export task.
	ExportTaskIdentifier pulumi.StringOutput `pulumi:"exportTaskIdentifier"`
	// Reason the export failed, if it failed.
	FailureCause pulumi.StringOutput `pulumi:"failureCause"`
	// ARN of the IAM role to use for writing to the Amazon S3 bucket.
	IamRoleArn pulumi.StringOutput `pulumi:"iamRoleArn"`
	// ID of the Amazon Web Services KMS key to use to encrypt the snapshot.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Progress of the snapshot export task as a percentage.
	PercentProgress pulumi.IntOutput `pulumi:"percentProgress"`
	// Name of the Amazon S3 bucket to export the snapshot to.
	S3BucketName pulumi.StringOutput `pulumi:"s3BucketName"`
	// Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.
	S3Prefix pulumi.StringOutput `pulumi:"s3Prefix"`
	// Time that the snapshot was created.
	SnapshotTime pulumi.StringOutput `pulumi:"snapshotTime"`
	// Amazon Resource Name (ARN) of the snapshot to export.
	//
	// The following arguments are optional:
	SourceArn pulumi.StringOutput `pulumi:"sourceArn"`
	// Type of source for the export.
	SourceType pulumi.StringOutput `pulumi:"sourceType"`
	// Status of the export task.
	Status pulumi.StringOutput `pulumi:"status"`
	// Time that the snapshot export task completed.
	TaskEndTime pulumi.StringOutput `pulumi:"taskEndTime"`
	// Time that the snapshot export task started.
	TaskStartTime pulumi.StringOutput         `pulumi:"taskStartTime"`
	Timeouts      ExportTaskTimeoutsPtrOutput `pulumi:"timeouts"`
	// Warning about the snapshot export task, if any.
	WarningMessage pulumi.StringOutput `pulumi:"warningMessage"`
}

Resource for managing an AWS RDS (Relational Database) Export Task.

## Example Usage ### Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewExportTask(ctx, "example", &rds.ExportTaskArgs{
			ExportTaskIdentifier: pulumi.String("example"),
			SourceArn:            pulumi.Any(aws_db_snapshot.Example.Db_snapshot_arn),
			S3BucketName:         pulumi.Any(aws_s3_bucket.Example.Id),
			IamRoleArn:           pulumi.Any(aws_iam_role.Example.Arn),
			KmsKeyId:             pulumi.Any(aws_kms_key.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Complete Usage

```go package main

import (

"encoding/json"
"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleBucketV2, err := s3.NewBucketV2(ctx, "exampleBucketV2", &s3.BucketV2Args{
			ForceDestroy: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = s3.NewBucketAclV2(ctx, "exampleBucketAclV2", &s3.BucketAclV2Args{
			Bucket: exampleBucketV2.ID(),
			Acl:    pulumi.String("private"),
		})
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Version": "2012-10-17",
			"Statement": []map[string]interface{}{
				map[string]interface{}{
					"Action": "sts:AssumeRole",
					"Effect": "Allow",
					"Sid":    "",
					"Principal": map[string]interface{}{
						"Service": "export.rds.amazonaws.com",
					},
				},
			},
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		examplePolicyDocument := iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
			Statements: iam.GetPolicyDocumentStatementArray{
				&iam.GetPolicyDocumentStatementArgs{
					Actions: pulumi.StringArray{
						pulumi.String("s3:ListAllMyBuckets"),
					},
					Resources: pulumi.StringArray{
						pulumi.String("*"),
					},
				},
				&iam.GetPolicyDocumentStatementArgs{
					Actions: pulumi.StringArray{
						pulumi.String("s3:GetBucketLocation"),
						pulumi.String("s3:ListBucket"),
					},
					Resources: pulumi.StringArray{
						exampleBucketV2.Arn,
					},
				},
				&iam.GetPolicyDocumentStatementArgs{
					Actions: pulumi.StringArray{
						pulumi.String("s3:GetObject"),
						pulumi.String("s3:PutObject"),
						pulumi.String("s3:DeleteObject"),
					},
					Resources: pulumi.StringArray{
						exampleBucketV2.Arn.ApplyT(func(arn string) (string, error) {
							return fmt.Sprintf("%v/*", arn), nil
						}).(pulumi.StringOutput),
					},
				},
			},
		}, nil)
		examplePolicy, err := iam.NewPolicy(ctx, "examplePolicy", &iam.PolicyArgs{
			Policy: examplePolicyDocument.ApplyT(func(examplePolicyDocument iam.GetPolicyDocumentResult) (*string, error) {
				return &examplePolicyDocument.Json, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "exampleRolePolicyAttachment", &iam.RolePolicyAttachmentArgs{
			Role:      exampleRole.Name,
			PolicyArn: examplePolicy.Arn,
		})
		if err != nil {
			return err
		}
		exampleKey, err := kms.NewKey(ctx, "exampleKey", &kms.KeyArgs{
			DeletionWindowInDays: pulumi.Int(10),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			Identifier:         pulumi.String("example"),
			AllocatedStorage:   pulumi.Int(10),
			DbName:             pulumi.String("test"),
			Engine:             pulumi.String("mysql"),
			EngineVersion:      pulumi.String("5.7"),
			InstanceClass:      pulumi.String("db.t3.micro"),
			Username:           pulumi.String("foo"),
			Password:           pulumi.String("foobarbaz"),
			ParameterGroupName: pulumi.String("default.mysql5.7"),
			SkipFinalSnapshot:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleSnapshot, err := rds.NewSnapshot(ctx, "exampleSnapshot", &rds.SnapshotArgs{
			DbInstanceIdentifier: exampleInstance.Identifier,
			DbSnapshotIdentifier: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewExportTask(ctx, "exampleExportTask", &rds.ExportTaskArgs{
			ExportTaskIdentifier: pulumi.String("example"),
			SourceArn:            exampleSnapshot.DbSnapshotArn,
			S3BucketName:         exampleBucketV2.ID(),
			IamRoleArn:           exampleRole.Arn,
			KmsKeyId:             exampleKey.Arn,
			ExportOnlies: pulumi.StringArray{
				pulumi.String("database"),
			},
			S3Prefix: pulumi.String("my_prefix/example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import a RDS (Relational Database) Export Task using the `export_task_identifier`. For example:

```sh

$ pulumi import aws:rds/exportTask:ExportTask example example

```

func GetExportTask

func GetExportTask(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ExportTaskState, opts ...pulumi.ResourceOption) (*ExportTask, error)

GetExportTask gets an existing ExportTask 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 NewExportTask

func NewExportTask(ctx *pulumi.Context,
	name string, args *ExportTaskArgs, opts ...pulumi.ResourceOption) (*ExportTask, error)

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

func (*ExportTask) ElementType

func (*ExportTask) ElementType() reflect.Type

func (*ExportTask) ToExportTaskOutput

func (i *ExportTask) ToExportTaskOutput() ExportTaskOutput

func (*ExportTask) ToExportTaskOutputWithContext

func (i *ExportTask) ToExportTaskOutputWithContext(ctx context.Context) ExportTaskOutput

type ExportTaskArgs

type ExportTaskArgs struct {
	// Data to be exported from the snapshot. If this parameter is not provided, all the snapshot data is exported. Valid values are documented in the [AWS StartExportTask API documentation](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartExportTask.html#API_StartExportTask_RequestParameters).
	ExportOnlies pulumi.StringArrayInput
	// Unique identifier for the snapshot export task.
	ExportTaskIdentifier pulumi.StringInput
	// ARN of the IAM role to use for writing to the Amazon S3 bucket.
	IamRoleArn pulumi.StringInput
	// ID of the Amazon Web Services KMS key to use to encrypt the snapshot.
	KmsKeyId pulumi.StringInput
	// Name of the Amazon S3 bucket to export the snapshot to.
	S3BucketName pulumi.StringInput
	// Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.
	S3Prefix pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the snapshot to export.
	//
	// The following arguments are optional:
	SourceArn pulumi.StringInput
	Timeouts  ExportTaskTimeoutsPtrInput
}

The set of arguments for constructing a ExportTask resource.

func (ExportTaskArgs) ElementType

func (ExportTaskArgs) ElementType() reflect.Type

type ExportTaskArray

type ExportTaskArray []ExportTaskInput

func (ExportTaskArray) ElementType

func (ExportTaskArray) ElementType() reflect.Type

func (ExportTaskArray) ToExportTaskArrayOutput

func (i ExportTaskArray) ToExportTaskArrayOutput() ExportTaskArrayOutput

func (ExportTaskArray) ToExportTaskArrayOutputWithContext

func (i ExportTaskArray) ToExportTaskArrayOutputWithContext(ctx context.Context) ExportTaskArrayOutput

type ExportTaskArrayInput

type ExportTaskArrayInput interface {
	pulumi.Input

	ToExportTaskArrayOutput() ExportTaskArrayOutput
	ToExportTaskArrayOutputWithContext(context.Context) ExportTaskArrayOutput
}

ExportTaskArrayInput is an input type that accepts ExportTaskArray and ExportTaskArrayOutput values. You can construct a concrete instance of `ExportTaskArrayInput` via:

ExportTaskArray{ ExportTaskArgs{...} }

type ExportTaskArrayOutput

type ExportTaskArrayOutput struct{ *pulumi.OutputState }

func (ExportTaskArrayOutput) ElementType

func (ExportTaskArrayOutput) ElementType() reflect.Type

func (ExportTaskArrayOutput) Index

func (ExportTaskArrayOutput) ToExportTaskArrayOutput

func (o ExportTaskArrayOutput) ToExportTaskArrayOutput() ExportTaskArrayOutput

func (ExportTaskArrayOutput) ToExportTaskArrayOutputWithContext

func (o ExportTaskArrayOutput) ToExportTaskArrayOutputWithContext(ctx context.Context) ExportTaskArrayOutput

type ExportTaskInput

type ExportTaskInput interface {
	pulumi.Input

	ToExportTaskOutput() ExportTaskOutput
	ToExportTaskOutputWithContext(ctx context.Context) ExportTaskOutput
}

type ExportTaskMap

type ExportTaskMap map[string]ExportTaskInput

func (ExportTaskMap) ElementType

func (ExportTaskMap) ElementType() reflect.Type

func (ExportTaskMap) ToExportTaskMapOutput

func (i ExportTaskMap) ToExportTaskMapOutput() ExportTaskMapOutput

func (ExportTaskMap) ToExportTaskMapOutputWithContext

func (i ExportTaskMap) ToExportTaskMapOutputWithContext(ctx context.Context) ExportTaskMapOutput

type ExportTaskMapInput

type ExportTaskMapInput interface {
	pulumi.Input

	ToExportTaskMapOutput() ExportTaskMapOutput
	ToExportTaskMapOutputWithContext(context.Context) ExportTaskMapOutput
}

ExportTaskMapInput is an input type that accepts ExportTaskMap and ExportTaskMapOutput values. You can construct a concrete instance of `ExportTaskMapInput` via:

ExportTaskMap{ "key": ExportTaskArgs{...} }

type ExportTaskMapOutput

type ExportTaskMapOutput struct{ *pulumi.OutputState }

func (ExportTaskMapOutput) ElementType

func (ExportTaskMapOutput) ElementType() reflect.Type

func (ExportTaskMapOutput) MapIndex

func (ExportTaskMapOutput) ToExportTaskMapOutput

func (o ExportTaskMapOutput) ToExportTaskMapOutput() ExportTaskMapOutput

func (ExportTaskMapOutput) ToExportTaskMapOutputWithContext

func (o ExportTaskMapOutput) ToExportTaskMapOutputWithContext(ctx context.Context) ExportTaskMapOutput

type ExportTaskOutput

type ExportTaskOutput struct{ *pulumi.OutputState }

func (ExportTaskOutput) ElementType

func (ExportTaskOutput) ElementType() reflect.Type

func (ExportTaskOutput) ExportOnlies

func (o ExportTaskOutput) ExportOnlies() pulumi.StringArrayOutput

Data to be exported from the snapshot. If this parameter is not provided, all the snapshot data is exported. Valid values are documented in the [AWS StartExportTask API documentation](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartExportTask.html#API_StartExportTask_RequestParameters).

func (ExportTaskOutput) ExportTaskIdentifier

func (o ExportTaskOutput) ExportTaskIdentifier() pulumi.StringOutput

Unique identifier for the snapshot export task.

func (ExportTaskOutput) FailureCause

func (o ExportTaskOutput) FailureCause() pulumi.StringOutput

Reason the export failed, if it failed.

func (ExportTaskOutput) IamRoleArn

func (o ExportTaskOutput) IamRoleArn() pulumi.StringOutput

ARN of the IAM role to use for writing to the Amazon S3 bucket.

func (ExportTaskOutput) KmsKeyId

func (o ExportTaskOutput) KmsKeyId() pulumi.StringOutput

ID of the Amazon Web Services KMS key to use to encrypt the snapshot.

func (ExportTaskOutput) PercentProgress

func (o ExportTaskOutput) PercentProgress() pulumi.IntOutput

Progress of the snapshot export task as a percentage.

func (ExportTaskOutput) S3BucketName

func (o ExportTaskOutput) S3BucketName() pulumi.StringOutput

Name of the Amazon S3 bucket to export the snapshot to.

func (ExportTaskOutput) S3Prefix

func (o ExportTaskOutput) S3Prefix() pulumi.StringOutput

Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.

func (ExportTaskOutput) SnapshotTime

func (o ExportTaskOutput) SnapshotTime() pulumi.StringOutput

Time that the snapshot was created.

func (ExportTaskOutput) SourceArn

func (o ExportTaskOutput) SourceArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the snapshot to export.

The following arguments are optional:

func (ExportTaskOutput) SourceType

func (o ExportTaskOutput) SourceType() pulumi.StringOutput

Type of source for the export.

func (ExportTaskOutput) Status

Status of the export task.

func (ExportTaskOutput) TaskEndTime

func (o ExportTaskOutput) TaskEndTime() pulumi.StringOutput

Time that the snapshot export task completed.

func (ExportTaskOutput) TaskStartTime

func (o ExportTaskOutput) TaskStartTime() pulumi.StringOutput

Time that the snapshot export task started.

func (ExportTaskOutput) Timeouts

func (ExportTaskOutput) ToExportTaskOutput

func (o ExportTaskOutput) ToExportTaskOutput() ExportTaskOutput

func (ExportTaskOutput) ToExportTaskOutputWithContext

func (o ExportTaskOutput) ToExportTaskOutputWithContext(ctx context.Context) ExportTaskOutput

func (ExportTaskOutput) WarningMessage

func (o ExportTaskOutput) WarningMessage() pulumi.StringOutput

Warning about the snapshot export task, if any.

type ExportTaskState

type ExportTaskState struct {
	// Data to be exported from the snapshot. If this parameter is not provided, all the snapshot data is exported. Valid values are documented in the [AWS StartExportTask API documentation](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartExportTask.html#API_StartExportTask_RequestParameters).
	ExportOnlies pulumi.StringArrayInput
	// Unique identifier for the snapshot export task.
	ExportTaskIdentifier pulumi.StringPtrInput
	// Reason the export failed, if it failed.
	FailureCause pulumi.StringPtrInput
	// ARN of the IAM role to use for writing to the Amazon S3 bucket.
	IamRoleArn pulumi.StringPtrInput
	// ID of the Amazon Web Services KMS key to use to encrypt the snapshot.
	KmsKeyId pulumi.StringPtrInput
	// Progress of the snapshot export task as a percentage.
	PercentProgress pulumi.IntPtrInput
	// Name of the Amazon S3 bucket to export the snapshot to.
	S3BucketName pulumi.StringPtrInput
	// Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.
	S3Prefix pulumi.StringPtrInput
	// Time that the snapshot was created.
	SnapshotTime pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the snapshot to export.
	//
	// The following arguments are optional:
	SourceArn pulumi.StringPtrInput
	// Type of source for the export.
	SourceType pulumi.StringPtrInput
	// Status of the export task.
	Status pulumi.StringPtrInput
	// Time that the snapshot export task completed.
	TaskEndTime pulumi.StringPtrInput
	// Time that the snapshot export task started.
	TaskStartTime pulumi.StringPtrInput
	Timeouts      ExportTaskTimeoutsPtrInput
	// Warning about the snapshot export task, if any.
	WarningMessage pulumi.StringPtrInput
}

func (ExportTaskState) ElementType

func (ExportTaskState) ElementType() reflect.Type

type ExportTaskTimeouts

type ExportTaskTimeouts struct {
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Create *string `pulumi:"create"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
	Delete *string `pulumi:"delete"`
}

type ExportTaskTimeoutsArgs

type ExportTaskTimeoutsArgs struct {
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Create pulumi.StringPtrInput `pulumi:"create"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
	Delete pulumi.StringPtrInput `pulumi:"delete"`
}

func (ExportTaskTimeoutsArgs) ElementType

func (ExportTaskTimeoutsArgs) ElementType() reflect.Type

func (ExportTaskTimeoutsArgs) ToExportTaskTimeoutsOutput

func (i ExportTaskTimeoutsArgs) ToExportTaskTimeoutsOutput() ExportTaskTimeoutsOutput

func (ExportTaskTimeoutsArgs) ToExportTaskTimeoutsOutputWithContext

func (i ExportTaskTimeoutsArgs) ToExportTaskTimeoutsOutputWithContext(ctx context.Context) ExportTaskTimeoutsOutput

func (ExportTaskTimeoutsArgs) ToExportTaskTimeoutsPtrOutput

func (i ExportTaskTimeoutsArgs) ToExportTaskTimeoutsPtrOutput() ExportTaskTimeoutsPtrOutput

func (ExportTaskTimeoutsArgs) ToExportTaskTimeoutsPtrOutputWithContext

func (i ExportTaskTimeoutsArgs) ToExportTaskTimeoutsPtrOutputWithContext(ctx context.Context) ExportTaskTimeoutsPtrOutput

type ExportTaskTimeoutsInput

type ExportTaskTimeoutsInput interface {
	pulumi.Input

	ToExportTaskTimeoutsOutput() ExportTaskTimeoutsOutput
	ToExportTaskTimeoutsOutputWithContext(context.Context) ExportTaskTimeoutsOutput
}

ExportTaskTimeoutsInput is an input type that accepts ExportTaskTimeoutsArgs and ExportTaskTimeoutsOutput values. You can construct a concrete instance of `ExportTaskTimeoutsInput` via:

ExportTaskTimeoutsArgs{...}

type ExportTaskTimeoutsOutput

type ExportTaskTimeoutsOutput struct{ *pulumi.OutputState }

func (ExportTaskTimeoutsOutput) Create

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

func (ExportTaskTimeoutsOutput) Delete

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

func (ExportTaskTimeoutsOutput) ElementType

func (ExportTaskTimeoutsOutput) ElementType() reflect.Type

func (ExportTaskTimeoutsOutput) ToExportTaskTimeoutsOutput

func (o ExportTaskTimeoutsOutput) ToExportTaskTimeoutsOutput() ExportTaskTimeoutsOutput

func (ExportTaskTimeoutsOutput) ToExportTaskTimeoutsOutputWithContext

func (o ExportTaskTimeoutsOutput) ToExportTaskTimeoutsOutputWithContext(ctx context.Context) ExportTaskTimeoutsOutput

func (ExportTaskTimeoutsOutput) ToExportTaskTimeoutsPtrOutput

func (o ExportTaskTimeoutsOutput) ToExportTaskTimeoutsPtrOutput() ExportTaskTimeoutsPtrOutput

func (ExportTaskTimeoutsOutput) ToExportTaskTimeoutsPtrOutputWithContext

func (o ExportTaskTimeoutsOutput) ToExportTaskTimeoutsPtrOutputWithContext(ctx context.Context) ExportTaskTimeoutsPtrOutput

type ExportTaskTimeoutsPtrInput

type ExportTaskTimeoutsPtrInput interface {
	pulumi.Input

	ToExportTaskTimeoutsPtrOutput() ExportTaskTimeoutsPtrOutput
	ToExportTaskTimeoutsPtrOutputWithContext(context.Context) ExportTaskTimeoutsPtrOutput
}

ExportTaskTimeoutsPtrInput is an input type that accepts ExportTaskTimeoutsArgs, ExportTaskTimeoutsPtr and ExportTaskTimeoutsPtrOutput values. You can construct a concrete instance of `ExportTaskTimeoutsPtrInput` via:

        ExportTaskTimeoutsArgs{...}

or:

        nil

type ExportTaskTimeoutsPtrOutput

type ExportTaskTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (ExportTaskTimeoutsPtrOutput) Create

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

func (ExportTaskTimeoutsPtrOutput) Delete

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

func (ExportTaskTimeoutsPtrOutput) Elem

func (ExportTaskTimeoutsPtrOutput) ElementType

func (ExportTaskTimeoutsPtrOutput) ToExportTaskTimeoutsPtrOutput

func (o ExportTaskTimeoutsPtrOutput) ToExportTaskTimeoutsPtrOutput() ExportTaskTimeoutsPtrOutput

func (ExportTaskTimeoutsPtrOutput) ToExportTaskTimeoutsPtrOutputWithContext

func (o ExportTaskTimeoutsPtrOutput) ToExportTaskTimeoutsPtrOutputWithContext(ctx context.Context) ExportTaskTimeoutsPtrOutput

type GetCertificateArgs

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 GetCertificateOutputArgs

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

A collection of arguments for invoking getCertificate.

func (GetCertificateOutputArgs) ElementType

func (GetCertificateOutputArgs) ElementType() reflect.Type

type GetCertificateResult

type GetCertificateResult struct {
	// 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

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type GetCertificateResultOutput

type GetCertificateResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCertificate.

func (GetCertificateResultOutput) Arn

ARN of the certificate.

func (GetCertificateResultOutput) CertificateType

func (o GetCertificateResultOutput) CertificateType() pulumi.StringOutput

Type of certificate. For example, `CA`.

func (GetCertificateResultOutput) CustomerOverride

func (o GetCertificateResultOutput) CustomerOverride() pulumi.BoolOutput

Boolean whether there is an override for the default certificate identifier.

func (GetCertificateResultOutput) CustomerOverrideValidTill

func (o GetCertificateResultOutput) CustomerOverrideValidTill() pulumi.StringOutput

If there is an override for the default certificate identifier, when the override expires.

func (GetCertificateResultOutput) ElementType

func (GetCertificateResultOutput) ElementType() reflect.Type

func (GetCertificateResultOutput) Id

func (GetCertificateResultOutput) LatestValidTill

func (o GetCertificateResultOutput) LatestValidTill() pulumi.BoolPtrOutput

func (GetCertificateResultOutput) Thumbprint

Thumbprint of the certificate.

func (GetCertificateResultOutput) ToGetCertificateResultOutput

func (o GetCertificateResultOutput) ToGetCertificateResultOutput() GetCertificateResultOutput

func (GetCertificateResultOutput) ToGetCertificateResultOutputWithContext

func (o GetCertificateResultOutput) ToGetCertificateResultOutputWithContext(ctx context.Context) GetCertificateResultOutput

func (GetCertificateResultOutput) ValidFrom

[RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) of certificate starting validity date.

func (GetCertificateResultOutput) ValidTill

[RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) of certificate ending validity date.

type GetClusterMasterUserSecret

type GetClusterMasterUserSecret struct {
	KmsKeyId     string `pulumi:"kmsKeyId"`
	SecretArn    string `pulumi:"secretArn"`
	SecretStatus string `pulumi:"secretStatus"`
}

type GetClusterMasterUserSecretArgs

type GetClusterMasterUserSecretArgs struct {
	KmsKeyId     pulumi.StringInput `pulumi:"kmsKeyId"`
	SecretArn    pulumi.StringInput `pulumi:"secretArn"`
	SecretStatus pulumi.StringInput `pulumi:"secretStatus"`
}

func (GetClusterMasterUserSecretArgs) ElementType

func (GetClusterMasterUserSecretArgs) ToGetClusterMasterUserSecretOutput

func (i GetClusterMasterUserSecretArgs) ToGetClusterMasterUserSecretOutput() GetClusterMasterUserSecretOutput

func (GetClusterMasterUserSecretArgs) ToGetClusterMasterUserSecretOutputWithContext

func (i GetClusterMasterUserSecretArgs) ToGetClusterMasterUserSecretOutputWithContext(ctx context.Context) GetClusterMasterUserSecretOutput

type GetClusterMasterUserSecretArray

type GetClusterMasterUserSecretArray []GetClusterMasterUserSecretInput

func (GetClusterMasterUserSecretArray) ElementType

func (GetClusterMasterUserSecretArray) ToGetClusterMasterUserSecretArrayOutput

func (i GetClusterMasterUserSecretArray) ToGetClusterMasterUserSecretArrayOutput() GetClusterMasterUserSecretArrayOutput

func (GetClusterMasterUserSecretArray) ToGetClusterMasterUserSecretArrayOutputWithContext

func (i GetClusterMasterUserSecretArray) ToGetClusterMasterUserSecretArrayOutputWithContext(ctx context.Context) GetClusterMasterUserSecretArrayOutput

type GetClusterMasterUserSecretArrayInput

type GetClusterMasterUserSecretArrayInput interface {
	pulumi.Input

	ToGetClusterMasterUserSecretArrayOutput() GetClusterMasterUserSecretArrayOutput
	ToGetClusterMasterUserSecretArrayOutputWithContext(context.Context) GetClusterMasterUserSecretArrayOutput
}

GetClusterMasterUserSecretArrayInput is an input type that accepts GetClusterMasterUserSecretArray and GetClusterMasterUserSecretArrayOutput values. You can construct a concrete instance of `GetClusterMasterUserSecretArrayInput` via:

GetClusterMasterUserSecretArray{ GetClusterMasterUserSecretArgs{...} }

type GetClusterMasterUserSecretArrayOutput

type GetClusterMasterUserSecretArrayOutput struct{ *pulumi.OutputState }

func (GetClusterMasterUserSecretArrayOutput) ElementType

func (GetClusterMasterUserSecretArrayOutput) Index

func (GetClusterMasterUserSecretArrayOutput) ToGetClusterMasterUserSecretArrayOutput

func (o GetClusterMasterUserSecretArrayOutput) ToGetClusterMasterUserSecretArrayOutput() GetClusterMasterUserSecretArrayOutput

func (GetClusterMasterUserSecretArrayOutput) ToGetClusterMasterUserSecretArrayOutputWithContext

func (o GetClusterMasterUserSecretArrayOutput) ToGetClusterMasterUserSecretArrayOutputWithContext(ctx context.Context) GetClusterMasterUserSecretArrayOutput

type GetClusterMasterUserSecretInput

type GetClusterMasterUserSecretInput interface {
	pulumi.Input

	ToGetClusterMasterUserSecretOutput() GetClusterMasterUserSecretOutput
	ToGetClusterMasterUserSecretOutputWithContext(context.Context) GetClusterMasterUserSecretOutput
}

GetClusterMasterUserSecretInput is an input type that accepts GetClusterMasterUserSecretArgs and GetClusterMasterUserSecretOutput values. You can construct a concrete instance of `GetClusterMasterUserSecretInput` via:

GetClusterMasterUserSecretArgs{...}

type GetClusterMasterUserSecretOutput

type GetClusterMasterUserSecretOutput struct{ *pulumi.OutputState }

func (GetClusterMasterUserSecretOutput) ElementType

func (GetClusterMasterUserSecretOutput) KmsKeyId

func (GetClusterMasterUserSecretOutput) SecretArn

func (GetClusterMasterUserSecretOutput) SecretStatus

func (GetClusterMasterUserSecretOutput) ToGetClusterMasterUserSecretOutput

func (o GetClusterMasterUserSecretOutput) ToGetClusterMasterUserSecretOutput() GetClusterMasterUserSecretOutput

func (GetClusterMasterUserSecretOutput) ToGetClusterMasterUserSecretOutputWithContext

func (o GetClusterMasterUserSecretOutput) ToGetClusterMasterUserSecretOutputWithContext(ctx context.Context) GetClusterMasterUserSecretOutput

type GetClustersArgs

type GetClustersArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetClustersFilter `pulumi:"filters"`
}

A collection of arguments for invoking getClusters.

type GetClustersFilter

type GetClustersFilter struct {
	// Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetClustersFilterArgs

type GetClustersFilterArgs struct {
	// Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetClustersFilterArgs) ElementType

func (GetClustersFilterArgs) ElementType() reflect.Type

func (GetClustersFilterArgs) ToGetClustersFilterOutput

func (i GetClustersFilterArgs) ToGetClustersFilterOutput() GetClustersFilterOutput

func (GetClustersFilterArgs) ToGetClustersFilterOutputWithContext

func (i GetClustersFilterArgs) ToGetClustersFilterOutputWithContext(ctx context.Context) GetClustersFilterOutput

type GetClustersFilterArray

type GetClustersFilterArray []GetClustersFilterInput

func (GetClustersFilterArray) ElementType

func (GetClustersFilterArray) ElementType() reflect.Type

func (GetClustersFilterArray) ToGetClustersFilterArrayOutput

func (i GetClustersFilterArray) ToGetClustersFilterArrayOutput() GetClustersFilterArrayOutput

func (GetClustersFilterArray) ToGetClustersFilterArrayOutputWithContext

func (i GetClustersFilterArray) ToGetClustersFilterArrayOutputWithContext(ctx context.Context) GetClustersFilterArrayOutput

type GetClustersFilterArrayInput

type GetClustersFilterArrayInput interface {
	pulumi.Input

	ToGetClustersFilterArrayOutput() GetClustersFilterArrayOutput
	ToGetClustersFilterArrayOutputWithContext(context.Context) GetClustersFilterArrayOutput
}

GetClustersFilterArrayInput is an input type that accepts GetClustersFilterArray and GetClustersFilterArrayOutput values. You can construct a concrete instance of `GetClustersFilterArrayInput` via:

GetClustersFilterArray{ GetClustersFilterArgs{...} }

type GetClustersFilterArrayOutput

type GetClustersFilterArrayOutput struct{ *pulumi.OutputState }

func (GetClustersFilterArrayOutput) ElementType

func (GetClustersFilterArrayOutput) Index

func (GetClustersFilterArrayOutput) ToGetClustersFilterArrayOutput

func (o GetClustersFilterArrayOutput) ToGetClustersFilterArrayOutput() GetClustersFilterArrayOutput

func (GetClustersFilterArrayOutput) ToGetClustersFilterArrayOutputWithContext

func (o GetClustersFilterArrayOutput) ToGetClustersFilterArrayOutputWithContext(ctx context.Context) GetClustersFilterArrayOutput

type GetClustersFilterInput

type GetClustersFilterInput interface {
	pulumi.Input

	ToGetClustersFilterOutput() GetClustersFilterOutput
	ToGetClustersFilterOutputWithContext(context.Context) GetClustersFilterOutput
}

GetClustersFilterInput is an input type that accepts GetClustersFilterArgs and GetClustersFilterOutput values. You can construct a concrete instance of `GetClustersFilterInput` via:

GetClustersFilterArgs{...}

type GetClustersFilterOutput

type GetClustersFilterOutput struct{ *pulumi.OutputState }

func (GetClustersFilterOutput) ElementType

func (GetClustersFilterOutput) ElementType() reflect.Type

func (GetClustersFilterOutput) Name

Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html).

func (GetClustersFilterOutput) ToGetClustersFilterOutput

func (o GetClustersFilterOutput) ToGetClustersFilterOutput() GetClustersFilterOutput

func (GetClustersFilterOutput) ToGetClustersFilterOutputWithContext

func (o GetClustersFilterOutput) ToGetClustersFilterOutputWithContext(ctx context.Context) GetClustersFilterOutput

func (GetClustersFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetClustersOutputArgs

type GetClustersOutputArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters GetClustersFilterArrayInput `pulumi:"filters"`
}

A collection of arguments for invoking getClusters.

func (GetClustersOutputArgs) ElementType

func (GetClustersOutputArgs) ElementType() reflect.Type

type GetClustersResult

type GetClustersResult struct {
	// Set of cluster ARNs of the matched RDS clusters.
	ClusterArns []string `pulumi:"clusterArns"`
	// Set of ARNs of cluster identifiers of the matched RDS clusters.
	ClusterIdentifiers []string            `pulumi:"clusterIdentifiers"`
	Filters            []GetClustersFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getClusters.

func GetClusters

func GetClusters(ctx *pulumi.Context, args *GetClustersArgs, opts ...pulumi.InvokeOption) (*GetClustersResult, error)

Data source for managing an AWS RDS (Relational Database) Clusters.

## Example Usage ### Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetClusters(ctx, &rds.GetClustersArgs{
			Filters: []rds.GetClustersFilter{
				{
					Name: "engine",
					Values: []string{
						"aurora-postgresql",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetClustersResultOutput

type GetClustersResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getClusters.

func (GetClustersResultOutput) ClusterArns

Set of cluster ARNs of the matched RDS clusters.

func (GetClustersResultOutput) ClusterIdentifiers

func (o GetClustersResultOutput) ClusterIdentifiers() pulumi.StringArrayOutput

Set of ARNs of cluster identifiers of the matched RDS clusters.

func (GetClustersResultOutput) ElementType

func (GetClustersResultOutput) ElementType() reflect.Type

func (GetClustersResultOutput) Filters

func (GetClustersResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetClustersResultOutput) ToGetClustersResultOutput

func (o GetClustersResultOutput) ToGetClustersResultOutput() GetClustersResultOutput

func (GetClustersResultOutput) ToGetClustersResultOutputWithContext

func (o GetClustersResultOutput) ToGetClustersResultOutputWithContext(ctx context.Context) GetClustersResultOutput

type GetEngineVersionArgs

type GetEngineVersionArgs struct {
	// When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions.
	DefaultOnly *bool `pulumi:"defaultOnly"`
	// Database 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`.
	//
	// The following arguments are optional:
	Engine string `pulumi:"engine"`
	// One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).
	Filters []GetEngineVersionFilter `pulumi:"filters"`
	// When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned.
	IncludeAll *bool `pulumi:"includeAll"`
	// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation.
	Latest *bool `pulumi:"latest"`
	// Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`.
	ParameterGroupFamily *string `pulumi:"parameterGroupFamily"`
	// Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredMajorTargets []string `pulumi:"preferredMajorTargets"`
	// Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredUpgradeTargets []string `pulumi:"preferredUpgradeTargets"`
	// Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredVersions []string `pulumi:"preferredVersions"`
	Version           *string  `pulumi:"version"`
}

A collection of arguments for invoking getEngineVersion.

type GetEngineVersionFilter

type GetEngineVersionFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetEngineVersionFilterArgs

type GetEngineVersionFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetEngineVersionFilterArgs) ElementType

func (GetEngineVersionFilterArgs) ElementType() reflect.Type

func (GetEngineVersionFilterArgs) ToGetEngineVersionFilterOutput

func (i GetEngineVersionFilterArgs) ToGetEngineVersionFilterOutput() GetEngineVersionFilterOutput

func (GetEngineVersionFilterArgs) ToGetEngineVersionFilterOutputWithContext

func (i GetEngineVersionFilterArgs) ToGetEngineVersionFilterOutputWithContext(ctx context.Context) GetEngineVersionFilterOutput

type GetEngineVersionFilterArray

type GetEngineVersionFilterArray []GetEngineVersionFilterInput

func (GetEngineVersionFilterArray) ElementType

func (GetEngineVersionFilterArray) ToGetEngineVersionFilterArrayOutput

func (i GetEngineVersionFilterArray) ToGetEngineVersionFilterArrayOutput() GetEngineVersionFilterArrayOutput

func (GetEngineVersionFilterArray) ToGetEngineVersionFilterArrayOutputWithContext

func (i GetEngineVersionFilterArray) ToGetEngineVersionFilterArrayOutputWithContext(ctx context.Context) GetEngineVersionFilterArrayOutput

type GetEngineVersionFilterArrayInput

type GetEngineVersionFilterArrayInput interface {
	pulumi.Input

	ToGetEngineVersionFilterArrayOutput() GetEngineVersionFilterArrayOutput
	ToGetEngineVersionFilterArrayOutputWithContext(context.Context) GetEngineVersionFilterArrayOutput
}

GetEngineVersionFilterArrayInput is an input type that accepts GetEngineVersionFilterArray and GetEngineVersionFilterArrayOutput values. You can construct a concrete instance of `GetEngineVersionFilterArrayInput` via:

GetEngineVersionFilterArray{ GetEngineVersionFilterArgs{...} }

type GetEngineVersionFilterArrayOutput

type GetEngineVersionFilterArrayOutput struct{ *pulumi.OutputState }

func (GetEngineVersionFilterArrayOutput) ElementType

func (GetEngineVersionFilterArrayOutput) Index

func (GetEngineVersionFilterArrayOutput) ToGetEngineVersionFilterArrayOutput

func (o GetEngineVersionFilterArrayOutput) ToGetEngineVersionFilterArrayOutput() GetEngineVersionFilterArrayOutput

func (GetEngineVersionFilterArrayOutput) ToGetEngineVersionFilterArrayOutputWithContext

func (o GetEngineVersionFilterArrayOutput) ToGetEngineVersionFilterArrayOutputWithContext(ctx context.Context) GetEngineVersionFilterArrayOutput

type GetEngineVersionFilterInput

type GetEngineVersionFilterInput interface {
	pulumi.Input

	ToGetEngineVersionFilterOutput() GetEngineVersionFilterOutput
	ToGetEngineVersionFilterOutputWithContext(context.Context) GetEngineVersionFilterOutput
}

GetEngineVersionFilterInput is an input type that accepts GetEngineVersionFilterArgs and GetEngineVersionFilterOutput values. You can construct a concrete instance of `GetEngineVersionFilterInput` via:

GetEngineVersionFilterArgs{...}

type GetEngineVersionFilterOutput

type GetEngineVersionFilterOutput struct{ *pulumi.OutputState }

func (GetEngineVersionFilterOutput) ElementType

func (GetEngineVersionFilterOutput) Name

func (GetEngineVersionFilterOutput) ToGetEngineVersionFilterOutput

func (o GetEngineVersionFilterOutput) ToGetEngineVersionFilterOutput() GetEngineVersionFilterOutput

func (GetEngineVersionFilterOutput) ToGetEngineVersionFilterOutputWithContext

func (o GetEngineVersionFilterOutput) ToGetEngineVersionFilterOutputWithContext(ctx context.Context) GetEngineVersionFilterOutput

func (GetEngineVersionFilterOutput) Values

type GetEngineVersionOutputArgs

type GetEngineVersionOutputArgs struct {
	// When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions.
	DefaultOnly pulumi.BoolPtrInput `pulumi:"defaultOnly"`
	// Database 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`.
	//
	// The following arguments are optional:
	Engine pulumi.StringInput `pulumi:"engine"`
	// One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).
	Filters GetEngineVersionFilterArrayInput `pulumi:"filters"`
	// When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned.
	IncludeAll pulumi.BoolPtrInput `pulumi:"includeAll"`
	// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation.
	Latest pulumi.BoolPtrInput `pulumi:"latest"`
	// Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`.
	ParameterGroupFamily pulumi.StringPtrInput `pulumi:"parameterGroupFamily"`
	// Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredMajorTargets pulumi.StringArrayInput `pulumi:"preferredMajorTargets"`
	// Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredUpgradeTargets pulumi.StringArrayInput `pulumi:"preferredUpgradeTargets"`
	// Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria.
	PreferredVersions pulumi.StringArrayInput `pulumi:"preferredVersions"`
	Version           pulumi.StringPtrInput   `pulumi:"version"`
}

A collection of arguments for invoking getEngineVersion.

func (GetEngineVersionOutputArgs) ElementType

func (GetEngineVersionOutputArgs) ElementType() reflect.Type

type GetEngineVersionResult

type GetEngineVersionResult struct {
	// The default character set for new instances of this engine version.
	DefaultCharacterSet string `pulumi:"defaultCharacterSet"`
	DefaultOnly         *bool  `pulumi:"defaultOnly"`
	Engine              string `pulumi:"engine"`
	// Description of the database engine.
	EngineDescription string `pulumi:"engineDescription"`
	// Set of log types that the database engine has available for export to CloudWatch Logs.
	ExportableLogTypes []string                 `pulumi:"exportableLogTypes"`
	Filters            []GetEngineVersionFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                      string   `pulumi:"id"`
	IncludeAll              *bool    `pulumi:"includeAll"`
	Latest                  *bool    `pulumi:"latest"`
	ParameterGroupFamily    string   `pulumi:"parameterGroupFamily"`
	PreferredMajorTargets   []string `pulumi:"preferredMajorTargets"`
	PreferredUpgradeTargets []string `pulumi:"preferredUpgradeTargets"`
	PreferredVersions       []string `pulumi:"preferredVersions"`
	// Status of the database 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 database engine.
	SupportedFeatureNames []string `pulumi:"supportedFeatureNames"`
	// Set of the supported database 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 database 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 database 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"`
	// Version of the database engine.
	VersionActual string `pulumi:"versionActual"`
	// Description of the database engine version.
	VersionDescription string `pulumi:"versionDescription"`
}

A collection of values returned by getEngineVersion.

func GetEngineVersion

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

Information about an RDS engine version.

## Example Usage ### Basic Usage

```go package main

import (

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

)

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

``` ### With `filter`

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetEngineVersion(ctx, &rds.GetEngineVersionArgs{
			Engine: "aurora-postgresql",
			Filters: []rds.GetEngineVersionFilter{
				{
					Name: "engine-mode",
					Values: []string{
						"serverless",
					},
				},
			},
			IncludeAll: pulumi.BoolRef(true),
			Version:    pulumi.StringRef("10.14"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEngineVersionResultOutput

type GetEngineVersionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEngineVersion.

func (GetEngineVersionResultOutput) DefaultCharacterSet

func (o GetEngineVersionResultOutput) DefaultCharacterSet() pulumi.StringOutput

The default character set for new instances of this engine version.

func (GetEngineVersionResultOutput) DefaultOnly

func (GetEngineVersionResultOutput) ElementType

func (GetEngineVersionResultOutput) Engine

func (GetEngineVersionResultOutput) EngineDescription

func (o GetEngineVersionResultOutput) EngineDescription() pulumi.StringOutput

Description of the database engine.

func (GetEngineVersionResultOutput) ExportableLogTypes

func (o GetEngineVersionResultOutput) ExportableLogTypes() pulumi.StringArrayOutput

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

func (GetEngineVersionResultOutput) Filters

func (GetEngineVersionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEngineVersionResultOutput) IncludeAll

func (GetEngineVersionResultOutput) Latest added in v6.23.0

func (GetEngineVersionResultOutput) ParameterGroupFamily

func (o GetEngineVersionResultOutput) ParameterGroupFamily() pulumi.StringOutput

func (GetEngineVersionResultOutput) PreferredMajorTargets added in v6.23.0

func (o GetEngineVersionResultOutput) PreferredMajorTargets() pulumi.StringArrayOutput

func (GetEngineVersionResultOutput) PreferredUpgradeTargets added in v6.23.0

func (o GetEngineVersionResultOutput) PreferredUpgradeTargets() pulumi.StringArrayOutput

func (GetEngineVersionResultOutput) PreferredVersions

func (GetEngineVersionResultOutput) Status

Status of the database engine version, either available or deprecated.

func (GetEngineVersionResultOutput) SupportedCharacterSets

func (o GetEngineVersionResultOutput) SupportedCharacterSets() pulumi.StringArrayOutput

Set of the character sets supported by this engine.

func (GetEngineVersionResultOutput) SupportedFeatureNames

func (o GetEngineVersionResultOutput) SupportedFeatureNames() pulumi.StringArrayOutput

Set of features supported by the database engine.

func (GetEngineVersionResultOutput) SupportedModes

Set of the supported database engine modes.

func (GetEngineVersionResultOutput) SupportedTimezones

func (o GetEngineVersionResultOutput) SupportedTimezones() pulumi.StringArrayOutput

Set of the time zones supported by this engine.

func (GetEngineVersionResultOutput) SupportsGlobalDatabases

func (o GetEngineVersionResultOutput) SupportsGlobalDatabases() pulumi.BoolOutput

Indicates whether you can use Aurora global databases with a specific database engine version.

func (GetEngineVersionResultOutput) SupportsLogExportsToCloudwatch

func (o GetEngineVersionResultOutput) SupportsLogExportsToCloudwatch() pulumi.BoolOutput

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

func (GetEngineVersionResultOutput) SupportsParallelQuery

func (o GetEngineVersionResultOutput) SupportsParallelQuery() pulumi.BoolOutput

Indicates whether you can use Aurora parallel query with a specific database engine version.

func (GetEngineVersionResultOutput) SupportsReadReplica

func (o GetEngineVersionResultOutput) SupportsReadReplica() pulumi.BoolOutput

Indicates whether the database engine version supports read replicas.

func (GetEngineVersionResultOutput) ToGetEngineVersionResultOutput

func (o GetEngineVersionResultOutput) ToGetEngineVersionResultOutput() GetEngineVersionResultOutput

func (GetEngineVersionResultOutput) ToGetEngineVersionResultOutputWithContext

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

func (GetEngineVersionResultOutput) ValidUpgradeTargets

func (o GetEngineVersionResultOutput) ValidUpgradeTargets() pulumi.StringArrayOutput

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

func (GetEngineVersionResultOutput) Version

func (GetEngineVersionResultOutput) VersionActual added in v6.23.0

Version of the database engine.

func (GetEngineVersionResultOutput) VersionDescription

func (o GetEngineVersionResultOutput) VersionDescription() pulumi.StringOutput

Description of the database engine version.

type GetEventCategoriesArgs

type GetEventCategoriesArgs struct {
	// 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 GetEventCategoriesOutputArgs

type GetEventCategoriesOutputArgs struct {
	// 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 pulumi.StringPtrInput `pulumi:"sourceType"`
}

A collection of arguments for invoking getEventCategories.

func (GetEventCategoriesOutputArgs) ElementType

type GetEventCategoriesResult

type GetEventCategoriesResult struct {
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type GetEventCategoriesResultOutput

type GetEventCategoriesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEventCategories.

func (GetEventCategoriesResultOutput) ElementType

func (GetEventCategoriesResultOutput) EventCategories

List of the event categories.

func (GetEventCategoriesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEventCategoriesResultOutput) SourceType

func (GetEventCategoriesResultOutput) ToGetEventCategoriesResultOutput

func (o GetEventCategoriesResultOutput) ToGetEventCategoriesResultOutput() GetEventCategoriesResultOutput

func (GetEventCategoriesResultOutput) ToGetEventCategoriesResultOutputWithContext

func (o GetEventCategoriesResultOutput) ToGetEventCategoriesResultOutputWithContext(ctx context.Context) GetEventCategoriesResultOutput

type GetInstanceMasterUserSecret

type GetInstanceMasterUserSecret struct {
	// The Amazon Web Services KMS key identifier that is used to encrypt the secret.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// The Amazon Resource Name (ARN) of the secret.
	SecretArn string `pulumi:"secretArn"`
	// The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus string `pulumi:"secretStatus"`
}

type GetInstanceMasterUserSecretArgs

type GetInstanceMasterUserSecretArgs struct {
	// The Amazon Web Services KMS key identifier that is used to encrypt the secret.
	KmsKeyId pulumi.StringInput `pulumi:"kmsKeyId"`
	// The Amazon Resource Name (ARN) of the secret.
	SecretArn pulumi.StringInput `pulumi:"secretArn"`
	// The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus pulumi.StringInput `pulumi:"secretStatus"`
}

func (GetInstanceMasterUserSecretArgs) ElementType

func (GetInstanceMasterUserSecretArgs) ToGetInstanceMasterUserSecretOutput

func (i GetInstanceMasterUserSecretArgs) ToGetInstanceMasterUserSecretOutput() GetInstanceMasterUserSecretOutput

func (GetInstanceMasterUserSecretArgs) ToGetInstanceMasterUserSecretOutputWithContext

func (i GetInstanceMasterUserSecretArgs) ToGetInstanceMasterUserSecretOutputWithContext(ctx context.Context) GetInstanceMasterUserSecretOutput

type GetInstanceMasterUserSecretArray

type GetInstanceMasterUserSecretArray []GetInstanceMasterUserSecretInput

func (GetInstanceMasterUserSecretArray) ElementType

func (GetInstanceMasterUserSecretArray) ToGetInstanceMasterUserSecretArrayOutput

func (i GetInstanceMasterUserSecretArray) ToGetInstanceMasterUserSecretArrayOutput() GetInstanceMasterUserSecretArrayOutput

func (GetInstanceMasterUserSecretArray) ToGetInstanceMasterUserSecretArrayOutputWithContext

func (i GetInstanceMasterUserSecretArray) ToGetInstanceMasterUserSecretArrayOutputWithContext(ctx context.Context) GetInstanceMasterUserSecretArrayOutput

type GetInstanceMasterUserSecretArrayInput

type GetInstanceMasterUserSecretArrayInput interface {
	pulumi.Input

	ToGetInstanceMasterUserSecretArrayOutput() GetInstanceMasterUserSecretArrayOutput
	ToGetInstanceMasterUserSecretArrayOutputWithContext(context.Context) GetInstanceMasterUserSecretArrayOutput
}

GetInstanceMasterUserSecretArrayInput is an input type that accepts GetInstanceMasterUserSecretArray and GetInstanceMasterUserSecretArrayOutput values. You can construct a concrete instance of `GetInstanceMasterUserSecretArrayInput` via:

GetInstanceMasterUserSecretArray{ GetInstanceMasterUserSecretArgs{...} }

type GetInstanceMasterUserSecretArrayOutput

type GetInstanceMasterUserSecretArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceMasterUserSecretArrayOutput) ElementType

func (GetInstanceMasterUserSecretArrayOutput) Index

func (GetInstanceMasterUserSecretArrayOutput) ToGetInstanceMasterUserSecretArrayOutput

func (o GetInstanceMasterUserSecretArrayOutput) ToGetInstanceMasterUserSecretArrayOutput() GetInstanceMasterUserSecretArrayOutput

func (GetInstanceMasterUserSecretArrayOutput) ToGetInstanceMasterUserSecretArrayOutputWithContext

func (o GetInstanceMasterUserSecretArrayOutput) ToGetInstanceMasterUserSecretArrayOutputWithContext(ctx context.Context) GetInstanceMasterUserSecretArrayOutput

type GetInstanceMasterUserSecretInput

type GetInstanceMasterUserSecretInput interface {
	pulumi.Input

	ToGetInstanceMasterUserSecretOutput() GetInstanceMasterUserSecretOutput
	ToGetInstanceMasterUserSecretOutputWithContext(context.Context) GetInstanceMasterUserSecretOutput
}

GetInstanceMasterUserSecretInput is an input type that accepts GetInstanceMasterUserSecretArgs and GetInstanceMasterUserSecretOutput values. You can construct a concrete instance of `GetInstanceMasterUserSecretInput` via:

GetInstanceMasterUserSecretArgs{...}

type GetInstanceMasterUserSecretOutput

type GetInstanceMasterUserSecretOutput struct{ *pulumi.OutputState }

func (GetInstanceMasterUserSecretOutput) ElementType

func (GetInstanceMasterUserSecretOutput) KmsKeyId

The Amazon Web Services KMS key identifier that is used to encrypt the secret.

func (GetInstanceMasterUserSecretOutput) SecretArn

The Amazon Resource Name (ARN) of the secret.

func (GetInstanceMasterUserSecretOutput) SecretStatus

The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.

func (GetInstanceMasterUserSecretOutput) ToGetInstanceMasterUserSecretOutput

func (o GetInstanceMasterUserSecretOutput) ToGetInstanceMasterUserSecretOutput() GetInstanceMasterUserSecretOutput

func (GetInstanceMasterUserSecretOutput) ToGetInstanceMasterUserSecretOutputWithContext

func (o GetInstanceMasterUserSecretOutput) ToGetInstanceMasterUserSecretOutputWithContext(ctx context.Context) GetInstanceMasterUserSecretOutput

type GetInstancesArgs

type GetInstancesArgs struct {
	// Configuration block(s) used to filter instances with AWS supported attributes, such as `engine`, `db-cluster-id` or `db-instance-id` for example. Detailed below.
	Filters []GetInstancesFilter `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match a pair on the desired instances.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getInstances.

type GetInstancesFilter

type GetInstancesFilter struct {
	// Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html) or [RDS DescribeDBInstances API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetInstancesFilterArgs

type GetInstancesFilterArgs struct {
	// Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html) or [RDS DescribeDBInstances API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInstancesFilterArgs) ElementType

func (GetInstancesFilterArgs) ElementType() reflect.Type

func (GetInstancesFilterArgs) ToGetInstancesFilterOutput

func (i GetInstancesFilterArgs) ToGetInstancesFilterOutput() GetInstancesFilterOutput

func (GetInstancesFilterArgs) ToGetInstancesFilterOutputWithContext

func (i GetInstancesFilterArgs) ToGetInstancesFilterOutputWithContext(ctx context.Context) GetInstancesFilterOutput

type GetInstancesFilterArray

type GetInstancesFilterArray []GetInstancesFilterInput

func (GetInstancesFilterArray) ElementType

func (GetInstancesFilterArray) ElementType() reflect.Type

func (GetInstancesFilterArray) ToGetInstancesFilterArrayOutput

func (i GetInstancesFilterArray) ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput

func (GetInstancesFilterArray) ToGetInstancesFilterArrayOutputWithContext

func (i GetInstancesFilterArray) ToGetInstancesFilterArrayOutputWithContext(ctx context.Context) GetInstancesFilterArrayOutput

type GetInstancesFilterArrayInput

type GetInstancesFilterArrayInput interface {
	pulumi.Input

	ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput
	ToGetInstancesFilterArrayOutputWithContext(context.Context) GetInstancesFilterArrayOutput
}

GetInstancesFilterArrayInput is an input type that accepts GetInstancesFilterArray and GetInstancesFilterArrayOutput values. You can construct a concrete instance of `GetInstancesFilterArrayInput` via:

GetInstancesFilterArray{ GetInstancesFilterArgs{...} }

type GetInstancesFilterArrayOutput

type GetInstancesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesFilterArrayOutput) ElementType

func (GetInstancesFilterArrayOutput) Index

func (GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutput

func (o GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput

func (GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutputWithContext

func (o GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutputWithContext(ctx context.Context) GetInstancesFilterArrayOutput

type GetInstancesFilterInput

type GetInstancesFilterInput interface {
	pulumi.Input

	ToGetInstancesFilterOutput() GetInstancesFilterOutput
	ToGetInstancesFilterOutputWithContext(context.Context) GetInstancesFilterOutput
}

GetInstancesFilterInput is an input type that accepts GetInstancesFilterArgs and GetInstancesFilterOutput values. You can construct a concrete instance of `GetInstancesFilterInput` via:

GetInstancesFilterArgs{...}

type GetInstancesFilterOutput

type GetInstancesFilterOutput struct{ *pulumi.OutputState }

func (GetInstancesFilterOutput) ElementType

func (GetInstancesFilterOutput) ElementType() reflect.Type

func (GetInstancesFilterOutput) Name

Name of the filter field. Valid values can be found in the [RDS DescribeDBClusters API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html) or [RDS DescribeDBInstances API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html).

func (GetInstancesFilterOutput) ToGetInstancesFilterOutput

func (o GetInstancesFilterOutput) ToGetInstancesFilterOutput() GetInstancesFilterOutput

func (GetInstancesFilterOutput) ToGetInstancesFilterOutputWithContext

func (o GetInstancesFilterOutput) ToGetInstancesFilterOutputWithContext(ctx context.Context) GetInstancesFilterOutput

func (GetInstancesFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetInstancesOutputArgs

type GetInstancesOutputArgs struct {
	// Configuration block(s) used to filter instances with AWS supported attributes, such as `engine`, `db-cluster-id` or `db-instance-id` for example. Detailed below.
	Filters GetInstancesFilterArrayInput `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match a pair on the desired instances.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	Filters []GetInstancesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// ARNs of the matched RDS instances.
	InstanceArns []string `pulumi:"instanceArns"`
	// Identifiers of the matched RDS instances.
	InstanceIdentifiers []string          `pulumi:"instanceIdentifiers"`
	Tags                map[string]string `pulumi:"tags"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

Data source for listing RDS Database Instances.

## Example Usage ### Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetInstances(ctx, &rds.GetInstancesArgs{
			Filters: []rds.GetInstancesFilter{
				{
					Name: "db-instance-id",
					Values: []string{
						"my-database-id",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Using tags

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetInstances(ctx, &rds.GetInstancesArgs{
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstancesResultOutput

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func (GetInstancesResultOutput) ElementType

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) Filters

func (GetInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) InstanceArns

ARNs of the matched RDS instances.

func (GetInstancesResultOutput) InstanceIdentifiers

func (o GetInstancesResultOutput) InstanceIdentifiers() pulumi.StringArrayOutput

Identifiers of the matched RDS instances.

func (GetInstancesResultOutput) Tags

func (GetInstancesResultOutput) ToGetInstancesResultOutput

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

type GetOrderableDbInstanceArgs

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"`
	// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. You must use `engineLatestVersion` with `preferredInstanceClasses` and/or `preferredEngineVersions`. Using `engineLatestVersion` will avoid `multiple RDS DB Instance Classes` errors. If you use `engineLatestVersion` with `preferredInstanceClasses`, the data source returns the latest version for the _first_ matching instance class (instance class priority). **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines, using `engineLatestVersion` may _not_ return the latest version in every situation.
	EngineLatestVersion *bool `pulumi:"engineLatestVersion"`
	// Version of the DB engine. If none is provided, the data source tries to use the AWS-defined default version that matches any other criteria.
	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. When `engineLatestVersion` is not set, the data source will return the first match in this list that matches any other criteria. If the data source finds no preferred matches or multiple matches without `engineLatestVersion`, it returns an error. **CAUTION:** We don't recommend using `preferredEngineVersions` without `preferredInstanceClasses` since the data source returns an arbitrary `instanceClass` based on the first one AWS returns that matches the engine version and any other criteria.
	PreferredEngineVersions []string `pulumi:"preferredEngineVersions"`
	// Ordered list of preferred RDS DB instance classes. The data source will return the first match in this list that matches any other criteria. If the data source finds no preferred matches or multiple matches without `engineLatestVersion`, it returns an error. If you use `preferredInstanceClasses` without `preferredEngineVersions` or `engineLatestVersion`, the data source returns an arbitrary `engineVersion` based on the first one AWS returns matching the instance class and any other criteria.
	PreferredInstanceClasses []string `pulumi:"preferredInstanceClasses"`
	// Whether a DB instance can have a read replica.
	ReadReplicaCapable *bool `pulumi:"readReplicaCapable"`
	// Storage types. Examples of storage types are `standard`, `io1`, `gp2`, and `aurora`.
	StorageType *string `pulumi:"storageType"`
	// Use to limit results to engine modes such as `provisioned`.
	SupportedEngineModes []string `pulumi:"supportedEngineModes"`
	// Use to limit results to network types `IPV4` or `DUAL`.
	SupportedNetworkTypes []string `pulumi:"supportedNetworkTypes"`
	// Whether to limit results to instances that support clusters.
	SupportsClusters *bool `pulumi:"supportsClusters"`
	// 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"`
	// Whether to limit results to instances that are multi-AZ capable.
	SupportsMultiAz *bool `pulumi:"supportsMultiAz"`
	// 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 GetOrderableDbInstanceOutputArgs

type GetOrderableDbInstanceOutputArgs struct {
	// Availability zone group.
	AvailabilityZoneGroup pulumi.StringPtrInput `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 pulumi.StringInput `pulumi:"engine"`
	// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. You must use `engineLatestVersion` with `preferredInstanceClasses` and/or `preferredEngineVersions`. Using `engineLatestVersion` will avoid `multiple RDS DB Instance Classes` errors. If you use `engineLatestVersion` with `preferredInstanceClasses`, the data source returns the latest version for the _first_ matching instance class (instance class priority). **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines, using `engineLatestVersion` may _not_ return the latest version in every situation.
	EngineLatestVersion pulumi.BoolPtrInput `pulumi:"engineLatestVersion"`
	// Version of the DB engine. If none is provided, the data source tries to use the AWS-defined default version that matches any other criteria.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// DB instance class. Examples of classes are `db.m3.2xlarge`, `db.t2.small`, and `db.m3.medium`.
	InstanceClass pulumi.StringPtrInput `pulumi:"instanceClass"`
	// License model. Examples of license models are `general-public-license`, `bring-your-own-license`, and `amazon-license`.
	LicenseModel pulumi.StringPtrInput `pulumi:"licenseModel"`
	// Ordered list of preferred RDS DB instance engine versions. When `engineLatestVersion` is not set, the data source will return the first match in this list that matches any other criteria. If the data source finds no preferred matches or multiple matches without `engineLatestVersion`, it returns an error. **CAUTION:** We don't recommend using `preferredEngineVersions` without `preferredInstanceClasses` since the data source returns an arbitrary `instanceClass` based on the first one AWS returns that matches the engine version and any other criteria.
	PreferredEngineVersions pulumi.StringArrayInput `pulumi:"preferredEngineVersions"`
	// Ordered list of preferred RDS DB instance classes. The data source will return the first match in this list that matches any other criteria. If the data source finds no preferred matches or multiple matches without `engineLatestVersion`, it returns an error. If you use `preferredInstanceClasses` without `preferredEngineVersions` or `engineLatestVersion`, the data source returns an arbitrary `engineVersion` based on the first one AWS returns matching the instance class and any other criteria.
	PreferredInstanceClasses pulumi.StringArrayInput `pulumi:"preferredInstanceClasses"`
	// Whether a DB instance can have a read replica.
	ReadReplicaCapable pulumi.BoolPtrInput `pulumi:"readReplicaCapable"`
	// Storage types. Examples of storage types are `standard`, `io1`, `gp2`, and `aurora`.
	StorageType pulumi.StringPtrInput `pulumi:"storageType"`
	// Use to limit results to engine modes such as `provisioned`.
	SupportedEngineModes pulumi.StringArrayInput `pulumi:"supportedEngineModes"`
	// Use to limit results to network types `IPV4` or `DUAL`.
	SupportedNetworkTypes pulumi.StringArrayInput `pulumi:"supportedNetworkTypes"`
	// Whether to limit results to instances that support clusters.
	SupportsClusters pulumi.BoolPtrInput `pulumi:"supportsClusters"`
	// Enable this to ensure a DB instance supports Enhanced Monitoring at intervals from 1 to 60 seconds.
	SupportsEnhancedMonitoring pulumi.BoolPtrInput `pulumi:"supportsEnhancedMonitoring"`
	// Enable this to ensure a DB instance supports Aurora global databases with a specific combination of other DB engine attributes.
	SupportsGlobalDatabases pulumi.BoolPtrInput `pulumi:"supportsGlobalDatabases"`
	// Enable this to ensure a DB instance supports IAM database authentication.
	SupportsIamDatabaseAuthentication pulumi.BoolPtrInput `pulumi:"supportsIamDatabaseAuthentication"`
	// Enable this to ensure a DB instance supports provisioned IOPS.
	SupportsIops pulumi.BoolPtrInput `pulumi:"supportsIops"`
	// Enable this to ensure a DB instance supports Kerberos Authentication.
	SupportsKerberosAuthentication pulumi.BoolPtrInput `pulumi:"supportsKerberosAuthentication"`
	// Whether to limit results to instances that are multi-AZ capable.
	SupportsMultiAz pulumi.BoolPtrInput `pulumi:"supportsMultiAz"`
	// Enable this to ensure a DB instance supports Performance Insights.
	SupportsPerformanceInsights pulumi.BoolPtrInput `pulumi:"supportsPerformanceInsights"`
	// Enable this to ensure Amazon RDS can automatically scale storage for DB instances that use the specified DB instance class.
	SupportsStorageAutoscaling pulumi.BoolPtrInput `pulumi:"supportsStorageAutoscaling"`
	// Enable this to ensure a DB instance supports encrypted storage.
	SupportsStorageEncryption pulumi.BoolPtrInput `pulumi:"supportsStorageEncryption"`
	// Boolean that indicates whether to show only VPC or non-VPC offerings.
	Vpc pulumi.BoolPtrInput `pulumi:"vpc"`
}

A collection of arguments for invoking getOrderableDbInstance.

func (GetOrderableDbInstanceOutputArgs) ElementType

type GetOrderableDbInstanceResult

type GetOrderableDbInstanceResult struct {
	AvailabilityZoneGroup string `pulumi:"availabilityZoneGroup"`
	// Availability zones where the instance is available.
	AvailabilityZones   []string `pulumi:"availabilityZones"`
	Engine              string   `pulumi:"engine"`
	EngineLatestVersion *bool    `pulumi:"engineLatestVersion"`
	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"`
	ReadReplicaCapable                bool     `pulumi:"readReplicaCapable"`
	StorageType                       string   `pulumi:"storageType"`
	SupportedEngineModes              []string `pulumi:"supportedEngineModes"`
	SupportedNetworkTypes             []string `pulumi:"supportedNetworkTypes"`
	SupportsClusters                  bool     `pulumi:"supportsClusters"`
	SupportsEnhancedMonitoring        bool     `pulumi:"supportsEnhancedMonitoring"`
	SupportsGlobalDatabases           bool     `pulumi:"supportsGlobalDatabases"`
	SupportsIamDatabaseAuthentication bool     `pulumi:"supportsIamDatabaseAuthentication"`
	SupportsIops                      bool     `pulumi:"supportsIops"`
	SupportsKerberosAuthentication    bool     `pulumi:"supportsKerberosAuthentication"`
	SupportsMultiAz                   bool     `pulumi:"supportsMultiAz"`
	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

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetOrderableDbInstance(ctx, &rds.GetOrderableDbInstanceArgs{
			Engine:        "mysql",
			EngineVersion: pulumi.StringRef("5.7.22"),
			LicenseModel:  pulumi.StringRef("general-public-license"),
			PreferredInstanceClasses: []string{
				"db.r6.xlarge",
				"db.m4.large",
				"db.t3.small",
			},
			StorageType: pulumi.StringRef("standard"),
		}, 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetOrderableDbInstance(ctx, &rds.GetOrderableDbInstanceArgs{
			Engine:       "mysql",
			LicenseModel: pulumi.StringRef("general-public-license"),
			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 GetOrderableDbInstanceResultOutput

type GetOrderableDbInstanceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getOrderableDbInstance.

func (GetOrderableDbInstanceResultOutput) AvailabilityZoneGroup

func (o GetOrderableDbInstanceResultOutput) AvailabilityZoneGroup() pulumi.StringOutput

func (GetOrderableDbInstanceResultOutput) AvailabilityZones

Availability zones where the instance is available.

func (GetOrderableDbInstanceResultOutput) ElementType

func (GetOrderableDbInstanceResultOutput) Engine

func (GetOrderableDbInstanceResultOutput) EngineLatestVersion added in v6.23.0

func (GetOrderableDbInstanceResultOutput) EngineVersion

func (GetOrderableDbInstanceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetOrderableDbInstanceResultOutput) InstanceClass

func (GetOrderableDbInstanceResultOutput) LicenseModel

func (GetOrderableDbInstanceResultOutput) MaxIopsPerDbInstance

func (o GetOrderableDbInstanceResultOutput) MaxIopsPerDbInstance() pulumi.IntOutput

Maximum total provisioned IOPS for a DB instance.

func (GetOrderableDbInstanceResultOutput) MaxIopsPerGib

Maximum provisioned IOPS per GiB for a DB instance.

func (GetOrderableDbInstanceResultOutput) MaxStorageSize

Maximum storage size for a DB instance.

func (GetOrderableDbInstanceResultOutput) MinIopsPerDbInstance

func (o GetOrderableDbInstanceResultOutput) MinIopsPerDbInstance() pulumi.IntOutput

Minimum total provisioned IOPS for a DB instance.

func (GetOrderableDbInstanceResultOutput) MinIopsPerGib

Minimum provisioned IOPS per GiB for a DB instance.

func (GetOrderableDbInstanceResultOutput) MinStorageSize

Minimum storage size for a DB instance.

func (GetOrderableDbInstanceResultOutput) MultiAzCapable

Whether a DB instance is Multi-AZ capable.

func (GetOrderableDbInstanceResultOutput) OutpostCapable

Whether a DB instance supports RDS on Outposts.

func (GetOrderableDbInstanceResultOutput) PreferredEngineVersions

func (o GetOrderableDbInstanceResultOutput) PreferredEngineVersions() pulumi.StringArrayOutput

func (GetOrderableDbInstanceResultOutput) PreferredInstanceClasses

func (o GetOrderableDbInstanceResultOutput) PreferredInstanceClasses() pulumi.StringArrayOutput

func (GetOrderableDbInstanceResultOutput) ReadReplicaCapable

func (o GetOrderableDbInstanceResultOutput) ReadReplicaCapable() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) StorageType

func (GetOrderableDbInstanceResultOutput) SupportedEngineModes

func (GetOrderableDbInstanceResultOutput) SupportedNetworkTypes

func (GetOrderableDbInstanceResultOutput) SupportsClusters added in v6.23.0

func (GetOrderableDbInstanceResultOutput) SupportsEnhancedMonitoring

func (o GetOrderableDbInstanceResultOutput) SupportsEnhancedMonitoring() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsGlobalDatabases

func (o GetOrderableDbInstanceResultOutput) SupportsGlobalDatabases() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsIamDatabaseAuthentication

func (o GetOrderableDbInstanceResultOutput) SupportsIamDatabaseAuthentication() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsIops

func (GetOrderableDbInstanceResultOutput) SupportsKerberosAuthentication

func (o GetOrderableDbInstanceResultOutput) SupportsKerberosAuthentication() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsMultiAz added in v6.23.0

func (GetOrderableDbInstanceResultOutput) SupportsPerformanceInsights

func (o GetOrderableDbInstanceResultOutput) SupportsPerformanceInsights() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsStorageAutoscaling

func (o GetOrderableDbInstanceResultOutput) SupportsStorageAutoscaling() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) SupportsStorageEncryption

func (o GetOrderableDbInstanceResultOutput) SupportsStorageEncryption() pulumi.BoolOutput

func (GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutput

func (o GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutput() GetOrderableDbInstanceResultOutput

func (GetOrderableDbInstanceResultOutput) ToGetOrderableDbInstanceResultOutputWithContext

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

func (GetOrderableDbInstanceResultOutput) Vpc

type GetProxyAuth

type GetProxyAuth struct {
	AuthScheme             string `pulumi:"authScheme"`
	ClientPasswordAuthType string `pulumi:"clientPasswordAuthType"`
	Description            string `pulumi:"description"`
	IamAuth                string `pulumi:"iamAuth"`
	SecretArn              string `pulumi:"secretArn"`
	Username               string `pulumi:"username"`
}

type GetProxyAuthArgs

type GetProxyAuthArgs struct {
	AuthScheme             pulumi.StringInput `pulumi:"authScheme"`
	ClientPasswordAuthType pulumi.StringInput `pulumi:"clientPasswordAuthType"`
	Description            pulumi.StringInput `pulumi:"description"`
	IamAuth                pulumi.StringInput `pulumi:"iamAuth"`
	SecretArn              pulumi.StringInput `pulumi:"secretArn"`
	Username               pulumi.StringInput `pulumi:"username"`
}

func (GetProxyAuthArgs) ElementType

func (GetProxyAuthArgs) ElementType() reflect.Type

func (GetProxyAuthArgs) ToGetProxyAuthOutput

func (i GetProxyAuthArgs) ToGetProxyAuthOutput() GetProxyAuthOutput

func (GetProxyAuthArgs) ToGetProxyAuthOutputWithContext

func (i GetProxyAuthArgs) ToGetProxyAuthOutputWithContext(ctx context.Context) GetProxyAuthOutput

type GetProxyAuthArray

type GetProxyAuthArray []GetProxyAuthInput

func (GetProxyAuthArray) ElementType

func (GetProxyAuthArray) ElementType() reflect.Type

func (GetProxyAuthArray) ToGetProxyAuthArrayOutput

func (i GetProxyAuthArray) ToGetProxyAuthArrayOutput() GetProxyAuthArrayOutput

func (GetProxyAuthArray) ToGetProxyAuthArrayOutputWithContext

func (i GetProxyAuthArray) ToGetProxyAuthArrayOutputWithContext(ctx context.Context) GetProxyAuthArrayOutput

type GetProxyAuthArrayInput

type GetProxyAuthArrayInput interface {
	pulumi.Input

	ToGetProxyAuthArrayOutput() GetProxyAuthArrayOutput
	ToGetProxyAuthArrayOutputWithContext(context.Context) GetProxyAuthArrayOutput
}

GetProxyAuthArrayInput is an input type that accepts GetProxyAuthArray and GetProxyAuthArrayOutput values. You can construct a concrete instance of `GetProxyAuthArrayInput` via:

GetProxyAuthArray{ GetProxyAuthArgs{...} }

type GetProxyAuthArrayOutput

type GetProxyAuthArrayOutput struct{ *pulumi.OutputState }

func (GetProxyAuthArrayOutput) ElementType

func (GetProxyAuthArrayOutput) ElementType() reflect.Type

func (GetProxyAuthArrayOutput) Index

func (GetProxyAuthArrayOutput) ToGetProxyAuthArrayOutput

func (o GetProxyAuthArrayOutput) ToGetProxyAuthArrayOutput() GetProxyAuthArrayOutput

func (GetProxyAuthArrayOutput) ToGetProxyAuthArrayOutputWithContext

func (o GetProxyAuthArrayOutput) ToGetProxyAuthArrayOutputWithContext(ctx context.Context) GetProxyAuthArrayOutput

type GetProxyAuthInput

type GetProxyAuthInput interface {
	pulumi.Input

	ToGetProxyAuthOutput() GetProxyAuthOutput
	ToGetProxyAuthOutputWithContext(context.Context) GetProxyAuthOutput
}

GetProxyAuthInput is an input type that accepts GetProxyAuthArgs and GetProxyAuthOutput values. You can construct a concrete instance of `GetProxyAuthInput` via:

GetProxyAuthArgs{...}

type GetProxyAuthOutput

type GetProxyAuthOutput struct{ *pulumi.OutputState }

func (GetProxyAuthOutput) AuthScheme

func (o GetProxyAuthOutput) AuthScheme() pulumi.StringOutput

func (GetProxyAuthOutput) ClientPasswordAuthType

func (o GetProxyAuthOutput) ClientPasswordAuthType() pulumi.StringOutput

func (GetProxyAuthOutput) Description

func (o GetProxyAuthOutput) Description() pulumi.StringOutput

func (GetProxyAuthOutput) ElementType

func (GetProxyAuthOutput) ElementType() reflect.Type

func (GetProxyAuthOutput) IamAuth

func (GetProxyAuthOutput) SecretArn

func (o GetProxyAuthOutput) SecretArn() pulumi.StringOutput

func (GetProxyAuthOutput) ToGetProxyAuthOutput

func (o GetProxyAuthOutput) ToGetProxyAuthOutput() GetProxyAuthOutput

func (GetProxyAuthOutput) ToGetProxyAuthOutputWithContext

func (o GetProxyAuthOutput) ToGetProxyAuthOutputWithContext(ctx context.Context) GetProxyAuthOutput

func (GetProxyAuthOutput) Username

func (o GetProxyAuthOutput) Username() pulumi.StringOutput

type GetReservedInstanceOfferingArgs

type GetReservedInstanceOfferingArgs struct {
	// DB instance class for the reserved DB instance.
	DbInstanceClass string `pulumi:"dbInstanceClass"`
	// Duration of the reservation in years or seconds. Valid values are `1`, `3`, `31536000`, `94608000`
	Duration int `pulumi:"duration"`
	// Whether the reservation applies to Multi-AZ deployments.
	MultiAz bool `pulumi:"multiAz"`
	// Offering type of this reserved DB instance. Valid values are `No Upfront`, `Partial Upfront`, `All Upfront`.
	OfferingType string `pulumi:"offeringType"`
	// Description of the reserved DB instance.
	ProductDescription string `pulumi:"productDescription"`
}

A collection of arguments for invoking getReservedInstanceOffering.

type GetReservedInstanceOfferingOutputArgs

type GetReservedInstanceOfferingOutputArgs struct {
	// DB instance class for the reserved DB instance.
	DbInstanceClass pulumi.StringInput `pulumi:"dbInstanceClass"`
	// Duration of the reservation in years or seconds. Valid values are `1`, `3`, `31536000`, `94608000`
	Duration pulumi.IntInput `pulumi:"duration"`
	// Whether the reservation applies to Multi-AZ deployments.
	MultiAz pulumi.BoolInput `pulumi:"multiAz"`
	// Offering type of this reserved DB instance. Valid values are `No Upfront`, `Partial Upfront`, `All Upfront`.
	OfferingType pulumi.StringInput `pulumi:"offeringType"`
	// Description of the reserved DB instance.
	ProductDescription pulumi.StringInput `pulumi:"productDescription"`
}

A collection of arguments for invoking getReservedInstanceOffering.

func (GetReservedInstanceOfferingOutputArgs) ElementType

type GetReservedInstanceOfferingResult

type GetReservedInstanceOfferingResult struct {
	// Currency code for the reserved DB instance.
	CurrencyCode    string `pulumi:"currencyCode"`
	DbInstanceClass string `pulumi:"dbInstanceClass"`
	Duration        int    `pulumi:"duration"`
	// Fixed price charged for this reserved DB instance.
	FixedPrice float64 `pulumi:"fixedPrice"`
	// The provider-assigned unique ID for this managed resource.
	Id      string `pulumi:"id"`
	MultiAz bool   `pulumi:"multiAz"`
	// Unique identifier for the reservation.
	OfferingId         string `pulumi:"offeringId"`
	OfferingType       string `pulumi:"offeringType"`
	ProductDescription string `pulumi:"productDescription"`
}

A collection of values returned by getReservedInstanceOffering.

func GetReservedInstanceOffering

func GetReservedInstanceOffering(ctx *pulumi.Context, args *GetReservedInstanceOfferingArgs, opts ...pulumi.InvokeOption) (*GetReservedInstanceOfferingResult, error)

Information about a single RDS Reserved Instance Offering.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.GetReservedInstanceOffering(ctx, &rds.GetReservedInstanceOfferingArgs{
			DbInstanceClass:    "db.t2.micro",
			Duration:           31536000,
			MultiAz:            false,
			OfferingType:       "All Upfront",
			ProductDescription: "mysql",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetReservedInstanceOfferingResultOutput

type GetReservedInstanceOfferingResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getReservedInstanceOffering.

func (GetReservedInstanceOfferingResultOutput) CurrencyCode

Currency code for the reserved DB instance.

func (GetReservedInstanceOfferingResultOutput) DbInstanceClass

func (GetReservedInstanceOfferingResultOutput) Duration

func (GetReservedInstanceOfferingResultOutput) ElementType

func (GetReservedInstanceOfferingResultOutput) FixedPrice

Fixed price charged for this reserved DB instance.

func (GetReservedInstanceOfferingResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetReservedInstanceOfferingResultOutput) MultiAz

func (GetReservedInstanceOfferingResultOutput) OfferingId

Unique identifier for the reservation.

func (GetReservedInstanceOfferingResultOutput) OfferingType

func (GetReservedInstanceOfferingResultOutput) ProductDescription

func (GetReservedInstanceOfferingResultOutput) ToGetReservedInstanceOfferingResultOutput

func (o GetReservedInstanceOfferingResultOutput) ToGetReservedInstanceOfferingResultOutput() GetReservedInstanceOfferingResultOutput

func (GetReservedInstanceOfferingResultOutput) ToGetReservedInstanceOfferingResultOutputWithContext

func (o GetReservedInstanceOfferingResultOutput) ToGetReservedInstanceOfferingResultOutputWithContext(ctx context.Context) GetReservedInstanceOfferingResultOutput

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. The `engine`, `engineVersion`, and `instanceClass` (on the `rds.ClusterInstance`) must together support global databases. See [Using Amazon Aurora global databases](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html) for more information. By upgrading the engine version, the provider will upgrade cluster members. **NOTE:** To avoid an `inconsistent final plan` error while upgrading, use the `lifecycle` `ignoreChanges` for `engineVersion` meta argument on the associated `rds.Cluster` resource as shown above in Upgrading Engine Versions example.
	EngineVersion       pulumi.StringOutput `pulumi:"engineVersion"`
	EngineVersionActual pulumi.StringOutput `pulumi:"engineVersionActual"`
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// 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 MySQL Global Cluster

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.NewGlobalCluster(ctx, "example", &rds.GlobalClusterArgs{
			GlobalClusterIdentifier: pulumi.String("global-test"),
			Engine:                  pulumi.String("aurora"),
			EngineVersion:           pulumi.String("5.6.mysql_aurora.1.22.2"),
			DatabaseName:            pulumi.String("example_db"),
		})
		if err != nil {
			return err
		}
		primaryCluster, err := rds.NewCluster(ctx, "primaryCluster", &rds.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-primary-cluster"),
			MasterUsername:          pulumi.String("username"),
			MasterPassword:          pulumi.String("somepass123"),
			DatabaseName:            pulumi.String("example_db"),
			GlobalClusterIdentifier: example.ID(),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		primaryClusterInstance, err := rds.NewClusterInstance(ctx, "primaryClusterInstance", &rds.ClusterInstanceArgs{
			Engine:            example.Engine,
			EngineVersion:     example.EngineVersion,
			Identifier:        pulumi.String("test-primary-cluster-instance"),
			ClusterIdentifier: primaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r4.large"),
			DbSubnetGroupName: pulumi.String("default"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		secondaryCluster, err := rds.NewCluster(ctx, "secondaryCluster", &rds.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-secondary-cluster"),
			GlobalClusterIdentifier: example.ID(),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Secondary), pulumi.DependsOn([]pulumi.Resource{
			primaryClusterInstance,
		}))
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "secondaryClusterInstance", &rds.ClusterInstanceArgs{
			Engine:            example.Engine,
			EngineVersion:     example.EngineVersion,
			Identifier:        pulumi.String("test-secondary-cluster-instance"),
			ClusterIdentifier: secondaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r4.large"),
			DbSubnetGroupName: pulumi.String("default"),
		}, pulumi.Provider(aws.Secondary))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### New PostgreSQL Global Cluster

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aws.NewProvider(ctx, "primary", &aws.ProviderArgs{
			Region: pulumi.String("us-east-2"),
		})
		if err != nil {
			return err
		}
		_, err = aws.NewProvider(ctx, "secondary", &aws.ProviderArgs{
			Region: pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		example, err := rds.NewGlobalCluster(ctx, "example", &rds.GlobalClusterArgs{
			GlobalClusterIdentifier: pulumi.String("global-test"),
			Engine:                  pulumi.String("aurora-postgresql"),
			EngineVersion:           pulumi.String("11.9"),
			DatabaseName:            pulumi.String("example_db"),
		})
		if err != nil {
			return err
		}
		primaryCluster, err := rds.NewCluster(ctx, "primaryCluster", &rds.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-primary-cluster"),
			MasterUsername:          pulumi.String("username"),
			MasterPassword:          pulumi.String("somepass123"),
			DatabaseName:            pulumi.String("example_db"),
			GlobalClusterIdentifier: example.ID(),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		primaryClusterInstance, err := rds.NewClusterInstance(ctx, "primaryClusterInstance", &rds.ClusterInstanceArgs{
			Engine:            example.Engine,
			EngineVersion:     example.EngineVersion,
			Identifier:        pulumi.String("test-primary-cluster-instance"),
			ClusterIdentifier: primaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r4.large"),
			DbSubnetGroupName: pulumi.String("default"),
		}, pulumi.Provider(aws.Primary))
		if err != nil {
			return err
		}
		secondaryCluster, err := rds.NewCluster(ctx, "secondaryCluster", &rds.ClusterArgs{
			Engine:                  example.Engine,
			EngineVersion:           example.EngineVersion,
			ClusterIdentifier:       pulumi.String("test-secondary-cluster"),
			GlobalClusterIdentifier: example.ID(),
			SkipFinalSnapshot:       pulumi.Bool(true),
			DbSubnetGroupName:       pulumi.String("default"),
		}, pulumi.Provider(aws.Secondary), pulumi.DependsOn([]pulumi.Resource{
			primaryClusterInstance,
		}))
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "secondaryClusterInstance", &rds.ClusterInstanceArgs{
			Engine:            example.Engine,
			EngineVersion:     example.EngineVersion,
			Identifier:        pulumi.String("test-secondary-cluster-instance"),
			ClusterIdentifier: secondaryCluster.ID(),
			InstanceClass:     pulumi.String("db.r4.large"),
			DbSubnetGroupName: pulumi.String("default"),
		}, 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### Upgrading Engine Versions

When you upgrade the version of an `rds.GlobalCluster`, the provider will attempt to in-place upgrade the engine versions of all associated clusters. Since the `rds.Cluster` resource is being updated through the `rds.GlobalCluster`, you are likely to get an error (`Provider produced inconsistent final plan`). To avoid this, use the `lifecycle` `ignoreChanges` meta argument as shown below on the `rds.Cluster`.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.NewGlobalCluster(ctx, "example", &rds.GlobalClusterArgs{
			GlobalClusterIdentifier: pulumi.String("kyivkharkiv"),
			Engine:                  pulumi.String("aurora-mysql"),
			EngineVersion:           pulumi.String("5.7.mysql_aurora.2.07.5"),
		})
		if err != nil {
			return err
		}
		primaryCluster, err := rds.NewCluster(ctx, "primaryCluster", &rds.ClusterArgs{
			AllowMajorVersionUpgrade: pulumi.Bool(true),
			ApplyImmediately:         pulumi.Bool(true),
			ClusterIdentifier:        pulumi.String("odessadnipro"),
			DatabaseName:             pulumi.String("totoro"),
			Engine:                   example.Engine,
			EngineVersion:            example.EngineVersion,
			GlobalClusterIdentifier:  example.ID(),
			MasterPassword:           pulumi.String("satsukimae"),
			MasterUsername:           pulumi.String("maesatsuki"),
			SkipFinalSnapshot:        pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewClusterInstance(ctx, "primaryClusterInstance", &rds.ClusterInstanceArgs{
			ApplyImmediately:  pulumi.Bool(true),
			ClusterIdentifier: primaryCluster.ID(),
			Engine:            primaryCluster.Engine,
			EngineVersion:     primaryCluster.EngineVersion,
			Identifier:        pulumi.String("donetsklviv"),
			InstanceClass:     pulumi.String("db.r4.large"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_rds_global_cluster` using the RDS Global Cluster identifier. For example:

```sh

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

```

Certain resource arguments, like `force_destroy`, only exist within this provider. If the argument is set in the the provider configuration on an imported resource, This provider will show a difference on the first plan after import to update the state value. This change is safe to apply immediately so the state matches the desired configuration.

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 Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use `ignore_changes` to hide the difference. For example:

func GetGlobalCluster

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

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

func NewGlobalCluster

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

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

func (*GlobalCluster) ElementType

func (*GlobalCluster) ElementType() reflect.Type

func (*GlobalCluster) ToGlobalClusterOutput

func (i *GlobalCluster) ToGlobalClusterOutput() GlobalClusterOutput

func (*GlobalCluster) ToGlobalClusterOutputWithContext

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

type GlobalClusterArgs

type GlobalClusterArgs struct {
	// Name for an automatically created database on cluster creation.
	DatabaseName pulumi.StringPtrInput
	// If the Global Cluster should have deletion protection enabled. The database can't be deleted when this value is set to `true`. The default is `false`.
	DeletionProtection pulumi.BoolPtrInput
	// Name of the database engine to be used for this DB cluster. The provider will only perform drift detection if a configuration value is provided. Valid values: `aurora`, `aurora-mysql`, `aurora-postgresql`. Defaults to `aurora`. Conflicts with `sourceDbClusterIdentifier`.
	Engine pulumi.StringPtrInput
	// Engine version of the Aurora global database. The `engine`, `engineVersion`, and `instanceClass` (on the `rds.ClusterInstance`) must together support global databases. See [Using Amazon Aurora global databases](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html) for more information. By upgrading the engine version, the provider will upgrade cluster members. **NOTE:** To avoid an `inconsistent final plan` error while upgrading, use the `lifecycle` `ignoreChanges` for `engineVersion` meta argument on the associated `rds.Cluster` resource as shown above in Upgrading Engine Versions example.
	EngineVersion pulumi.StringPtrInput
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrInput
	// Global cluster identifier.
	GlobalClusterIdentifier pulumi.StringInput
	// Amazon Resource Name (ARN) to use as the primary DB Cluster of the Global Cluster on creation. The provider cannot perform drift detection of this value.
	SourceDbClusterIdentifier pulumi.StringPtrInput
	// Specifies whether the DB cluster is encrypted. The default is `false` unless `sourceDbClusterIdentifier` is specified and encrypted. The provider will only perform drift detection if a configuration value is provided.
	StorageEncrypted pulumi.BoolPtrInput
}

The set of arguments for constructing a GlobalCluster resource.

func (GlobalClusterArgs) ElementType

func (GlobalClusterArgs) ElementType() reflect.Type

type GlobalClusterArray

type GlobalClusterArray []GlobalClusterInput

func (GlobalClusterArray) ElementType

func (GlobalClusterArray) ElementType() reflect.Type

func (GlobalClusterArray) ToGlobalClusterArrayOutput

func (i GlobalClusterArray) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArray) ToGlobalClusterArrayOutputWithContext

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

type GlobalClusterArrayInput

type GlobalClusterArrayInput interface {
	pulumi.Input

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

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

GlobalClusterArray{ GlobalClusterArgs{...} }

type GlobalClusterArrayOutput

type GlobalClusterArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterArrayOutput) ElementType

func (GlobalClusterArrayOutput) ElementType() reflect.Type

func (GlobalClusterArrayOutput) Index

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutput

func (o GlobalClusterArrayOutput) ToGlobalClusterArrayOutput() GlobalClusterArrayOutput

func (GlobalClusterArrayOutput) ToGlobalClusterArrayOutputWithContext

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

type GlobalClusterGlobalClusterMember

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

type GlobalClusterGlobalClusterMemberArgs

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

func (GlobalClusterGlobalClusterMemberArgs) ElementType

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput

func (i GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberArgs) ToGlobalClusterGlobalClusterMemberOutputWithContext

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

type GlobalClusterGlobalClusterMemberArray

type GlobalClusterGlobalClusterMemberArray []GlobalClusterGlobalClusterMemberInput

func (GlobalClusterGlobalClusterMemberArray) ElementType

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput

func (i GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArray) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext

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

type GlobalClusterGlobalClusterMemberArrayInput

type GlobalClusterGlobalClusterMemberArrayInput interface {
	pulumi.Input

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

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

GlobalClusterGlobalClusterMemberArray{ GlobalClusterGlobalClusterMemberArgs{...} }

type GlobalClusterGlobalClusterMemberArrayOutput

type GlobalClusterGlobalClusterMemberArrayOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberArrayOutput) ElementType

func (GlobalClusterGlobalClusterMemberArrayOutput) Index

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput

func (o GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutput() GlobalClusterGlobalClusterMemberArrayOutput

func (GlobalClusterGlobalClusterMemberArrayOutput) ToGlobalClusterGlobalClusterMemberArrayOutputWithContext

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

type GlobalClusterGlobalClusterMemberInput

type GlobalClusterGlobalClusterMemberInput interface {
	pulumi.Input

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

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

GlobalClusterGlobalClusterMemberArgs{...}

type GlobalClusterGlobalClusterMemberOutput

type GlobalClusterGlobalClusterMemberOutput struct{ *pulumi.OutputState }

func (GlobalClusterGlobalClusterMemberOutput) DbClusterArn

Amazon Resource Name (ARN) of member DB Cluster

func (GlobalClusterGlobalClusterMemberOutput) ElementType

func (GlobalClusterGlobalClusterMemberOutput) IsWriter

Whether the member is the primary DB Cluster

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput

func (o GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutput() GlobalClusterGlobalClusterMemberOutput

func (GlobalClusterGlobalClusterMemberOutput) ToGlobalClusterGlobalClusterMemberOutputWithContext

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

type GlobalClusterInput

type GlobalClusterInput interface {
	pulumi.Input

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

type GlobalClusterMap

type GlobalClusterMap map[string]GlobalClusterInput

func (GlobalClusterMap) ElementType

func (GlobalClusterMap) ElementType() reflect.Type

func (GlobalClusterMap) ToGlobalClusterMapOutput

func (i GlobalClusterMap) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMap) ToGlobalClusterMapOutputWithContext

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

type GlobalClusterMapInput

type GlobalClusterMapInput interface {
	pulumi.Input

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

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

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

type GlobalClusterMapOutput

type GlobalClusterMapOutput struct{ *pulumi.OutputState }

func (GlobalClusterMapOutput) ElementType

func (GlobalClusterMapOutput) ElementType() reflect.Type

func (GlobalClusterMapOutput) MapIndex

func (GlobalClusterMapOutput) ToGlobalClusterMapOutput

func (o GlobalClusterMapOutput) ToGlobalClusterMapOutput() GlobalClusterMapOutput

func (GlobalClusterMapOutput) ToGlobalClusterMapOutputWithContext

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

type GlobalClusterOutput

type GlobalClusterOutput struct{ *pulumi.OutputState }

func (GlobalClusterOutput) Arn

RDS Global Cluster Amazon Resource Name (ARN)

func (GlobalClusterOutput) DatabaseName

func (o GlobalClusterOutput) DatabaseName() pulumi.StringPtrOutput

Name for an automatically created database on cluster creation.

func (GlobalClusterOutput) DeletionProtection

func (o GlobalClusterOutput) DeletionProtection() pulumi.BoolPtrOutput

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

func (GlobalClusterOutput) ElementType

func (GlobalClusterOutput) ElementType() reflect.Type

func (GlobalClusterOutput) Engine

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

func (GlobalClusterOutput) EngineVersion

func (o GlobalClusterOutput) EngineVersion() pulumi.StringOutput

Engine version of the Aurora global database. The `engine`, `engineVersion`, and `instanceClass` (on the `rds.ClusterInstance`) must together support global databases. See [Using Amazon Aurora global databases](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html) for more information. By upgrading the engine version, the provider will upgrade cluster members. **NOTE:** To avoid an `inconsistent final plan` error while upgrading, use the `lifecycle` `ignoreChanges` for `engineVersion` meta argument on the associated `rds.Cluster` resource as shown above in Upgrading Engine Versions example.

func (GlobalClusterOutput) EngineVersionActual

func (o GlobalClusterOutput) EngineVersionActual() pulumi.StringOutput

func (GlobalClusterOutput) ForceDestroy

func (o GlobalClusterOutput) ForceDestroy() pulumi.BoolPtrOutput

Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.

func (GlobalClusterOutput) GlobalClusterIdentifier

func (o GlobalClusterOutput) GlobalClusterIdentifier() pulumi.StringOutput

Global cluster identifier.

func (GlobalClusterOutput) GlobalClusterMembers

Set of objects containing Global Cluster members.

func (GlobalClusterOutput) GlobalClusterResourceId

func (o GlobalClusterOutput) GlobalClusterResourceId() pulumi.StringOutput

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

func (GlobalClusterOutput) SourceDbClusterIdentifier

func (o GlobalClusterOutput) SourceDbClusterIdentifier() pulumi.StringOutput

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

func (GlobalClusterOutput) StorageEncrypted

func (o GlobalClusterOutput) StorageEncrypted() pulumi.BoolOutput

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

func (GlobalClusterOutput) ToGlobalClusterOutput

func (o GlobalClusterOutput) ToGlobalClusterOutput() GlobalClusterOutput

func (GlobalClusterOutput) ToGlobalClusterOutputWithContext

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

type GlobalClusterState

type GlobalClusterState struct {
	// 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. The `engine`, `engineVersion`, and `instanceClass` (on the `rds.ClusterInstance`) must together support global databases. See [Using Amazon Aurora global databases](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html) for more information. By upgrading the engine version, the provider will upgrade cluster members. **NOTE:** To avoid an `inconsistent final plan` error while upgrading, use the `lifecycle` `ignoreChanges` for `engineVersion` meta argument on the associated `rds.Cluster` resource as shown above in Upgrading Engine Versions example.
	EngineVersion       pulumi.StringPtrInput
	EngineVersionActual pulumi.StringPtrInput
	// Enable to remove DB Cluster members from Global Cluster on destroy. Required with `sourceDbClusterIdentifier`.
	ForceDestroy pulumi.BoolPtrInput
	// 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

	// Specifies the DNS address of the DB instance.
	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. If `replicateSourceDb` is set, the value is ignored during the creation of the instance.
	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.BoolPtrOutput `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`.
	// Default is `0`.
	// Must be greater than `0` if the database is used as a source for a [Read Replica][instance-replication],
	// uses low-downtime updates,
	// or will use [RDS Blue/Green deployments][blue-green].
	BackupRetentionPeriod pulumi.IntOutput `pulumi:"backupRetentionPeriod"`
	// Specifies where automated backups and manual snapshots are stored. Possible values are `region` (default) and `outposts`. See [Working with Amazon RDS on AWS Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) for more information.
	BackupTarget pulumi.StringOutput `pulumi:"backupTarget"`
	// 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"`
	// Enables low-downtime updates using [RDS Blue/Green deployments][blue-green].
	// See `blueGreenUpdate` below.
	BlueGreenUpdate InstanceBlueGreenUpdatePtrOutput `pulumi:"blueGreenUpdate"`
	// 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"`
	// The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrOutput `pulumi:"customIamInstanceProfile"`
	// Indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. See [CoIP for RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html#rds-on-outposts.coip) for more information.
	//
	// > **NOTE:** Removing the `replicateSourceDb` attribute from an existing RDS
	// Replicate database managed by the provider will promote the database to a fully
	// standalone database.
	CustomerOwnedIpEnabled pulumi.BoolPtrOutput `pulumi:"customerOwnedIpEnabled"`
	// 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines. If you are providing an Oracle db name, it needs to be in all upper case. Cannot be specified for a replica.
	DbName pulumi.StringOutput `pulumi:"dbName"`
	// 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 constraints.
	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. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	Domain pulumi.StringPtrOutput `pulumi:"domain"`
	// The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainAuthSecretArn pulumi.StringPtrOutput `pulumi:"domainAuthSecretArn"`
	// The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers. Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list. Conflicts with `domain` and `domainIamRoleName`.
	DomainDnsIps pulumi.StringArrayOutput `pulumi:"domainDnsIps"`
	// The fully qualified domain name (FQDN) of the self managed Active Directory domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainFqdn pulumi.StringOutput `pulumi:"domainFqdn"`
	// The name of the IAM role to be used when making API calls to the Directory Service. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	DomainIamRoleName pulumi.StringPtrOutput `pulumi:"domainIamRoleName"`
	// The self managed Active Directory organizational unit for your DB instance to join. Conflicts with `domain` and `domainIamRoleName`.
	DomainOu pulumi.StringPtrOutput `pulumi:"domainOu"`
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. For supported values, see the EnableCloudwatchLogsExports.member.N parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	EnabledCloudwatchLogsExports pulumi.StringArrayOutput `pulumi:"enabledCloudwatchLogsExports"`
	// The connection endpoint in `address:port` format.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// 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`). The actual engine version used is returned in the attribute `engineVersionActual`, see Attribute Reference below. 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 running version of the database.
	EngineVersionActual pulumi.StringOutput `pulumi:"engineVersionActual"`
	// 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"`
	// Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Specifies whether 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. Required if `restoreToPointInTime` is specified.
	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". Can only be set when `storageType` is `"io1"` or `"gp3"`.
	// Cannot be specified for gp3 storage if the `allocatedStorage` value is below a per-`engine` threshold.
	// See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	Iops pulumi.IntOutput `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"`
	// License model information for this DB instance. Valid values for this field are as follows:
	// * RDS for MariaDB: `general-public-license`
	// * RDS for Microsoft SQL Server: `license-included`
	// * RDS for MySQL: `general-public-license`
	// * RDS for Oracle: `bring-your-own-license | license-included`
	// * RDS for PostgreSQL: `postgresql-license`
	LicenseModel pulumi.StringOutput `pulumi:"licenseModel"`
	// Specifies the listener connection endpoint for SQL Server Always On. See endpoint below.
	ListenerEndpoints InstanceListenerEndpointArrayOutput `pulumi:"listenerEndpoints"`
	// 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"`
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `password` is provided.
	ManageMasterUserPassword pulumi.BoolPtrOutput `pulumi:"manageMasterUserPassword"`
	// The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId pulumi.StringOutput `pulumi:"masterUserSecretKmsKeyId"`
	// A block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.
	MasterUserSecrets InstanceMasterUserSecretArrayOutput `pulumi:"masterUserSecrets"`
	// 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"`
	// Deprecated: This property has been deprecated. Please use 'dbName' instead.
	Name pulumi.StringPtrOutput `pulumi:"name"`
	// The national character set is used in the NCHAR, NVARCHAR2, and NCLOB data types for Oracle instances. This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html).
	NcharCharacterSetName pulumi.StringOutput `pulumi:"ncharCharacterSetName"`
	// The network type of the DB instance. Valid values: `IPV4`, `DUAL`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// 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 `manageMasterUserPassword` is set to true or unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided or `manageMasterUserPassword` is set.) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file. Cannot be set if `manageMasterUserPassword` is set to `true`.
	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"`
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. 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"`
	// Specifies whether the replica is in either `mounted` or `open-read-only` mode. This attribute
	// is only supported by Oracle instances. Oracle replicas operate in `open-read-only` mode unless otherwise specified. See [Working with Oracle Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) for more information.
	ReplicaMode pulumi.StringOutput      `pulumi:"replicaMode"`
	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][instance-replication] 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"`
	// 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"`
	// The storage throughput value for the DB instance. Can only be set when `storageType` is `"gp3"`. Cannot be specified if the `allocatedStorage` value is below a per-`engine` threshold. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	StorageThroughput pulumi.IntOutput `pulumi:"storageThroughput"`
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), "gp3" (general purpose SSD that needs `iops` independently)
	// 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// 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. Cannot be specified for a replica.
	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 Instance Maintenance][instance-maintenance] for more information.

> **Note:** All arguments including the username and password will be stored in the raw state as plain-text. Read more about sensitive data instate.

## RDS Instance Class Types

Amazon RDS supports instance classes for the following use cases: General-purpose, Memory-optimized, Burstable Performance, and Optimized-reads. 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)

## Low-Downtime Updates

By default, RDS applies updates to DB Instances in-place, which can lead to service interruptions. Low-downtime updates minimize service interruptions by performing the updates with an [RDS Blue/Green deployment][blue-green] and switching over the instances when complete.

Low-downtime updates are only available for DB Instances using MySQL and MariaDB, as other engines are not supported by RDS Blue/Green deployments. They cannot be used with DB Instances with replicas.

Backups must be enabled to use low-downtime updates.

Enable low-downtime updates by setting `blue_green_update.enabled` to `true`.

## Example Usage ### Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			AllocatedStorage:   pulumi.Int(10),
			DbName:             pulumi.String("mydb"),
			Engine:             pulumi.String("mysql"),
			EngineVersion:      pulumi.String("5.7"),
			InstanceClass:      pulumi.String("db.t3.micro"),
			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
	})
}

``` ### RDS Db2 Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := rds.GetEngineVersion(ctx, &rds.GetEngineVersionArgs{
			Engine: "db2-se",
		}, nil)
		if err != nil {
			return err
		}
		exampleOrderableDbInstance, err := rds.GetOrderableDbInstance(ctx, &rds.GetOrderableDbInstanceArgs{
			Engine:        _default.Engine,
			EngineVersion: pulumi.StringRef(_default.Version),
			LicenseModel:  pulumi.StringRef("bring-your-own-license"),
			StorageType:   pulumi.StringRef("gp3"),
			PreferredInstanceClasses: []string{
				"db.t3.small",
				"db.r6i.large",
				"db.m6i.large",
			},
		}, nil)
		if err != nil {
			return err
		}
		exampleParameterGroup, err := rds.NewParameterGroup(ctx, "exampleParameterGroup", &rds.ParameterGroupArgs{
			Family: *pulumi.String(_default.ParameterGroupFamily),
			Parameters: rds.ParameterGroupParameterArray{
				&rds.ParameterGroupParameterArgs{
					ApplyMethod: pulumi.String("immediate"),
					Name:        pulumi.String("rds.ibm_customer_id"),
					Value:       pulumi.String("0"),
				},
				&rds.ParameterGroupParameterArgs{
					ApplyMethod: pulumi.String("immediate"),
					Name:        pulumi.String("rds.ibm_site_id"),
					Value:       pulumi.String("0"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			AllocatedStorage:      pulumi.Int(100),
			BackupRetentionPeriod: pulumi.Int(7),
			DbName:                pulumi.String("test"),
			Engine:                *pulumi.String(exampleOrderableDbInstance.Engine),
			EngineVersion:         *pulumi.String(exampleOrderableDbInstance.EngineVersion),
			Identifier:            pulumi.String("db2-instance-demo"),
			InstanceClass:         exampleOrderableDbInstance.InstanceClass.ApplyT(func(x *string) rds.InstanceType { return rds.InstanceType(*x) }).(rds.InstanceTypeOutput),
			ParameterGroupName:    exampleParameterGroup.Name,
			Password:              pulumi.String("avoid-plaintext-passwords"),
			Username:              pulumi.String("test"),
		})
		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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### Managed Master Passwords via Secrets Manager, default KMS Key

> More information about RDS/Aurora Aurora integrates with Secrets Manager to manage master user passwords for your DB clusters can be found in the [RDS User Guide](https://aws.amazon.com/about-aws/whats-new/2022/12/amazon-rds-integration-aws-secrets-manager/) and [Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html).

You can specify the `manageMasterUserPassword` attribute to enable managing the master password with Secrets Manager. You can also update an existing cluster to use Secrets Manager by specify the `manageMasterUserPassword` attribute and removing the `password` attribute (removal is required).

```go package main

import (

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

)

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

``` ### Managed Master Passwords via Secrets Manager, specific KMS Key

> More information about RDS/Aurora Aurora integrates with Secrets Manager to manage master user passwords for your DB clusters can be found in the [RDS User Guide](https://aws.amazon.com/about-aws/whats-new/2022/12/amazon-rds-integration-aws-secrets-manager/) and [Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html).

You can specify the `masterUserSecretKmsKeyId` attribute to specify a specific KMS Key.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := kms.NewKey(ctx, "example", &kms.KeyArgs{
			Description: pulumi.String("Example KMS Key"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			AllocatedStorage:         pulumi.Int(10),
			DbName:                   pulumi.String("mydb"),
			Engine:                   pulumi.String("mysql"),
			EngineVersion:            pulumi.String("5.7"),
			InstanceClass:            pulumi.String("db.t3.micro"),
			ManageMasterUserPassword: pulumi.Bool(true),
			MasterUserSecretKmsKeyId: example.KeyId,
			Username:                 pulumi.String("foo"),
			ParameterGroupName:       pulumi.String("default.mysql5.7"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import DB Instances using the `identifier`. For example:

```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

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

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

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. If `replicateSourceDb` is set, the value is ignored during the creation of the instance.
	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`.
	// Default is `0`.
	// Must be greater than `0` if the database is used as a source for a [Read Replica][instance-replication],
	// uses low-downtime updates,
	// or will use [RDS Blue/Green deployments][blue-green].
	BackupRetentionPeriod pulumi.IntPtrInput
	// Specifies where automated backups and manual snapshots are stored. Possible values are `region` (default) and `outposts`. See [Working with Amazon RDS on AWS Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) for more information.
	BackupTarget pulumi.StringPtrInput
	// 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
	// Enables low-downtime updates using [RDS Blue/Green deployments][blue-green].
	// See `blueGreenUpdate` below.
	BlueGreenUpdate InstanceBlueGreenUpdatePtrInput
	// 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
	// The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrInput
	// Indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. See [CoIP for RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html#rds-on-outposts.coip) for more information.
	//
	// > **NOTE:** Removing the `replicateSourceDb` attribute from an existing RDS
	// Replicate database managed by the provider will promote the database to a fully
	// standalone database.
	CustomerOwnedIpEnabled 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines. If you are providing an Oracle db name, it needs to be in all upper case. Cannot be specified for a replica.
	DbName pulumi.StringPtrInput
	// 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 constraints.
	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. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	Domain pulumi.StringPtrInput
	// The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainAuthSecretArn pulumi.StringPtrInput
	// The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers. Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list. Conflicts with `domain` and `domainIamRoleName`.
	DomainDnsIps pulumi.StringArrayInput
	// The fully qualified domain name (FQDN) of the self managed Active Directory domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainFqdn pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	DomainIamRoleName pulumi.StringPtrInput
	// The self managed Active Directory organizational unit for your DB instance to join. Conflicts with `domain` and `domainIamRoleName`.
	DomainOu pulumi.StringPtrInput
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. For supported values, see the EnableCloudwatchLogsExports.member.N parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// 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`). The actual engine version used is returned in the attribute `engineVersionActual`, see Attribute Reference below. 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 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. Required if `restoreToPointInTime` is specified.
	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". Can only be set when `storageType` is `"io1"` or `"gp3"`.
	// Cannot be specified for gp3 storage if the `allocatedStorage` value is below a per-`engine` threshold.
	// See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	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
	// License model information for this DB instance. Valid values for this field are as follows:
	// * RDS for MariaDB: `general-public-license`
	// * RDS for Microsoft SQL Server: `license-included`
	// * RDS for MySQL: `general-public-license`
	// * RDS for Oracle: `bring-your-own-license | license-included`
	// * RDS for PostgreSQL: `postgresql-license`
	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
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `password` is provided.
	ManageMasterUserPassword pulumi.BoolPtrInput
	// The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId 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
	// Deprecated: This property has been deprecated. Please use 'dbName' instead.
	Name pulumi.StringPtrInput
	// The national character set is used in the NCHAR, NVARCHAR2, and NCLOB data types for Oracle instances. This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html).
	NcharCharacterSetName pulumi.StringPtrInput
	// The network type of the DB instance. Valid values: `IPV4`, `DUAL`.
	NetworkType 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 `manageMasterUserPassword` is set to true or unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided or `manageMasterUserPassword` is set.) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file. Cannot be set if `manageMasterUserPassword` is set to `true`.
	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
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. 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 whether the replica is in either `mounted` or `open-read-only` mode. This attribute
	// is only supported by Oracle instances. Oracle replicas operate in `open-read-only` mode unless otherwise specified. See [Working with Oracle Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) for more information.
	ReplicaMode pulumi.StringPtrInput
	// 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][instance-replication] 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
	// 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
	// The storage throughput value for the DB instance. Can only be set when `storageType` is `"gp3"`. Cannot be specified if the `allocatedStorage` value is below a per-`engine` threshold. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	StorageThroughput pulumi.IntPtrInput
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), "gp3" (general purpose SSD that needs `iops` independently)
	// 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	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. Cannot be specified for a replica.
	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

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

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

type InstanceArrayInput

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

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

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

type InstanceAutomatedBackupsReplication

type InstanceAutomatedBackupsReplication struct {
	pulumi.CustomResourceState

	// The AWS KMS key identifier for encryption of the replicated automated backups. The KMS key ID is the Amazon Resource Name (ARN) for the KMS encryption key in the destination AWS Region, for example, `arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE`.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// A URL that contains a [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) signed request for the [`StartDBInstanceAutomatedBackupsReplication`](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html) action to be called in the AWS Region of the source DB instance.
	PreSignedUrl pulumi.StringPtrOutput `pulumi:"preSignedUrl"`
	// The retention period for the replicated automated backups, defaults to `7`.
	RetentionPeriod pulumi.IntPtrOutput `pulumi:"retentionPeriod"`
	// The Amazon Resource Name (ARN) of the source DB instance for the replicated automated backups, for example, `arn:aws:rds:us-west-2:123456789012:db:mydatabase`.
	SourceDbInstanceArn pulumi.StringOutput `pulumi:"sourceDbInstanceArn"`
}

Manage cross-region replication of automated backups to a different AWS Region. Documentation for cross-region automated backup replication can be found at:

* [Replicating automated backups to another AWS Region](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReplicateBackups.html)

> **Note:** This resource has to be created in the destination region.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewInstanceAutomatedBackupsReplication(ctx, "default", &rds.InstanceAutomatedBackupsReplicationArgs{
			RetentionPeriod:     pulumi.Int(14),
			SourceDbInstanceArn: pulumi.String("arn:aws:rds:us-west-2:123456789012:db:mydatabase"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Encrypting the automated backup with KMS

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewInstanceAutomatedBackupsReplication(ctx, "default", &rds.InstanceAutomatedBackupsReplicationArgs{
			KmsKeyId:            pulumi.String("arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"),
			SourceDbInstanceArn: pulumi.String("arn:aws:rds:us-west-2:123456789012:db:mydatabase"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Example including a RDS DB instance

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aws.NewProvider(ctx, "replica", &aws.ProviderArgs{
			Region: pulumi.String("us-west-2"),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "defaultInstance", &rds.InstanceArgs{
			AllocatedStorage:      pulumi.Int(10),
			Identifier:            pulumi.String("mydb"),
			Engine:                pulumi.String("postgres"),
			EngineVersion:         pulumi.String("13.4"),
			InstanceClass:         pulumi.String("db.t3.micro"),
			DbName:                pulumi.String("mydb"),
			Username:              pulumi.String("masterusername"),
			Password:              pulumi.String("mustbeeightcharacters"),
			BackupRetentionPeriod: pulumi.Int(7),
			StorageEncrypted:      pulumi.Bool(true),
			SkipFinalSnapshot:     pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		defaultKey, err := kms.NewKey(ctx, "defaultKey", &kms.KeyArgs{
			Description: pulumi.String("Encryption key for automated backups"),
		}, pulumi.Provider(aws.Replica))
		if err != nil {
			return err
		}
		_, err = rds.NewInstanceAutomatedBackupsReplication(ctx, "defaultInstanceAutomatedBackupsReplication", &rds.InstanceAutomatedBackupsReplicationArgs{
			SourceDbInstanceArn: defaultInstance.Arn,
			KmsKeyId:            defaultKey.Arn,
		}, pulumi.Provider(aws.Replica))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import RDS instance automated backups replication using the `arn`. For example:

```sh

$ pulumi import aws:rds/instanceAutomatedBackupsReplication:InstanceAutomatedBackupsReplication default arn:aws:rds:us-east-1:123456789012:auto-backup:ab-faaa2mgdj1vmp4xflr7yhsrmtbtob7ltrzzz2my

```

func GetInstanceAutomatedBackupsReplication

func GetInstanceAutomatedBackupsReplication(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceAutomatedBackupsReplicationState, opts ...pulumi.ResourceOption) (*InstanceAutomatedBackupsReplication, error)

GetInstanceAutomatedBackupsReplication gets an existing InstanceAutomatedBackupsReplication 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 NewInstanceAutomatedBackupsReplication

func NewInstanceAutomatedBackupsReplication(ctx *pulumi.Context,
	name string, args *InstanceAutomatedBackupsReplicationArgs, opts ...pulumi.ResourceOption) (*InstanceAutomatedBackupsReplication, error)

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

func (*InstanceAutomatedBackupsReplication) ElementType

func (*InstanceAutomatedBackupsReplication) ToInstanceAutomatedBackupsReplicationOutput

func (i *InstanceAutomatedBackupsReplication) ToInstanceAutomatedBackupsReplicationOutput() InstanceAutomatedBackupsReplicationOutput

func (*InstanceAutomatedBackupsReplication) ToInstanceAutomatedBackupsReplicationOutputWithContext

func (i *InstanceAutomatedBackupsReplication) ToInstanceAutomatedBackupsReplicationOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationOutput

type InstanceAutomatedBackupsReplicationArgs

type InstanceAutomatedBackupsReplicationArgs struct {
	// The AWS KMS key identifier for encryption of the replicated automated backups. The KMS key ID is the Amazon Resource Name (ARN) for the KMS encryption key in the destination AWS Region, for example, `arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE`.
	KmsKeyId pulumi.StringPtrInput
	// A URL that contains a [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) signed request for the [`StartDBInstanceAutomatedBackupsReplication`](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html) action to be called in the AWS Region of the source DB instance.
	PreSignedUrl pulumi.StringPtrInput
	// The retention period for the replicated automated backups, defaults to `7`.
	RetentionPeriod pulumi.IntPtrInput
	// The Amazon Resource Name (ARN) of the source DB instance for the replicated automated backups, for example, `arn:aws:rds:us-west-2:123456789012:db:mydatabase`.
	SourceDbInstanceArn pulumi.StringInput
}

The set of arguments for constructing a InstanceAutomatedBackupsReplication resource.

func (InstanceAutomatedBackupsReplicationArgs) ElementType

type InstanceAutomatedBackupsReplicationArray

type InstanceAutomatedBackupsReplicationArray []InstanceAutomatedBackupsReplicationInput

func (InstanceAutomatedBackupsReplicationArray) ElementType

func (InstanceAutomatedBackupsReplicationArray) ToInstanceAutomatedBackupsReplicationArrayOutput

func (i InstanceAutomatedBackupsReplicationArray) ToInstanceAutomatedBackupsReplicationArrayOutput() InstanceAutomatedBackupsReplicationArrayOutput

func (InstanceAutomatedBackupsReplicationArray) ToInstanceAutomatedBackupsReplicationArrayOutputWithContext

func (i InstanceAutomatedBackupsReplicationArray) ToInstanceAutomatedBackupsReplicationArrayOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationArrayOutput

type InstanceAutomatedBackupsReplicationArrayInput

type InstanceAutomatedBackupsReplicationArrayInput interface {
	pulumi.Input

	ToInstanceAutomatedBackupsReplicationArrayOutput() InstanceAutomatedBackupsReplicationArrayOutput
	ToInstanceAutomatedBackupsReplicationArrayOutputWithContext(context.Context) InstanceAutomatedBackupsReplicationArrayOutput
}

InstanceAutomatedBackupsReplicationArrayInput is an input type that accepts InstanceAutomatedBackupsReplicationArray and InstanceAutomatedBackupsReplicationArrayOutput values. You can construct a concrete instance of `InstanceAutomatedBackupsReplicationArrayInput` via:

InstanceAutomatedBackupsReplicationArray{ InstanceAutomatedBackupsReplicationArgs{...} }

type InstanceAutomatedBackupsReplicationArrayOutput

type InstanceAutomatedBackupsReplicationArrayOutput struct{ *pulumi.OutputState }

func (InstanceAutomatedBackupsReplicationArrayOutput) ElementType

func (InstanceAutomatedBackupsReplicationArrayOutput) Index

func (InstanceAutomatedBackupsReplicationArrayOutput) ToInstanceAutomatedBackupsReplicationArrayOutput

func (o InstanceAutomatedBackupsReplicationArrayOutput) ToInstanceAutomatedBackupsReplicationArrayOutput() InstanceAutomatedBackupsReplicationArrayOutput

func (InstanceAutomatedBackupsReplicationArrayOutput) ToInstanceAutomatedBackupsReplicationArrayOutputWithContext

func (o InstanceAutomatedBackupsReplicationArrayOutput) ToInstanceAutomatedBackupsReplicationArrayOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationArrayOutput

type InstanceAutomatedBackupsReplicationInput

type InstanceAutomatedBackupsReplicationInput interface {
	pulumi.Input

	ToInstanceAutomatedBackupsReplicationOutput() InstanceAutomatedBackupsReplicationOutput
	ToInstanceAutomatedBackupsReplicationOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationOutput
}

type InstanceAutomatedBackupsReplicationMap

type InstanceAutomatedBackupsReplicationMap map[string]InstanceAutomatedBackupsReplicationInput

func (InstanceAutomatedBackupsReplicationMap) ElementType

func (InstanceAutomatedBackupsReplicationMap) ToInstanceAutomatedBackupsReplicationMapOutput

func (i InstanceAutomatedBackupsReplicationMap) ToInstanceAutomatedBackupsReplicationMapOutput() InstanceAutomatedBackupsReplicationMapOutput

func (InstanceAutomatedBackupsReplicationMap) ToInstanceAutomatedBackupsReplicationMapOutputWithContext

func (i InstanceAutomatedBackupsReplicationMap) ToInstanceAutomatedBackupsReplicationMapOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationMapOutput

type InstanceAutomatedBackupsReplicationMapInput

type InstanceAutomatedBackupsReplicationMapInput interface {
	pulumi.Input

	ToInstanceAutomatedBackupsReplicationMapOutput() InstanceAutomatedBackupsReplicationMapOutput
	ToInstanceAutomatedBackupsReplicationMapOutputWithContext(context.Context) InstanceAutomatedBackupsReplicationMapOutput
}

InstanceAutomatedBackupsReplicationMapInput is an input type that accepts InstanceAutomatedBackupsReplicationMap and InstanceAutomatedBackupsReplicationMapOutput values. You can construct a concrete instance of `InstanceAutomatedBackupsReplicationMapInput` via:

InstanceAutomatedBackupsReplicationMap{ "key": InstanceAutomatedBackupsReplicationArgs{...} }

type InstanceAutomatedBackupsReplicationMapOutput

type InstanceAutomatedBackupsReplicationMapOutput struct{ *pulumi.OutputState }

func (InstanceAutomatedBackupsReplicationMapOutput) ElementType

func (InstanceAutomatedBackupsReplicationMapOutput) MapIndex

func (InstanceAutomatedBackupsReplicationMapOutput) ToInstanceAutomatedBackupsReplicationMapOutput

func (o InstanceAutomatedBackupsReplicationMapOutput) ToInstanceAutomatedBackupsReplicationMapOutput() InstanceAutomatedBackupsReplicationMapOutput

func (InstanceAutomatedBackupsReplicationMapOutput) ToInstanceAutomatedBackupsReplicationMapOutputWithContext

func (o InstanceAutomatedBackupsReplicationMapOutput) ToInstanceAutomatedBackupsReplicationMapOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationMapOutput

type InstanceAutomatedBackupsReplicationOutput

type InstanceAutomatedBackupsReplicationOutput struct{ *pulumi.OutputState }

func (InstanceAutomatedBackupsReplicationOutput) ElementType

func (InstanceAutomatedBackupsReplicationOutput) KmsKeyId

The AWS KMS key identifier for encryption of the replicated automated backups. The KMS key ID is the Amazon Resource Name (ARN) for the KMS encryption key in the destination AWS Region, for example, `arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE`.

func (InstanceAutomatedBackupsReplicationOutput) PreSignedUrl

A URL that contains a [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) signed request for the [`StartDBInstanceAutomatedBackupsReplication`](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html) action to be called in the AWS Region of the source DB instance.

func (InstanceAutomatedBackupsReplicationOutput) RetentionPeriod

The retention period for the replicated automated backups, defaults to `7`.

func (InstanceAutomatedBackupsReplicationOutput) SourceDbInstanceArn

The Amazon Resource Name (ARN) of the source DB instance for the replicated automated backups, for example, `arn:aws:rds:us-west-2:123456789012:db:mydatabase`.

func (InstanceAutomatedBackupsReplicationOutput) ToInstanceAutomatedBackupsReplicationOutput

func (o InstanceAutomatedBackupsReplicationOutput) ToInstanceAutomatedBackupsReplicationOutput() InstanceAutomatedBackupsReplicationOutput

func (InstanceAutomatedBackupsReplicationOutput) ToInstanceAutomatedBackupsReplicationOutputWithContext

func (o InstanceAutomatedBackupsReplicationOutput) ToInstanceAutomatedBackupsReplicationOutputWithContext(ctx context.Context) InstanceAutomatedBackupsReplicationOutput

type InstanceAutomatedBackupsReplicationState

type InstanceAutomatedBackupsReplicationState struct {
	// The AWS KMS key identifier for encryption of the replicated automated backups. The KMS key ID is the Amazon Resource Name (ARN) for the KMS encryption key in the destination AWS Region, for example, `arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE`.
	KmsKeyId pulumi.StringPtrInput
	// A URL that contains a [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) signed request for the [`StartDBInstanceAutomatedBackupsReplication`](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html) action to be called in the AWS Region of the source DB instance.
	PreSignedUrl pulumi.StringPtrInput
	// The retention period for the replicated automated backups, defaults to `7`.
	RetentionPeriod pulumi.IntPtrInput
	// The Amazon Resource Name (ARN) of the source DB instance for the replicated automated backups, for example, `arn:aws:rds:us-west-2:123456789012:db:mydatabase`.
	SourceDbInstanceArn pulumi.StringPtrInput
}

func (InstanceAutomatedBackupsReplicationState) ElementType

type InstanceBlueGreenUpdate

type InstanceBlueGreenUpdate struct {
	// Enables low-downtime updates when `true`.
	// Default is `false`.
	//
	// [instance-replication]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Replication.html
	// [instance-maintenance]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html
	// [blue-green]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html
	Enabled *bool `pulumi:"enabled"`
}

type InstanceBlueGreenUpdateArgs

type InstanceBlueGreenUpdateArgs struct {
	// Enables low-downtime updates when `true`.
	// Default is `false`.
	//
	// [instance-replication]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Replication.html
	// [instance-maintenance]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html
	// [blue-green]:
	// https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (InstanceBlueGreenUpdateArgs) ElementType

func (InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdateOutput

func (i InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdateOutput() InstanceBlueGreenUpdateOutput

func (InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdateOutputWithContext

func (i InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdateOutputWithContext(ctx context.Context) InstanceBlueGreenUpdateOutput

func (InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdatePtrOutput

func (i InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdatePtrOutput() InstanceBlueGreenUpdatePtrOutput

func (InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdatePtrOutputWithContext

func (i InstanceBlueGreenUpdateArgs) ToInstanceBlueGreenUpdatePtrOutputWithContext(ctx context.Context) InstanceBlueGreenUpdatePtrOutput

type InstanceBlueGreenUpdateInput

type InstanceBlueGreenUpdateInput interface {
	pulumi.Input

	ToInstanceBlueGreenUpdateOutput() InstanceBlueGreenUpdateOutput
	ToInstanceBlueGreenUpdateOutputWithContext(context.Context) InstanceBlueGreenUpdateOutput
}

InstanceBlueGreenUpdateInput is an input type that accepts InstanceBlueGreenUpdateArgs and InstanceBlueGreenUpdateOutput values. You can construct a concrete instance of `InstanceBlueGreenUpdateInput` via:

InstanceBlueGreenUpdateArgs{...}

type InstanceBlueGreenUpdateOutput

type InstanceBlueGreenUpdateOutput struct{ *pulumi.OutputState }

func (InstanceBlueGreenUpdateOutput) ElementType

func (InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdateOutput

func (o InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdateOutput() InstanceBlueGreenUpdateOutput

func (InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdateOutputWithContext

func (o InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdateOutputWithContext(ctx context.Context) InstanceBlueGreenUpdateOutput

func (InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdatePtrOutput

func (o InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdatePtrOutput() InstanceBlueGreenUpdatePtrOutput

func (InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdatePtrOutputWithContext

func (o InstanceBlueGreenUpdateOutput) ToInstanceBlueGreenUpdatePtrOutputWithContext(ctx context.Context) InstanceBlueGreenUpdatePtrOutput

type InstanceBlueGreenUpdatePtrInput

type InstanceBlueGreenUpdatePtrInput interface {
	pulumi.Input

	ToInstanceBlueGreenUpdatePtrOutput() InstanceBlueGreenUpdatePtrOutput
	ToInstanceBlueGreenUpdatePtrOutputWithContext(context.Context) InstanceBlueGreenUpdatePtrOutput
}

InstanceBlueGreenUpdatePtrInput is an input type that accepts InstanceBlueGreenUpdateArgs, InstanceBlueGreenUpdatePtr and InstanceBlueGreenUpdatePtrOutput values. You can construct a concrete instance of `InstanceBlueGreenUpdatePtrInput` via:

        InstanceBlueGreenUpdateArgs{...}

or:

        nil

type InstanceBlueGreenUpdatePtrOutput

type InstanceBlueGreenUpdatePtrOutput struct{ *pulumi.OutputState }

func (InstanceBlueGreenUpdatePtrOutput) Elem

func (InstanceBlueGreenUpdatePtrOutput) ElementType

func (InstanceBlueGreenUpdatePtrOutput) ToInstanceBlueGreenUpdatePtrOutput

func (o InstanceBlueGreenUpdatePtrOutput) ToInstanceBlueGreenUpdatePtrOutput() InstanceBlueGreenUpdatePtrOutput

func (InstanceBlueGreenUpdatePtrOutput) ToInstanceBlueGreenUpdatePtrOutputWithContext

func (o InstanceBlueGreenUpdatePtrOutput) ToInstanceBlueGreenUpdatePtrOutputWithContext(ctx context.Context) InstanceBlueGreenUpdatePtrOutput

type InstanceInput

type InstanceInput interface {
	pulumi.Input

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

type InstanceListenerEndpoint

type InstanceListenerEndpoint struct {
	// Specifies the DNS address of the DB instance.
	Address *string `pulumi:"address"`
	// Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
	HostedZoneId *string `pulumi:"hostedZoneId"`
	// The port on which the DB accepts connections.
	Port *int `pulumi:"port"`
}

type InstanceListenerEndpointArgs

type InstanceListenerEndpointArgs struct {
	// Specifies the DNS address of the DB instance.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
	HostedZoneId pulumi.StringPtrInput `pulumi:"hostedZoneId"`
	// The port on which the DB accepts connections.
	Port pulumi.IntPtrInput `pulumi:"port"`
}

func (InstanceListenerEndpointArgs) ElementType

func (InstanceListenerEndpointArgs) ToInstanceListenerEndpointOutput

func (i InstanceListenerEndpointArgs) ToInstanceListenerEndpointOutput() InstanceListenerEndpointOutput

func (InstanceListenerEndpointArgs) ToInstanceListenerEndpointOutputWithContext

func (i InstanceListenerEndpointArgs) ToInstanceListenerEndpointOutputWithContext(ctx context.Context) InstanceListenerEndpointOutput

type InstanceListenerEndpointArray

type InstanceListenerEndpointArray []InstanceListenerEndpointInput

func (InstanceListenerEndpointArray) ElementType

func (InstanceListenerEndpointArray) ToInstanceListenerEndpointArrayOutput

func (i InstanceListenerEndpointArray) ToInstanceListenerEndpointArrayOutput() InstanceListenerEndpointArrayOutput

func (InstanceListenerEndpointArray) ToInstanceListenerEndpointArrayOutputWithContext

func (i InstanceListenerEndpointArray) ToInstanceListenerEndpointArrayOutputWithContext(ctx context.Context) InstanceListenerEndpointArrayOutput

type InstanceListenerEndpointArrayInput

type InstanceListenerEndpointArrayInput interface {
	pulumi.Input

	ToInstanceListenerEndpointArrayOutput() InstanceListenerEndpointArrayOutput
	ToInstanceListenerEndpointArrayOutputWithContext(context.Context) InstanceListenerEndpointArrayOutput
}

InstanceListenerEndpointArrayInput is an input type that accepts InstanceListenerEndpointArray and InstanceListenerEndpointArrayOutput values. You can construct a concrete instance of `InstanceListenerEndpointArrayInput` via:

InstanceListenerEndpointArray{ InstanceListenerEndpointArgs{...} }

type InstanceListenerEndpointArrayOutput

type InstanceListenerEndpointArrayOutput struct{ *pulumi.OutputState }

func (InstanceListenerEndpointArrayOutput) ElementType

func (InstanceListenerEndpointArrayOutput) Index

func (InstanceListenerEndpointArrayOutput) ToInstanceListenerEndpointArrayOutput

func (o InstanceListenerEndpointArrayOutput) ToInstanceListenerEndpointArrayOutput() InstanceListenerEndpointArrayOutput

func (InstanceListenerEndpointArrayOutput) ToInstanceListenerEndpointArrayOutputWithContext

func (o InstanceListenerEndpointArrayOutput) ToInstanceListenerEndpointArrayOutputWithContext(ctx context.Context) InstanceListenerEndpointArrayOutput

type InstanceListenerEndpointInput

type InstanceListenerEndpointInput interface {
	pulumi.Input

	ToInstanceListenerEndpointOutput() InstanceListenerEndpointOutput
	ToInstanceListenerEndpointOutputWithContext(context.Context) InstanceListenerEndpointOutput
}

InstanceListenerEndpointInput is an input type that accepts InstanceListenerEndpointArgs and InstanceListenerEndpointOutput values. You can construct a concrete instance of `InstanceListenerEndpointInput` via:

InstanceListenerEndpointArgs{...}

type InstanceListenerEndpointOutput

type InstanceListenerEndpointOutput struct{ *pulumi.OutputState }

func (InstanceListenerEndpointOutput) Address

Specifies the DNS address of the DB instance.

func (InstanceListenerEndpointOutput) ElementType

func (InstanceListenerEndpointOutput) HostedZoneId

Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

func (InstanceListenerEndpointOutput) Port

The port on which the DB accepts connections.

func (InstanceListenerEndpointOutput) ToInstanceListenerEndpointOutput

func (o InstanceListenerEndpointOutput) ToInstanceListenerEndpointOutput() InstanceListenerEndpointOutput

func (InstanceListenerEndpointOutput) ToInstanceListenerEndpointOutputWithContext

func (o InstanceListenerEndpointOutput) ToInstanceListenerEndpointOutputWithContext(ctx context.Context) InstanceListenerEndpointOutput

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

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

type InstanceMapInput

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

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

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

type InstanceMasterUserSecret

type InstanceMasterUserSecret struct {
	// The ARN for the KMS encryption key. If creating an
	// encrypted replica, set this to the destination KMS ARN.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// The Amazon Resource Name (ARN) of the secret.
	SecretArn *string `pulumi:"secretArn"`
	// The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus *string `pulumi:"secretStatus"`
}

type InstanceMasterUserSecretArgs

type InstanceMasterUserSecretArgs struct {
	// The ARN for the KMS encryption key. If creating an
	// encrypted replica, set this to the destination KMS ARN.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// The Amazon Resource Name (ARN) of the secret.
	SecretArn pulumi.StringPtrInput `pulumi:"secretArn"`
	// The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.
	SecretStatus pulumi.StringPtrInput `pulumi:"secretStatus"`
}

func (InstanceMasterUserSecretArgs) ElementType

func (InstanceMasterUserSecretArgs) ToInstanceMasterUserSecretOutput

func (i InstanceMasterUserSecretArgs) ToInstanceMasterUserSecretOutput() InstanceMasterUserSecretOutput

func (InstanceMasterUserSecretArgs) ToInstanceMasterUserSecretOutputWithContext

func (i InstanceMasterUserSecretArgs) ToInstanceMasterUserSecretOutputWithContext(ctx context.Context) InstanceMasterUserSecretOutput

type InstanceMasterUserSecretArray

type InstanceMasterUserSecretArray []InstanceMasterUserSecretInput

func (InstanceMasterUserSecretArray) ElementType

func (InstanceMasterUserSecretArray) ToInstanceMasterUserSecretArrayOutput

func (i InstanceMasterUserSecretArray) ToInstanceMasterUserSecretArrayOutput() InstanceMasterUserSecretArrayOutput

func (InstanceMasterUserSecretArray) ToInstanceMasterUserSecretArrayOutputWithContext

func (i InstanceMasterUserSecretArray) ToInstanceMasterUserSecretArrayOutputWithContext(ctx context.Context) InstanceMasterUserSecretArrayOutput

type InstanceMasterUserSecretArrayInput

type InstanceMasterUserSecretArrayInput interface {
	pulumi.Input

	ToInstanceMasterUserSecretArrayOutput() InstanceMasterUserSecretArrayOutput
	ToInstanceMasterUserSecretArrayOutputWithContext(context.Context) InstanceMasterUserSecretArrayOutput
}

InstanceMasterUserSecretArrayInput is an input type that accepts InstanceMasterUserSecretArray and InstanceMasterUserSecretArrayOutput values. You can construct a concrete instance of `InstanceMasterUserSecretArrayInput` via:

InstanceMasterUserSecretArray{ InstanceMasterUserSecretArgs{...} }

type InstanceMasterUserSecretArrayOutput

type InstanceMasterUserSecretArrayOutput struct{ *pulumi.OutputState }

func (InstanceMasterUserSecretArrayOutput) ElementType

func (InstanceMasterUserSecretArrayOutput) Index

func (InstanceMasterUserSecretArrayOutput) ToInstanceMasterUserSecretArrayOutput

func (o InstanceMasterUserSecretArrayOutput) ToInstanceMasterUserSecretArrayOutput() InstanceMasterUserSecretArrayOutput

func (InstanceMasterUserSecretArrayOutput) ToInstanceMasterUserSecretArrayOutputWithContext

func (o InstanceMasterUserSecretArrayOutput) ToInstanceMasterUserSecretArrayOutputWithContext(ctx context.Context) InstanceMasterUserSecretArrayOutput

type InstanceMasterUserSecretInput

type InstanceMasterUserSecretInput interface {
	pulumi.Input

	ToInstanceMasterUserSecretOutput() InstanceMasterUserSecretOutput
	ToInstanceMasterUserSecretOutputWithContext(context.Context) InstanceMasterUserSecretOutput
}

InstanceMasterUserSecretInput is an input type that accepts InstanceMasterUserSecretArgs and InstanceMasterUserSecretOutput values. You can construct a concrete instance of `InstanceMasterUserSecretInput` via:

InstanceMasterUserSecretArgs{...}

type InstanceMasterUserSecretOutput

type InstanceMasterUserSecretOutput struct{ *pulumi.OutputState }

func (InstanceMasterUserSecretOutput) ElementType

func (InstanceMasterUserSecretOutput) KmsKeyId

The ARN for the KMS encryption key. If creating an encrypted replica, set this to the destination KMS ARN.

func (InstanceMasterUserSecretOutput) SecretArn

The Amazon Resource Name (ARN) of the secret.

func (InstanceMasterUserSecretOutput) SecretStatus

The status of the secret. Valid Values: `creating` | `active` | `rotating` | `impaired`.

func (InstanceMasterUserSecretOutput) ToInstanceMasterUserSecretOutput

func (o InstanceMasterUserSecretOutput) ToInstanceMasterUserSecretOutput() InstanceMasterUserSecretOutput

func (InstanceMasterUserSecretOutput) ToInstanceMasterUserSecretOutputWithContext

func (o InstanceMasterUserSecretOutput) ToInstanceMasterUserSecretOutputWithContext(ctx context.Context) InstanceMasterUserSecretOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) Address

func (o InstanceOutput) Address() pulumi.StringOutput

Specifies the DNS address of the DB instance.

func (InstanceOutput) AllocatedStorage

func (o InstanceOutput) AllocatedStorage() pulumi.IntOutput

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. If `replicateSourceDb` is set, the value is ignored during the creation of the instance.

func (InstanceOutput) AllowMajorVersionUpgrade

func (o InstanceOutput) AllowMajorVersionUpgrade() pulumi.BoolPtrOutput

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.

func (InstanceOutput) ApplyImmediately

func (o InstanceOutput) ApplyImmediately() pulumi.BoolPtrOutput

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)

func (InstanceOutput) Arn

The ARN of the RDS instance.

func (InstanceOutput) AutoMinorVersionUpgrade

func (o InstanceOutput) AutoMinorVersionUpgrade() pulumi.BoolPtrOutput

Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Defaults to true.

func (InstanceOutput) AvailabilityZone

func (o InstanceOutput) AvailabilityZone() pulumi.StringOutput

The AZ for the RDS instance.

func (InstanceOutput) BackupRetentionPeriod

func (o InstanceOutput) BackupRetentionPeriod() pulumi.IntOutput

The days to retain backups for. Must be between `0` and `35`. Default is `0`. Must be greater than `0` if the database is used as a source for a [Read Replica][instance-replication], uses low-downtime updates, or will use [RDS Blue/Green deployments][blue-green].

func (InstanceOutput) BackupTarget

func (o InstanceOutput) BackupTarget() pulumi.StringOutput

Specifies where automated backups and manual snapshots are stored. Possible values are `region` (default) and `outposts`. See [Working with Amazon RDS on AWS Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) for more information.

func (InstanceOutput) BackupWindow

func (o InstanceOutput) BackupWindow() pulumi.StringOutput

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`.

func (InstanceOutput) BlueGreenUpdate

Enables low-downtime updates using [RDS Blue/Green deployments][blue-green]. See `blueGreenUpdate` below.

func (InstanceOutput) CaCertIdentifier

func (o InstanceOutput) CaCertIdentifier() pulumi.StringOutput

The identifier of the CA certificate for the DB instance.

func (InstanceOutput) CharacterSetName

func (o InstanceOutput) CharacterSetName() pulumi.StringOutput

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.

func (InstanceOutput) CopyTagsToSnapshot

func (o InstanceOutput) CopyTagsToSnapshot() pulumi.BoolPtrOutput

Copy all Instance `tags` to snapshots. Default is `false`.

func (InstanceOutput) CustomIamInstanceProfile

func (o InstanceOutput) CustomIamInstanceProfile() pulumi.StringPtrOutput

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

func (InstanceOutput) CustomerOwnedIpEnabled

func (o InstanceOutput) CustomerOwnedIpEnabled() pulumi.BoolPtrOutput

Indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. See [CoIP for RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html#rds-on-outposts.coip) for more information.

> **NOTE:** Removing the `replicateSourceDb` attribute from an existing RDS Replicate database managed by the provider will promote the database to a fully standalone database.

func (InstanceOutput) DbName

func (o InstanceOutput) DbName() pulumi.StringOutput

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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines. If you are providing an Oracle db name, it needs to be in all upper case. Cannot be specified for a replica.

func (InstanceOutput) DbSubnetGroupName

func (o InstanceOutput) DbSubnetGroupName() pulumi.StringOutput

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 constraints.

func (InstanceOutput) DeleteAutomatedBackups

func (o InstanceOutput) DeleteAutomatedBackups() pulumi.BoolPtrOutput

Specifies whether to remove automated backups immediately after the DB instance is deleted. Default is `true`.

func (InstanceOutput) DeletionProtection

func (o InstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

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`.

func (InstanceOutput) Domain

The ID of the Directory Service Active Directory domain to create the instance in. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.

func (InstanceOutput) DomainAuthSecretArn added in v6.22.0

func (o InstanceOutput) DomainAuthSecretArn() pulumi.StringPtrOutput

The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain. Conflicts with `domain` and `domainIamRoleName`.

func (InstanceOutput) DomainDnsIps added in v6.22.0

func (o InstanceOutput) DomainDnsIps() pulumi.StringArrayOutput

The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers. Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list. Conflicts with `domain` and `domainIamRoleName`.

func (InstanceOutput) DomainFqdn added in v6.22.0

func (o InstanceOutput) DomainFqdn() pulumi.StringOutput

The fully qualified domain name (FQDN) of the self managed Active Directory domain. Conflicts with `domain` and `domainIamRoleName`.

func (InstanceOutput) DomainIamRoleName

func (o InstanceOutput) DomainIamRoleName() pulumi.StringPtrOutput

The name of the IAM role to be used when making API calls to the Directory Service. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.

func (InstanceOutput) DomainOu added in v6.22.0

func (o InstanceOutput) DomainOu() pulumi.StringPtrOutput

The self managed Active Directory organizational unit for your DB instance to join. Conflicts with `domain` and `domainIamRoleName`.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) EnabledCloudwatchLogsExports

func (o InstanceOutput) EnabledCloudwatchLogsExports() pulumi.StringArrayOutput

Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. For supported values, see the EnableCloudwatchLogsExports.member.N parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).

func (InstanceOutput) Endpoint

func (o InstanceOutput) Endpoint() pulumi.StringOutput

The connection endpoint in `address:port` format.

func (InstanceOutput) Engine

func (o InstanceOutput) Engine() pulumi.StringOutput

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.

func (InstanceOutput) EngineVersion

func (o InstanceOutput) EngineVersion() pulumi.StringOutput

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`). The actual engine version used is returned in the attribute `engineVersionActual`, see Attribute Reference below. 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'.

func (InstanceOutput) EngineVersionActual

func (o InstanceOutput) EngineVersionActual() pulumi.StringOutput

The running version of the database.

func (InstanceOutput) FinalSnapshotIdentifier

func (o InstanceOutput) FinalSnapshotIdentifier() pulumi.StringPtrOutput

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.

func (InstanceOutput) HostedZoneId

func (o InstanceOutput) HostedZoneId() pulumi.StringOutput

Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

func (InstanceOutput) IamDatabaseAuthenticationEnabled

func (o InstanceOutput) IamDatabaseAuthenticationEnabled() pulumi.BoolPtrOutput

Specifies whether mappings of AWS Identity and Access Management (IAM) accounts to database accounts is enabled.

func (InstanceOutput) Identifier

func (o InstanceOutput) Identifier() pulumi.StringOutput

The name of the RDS instance, if omitted, this provider will assign a random, unique identifier. Required if `restoreToPointInTime` is specified.

func (InstanceOutput) IdentifierPrefix

func (o InstanceOutput) IdentifierPrefix() pulumi.StringOutput

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

func (InstanceOutput) InstanceClass

func (o InstanceOutput) InstanceClass() pulumi.StringOutput

The instance type of the RDS instance.

func (InstanceOutput) Iops

func (o InstanceOutput) Iops() pulumi.IntOutput

The amount of provisioned IOPS. Setting this implies a storageType of "io1". Can only be set when `storageType` is `"io1"` or `"gp3"`. Cannot be specified for gp3 storage if the `allocatedStorage` value is below a per-`engine` threshold. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.

func (InstanceOutput) KmsKeyId

func (o InstanceOutput) KmsKeyId() pulumi.StringOutput

The ARN for the KMS encryption key. If creating an encrypted replica, set this to the destination KMS ARN.

func (InstanceOutput) LatestRestorableTime

func (o InstanceOutput) LatestRestorableTime() pulumi.StringOutput

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.

func (InstanceOutput) LicenseModel

func (o InstanceOutput) LicenseModel() pulumi.StringOutput

License model information for this DB instance. Valid values for this field are as follows: * RDS for MariaDB: `general-public-license` * RDS for Microsoft SQL Server: `license-included` * RDS for MySQL: `general-public-license` * RDS for Oracle: `bring-your-own-license | license-included` * RDS for PostgreSQL: `postgresql-license`

func (InstanceOutput) ListenerEndpoints

Specifies the listener connection endpoint for SQL Server Always On. See endpoint below.

func (InstanceOutput) MaintenanceWindow

func (o InstanceOutput) MaintenanceWindow() pulumi.StringOutput

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.

func (InstanceOutput) ManageMasterUserPassword

func (o InstanceOutput) ManageMasterUserPassword() pulumi.BoolPtrOutput

Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `password` is provided.

func (InstanceOutput) MasterUserSecretKmsKeyId

func (o InstanceOutput) MasterUserSecretKmsKeyId() pulumi.StringOutput

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.

func (InstanceOutput) MasterUserSecrets

A block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.

func (InstanceOutput) MaxAllocatedStorage

func (o InstanceOutput) MaxAllocatedStorage() pulumi.IntPtrOutput

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.

func (InstanceOutput) MonitoringInterval

func (o InstanceOutput) MonitoringInterval() pulumi.IntPtrOutput

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.

func (InstanceOutput) MonitoringRoleArn

func (o InstanceOutput) MonitoringRoleArn() pulumi.StringOutput

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.

func (InstanceOutput) MultiAz

func (o InstanceOutput) MultiAz() pulumi.BoolOutput

Specifies if the RDS instance is multi-AZ

func (InstanceOutput) Name deprecated

Deprecated: This property has been deprecated. Please use 'dbName' instead.

func (InstanceOutput) NcharCharacterSetName

func (o InstanceOutput) NcharCharacterSetName() pulumi.StringOutput

The national character set is used in the NCHAR, NVARCHAR2, and NCLOB data types for Oracle instances. This can't be changed. See [Oracle Character Sets Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html).

func (InstanceOutput) NetworkType

func (o InstanceOutput) NetworkType() pulumi.StringOutput

The network type of the DB instance. Valid values: `IPV4`, `DUAL`.

func (InstanceOutput) OptionGroupName

func (o InstanceOutput) OptionGroupName() pulumi.StringOutput

Name of the DB option group to associate.

func (InstanceOutput) ParameterGroupName

func (o InstanceOutput) ParameterGroupName() pulumi.StringOutput

Name of the DB parameter group to associate.

func (InstanceOutput) Password

func (o InstanceOutput) Password() pulumi.StringPtrOutput

(Required unless `manageMasterUserPassword` is set to true or unless a `snapshotIdentifier` or `replicateSourceDb` is provided or `manageMasterUserPassword` is set.) Password for the master DB user. Note that this may show up in logs, and it will be stored in the state file. Cannot be set if `manageMasterUserPassword` is set to `true`.

func (InstanceOutput) PerformanceInsightsEnabled

func (o InstanceOutput) PerformanceInsightsEnabled() pulumi.BoolPtrOutput

Specifies whether Performance Insights are enabled. Defaults to false.

func (InstanceOutput) PerformanceInsightsKmsKeyId

func (o InstanceOutput) PerformanceInsightsKmsKeyId() pulumi.StringOutput

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.

func (InstanceOutput) PerformanceInsightsRetentionPeriod

func (o InstanceOutput) PerformanceInsightsRetentionPeriod() pulumi.IntOutput

Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.

func (InstanceOutput) Port

func (o InstanceOutput) Port() pulumi.IntOutput

The port on which the DB accepts connections.

func (InstanceOutput) PubliclyAccessible

func (o InstanceOutput) PubliclyAccessible() pulumi.BoolPtrOutput

Bool to control if instance is publicly accessible. Default is `false`.

func (InstanceOutput) ReplicaMode

func (o InstanceOutput) ReplicaMode() pulumi.StringOutput

Specifies whether the replica is in either `mounted` or `open-read-only` mode. This attribute is only supported by Oracle instances. Oracle replicas operate in `open-read-only` mode unless otherwise specified. See [Working with Oracle Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) for more information.

func (InstanceOutput) Replicas

func (InstanceOutput) ReplicateSourceDb

func (o InstanceOutput) ReplicateSourceDb() pulumi.StringPtrOutput

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][instance-replication] 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.

func (InstanceOutput) ResourceId

func (o InstanceOutput) ResourceId() pulumi.StringOutput

The RDS Resource ID of this instance.

func (InstanceOutput) RestoreToPointInTime

func (o InstanceOutput) RestoreToPointInTime() InstanceRestoreToPointInTimePtrOutput

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.

func (InstanceOutput) S3Import

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)

func (InstanceOutput) SkipFinalSnapshot

func (o InstanceOutput) SkipFinalSnapshot() pulumi.BoolPtrOutput

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`.

func (InstanceOutput) SnapshotIdentifier

func (o InstanceOutput) SnapshotIdentifier() pulumi.StringOutput

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.

func (InstanceOutput) Status

func (o InstanceOutput) Status() pulumi.StringOutput

The RDS instance status.

func (InstanceOutput) StorageEncrypted

func (o InstanceOutput) StorageEncrypted() pulumi.BoolPtrOutput

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.

func (InstanceOutput) StorageThroughput

func (o InstanceOutput) StorageThroughput() pulumi.IntOutput

The storage throughput value for the DB instance. Can only be set when `storageType` is `"gp3"`. Cannot be specified if the `allocatedStorage` value is below a per-`engine` threshold. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.

func (InstanceOutput) StorageType

func (o InstanceOutput) StorageType() pulumi.StringOutput

One of "standard" (magnetic), "gp2" (general purpose SSD), "gp3" (general purpose SSD that needs `iops` independently) or "io1" (provisioned IOPS SSD). The default is "io1" if `iops` is specified, "gp2" if not.

func (InstanceOutput) Tags

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

func (InstanceOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (InstanceOutput) Timezone

func (o InstanceOutput) Timezone() pulumi.StringOutput

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.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) Username

func (o InstanceOutput) Username() pulumi.StringOutput

(Required unless a `snapshotIdentifier` or `replicateSourceDb` is provided) Username for the master DB user. Cannot be specified for a replica.

func (InstanceOutput) VpcSecurityGroupIds

func (o InstanceOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

List of VPC security groups to associate.

type InstanceRestoreToPointInTime

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 ARN of the automated backup from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbiResourceId` is not specified.
	SourceDbInstanceAutomatedBackupsArn *string `pulumi:"sourceDbInstanceAutomatedBackupsArn"`
	// The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbInstanceAutomatedBackupsArn` or `sourceDbiResourceId` is not specified.
	SourceDbInstanceIdentifier *string `pulumi:"sourceDbInstanceIdentifier"`
	// The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbInstanceAutomatedBackupsArn` 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

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 ARN of the automated backup from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbiResourceId` is not specified.
	SourceDbInstanceAutomatedBackupsArn pulumi.StringPtrInput `pulumi:"sourceDbInstanceAutomatedBackupsArn"`
	// The identifier of the source DB instance from which to restore. Must match the identifier of an existing DB instance. Required if `sourceDbInstanceAutomatedBackupsArn` or `sourceDbiResourceId` is not specified.
	SourceDbInstanceIdentifier pulumi.StringPtrInput `pulumi:"sourceDbInstanceIdentifier"`
	// The resource ID of the source DB instance from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbInstanceAutomatedBackupsArn` 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

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutput

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutput() InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimeOutputWithContext

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

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutput

func (i InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimeArgs) ToInstanceRestoreToPointInTimePtrOutputWithContext

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

type InstanceRestoreToPointInTimeInput

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

type InstanceRestoreToPointInTimeOutput struct{ *pulumi.OutputState }

func (InstanceRestoreToPointInTimeOutput) ElementType

func (InstanceRestoreToPointInTimeOutput) RestoreTime

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) SourceDbInstanceAutomatedBackupsArn

func (o InstanceRestoreToPointInTimeOutput) SourceDbInstanceAutomatedBackupsArn() pulumi.StringPtrOutput

The ARN of the automated backup from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimeOutput) SourceDbInstanceIdentifier

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 `sourceDbInstanceAutomatedBackupsArn` or `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimeOutput) SourceDbiResourceId

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

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutput

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutput() InstanceRestoreToPointInTimeOutput

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimeOutputWithContext

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

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutput

func (o InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimeOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext

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

func (InstanceRestoreToPointInTimeOutput) UseLatestRestorableTime

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

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

type InstanceRestoreToPointInTimePtrOutput

type InstanceRestoreToPointInTimePtrOutput struct{ *pulumi.OutputState }

func (InstanceRestoreToPointInTimePtrOutput) Elem

func (InstanceRestoreToPointInTimePtrOutput) ElementType

func (InstanceRestoreToPointInTimePtrOutput) RestoreTime

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) SourceDbInstanceAutomatedBackupsArn

func (o InstanceRestoreToPointInTimePtrOutput) SourceDbInstanceAutomatedBackupsArn() pulumi.StringPtrOutput

The ARN of the automated backup from which to restore. Required if `sourceDbInstanceIdentifier` or `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimePtrOutput) SourceDbInstanceIdentifier

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 `sourceDbInstanceAutomatedBackupsArn` or `sourceDbiResourceId` is not specified.

func (InstanceRestoreToPointInTimePtrOutput) SourceDbiResourceId

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

func (InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutput

func (o InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutput() InstanceRestoreToPointInTimePtrOutput

func (InstanceRestoreToPointInTimePtrOutput) ToInstanceRestoreToPointInTimePtrOutputWithContext

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

func (InstanceRestoreToPointInTimePtrOutput) UseLatestRestorableTime

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
	//
	// This will not recreate the resource if the S3 object changes in some way.  It's only used to initialize the database.
	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
	//
	// This will not recreate the resource if the S3 object changes in some way.  It's only used to initialize the database.
	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

This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database.

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

This will not recreate the resource if the S3 object changes in some way. It's only used to initialize the database.

func (InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutput

func (o InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutput() InstanceS3ImportPtrOutput

func (InstanceS3ImportPtrOutput) ToInstanceS3ImportPtrOutputWithContext

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

type InstanceState

type InstanceState struct {
	// Specifies the DNS address of the DB instance.
	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. If `replicateSourceDb` is set, the value is ignored during the creation of the instance.
	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`.
	// Default is `0`.
	// Must be greater than `0` if the database is used as a source for a [Read Replica][instance-replication],
	// uses low-downtime updates,
	// or will use [RDS Blue/Green deployments][blue-green].
	BackupRetentionPeriod pulumi.IntPtrInput
	// Specifies where automated backups and manual snapshots are stored. Possible values are `region` (default) and `outposts`. See [Working with Amazon RDS on AWS Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) for more information.
	BackupTarget pulumi.StringPtrInput
	// 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
	// Enables low-downtime updates using [RDS Blue/Green deployments][blue-green].
	// See `blueGreenUpdate` below.
	BlueGreenUpdate InstanceBlueGreenUpdatePtrInput
	// 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
	// The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
	CustomIamInstanceProfile pulumi.StringPtrInput
	// Indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance. See [CoIP for RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html#rds-on-outposts.coip) for more information.
	//
	// > **NOTE:** Removing the `replicateSourceDb` attribute from an existing RDS
	// Replicate database managed by the provider will promote the database to a fully
	// standalone database.
	CustomerOwnedIpEnabled 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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-instance.html) for more details on what applies for those engines. If you are providing an Oracle db name, it needs to be in all upper case. Cannot be specified for a replica.
	DbName pulumi.StringPtrInput
	// 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 constraints.
	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. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	Domain pulumi.StringPtrInput
	// The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainAuthSecretArn pulumi.StringPtrInput
	// The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers. Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list. Conflicts with `domain` and `domainIamRoleName`.
	DomainDnsIps pulumi.StringArrayInput
	// The fully qualified domain name (FQDN) of the self managed Active Directory domain. Conflicts with `domain` and `domainIamRoleName`.
	DomainFqdn pulumi.StringPtrInput
	// The name of the IAM role to be used when making API calls to the Directory Service. Conflicts with `domainFqdn`, `domainOu`, `domainAuthSecretArn` and a `domainDnsIps`.
	DomainIamRoleName pulumi.StringPtrInput
	// The self managed Active Directory organizational unit for your DB instance to join. Conflicts with `domain` and `domainIamRoleName`.
	DomainOu pulumi.StringPtrInput
	// Set of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. For supported values, see the EnableCloudwatchLogsExports.member.N parameter in [API action CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).
	EnabledCloudwatchLogsExports pulumi.StringArrayInput
	// The connection endpoint in `address:port` format.
	Endpoint pulumi.StringPtrInput
	// 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`). The actual engine version used is returned in the attribute `engineVersionActual`, see Attribute Reference below. 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 running version of the database.
	EngineVersionActual 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 the ID that Amazon Route 53 assigns when you create a hosted zone.
	HostedZoneId pulumi.StringPtrInput
	// Specifies whether 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. Required if `restoreToPointInTime` is specified.
	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". Can only be set when `storageType` is `"io1"` or `"gp3"`.
	// Cannot be specified for gp3 storage if the `allocatedStorage` value is below a per-`engine` threshold.
	// See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	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
	// License model information for this DB instance. Valid values for this field are as follows:
	// * RDS for MariaDB: `general-public-license`
	// * RDS for Microsoft SQL Server: `license-included`
	// * RDS for MySQL: `general-public-license`
	// * RDS for Oracle: `bring-your-own-license | license-included`
	// * RDS for PostgreSQL: `postgresql-license`
	LicenseModel pulumi.StringPtrInput
	// Specifies the listener connection endpoint for SQL Server Always On. See endpoint below.
	ListenerEndpoints InstanceListenerEndpointArrayInput
	// 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
	// Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if `password` is provided.
	ManageMasterUserPassword pulumi.BoolPtrInput
	// The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used.
	MasterUserSecretKmsKeyId pulumi.StringPtrInput
	// A block that specifies the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.
	MasterUserSecrets InstanceMasterUserSecretArrayInput
	// 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
	// Deprecated: This property has been deprecated. Please use 'dbName' instead.
	Name pulumi.StringPtrInput
	// The national character set is used in the NCHAR, NVARCHAR2, and NCLOB data types for Oracle instances. This can't be changed. See [Oracle Character Sets
	// Supported in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html).
	NcharCharacterSetName pulumi.StringPtrInput
	// The network type of the DB instance. Valid values: `IPV4`, `DUAL`.
	NetworkType 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 `manageMasterUserPassword` is set to true or unless a `snapshotIdentifier` or `replicateSourceDb`
	// is provided or `manageMasterUserPassword` is set.) Password for the master DB user. Note that this may show up in
	// logs, and it will be stored in the state file. Cannot be set if `manageMasterUserPassword` is set to `true`.
	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
	// Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. 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 whether the replica is in either `mounted` or `open-read-only` mode. This attribute
	// is only supported by Oracle instances. Oracle replicas operate in `open-read-only` mode unless otherwise specified. See [Working with Oracle Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) for more information.
	ReplicaMode pulumi.StringPtrInput
	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][instance-replication] 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
	// 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
	// The storage throughput value for the DB instance. Can only be set when `storageType` is `"gp3"`. Cannot be specified if the `allocatedStorage` value is below a per-`engine` threshold. See the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#gp3-storage) for details.
	StorageThroughput pulumi.IntPtrInput
	// One of "standard" (magnetic), "gp2" (general
	// purpose SSD), "gp3" (general purpose SSD that needs `iops` independently)
	// 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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll 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. Cannot be specified for a replica.
	Username pulumi.StringPtrInput
	// List of VPC security groups to
	// associate.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceType

type InstanceType string

func (InstanceType) ElementType

func (InstanceType) ElementType() reflect.Type

func (InstanceType) ToInstanceTypeOutput

func (e InstanceType) ToInstanceTypeOutput() InstanceTypeOutput

func (InstanceType) ToInstanceTypeOutputWithContext

func (e InstanceType) ToInstanceTypeOutputWithContext(ctx context.Context) InstanceTypeOutput

func (InstanceType) ToInstanceTypePtrOutput

func (e InstanceType) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceType) ToInstanceTypePtrOutputWithContext

func (e InstanceType) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceType) ToStringOutput

func (e InstanceType) ToStringOutput() pulumi.StringOutput

func (InstanceType) ToStringOutputWithContext

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

func (InstanceType) ToStringPtrOutput

func (e InstanceType) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceType) ToStringPtrOutputWithContext

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

type InstanceTypeInput

type InstanceTypeInput interface {
	pulumi.Input

	ToInstanceTypeOutput() InstanceTypeOutput
	ToInstanceTypeOutputWithContext(context.Context) InstanceTypeOutput
}

InstanceTypeInput is an input type that accepts values of the InstanceType enum A concrete instance of `InstanceTypeInput` can be one of the following:

InstanceType_T4G_Micro
InstanceType_T4G_Small
InstanceType_T4G_Medium
InstanceType_T4G_Large
InstanceType_T4G_XLarge
InstanceType_T4G_2XLarge
InstanceType_T3_Micro
InstanceType_T3_Small
InstanceType_T3_Medium
InstanceType_T3_Large
InstanceType_T3_XLarge
InstanceType_T3_2XLarge
InstanceType_T2_Micro
InstanceType_T2_Small
InstanceType_T2_Medium
InstanceType_T2_Large
InstanceType_T2_XLarge
InstanceType_T2_2XLarge
InstanceType_M1_Small
InstanceType_M1_Medium
InstanceType_M1_Large
InstanceType_M1_XLarge
InstanceType_M2_XLarge
InstanceType_M2_2XLarge
InstanceType_M2_4XLarge
InstanceType_M3_Medium
InstanceType_M3_Large
InstanceType_M3_XLarge
InstanceType_M3_2XLarge
InstanceType_M4_Large
InstanceType_M4_XLarge
InstanceType_M4_2XLarge
InstanceType_M4_4XLarge
InstanceType_M4_10XLarge
InstanceType_M4_16XLarge
InstanceType_M5_Large
InstanceType_M5_XLarge
InstanceType_M5_2XLarge
InstanceType_M5_4XLarge
InstanceType_M5_12XLarge
InstanceType_M5_24XLarge
InstanceType_M6G_Large
InstanceType_M6G_XLarge
InstanceType_M6G_2XLarge
InstanceType_M6G_4XLarge
InstanceType_M6G_8XLarge
InstanceType_M6G_12XLarge
InstanceType_M6G_16XLarge
InstanceType_R3_Large
InstanceType_R3_XLarge
InstanceType_R3_2XLarge
InstanceType_R3_4XLarge
InstanceType_R3_8XLarge
InstanceType_R4_Large
InstanceType_R4_XLarge
InstanceType_R4_2XLarge
InstanceType_R4_4XLarge
InstanceType_R4_8XLarge
InstanceType_R4_16XLarge
InstanceType_R5_Large
InstanceType_R5_XLarge
InstanceType_R5_2XLarge
InstanceType_R5_4XLarge
InstanceType_R5_12XLarge
InstanceType_R5_24XLarge
InstanceType_R6G_Large
InstanceType_R6G_XLarge
InstanceType_R6G_2XLarge
InstanceType_R6G_4XLarge
InstanceType_R6G_8XLarge
InstanceType_R6G_12XLarge
InstanceType_R6G_16XLarge
InstanceType_X1_16XLarge
InstanceType_X1_32XLarge
InstanceType_X1E_XLarge
InstanceType_X1E_2XLarge
InstanceType_X1E_4XLarge
InstanceType_X1E_8XLarge
InstanceType_X1E_32XLarge

type InstanceTypeOutput

type InstanceTypeOutput struct{ *pulumi.OutputState }

func (InstanceTypeOutput) ElementType

func (InstanceTypeOutput) ElementType() reflect.Type

func (InstanceTypeOutput) ToInstanceTypeOutput

func (o InstanceTypeOutput) ToInstanceTypeOutput() InstanceTypeOutput

func (InstanceTypeOutput) ToInstanceTypeOutputWithContext

func (o InstanceTypeOutput) ToInstanceTypeOutputWithContext(ctx context.Context) InstanceTypeOutput

func (InstanceTypeOutput) ToInstanceTypePtrOutput

func (o InstanceTypeOutput) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceTypeOutput) ToInstanceTypePtrOutputWithContext

func (o InstanceTypeOutput) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceTypeOutput) ToStringOutput

func (o InstanceTypeOutput) ToStringOutput() pulumi.StringOutput

func (InstanceTypeOutput) ToStringOutputWithContext

func (o InstanceTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstanceTypeOutput) ToStringPtrOutput

func (o InstanceTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceTypeOutput) ToStringPtrOutputWithContext

func (o InstanceTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstanceTypePtrInput

type InstanceTypePtrInput interface {
	pulumi.Input

	ToInstanceTypePtrOutput() InstanceTypePtrOutput
	ToInstanceTypePtrOutputWithContext(context.Context) InstanceTypePtrOutput
}

func InstanceTypePtr

func InstanceTypePtr(v string) InstanceTypePtrInput

type InstanceTypePtrOutput

type InstanceTypePtrOutput struct{ *pulumi.OutputState }

func (InstanceTypePtrOutput) Elem

func (InstanceTypePtrOutput) ElementType

func (InstanceTypePtrOutput) ElementType() reflect.Type

func (InstanceTypePtrOutput) ToInstanceTypePtrOutput

func (o InstanceTypePtrOutput) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceTypePtrOutput) ToInstanceTypePtrOutputWithContext

func (o InstanceTypePtrOutput) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceTypePtrOutput) ToStringPtrOutput

func (o InstanceTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceTypePtrOutput) ToStringPtrOutputWithContext

func (o InstanceTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type LookupClusterArgs

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

A collection of arguments for invoking getCluster.

type LookupClusterOutputArgs

type LookupClusterOutputArgs struct {
	// Cluster identifier of the RDS cluster.
	ClusterIdentifier pulumi.StringInput `pulumi:"clusterIdentifier"`
	// A map of tags assigned to the resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getCluster.

func (LookupClusterOutputArgs) ElementType

func (LookupClusterOutputArgs) ElementType() reflect.Type

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"`
	DbSystemId                       string   `pulumi:"dbSystemId"`
	EnabledCloudwatchLogsExports     []string `pulumi:"enabledCloudwatchLogsExports"`
	Endpoint                         string   `pulumi:"endpoint"`
	Engine                           string   `pulumi:"engine"`
	EngineMode                       string   `pulumi:"engineMode"`
	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"`
	MasterUserSecrets           []GetClusterMasterUserSecret `pulumi:"masterUserSecrets"`
	MasterUsername              string                       `pulumi:"masterUsername"`
	NetworkType                 string                       `pulumi:"networkType"`
	Port                        int                          `pulumi:"port"`
	PreferredBackupWindow       string                       `pulumi:"preferredBackupWindow"`
	PreferredMaintenanceWindow  string                       `pulumi:"preferredMaintenanceWindow"`
	ReaderEndpoint              string                       `pulumi:"readerEndpoint"`
	ReplicationSourceIdentifier string                       `pulumi:"replicationSourceIdentifier"`
	StorageEncrypted            bool                         `pulumi:"storageEncrypted"`
	// A map of tags assigned to the resource.
	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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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 LookupClusterResultOutput

type LookupClusterResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCluster.

func (LookupClusterResultOutput) Arn

func (LookupClusterResultOutput) AvailabilityZones

func (o LookupClusterResultOutput) AvailabilityZones() pulumi.StringArrayOutput

func (LookupClusterResultOutput) BacktrackWindow

func (o LookupClusterResultOutput) BacktrackWindow() pulumi.IntOutput

func (LookupClusterResultOutput) BackupRetentionPeriod

func (o LookupClusterResultOutput) BackupRetentionPeriod() pulumi.IntOutput

func (LookupClusterResultOutput) ClusterIdentifier

func (o LookupClusterResultOutput) ClusterIdentifier() pulumi.StringOutput

func (LookupClusterResultOutput) ClusterMembers

func (LookupClusterResultOutput) ClusterResourceId

func (o LookupClusterResultOutput) ClusterResourceId() pulumi.StringOutput

func (LookupClusterResultOutput) DatabaseName

func (LookupClusterResultOutput) DbClusterParameterGroupName

func (o LookupClusterResultOutput) DbClusterParameterGroupName() pulumi.StringOutput

func (LookupClusterResultOutput) DbSubnetGroupName

func (o LookupClusterResultOutput) DbSubnetGroupName() pulumi.StringOutput

func (LookupClusterResultOutput) DbSystemId added in v6.1.0

func (LookupClusterResultOutput) ElementType

func (LookupClusterResultOutput) ElementType() reflect.Type

func (LookupClusterResultOutput) EnabledCloudwatchLogsExports

func (o LookupClusterResultOutput) EnabledCloudwatchLogsExports() pulumi.StringArrayOutput

func (LookupClusterResultOutput) Endpoint

func (LookupClusterResultOutput) Engine

func (LookupClusterResultOutput) EngineMode

func (LookupClusterResultOutput) EngineVersion

func (o LookupClusterResultOutput) EngineVersion() pulumi.StringOutput

func (LookupClusterResultOutput) FinalSnapshotIdentifier

func (o LookupClusterResultOutput) FinalSnapshotIdentifier() pulumi.StringOutput

func (LookupClusterResultOutput) HostedZoneId

func (LookupClusterResultOutput) IamDatabaseAuthenticationEnabled

func (o LookupClusterResultOutput) IamDatabaseAuthenticationEnabled() pulumi.BoolOutput

func (LookupClusterResultOutput) IamRoles

func (LookupClusterResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupClusterResultOutput) KmsKeyId

func (LookupClusterResultOutput) MasterUserSecrets

func (LookupClusterResultOutput) MasterUsername

func (o LookupClusterResultOutput) MasterUsername() pulumi.StringOutput

func (LookupClusterResultOutput) NetworkType

func (LookupClusterResultOutput) Port

func (LookupClusterResultOutput) PreferredBackupWindow

func (o LookupClusterResultOutput) PreferredBackupWindow() pulumi.StringOutput

func (LookupClusterResultOutput) PreferredMaintenanceWindow

func (o LookupClusterResultOutput) PreferredMaintenanceWindow() pulumi.StringOutput

func (LookupClusterResultOutput) ReaderEndpoint

func (o LookupClusterResultOutput) ReaderEndpoint() pulumi.StringOutput

func (LookupClusterResultOutput) ReplicationSourceIdentifier

func (o LookupClusterResultOutput) ReplicationSourceIdentifier() pulumi.StringOutput

func (LookupClusterResultOutput) StorageEncrypted

func (o LookupClusterResultOutput) StorageEncrypted() pulumi.BoolOutput

func (LookupClusterResultOutput) Tags

A map of tags assigned to the resource.

func (LookupClusterResultOutput) ToLookupClusterResultOutput

func (o LookupClusterResultOutput) ToLookupClusterResultOutput() LookupClusterResultOutput

func (LookupClusterResultOutput) ToLookupClusterResultOutputWithContext

func (o LookupClusterResultOutput) ToLookupClusterResultOutputWithContext(ctx context.Context) LookupClusterResultOutput

func (LookupClusterResultOutput) VpcSecurityGroupIds

func (o LookupClusterResultOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

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"`
	// 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`, `public` and `awsbackup`.
	SnapshotType *string `pulumi:"snapshotType"`
	// Mapping of tags, each pair of which must exactly match
	// a pair on the desired DB cluster snapshot.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getClusterSnapshot.

type LookupClusterSnapshotOutputArgs

type LookupClusterSnapshotOutputArgs struct {
	// Returns the list of snapshots created by the specific db_cluster
	DbClusterIdentifier pulumi.StringPtrInput `pulumi:"dbClusterIdentifier"`
	// Returns information on a specific snapshot_id.
	DbClusterSnapshotIdentifier pulumi.StringPtrInput `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 pulumi.BoolPtrInput `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 pulumi.BoolPtrInput `pulumi:"includeShared"`
	// If more than one result is returned, use the most recent Snapshot.
	MostRecent pulumi.BoolPtrInput `pulumi:"mostRecent"`
	// 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`, `public` and `awsbackup`.
	SnapshotType pulumi.StringPtrInput `pulumi:"snapshotType"`
	// Mapping of tags, each pair of which must exactly match
	// a pair on the desired DB cluster snapshot.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getClusterSnapshot.

func (LookupClusterSnapshotOutputArgs) ElementType

type LookupClusterSnapshotResult

type LookupClusterSnapshotResult struct {
	// 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 ARN for the DB Cluster Snapshot.
	DbClusterSnapshotArn        string  `pulumi:"dbClusterSnapshotArn"`
	DbClusterSnapshotIdentifier *string `pulumi:"dbClusterSnapshotIdentifier"`
	// 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"`
	// Status of this DB Cluster Snapshot.
	Status string `pulumi:"status"`
	// Whether the DB cluster snapshot is encrypted.
	StorageEncrypted bool `pulumi:"storageEncrypted"`
	// Map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		developmentFinalSnapshot, err := rds.LookupClusterSnapshot(ctx, &rds.LookupClusterSnapshotArgs{
			DbClusterIdentifier: pulumi.StringRef("development_cluster"),
			MostRecent:          pulumi.BoolRef(true),
		}, 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 LookupClusterSnapshotResultOutput

type LookupClusterSnapshotResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getClusterSnapshot.

func (LookupClusterSnapshotResultOutput) AllocatedStorage

func (o LookupClusterSnapshotResultOutput) AllocatedStorage() pulumi.IntOutput

Allocated storage size in gigabytes (GB).

func (LookupClusterSnapshotResultOutput) AvailabilityZones

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

func (LookupClusterSnapshotResultOutput) DbClusterIdentifier

Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.

func (LookupClusterSnapshotResultOutput) DbClusterSnapshotArn

func (o LookupClusterSnapshotResultOutput) DbClusterSnapshotArn() pulumi.StringOutput

The ARN for the DB Cluster Snapshot.

func (LookupClusterSnapshotResultOutput) DbClusterSnapshotIdentifier

func (o LookupClusterSnapshotResultOutput) DbClusterSnapshotIdentifier() pulumi.StringPtrOutput

func (LookupClusterSnapshotResultOutput) ElementType

func (LookupClusterSnapshotResultOutput) Engine

Name of the database engine.

func (LookupClusterSnapshotResultOutput) EngineVersion

Version of the database engine for this DB cluster snapshot.

func (LookupClusterSnapshotResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupClusterSnapshotResultOutput) IncludePublic

func (LookupClusterSnapshotResultOutput) IncludeShared

func (LookupClusterSnapshotResultOutput) KmsKeyId

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

func (LookupClusterSnapshotResultOutput) LicenseModel

License model information for the restored DB cluster.

func (LookupClusterSnapshotResultOutput) MostRecent

func (LookupClusterSnapshotResultOutput) Port

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

func (LookupClusterSnapshotResultOutput) SnapshotCreateTime

func (o LookupClusterSnapshotResultOutput) SnapshotCreateTime() pulumi.StringOutput

Time when the snapshot was taken, in Universal Coordinated Time (UTC).

func (LookupClusterSnapshotResultOutput) SnapshotType

func (LookupClusterSnapshotResultOutput) SourceDbClusterSnapshotArn

func (o LookupClusterSnapshotResultOutput) SourceDbClusterSnapshotArn() pulumi.StringOutput

func (LookupClusterSnapshotResultOutput) Status

Status of this DB Cluster Snapshot.

func (LookupClusterSnapshotResultOutput) StorageEncrypted

Whether the DB cluster snapshot is encrypted.

func (LookupClusterSnapshotResultOutput) Tags

Map of tags for the resource.

func (LookupClusterSnapshotResultOutput) ToLookupClusterSnapshotResultOutput

func (o LookupClusterSnapshotResultOutput) ToLookupClusterSnapshotResultOutput() LookupClusterSnapshotResultOutput

func (LookupClusterSnapshotResultOutput) ToLookupClusterSnapshotResultOutputWithContext

func (o LookupClusterSnapshotResultOutput) ToLookupClusterSnapshotResultOutputWithContext(ctx context.Context) LookupClusterSnapshotResultOutput

func (LookupClusterSnapshotResultOutput) VpcId

VPC ID associated with the DB cluster snapshot.

type LookupInstanceArgs

type LookupInstanceArgs struct {
	// Name of the RDS instance.
	DbInstanceIdentifier *string `pulumi:"dbInstanceIdentifier"`
	// Map of tags, each pair of which must exactly match a pair on the desired instance.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getInstance.

type LookupInstanceOutputArgs

type LookupInstanceOutputArgs struct {
	// Name of the RDS instance.
	DbInstanceIdentifier pulumi.StringPtrInput `pulumi:"dbInstanceIdentifier"`
	// Map of tags, each pair of which must exactly match a pair on the desired instance.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getInstance.

func (LookupInstanceOutputArgs) ElementType

func (LookupInstanceOutputArgs) ElementType() reflect.Type

type LookupInstanceResult

type LookupInstanceResult struct {
	// Hostname of the RDS instance. See also `endpoint` and `port`.
	Address string `pulumi:"address"`
	// Allocated storage size specified in gigabytes.
	AllocatedStorage int `pulumi:"allocatedStorage"`
	// Indicates that minor version patches are applied automatically.
	AutoMinorVersionUpgrade bool `pulumi:"autoMinorVersionUpgrade"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// Database engine version.
	EngineVersion string `pulumi:"engineVersion"`
	// 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"`
	// Provisioned IOPS (I/O operations per second) value.
	Iops int `pulumi:"iops"`
	// The Amazon Web Services KMS key identifier that is used to encrypt the secret.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// License model information for this DB instance.
	LicenseModel string `pulumi:"licenseModel"`
	// Provides the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.
	MasterUserSecrets []GetInstanceMasterUserSecret `pulumi:"masterUserSecrets"`
	// Contains the master username for the DB instance.
	MasterUsername string `pulumi:"masterUsername"`
	// The upper limit to which Amazon RDS can automatically scale the storage of the DB instance.
	MaxAllocatedStorage int `pulumi:"maxAllocatedStorage"`
	// Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.
	MonitoringInterval int `pulumi:"monitoringInterval"`
	// ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to CloudWatch Logs.
	MonitoringRoleArn string `pulumi:"monitoringRoleArn"`
	// If the DB instance is a Multi-AZ deployment.
	MultiAz bool `pulumi:"multiAz"`
	// Network type of the DB instance.
	NetworkType string `pulumi:"networkType"`
	// Provides the list of option group memberships for this DB instance.
	OptionGroupMemberships []string `pulumi:"optionGroupMemberships"`
	// Database endpoint port, primarily used by an Aurora DB cluster. For a conventional RDS DB instance, the `dbInstancePort` is typically the preferred choice.
	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"`
	// Accessibility options for the DB instance.
	PubliclyAccessible bool `pulumi:"publiclyAccessible"`
	// Identifier of the source DB that this is a replica of.
	ReplicateSourceDb string `pulumi:"replicateSourceDb"`
	// RDS Resource ID of this instance.
	ResourceId string `pulumi:"resourceId"`
	// Whether the DB instance is encrypted.
	StorageEncrypted bool `pulumi:"storageEncrypted"`
	// Storage throughput value for the DB instance.
	StorageThroughput int `pulumi:"storageThroughput"`
	// Storage type associated with DB instance.
	StorageType string            `pulumi:"storageType"`
	Tags        map[string]string `pulumi:"tags"`
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type LookupInstanceResultOutput

type LookupInstanceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstance.

func (LookupInstanceResultOutput) Address

Hostname of the RDS instance. See also `endpoint` and `port`.

func (LookupInstanceResultOutput) AllocatedStorage

func (o LookupInstanceResultOutput) AllocatedStorage() pulumi.IntOutput

Allocated storage size specified in gigabytes.

func (LookupInstanceResultOutput) AutoMinorVersionUpgrade

func (o LookupInstanceResultOutput) AutoMinorVersionUpgrade() pulumi.BoolOutput

Indicates that minor version patches are applied automatically.

func (LookupInstanceResultOutput) AvailabilityZone

func (o LookupInstanceResultOutput) AvailabilityZone() pulumi.StringOutput

Name of the Availability Zone the DB instance is located in.

func (LookupInstanceResultOutput) BackupRetentionPeriod

func (o LookupInstanceResultOutput) BackupRetentionPeriod() pulumi.IntOutput

Specifies the number of days for which automatic DB snapshots are retained.

func (LookupInstanceResultOutput) CaCertIdentifier

func (o LookupInstanceResultOutput) CaCertIdentifier() pulumi.StringOutput

Identifier of the CA certificate for the DB instance.

func (LookupInstanceResultOutput) DbClusterIdentifier

func (o LookupInstanceResultOutput) DbClusterIdentifier() pulumi.StringOutput

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.

func (LookupInstanceResultOutput) DbInstanceArn

ARN for the DB instance.

func (LookupInstanceResultOutput) DbInstanceClass

func (o LookupInstanceResultOutput) DbInstanceClass() pulumi.StringOutput

Contains the name of the compute and memory capacity class of the DB instance.

func (LookupInstanceResultOutput) DbInstanceIdentifier

func (o LookupInstanceResultOutput) DbInstanceIdentifier() pulumi.StringOutput

func (LookupInstanceResultOutput) DbInstancePort

func (o LookupInstanceResultOutput) DbInstancePort() pulumi.IntOutput

Port that the DB instance listens on.

func (LookupInstanceResultOutput) DbName

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.

func (LookupInstanceResultOutput) DbParameterGroups

func (o LookupInstanceResultOutput) DbParameterGroups() pulumi.StringArrayOutput

Provides the list of DB parameter groups applied to this DB instance.

func (LookupInstanceResultOutput) DbSubnetGroup

Name of the subnet group associated with the DB instance.

func (LookupInstanceResultOutput) ElementType

func (LookupInstanceResultOutput) ElementType() reflect.Type

func (LookupInstanceResultOutput) EnabledCloudwatchLogsExports

func (o LookupInstanceResultOutput) EnabledCloudwatchLogsExports() pulumi.StringArrayOutput

List of log types to export to cloudwatch.

func (LookupInstanceResultOutput) Endpoint

Connection endpoint in `address:port` format.

func (LookupInstanceResultOutput) Engine

Provides the name of the database engine to be used for this DB instance.

func (LookupInstanceResultOutput) EngineVersion

Database engine version.

func (LookupInstanceResultOutput) HostedZoneId

Canonical hosted zone ID of the DB instance (to be used in a Route 53 Alias record).

func (LookupInstanceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupInstanceResultOutput) Iops

Provisioned IOPS (I/O operations per second) value.

func (LookupInstanceResultOutput) KmsKeyId

The Amazon Web Services KMS key identifier that is used to encrypt the secret.

func (LookupInstanceResultOutput) LicenseModel

License model information for this DB instance.

func (LookupInstanceResultOutput) MasterUserSecrets

Provides the master user secret. Only available when `manageMasterUserPassword` is set to true. Documented below.

func (LookupInstanceResultOutput) MasterUsername

func (o LookupInstanceResultOutput) MasterUsername() pulumi.StringOutput

Contains the master username for the DB instance.

func (LookupInstanceResultOutput) MaxAllocatedStorage

func (o LookupInstanceResultOutput) MaxAllocatedStorage() pulumi.IntOutput

The upper limit to which Amazon RDS can automatically scale the storage of the DB instance.

func (LookupInstanceResultOutput) MonitoringInterval

func (o LookupInstanceResultOutput) MonitoringInterval() pulumi.IntOutput

Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.

func (LookupInstanceResultOutput) MonitoringRoleArn

func (o LookupInstanceResultOutput) MonitoringRoleArn() pulumi.StringOutput

ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to CloudWatch Logs.

func (LookupInstanceResultOutput) MultiAz

If the DB instance is a Multi-AZ deployment.

func (LookupInstanceResultOutput) NetworkType

Network type of the DB instance.

func (LookupInstanceResultOutput) OptionGroupMemberships

func (o LookupInstanceResultOutput) OptionGroupMemberships() pulumi.StringArrayOutput

Provides the list of option group memberships for this DB instance.

func (LookupInstanceResultOutput) Port

Database endpoint port, primarily used by an Aurora DB cluster. For a conventional RDS DB instance, the `dbInstancePort` is typically the preferred choice.

func (LookupInstanceResultOutput) PreferredBackupWindow

func (o LookupInstanceResultOutput) PreferredBackupWindow() pulumi.StringOutput

Specifies the daily time range during which automated backups are created.

func (LookupInstanceResultOutput) PreferredMaintenanceWindow

func (o LookupInstanceResultOutput) PreferredMaintenanceWindow() pulumi.StringOutput

Specifies the weekly time range during which system maintenance can occur in UTC.

func (LookupInstanceResultOutput) PubliclyAccessible

func (o LookupInstanceResultOutput) PubliclyAccessible() pulumi.BoolOutput

Accessibility options for the DB instance.

func (LookupInstanceResultOutput) ReplicateSourceDb

func (o LookupInstanceResultOutput) ReplicateSourceDb() pulumi.StringOutput

Identifier of the source DB that this is a replica of.

func (LookupInstanceResultOutput) ResourceId

RDS Resource ID of this instance.

func (LookupInstanceResultOutput) StorageEncrypted

func (o LookupInstanceResultOutput) StorageEncrypted() pulumi.BoolOutput

Whether the DB instance is encrypted.

func (LookupInstanceResultOutput) StorageThroughput

func (o LookupInstanceResultOutput) StorageThroughput() pulumi.IntOutput

Storage throughput value for the DB instance.

func (LookupInstanceResultOutput) StorageType

Storage type associated with DB instance.

func (LookupInstanceResultOutput) Tags

func (LookupInstanceResultOutput) Timezone

Time zone of the DB instance.

func (LookupInstanceResultOutput) ToLookupInstanceResultOutput

func (o LookupInstanceResultOutput) ToLookupInstanceResultOutput() LookupInstanceResultOutput

func (LookupInstanceResultOutput) ToLookupInstanceResultOutputWithContext

func (o LookupInstanceResultOutput) ToLookupInstanceResultOutputWithContext(ctx context.Context) LookupInstanceResultOutput

func (LookupInstanceResultOutput) VpcSecurityGroups

func (o LookupInstanceResultOutput) VpcSecurityGroups() pulumi.StringArrayOutput

Provides a list of VPC security group elements that the DB instance belongs to.

type LookupParameterGroupArgs added in v6.23.0

type LookupParameterGroupArgs struct {
	// DB parameter group name.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getParameterGroup.

type LookupParameterGroupOutputArgs added in v6.23.0

type LookupParameterGroupOutputArgs struct {
	// DB parameter group name.
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getParameterGroup.

func (LookupParameterGroupOutputArgs) ElementType added in v6.23.0

type LookupParameterGroupResult added in v6.23.0

type LookupParameterGroupResult struct {
	// ARN of the parameter group.
	Arn string `pulumi:"arn"`
	// Description of the parameter group.
	Description string `pulumi:"description"`
	// Family of the parameter group.
	Family string `pulumi:"family"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
}

A collection of values returned by getParameterGroup.

func LookupParameterGroup added in v6.23.0

func LookupParameterGroup(ctx *pulumi.Context, args *LookupParameterGroupArgs, opts ...pulumi.InvokeOption) (*LookupParameterGroupResult, error)

Information about a database parameter group.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.LookupParameterGroup(ctx, &rds.LookupParameterGroupArgs{
			Name: "default.postgres15",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupParameterGroupResultOutput added in v6.23.0

type LookupParameterGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getParameterGroup.

func LookupParameterGroupOutput added in v6.23.0

func (LookupParameterGroupResultOutput) Arn added in v6.23.0

ARN of the parameter group.

func (LookupParameterGroupResultOutput) Description added in v6.23.0

Description of the parameter group.

func (LookupParameterGroupResultOutput) ElementType added in v6.23.0

func (LookupParameterGroupResultOutput) Family added in v6.23.0

Family of the parameter group.

func (LookupParameterGroupResultOutput) Id added in v6.23.0

The provider-assigned unique ID for this managed resource.

func (LookupParameterGroupResultOutput) Name added in v6.23.0

func (LookupParameterGroupResultOutput) ToLookupParameterGroupResultOutput added in v6.23.0

func (o LookupParameterGroupResultOutput) ToLookupParameterGroupResultOutput() LookupParameterGroupResultOutput

func (LookupParameterGroupResultOutput) ToLookupParameterGroupResultOutputWithContext added in v6.23.0

func (o LookupParameterGroupResultOutput) ToLookupParameterGroupResultOutputWithContext(ctx context.Context) LookupParameterGroupResultOutput

type LookupProxyArgs

type LookupProxyArgs struct {
	// Name of the DB proxy.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getProxy.

type LookupProxyOutputArgs

type LookupProxyOutputArgs struct {
	// Name of the DB proxy.
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getProxy.

func (LookupProxyOutputArgs) ElementType

func (LookupProxyOutputArgs) ElementType() reflect.Type

type LookupProxyResult

type LookupProxyResult struct {
	// ARN of the DB Proxy.
	Arn string `pulumi:"arn"`
	// Configuration(s) with authorization mechanisms to connect to the associated instance or cluster.
	Auths []GetProxyAuth `pulumi:"auths"`
	// Whether the proxy includes detailed information about SQL statements in its logs.
	DebugLogging bool `pulumi:"debugLogging"`
	// Endpoint that you can use to connect to the DB proxy.
	Endpoint string `pulumi:"endpoint"`
	// Kinds of databases that the proxy can connect to.
	EngineFamily string `pulumi:"engineFamily"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Number of seconds a connection to the proxy can have no activity before the proxy drops the client connection.
	IdleClientTimeout int    `pulumi:"idleClientTimeout"`
	Name              string `pulumi:"name"`
	// Whether Transport Layer Security (TLS) encryption is required for connections to the proxy.
	RequireTls bool `pulumi:"requireTls"`
	// ARN for the IAM role that the proxy uses to access Amazon Secrets Manager.
	RoleArn string `pulumi:"roleArn"`
	// Provides the VPC ID of the DB proxy.
	VpcId string `pulumi:"vpcId"`
	// Provides a list of VPC security groups that the proxy belongs to.
	VpcSecurityGroupIds []string `pulumi:"vpcSecurityGroupIds"`
	// EC2 subnet IDs for the proxy.
	VpcSubnetIds []string `pulumi:"vpcSubnetIds"`
}

A collection of values returned by getProxy.

func LookupProxy

func LookupProxy(ctx *pulumi.Context, args *LookupProxyArgs, opts ...pulumi.InvokeOption) (*LookupProxyResult, error)

Use this data source to get information about a DB Proxy.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.LookupProxy(ctx, &rds.LookupProxyArgs{
			Name: "my-test-db-proxy",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupProxyResultOutput

type LookupProxyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProxy.

func (LookupProxyResultOutput) Arn

ARN of the DB Proxy.

func (LookupProxyResultOutput) Auths

Configuration(s) with authorization mechanisms to connect to the associated instance or cluster.

func (LookupProxyResultOutput) DebugLogging

func (o LookupProxyResultOutput) DebugLogging() pulumi.BoolOutput

Whether the proxy includes detailed information about SQL statements in its logs.

func (LookupProxyResultOutput) ElementType

func (LookupProxyResultOutput) ElementType() reflect.Type

func (LookupProxyResultOutput) Endpoint

Endpoint that you can use to connect to the DB proxy.

func (LookupProxyResultOutput) EngineFamily

func (o LookupProxyResultOutput) EngineFamily() pulumi.StringOutput

Kinds of databases that the proxy can connect to.

func (LookupProxyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupProxyResultOutput) IdleClientTimeout

func (o LookupProxyResultOutput) IdleClientTimeout() pulumi.IntOutput

Number of seconds a connection to the proxy can have no activity before the proxy drops the client connection.

func (LookupProxyResultOutput) Name

func (LookupProxyResultOutput) RequireTls

func (o LookupProxyResultOutput) RequireTls() pulumi.BoolOutput

Whether Transport Layer Security (TLS) encryption is required for connections to the proxy.

func (LookupProxyResultOutput) RoleArn

ARN for the IAM role that the proxy uses to access Amazon Secrets Manager.

func (LookupProxyResultOutput) ToLookupProxyResultOutput

func (o LookupProxyResultOutput) ToLookupProxyResultOutput() LookupProxyResultOutput

func (LookupProxyResultOutput) ToLookupProxyResultOutputWithContext

func (o LookupProxyResultOutput) ToLookupProxyResultOutputWithContext(ctx context.Context) LookupProxyResultOutput

func (LookupProxyResultOutput) VpcId

Provides the VPC ID of the DB proxy.

func (LookupProxyResultOutput) VpcSecurityGroupIds

func (o LookupProxyResultOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

Provides a list of VPC security groups that the proxy belongs to.

func (LookupProxyResultOutput) VpcSubnetIds

EC2 subnet IDs for the proxy.

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"`
	// 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`, `public` and `awsbackup`.
	SnapshotType *string `pulumi:"snapshotType"`
	// Mapping of tags, each pair of which must exactly match
	// a pair on the desired DB snapshot.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSnapshot.

type LookupSnapshotOutputArgs

type LookupSnapshotOutputArgs struct {
	// Returns the list of snapshots created by the specific db_instance
	DbInstanceIdentifier pulumi.StringPtrInput `pulumi:"dbInstanceIdentifier"`
	// Returns information on a specific snapshot_id.
	DbSnapshotIdentifier pulumi.StringPtrInput `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 pulumi.BoolPtrInput `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 pulumi.BoolPtrInput `pulumi:"includeShared"`
	// If more than one result is returned, use the most
	// recent Snapshot.
	MostRecent pulumi.BoolPtrInput `pulumi:"mostRecent"`
	// 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`, `public` and `awsbackup`.
	SnapshotType pulumi.StringPtrInput `pulumi:"snapshotType"`
	// Mapping of tags, each pair of which must exactly match
	// a pair on the desired DB snapshot.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSnapshot.

func (LookupSnapshotOutputArgs) ElementType

func (LookupSnapshotOutputArgs) ElementType() reflect.Type

type LookupSnapshotResult

type LookupSnapshotResult struct {
	// Allocated storage size in gigabytes (GB).
	AllocatedStorage int `pulumi:"allocatedStorage"`
	// 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"`
	// ARN for the DB snapshot.
	DbSnapshotArn        string  `pulumi:"dbSnapshotArn"`
	DbSnapshotIdentifier *string `pulumi:"dbSnapshotIdentifier"`
	// Whether the DB snapshot is encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// Name of the database engine.
	Engine string `pulumi:"engine"`
	// 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"`
	// Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.
	Iops int `pulumi:"iops"`
	// 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"`
	// 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"`
	// Region that the DB snapshot was created in or copied from.
	SourceRegion string `pulumi:"sourceRegion"`
	// Status of this DB snapshot.
	Status string `pulumi:"status"`
	// Storage type associated with DB snapshot.
	StorageType string            `pulumi:"storageType"`
	Tags        map[string]string `pulumi:"tags"`
	// 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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"),
			DbName:             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
		}
		latestProdSnapshot := rds.LookupSnapshotOutput(ctx, rds.GetSnapshotOutputArgs{
			DbInstanceIdentifier: prod.Identifier,
			MostRecent:           pulumi.Bool(true),
		}, nil)
		_, err = rds.NewInstance(ctx, "dev", &rds.InstanceArgs{
			InstanceClass: pulumi.String("db.t2.micro"),
			DbName:        pulumi.String("mydbdev"),
			SnapshotIdentifier: latestProdSnapshot.ApplyT(func(latestProdSnapshot rds.GetSnapshotResult) (*string, error) {
				return &latestProdSnapshot.Id, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSnapshotResultOutput

type LookupSnapshotResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSnapshot.

func (LookupSnapshotResultOutput) AllocatedStorage

func (o LookupSnapshotResultOutput) AllocatedStorage() pulumi.IntOutput

Allocated storage size in gigabytes (GB).

func (LookupSnapshotResultOutput) AvailabilityZone

func (o LookupSnapshotResultOutput) AvailabilityZone() pulumi.StringOutput

Name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

func (LookupSnapshotResultOutput) DbInstanceIdentifier

func (o LookupSnapshotResultOutput) DbInstanceIdentifier() pulumi.StringPtrOutput

func (LookupSnapshotResultOutput) DbSnapshotArn

ARN for the DB snapshot.

func (LookupSnapshotResultOutput) DbSnapshotIdentifier

func (o LookupSnapshotResultOutput) DbSnapshotIdentifier() pulumi.StringPtrOutput

func (LookupSnapshotResultOutput) ElementType

func (LookupSnapshotResultOutput) ElementType() reflect.Type

func (LookupSnapshotResultOutput) Encrypted

Whether the DB snapshot is encrypted.

func (LookupSnapshotResultOutput) Engine

Name of the database engine.

func (LookupSnapshotResultOutput) EngineVersion

Version of the database engine.

func (LookupSnapshotResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSnapshotResultOutput) IncludePublic

func (LookupSnapshotResultOutput) IncludeShared

func (LookupSnapshotResultOutput) Iops

Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

func (LookupSnapshotResultOutput) KmsKeyId

ARN for the KMS encryption key.

func (LookupSnapshotResultOutput) LicenseModel

License model information for the restored DB instance.

func (LookupSnapshotResultOutput) MostRecent

func (LookupSnapshotResultOutput) OptionGroupName

func (o LookupSnapshotResultOutput) OptionGroupName() pulumi.StringOutput

Provides the option group name for the DB snapshot.

func (LookupSnapshotResultOutput) Port

func (LookupSnapshotResultOutput) SnapshotCreateTime

func (o LookupSnapshotResultOutput) SnapshotCreateTime() pulumi.StringOutput

Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).

func (LookupSnapshotResultOutput) SnapshotType

func (LookupSnapshotResultOutput) SourceDbSnapshotIdentifier

func (o LookupSnapshotResultOutput) SourceDbSnapshotIdentifier() pulumi.StringOutput

DB snapshot ARN that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.

func (LookupSnapshotResultOutput) SourceRegion

Region that the DB snapshot was created in or copied from.

func (LookupSnapshotResultOutput) Status

Status of this DB snapshot.

func (LookupSnapshotResultOutput) StorageType

Storage type associated with DB snapshot.

func (LookupSnapshotResultOutput) Tags

func (LookupSnapshotResultOutput) ToLookupSnapshotResultOutput

func (o LookupSnapshotResultOutput) ToLookupSnapshotResultOutput() LookupSnapshotResultOutput

func (LookupSnapshotResultOutput) ToLookupSnapshotResultOutputWithContext

func (o LookupSnapshotResultOutput) ToLookupSnapshotResultOutputWithContext(ctx context.Context) LookupSnapshotResultOutput

func (LookupSnapshotResultOutput) VpcId

ID of the VPC associated with the DB snapshot.

type LookupSubnetGroupArgs

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

A collection of arguments for invoking getSubnetGroup.

type LookupSubnetGroupOutputArgs

type LookupSubnetGroupOutputArgs struct {
	// Name of the RDS database subnet group.
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getSubnetGroup.

func (LookupSubnetGroupOutputArgs) ElementType

type LookupSubnetGroupResult

type LookupSubnetGroupResult struct {
	// 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"`
	// The network type of the DB subnet group.
	SupportedNetworkTypes []string `pulumi:"supportedNetworkTypes"`
	// Provides the VPC ID of the DB subnet group.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getSubnetGroup.

func LookupSubnetGroup

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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 LookupSubnetGroupResultOutput

type LookupSubnetGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubnetGroup.

func (LookupSubnetGroupResultOutput) Arn

ARN for the DB subnet group.

func (LookupSubnetGroupResultOutput) Description

Provides the description of the DB subnet group.

func (LookupSubnetGroupResultOutput) ElementType

func (LookupSubnetGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSubnetGroupResultOutput) Name

func (LookupSubnetGroupResultOutput) Status

Provides the status of the DB subnet group.

func (LookupSubnetGroupResultOutput) SubnetIds

Contains a list of subnet identifiers.

func (LookupSubnetGroupResultOutput) SupportedNetworkTypes

func (o LookupSubnetGroupResultOutput) SupportedNetworkTypes() pulumi.StringArrayOutput

The network type of the DB subnet group.

func (LookupSubnetGroupResultOutput) ToLookupSubnetGroupResultOutput

func (o LookupSubnetGroupResultOutput) ToLookupSubnetGroupResultOutput() LookupSubnetGroupResultOutput

func (LookupSubnetGroupResultOutput) ToLookupSubnetGroupResultOutputWithContext

func (o LookupSubnetGroupResultOutput) ToLookupSubnetGroupResultOutputWithContext(ctx context.Context) LookupSubnetGroupResultOutput

func (LookupSubnetGroupResultOutput) VpcId

Provides the VPC ID of the DB subnet group.

type OptionGroup

type OptionGroup struct {
	pulumi.CustomResourceState

	// 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"`
	// Name of the option group. If omitted, the provider will assign a random, unique name. Must be lowercase, to match as it is stored in AWS.
	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"`
	// Description of the option group.
	OptionGroupDescription pulumi.StringOutput `pulumi:"optionGroupDescription"`
	// The options to apply. See `option` Block below for more details.
	Options OptionGroupOptionArrayOutput `pulumi:"options"`
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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 `rds.OptionGroup` are set to happen immediately as we default to applying immediately.

> **WARNING:** You can perform a destroy on a `rds.OptionGroup`, as long as it is not associated with any Amazon RDS resource. An option group can be associated with a DB instance, a manual DB snapshot, or an automated DB snapshot.

If you try to delete an option group that is associated with an Amazon RDS resource, an error similar to the following is returned:

> An error occurred (InvalidOptionGroupStateFault) when calling the DeleteOptionGroup operation: The option group 'optionGroupName' cannot be deleted because it is in use.

More information about this can be found [here](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithOptionGroups.html#USER_WorkingWithOptionGroups.Delete).

## Import

Using `pulumi import`, import DB option groups using the `name`. For example:

```sh

$ pulumi import aws:rds/optionGroup:OptionGroup example 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

func (*OptionGroup) ElementType() reflect.Type

func (*OptionGroup) ToOptionGroupOutput

func (i *OptionGroup) ToOptionGroupOutput() OptionGroupOutput

func (*OptionGroup) ToOptionGroupOutputWithContext

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

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
	// Name of the option group. If omitted, the provider will assign a random, unique name. Must be lowercase, to match as it is stored in AWS.
	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
	// Description of the option group.
	OptionGroupDescription pulumi.StringPtrInput
	// The options to apply. See `option` Block below for more details.
	Options OptionGroupOptionArrayInput
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a OptionGroup resource.

func (OptionGroupArgs) ElementType

func (OptionGroupArgs) ElementType() reflect.Type

type OptionGroupArray

type OptionGroupArray []OptionGroupInput

func (OptionGroupArray) ElementType

func (OptionGroupArray) ElementType() reflect.Type

func (OptionGroupArray) ToOptionGroupArrayOutput

func (i OptionGroupArray) ToOptionGroupArrayOutput() OptionGroupArrayOutput

func (OptionGroupArray) ToOptionGroupArrayOutputWithContext

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

type OptionGroupArrayInput

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

type OptionGroupArrayOutput struct{ *pulumi.OutputState }

func (OptionGroupArrayOutput) ElementType

func (OptionGroupArrayOutput) ElementType() reflect.Type

func (OptionGroupArrayOutput) Index

func (OptionGroupArrayOutput) ToOptionGroupArrayOutput

func (o OptionGroupArrayOutput) ToOptionGroupArrayOutput() OptionGroupArrayOutput

func (OptionGroupArrayOutput) ToOptionGroupArrayOutputWithContext

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

type OptionGroupInput

type OptionGroupInput interface {
	pulumi.Input

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

type OptionGroupMap

type OptionGroupMap map[string]OptionGroupInput

func (OptionGroupMap) ElementType

func (OptionGroupMap) ElementType() reflect.Type

func (OptionGroupMap) ToOptionGroupMapOutput

func (i OptionGroupMap) ToOptionGroupMapOutput() OptionGroupMapOutput

func (OptionGroupMap) ToOptionGroupMapOutputWithContext

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

type OptionGroupMapInput

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

type OptionGroupMapOutput struct{ *pulumi.OutputState }

func (OptionGroupMapOutput) ElementType

func (OptionGroupMapOutput) ElementType() reflect.Type

func (OptionGroupMapOutput) MapIndex

func (OptionGroupMapOutput) ToOptionGroupMapOutput

func (o OptionGroupMapOutput) ToOptionGroupMapOutput() OptionGroupMapOutput

func (OptionGroupMapOutput) ToOptionGroupMapOutputWithContext

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

type OptionGroupOption

type OptionGroupOption struct {
	// List of DB Security Groups for which the option is enabled.
	DbSecurityGroupMemberships []string `pulumi:"dbSecurityGroupMemberships"`
	// Name of the option (e.g., MEMCACHED).
	OptionName string `pulumi:"optionName"`
	// The option settings to apply. See `optionSettings` Block below for more details.
	OptionSettings []OptionGroupOptionOptionSetting `pulumi:"optionSettings"`
	// Port number when connecting to the option (e.g., 11211). Leaving out or removing `port` from your configuration does not remove or clear a port from the option in AWS. AWS may assign a default port. Not including `port` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any port changes.
	Port *int `pulumi:"port"`
	// Version of the option (e.g., 13.1.0.0). Leaving out or removing `version` from your configuration does not remove or clear a version from the option in AWS. AWS may assign a default version. Not including `version` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any version changes.
	Version *string `pulumi:"version"`
	// List of VPC Security Groups for which the option is enabled.
	VpcSecurityGroupMemberships []string `pulumi:"vpcSecurityGroupMemberships"`
}

type OptionGroupOptionArgs

type OptionGroupOptionArgs struct {
	// List of DB Security Groups for which the option is enabled.
	DbSecurityGroupMemberships pulumi.StringArrayInput `pulumi:"dbSecurityGroupMemberships"`
	// Name of the option (e.g., MEMCACHED).
	OptionName pulumi.StringInput `pulumi:"optionName"`
	// The option settings to apply. See `optionSettings` Block below for more details.
	OptionSettings OptionGroupOptionOptionSettingArrayInput `pulumi:"optionSettings"`
	// Port number when connecting to the option (e.g., 11211). Leaving out or removing `port` from your configuration does not remove or clear a port from the option in AWS. AWS may assign a default port. Not including `port` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any port changes.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// Version of the option (e.g., 13.1.0.0). Leaving out or removing `version` from your configuration does not remove or clear a version from the option in AWS. AWS may assign a default version. Not including `version` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any version changes.
	Version pulumi.StringPtrInput `pulumi:"version"`
	// 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 {
	// Name of the setting.
	Name string `pulumi:"name"`
	// Value of the setting.
	Value string `pulumi:"value"`
}

type OptionGroupOptionOptionSettingArgs

type OptionGroupOptionOptionSettingArgs struct {
	// Name of the setting.
	Name pulumi.StringInput `pulumi:"name"`
	// 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

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

Value of the setting.

type OptionGroupOptionOutput

type OptionGroupOptionOutput struct{ *pulumi.OutputState }

func (OptionGroupOptionOutput) DbSecurityGroupMemberships

func (o OptionGroupOptionOutput) DbSecurityGroupMemberships() pulumi.StringArrayOutput

List of DB Security Groups for which the option is enabled.

func (OptionGroupOptionOutput) ElementType

func (OptionGroupOptionOutput) ElementType() reflect.Type

func (OptionGroupOptionOutput) OptionName

Name of the option (e.g., MEMCACHED).

func (OptionGroupOptionOutput) OptionSettings

The option settings to apply. See `optionSettings` Block below for more details.

func (OptionGroupOptionOutput) Port

Port number when connecting to the option (e.g., 11211). Leaving out or removing `port` from your configuration does not remove or clear a port from the option in AWS. AWS may assign a default port. Not including `port` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any port changes.

func (OptionGroupOptionOutput) ToOptionGroupOptionOutput

func (o OptionGroupOptionOutput) ToOptionGroupOptionOutput() OptionGroupOptionOutput

func (OptionGroupOptionOutput) ToOptionGroupOptionOutputWithContext

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

func (OptionGroupOptionOutput) Version

Version of the option (e.g., 13.1.0.0). Leaving out or removing `version` from your configuration does not remove or clear a version from the option in AWS. AWS may assign a default version. Not including `version` in your configuration means that the AWS provider will ignore a previously set value, a value set by AWS, and any version changes.

func (OptionGroupOptionOutput) VpcSecurityGroupMemberships

func (o OptionGroupOptionOutput) VpcSecurityGroupMemberships() pulumi.StringArrayOutput

List of VPC Security Groups for which the option is enabled.

type OptionGroupOutput

type OptionGroupOutput struct{ *pulumi.OutputState }

func (OptionGroupOutput) Arn

ARN of the DB option group.

func (OptionGroupOutput) ElementType

func (OptionGroupOutput) ElementType() reflect.Type

func (OptionGroupOutput) EngineName

func (o OptionGroupOutput) EngineName() pulumi.StringOutput

Specifies the name of the engine that this option group should be associated with.

func (OptionGroupOutput) MajorEngineVersion

func (o OptionGroupOutput) MajorEngineVersion() pulumi.StringOutput

Specifies the major version of the engine that this option group should be associated with.

func (OptionGroupOutput) Name

Name of the option group. If omitted, the provider will assign a random, unique name. Must be lowercase, to match as it is stored in AWS.

func (OptionGroupOutput) NamePrefix

func (o OptionGroupOutput) NamePrefix() pulumi.StringOutput

Creates a unique name beginning with the specified prefix. Conflicts with `name`. Must be lowercase, to match as it is stored in AWS.

func (OptionGroupOutput) OptionGroupDescription

func (o OptionGroupOutput) OptionGroupDescription() pulumi.StringOutput

Description of the option group.

func (OptionGroupOutput) Options

The options to apply. See `option` Block below for more details.

func (OptionGroupOutput) Tags

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

func (OptionGroupOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (OptionGroupOutput) ToOptionGroupOutput

func (o OptionGroupOutput) ToOptionGroupOutput() OptionGroupOutput

func (OptionGroupOutput) ToOptionGroupOutputWithContext

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

type OptionGroupState

type OptionGroupState struct {
	// 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
	// Name of the option group. If omitted, the provider will assign a random, unique name. Must be lowercase, to match as it is stored in AWS.
	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
	// Description of the option group.
	OptionGroupDescription pulumi.StringPtrInput
	// The options to apply. See `option` Block below for more details.
	Options OptionGroupOptionArrayInput
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll 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 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"`
	// The DB parameters to apply. See `parameter` Block below for more details. 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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)

> **NOTE:** After applying your changes, you may encounter a perpetual diff in your pulumi preview output for a `parameter` whose `value` remains unchanged but whose `applyMethod` is changing (e.g., from `immediate` to `pending-reboot`, or `pending-reboot` to `immediate`). If only the apply method of a parameter is changing, the AWS API will not register this change. To change the `applyMethod` of a parameter, its value must also change.

## Example Usage ### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### `createBeforeDestroy` Lifecycle Configuration

The `createBeforeDestroy` lifecycle configuration is necessary for modifications that force re-creation of an existing, in-use parameter group. This includes common situations like changing the group `name` or bumping the `family` version during a major version upgrade. This configuration will prevent destruction of the deposed parameter group while still in use by the database during upgrade.

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleParameterGroup, err := rds.NewParameterGroup(ctx, "exampleParameterGroup", &rds.ParameterGroupArgs{
			Family: pulumi.String("postgres13"),
			Parameters: rds.ParameterGroupParameterArray{
				&rds.ParameterGroupParameterArgs{
					Name:  pulumi.String("log_connections"),
					Value: pulumi.String("1"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			ParameterGroupName: exampleParameterGroup.Name,
			ApplyImmediately:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import DB Parameter groups using the `name`. For example:

```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

func (*ParameterGroup) ElementType() reflect.Type

func (*ParameterGroup) ToParameterGroupOutput

func (i *ParameterGroup) ToParameterGroupOutput() ParameterGroupOutput

func (*ParameterGroup) ToParameterGroupOutputWithContext

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

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 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
	// The DB parameters to apply. See `parameter` Block below for more details. 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ParameterGroup resource.

func (ParameterGroupArgs) ElementType

func (ParameterGroupArgs) ElementType() reflect.Type

type ParameterGroupArray

type ParameterGroupArray []ParameterGroupInput

func (ParameterGroupArray) ElementType

func (ParameterGroupArray) ElementType() reflect.Type

func (ParameterGroupArray) ToParameterGroupArrayOutput

func (i ParameterGroupArray) ToParameterGroupArrayOutput() ParameterGroupArrayOutput

func (ParameterGroupArray) ToParameterGroupArrayOutputWithContext

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

type ParameterGroupArrayInput

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

type ParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (ParameterGroupArrayOutput) ElementType

func (ParameterGroupArrayOutput) ElementType() reflect.Type

func (ParameterGroupArrayOutput) Index

func (ParameterGroupArrayOutput) ToParameterGroupArrayOutput

func (o ParameterGroupArrayOutput) ToParameterGroupArrayOutput() ParameterGroupArrayOutput

func (ParameterGroupArrayOutput) ToParameterGroupArrayOutputWithContext

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

type ParameterGroupInput

type ParameterGroupInput interface {
	pulumi.Input

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

type ParameterGroupMap

type ParameterGroupMap map[string]ParameterGroupInput

func (ParameterGroupMap) ElementType

func (ParameterGroupMap) ElementType() reflect.Type

func (ParameterGroupMap) ToParameterGroupMapOutput

func (i ParameterGroupMap) ToParameterGroupMapOutput() ParameterGroupMapOutput

func (ParameterGroupMap) ToParameterGroupMapOutputWithContext

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

type ParameterGroupMapInput

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

type ParameterGroupMapOutput struct{ *pulumi.OutputState }

func (ParameterGroupMapOutput) ElementType

func (ParameterGroupMapOutput) ElementType() reflect.Type

func (ParameterGroupMapOutput) MapIndex

func (ParameterGroupMapOutput) ToParameterGroupMapOutput

func (o ParameterGroupMapOutput) ToParameterGroupMapOutput() ParameterGroupMapOutput

func (ParameterGroupMapOutput) ToParameterGroupMapOutputWithContext

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

type ParameterGroupOutput

type ParameterGroupOutput struct{ *pulumi.OutputState }

func (ParameterGroupOutput) Arn

The ARN of the db parameter group.

func (ParameterGroupOutput) Description

func (o ParameterGroupOutput) Description() pulumi.StringOutput

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

func (ParameterGroupOutput) ElementType

func (ParameterGroupOutput) ElementType() reflect.Type

func (ParameterGroupOutput) Family

The family of the DB parameter group.

func (ParameterGroupOutput) Name

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

func (ParameterGroupOutput) NamePrefix

func (o ParameterGroupOutput) NamePrefix() pulumi.StringOutput

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

func (ParameterGroupOutput) Parameters

The DB parameters to apply. See `parameter` Block below for more details. 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.

func (ParameterGroupOutput) Tags

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

func (ParameterGroupOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ParameterGroupOutput) ToParameterGroupOutput

func (o ParameterGroupOutput) ToParameterGroupOutput() ParameterGroupOutput

func (ParameterGroupOutput) ToParameterGroupOutputWithContext

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

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 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 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
	// The DB parameters to apply. See `parameter` Block below for more details. 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ParameterGroupState) ElementType

func (ParameterGroupState) ElementType() reflect.Type

type Proxy

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. For Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases, specify `MYSQL`. For Aurora PostgreSQL and RDS for PostgreSQL databases, specify `POSTGRESQL`. For RDS for Microsoft SQL Server, specify `SQLSERVER`. Valid values are `MYSQL`, `POSTGRESQL`, and `SQLSERVER`.
	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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// 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).

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewProxy(ctx, "example", &rds.ProxyArgs{
			DebugLogging:      pulumi.Bool(false),
			EngineFamily:      pulumi.String("MYSQL"),
			IdleClientTimeout: pulumi.Int(1800),
			RequireTls:        pulumi.Bool(true),
			RoleArn:           pulumi.Any(aws_iam_role.Example.Arn),
			VpcSecurityGroupIds: pulumi.StringArray{
				aws_security_group.Example.Id,
			},
			VpcSubnetIds: pulumi.StringArray{
				aws_subnet.Example.Id,
			},
			Auths: rds.ProxyAuthArray{
				&rds.ProxyAuthArgs{
					AuthScheme:  pulumi.String("SECRETS"),
					Description: pulumi.String("example"),
					IamAuth:     pulumi.String("DISABLED"),
					SecretArn:   pulumi.Any(aws_secretsmanager_secret.Example.Arn),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import DB proxies using the `name`. For example:

```sh

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

```

func GetProxy

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

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

func (*Proxy) ElementType() reflect.Type

func (*Proxy) ToProxyOutput

func (i *Proxy) ToProxyOutput() ProxyOutput

func (*Proxy) ToProxyOutputWithContext

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

type ProxyArgs

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. For Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases, specify `MYSQL`. For Aurora PostgreSQL and RDS for PostgreSQL databases, specify `POSTGRESQL`. For RDS for Microsoft SQL Server, specify `SQLSERVER`. Valid values are `MYSQL`, `POSTGRESQL`, and `SQLSERVER`.
	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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	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

func (ProxyArgs) ElementType() reflect.Type

type ProxyArray

type ProxyArray []ProxyInput

func (ProxyArray) ElementType

func (ProxyArray) ElementType() reflect.Type

func (ProxyArray) ToProxyArrayOutput

func (i ProxyArray) ToProxyArrayOutput() ProxyArrayOutput

func (ProxyArray) ToProxyArrayOutputWithContext

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

type ProxyArrayInput

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

type ProxyArrayOutput struct{ *pulumi.OutputState }

func (ProxyArrayOutput) ElementType

func (ProxyArrayOutput) ElementType() reflect.Type

func (ProxyArrayOutput) Index

func (ProxyArrayOutput) ToProxyArrayOutput

func (o ProxyArrayOutput) ToProxyArrayOutput() ProxyArrayOutput

func (ProxyArrayOutput) ToProxyArrayOutputWithContext

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

type ProxyAuth

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"`
	// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
	ClientPasswordAuthType *string `pulumi:"clientPasswordAuthType"`
	// 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"`
	// The name of the database user to which the proxy connects.
	Username *string `pulumi:"username"`
}

type ProxyAuthArgs

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"`
	// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
	ClientPasswordAuthType pulumi.StringPtrInput `pulumi:"clientPasswordAuthType"`
	// 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"`
	// The name of the database user to which the proxy connects.
	Username pulumi.StringPtrInput `pulumi:"username"`
}

func (ProxyAuthArgs) ElementType

func (ProxyAuthArgs) ElementType() reflect.Type

func (ProxyAuthArgs) ToProxyAuthOutput

func (i ProxyAuthArgs) ToProxyAuthOutput() ProxyAuthOutput

func (ProxyAuthArgs) ToProxyAuthOutputWithContext

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

type ProxyAuthArray

type ProxyAuthArray []ProxyAuthInput

func (ProxyAuthArray) ElementType

func (ProxyAuthArray) ElementType() reflect.Type

func (ProxyAuthArray) ToProxyAuthArrayOutput

func (i ProxyAuthArray) ToProxyAuthArrayOutput() ProxyAuthArrayOutput

func (ProxyAuthArray) ToProxyAuthArrayOutputWithContext

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

type ProxyAuthArrayInput

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

type ProxyAuthArrayOutput struct{ *pulumi.OutputState }

func (ProxyAuthArrayOutput) ElementType

func (ProxyAuthArrayOutput) ElementType() reflect.Type

func (ProxyAuthArrayOutput) Index

func (ProxyAuthArrayOutput) ToProxyAuthArrayOutput

func (o ProxyAuthArrayOutput) ToProxyAuthArrayOutput() ProxyAuthArrayOutput

func (ProxyAuthArrayOutput) ToProxyAuthArrayOutputWithContext

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

type ProxyAuthInput

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

type ProxyAuthOutput struct{ *pulumi.OutputState }

func (ProxyAuthOutput) AuthScheme

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) ClientPasswordAuthType

func (o ProxyAuthOutput) ClientPasswordAuthType() pulumi.StringPtrOutput

The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.

func (ProxyAuthOutput) Description

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

func (ProxyAuthOutput) ElementType() reflect.Type

func (ProxyAuthOutput) IamAuth

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

func (ProxyAuthOutput) SecretArn

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

func (o ProxyAuthOutput) ToProxyAuthOutput() ProxyAuthOutput

func (ProxyAuthOutput) ToProxyAuthOutputWithContext

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

func (ProxyAuthOutput) Username

func (o ProxyAuthOutput) Username() pulumi.StringPtrOutput

The name of the database user to which the proxy connects.

type ProxyDefaultTargetGroup

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.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleProxy, err := rds.NewProxy(ctx, "exampleProxy", &rds.ProxyArgs{
			DebugLogging:      pulumi.Bool(false),
			EngineFamily:      pulumi.String("MYSQL"),
			IdleClientTimeout: pulumi.Int(1800),
			RequireTls:        pulumi.Bool(true),
			RoleArn:           pulumi.Any(aws_iam_role.Example.Arn),
			VpcSecurityGroupIds: pulumi.StringArray{
				aws_security_group.Example.Id,
			},
			VpcSubnetIds: pulumi.StringArray{
				aws_subnet.Example.Id,
			},
			Auths: rds.ProxyAuthArray{
				&rds.ProxyAuthArgs{
					AuthScheme:  pulumi.String("SECRETS"),
					Description: pulumi.String("example"),
					IamAuth:     pulumi.String("DISABLED"),
					SecretArn:   pulumi.Any(aws_secretsmanager_secret.Example.Arn),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewProxyDefaultTargetGroup(ctx, "exampleProxyDefaultTargetGroup", &rds.ProxyDefaultTargetGroupArgs{
			DbProxyName: exampleProxy.Name,
			ConnectionPoolConfig: &rds.ProxyDefaultTargetGroupConnectionPoolConfigArgs{
				ConnectionBorrowTimeout:   pulumi.Int(120),
				InitQuery:                 pulumi.String("SET x=1, y=2"),
				MaxConnectionsPercent:     pulumi.Int(100),
				MaxIdleConnectionsPercent: pulumi.Int(50),
				SessionPinningFilters: pulumi.StringArray{
					pulumi.String("EXCLUDE_VARIABLE_SETS"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import DB proxy default target groups using the `db_proxy_name`. For example:

```sh

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

```

func GetProxyDefaultTargetGroup

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

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

func (*ProxyDefaultTargetGroup) ElementType() reflect.Type

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutput

func (i *ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutput() ProxyDefaultTargetGroupOutput

func (*ProxyDefaultTargetGroup) ToProxyDefaultTargetGroupOutputWithContext

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

type ProxyDefaultTargetGroupArgs

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

type ProxyDefaultTargetGroupArray

type ProxyDefaultTargetGroupArray []ProxyDefaultTargetGroupInput

func (ProxyDefaultTargetGroupArray) ElementType

func (ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutput

func (i ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutput() ProxyDefaultTargetGroupArrayOutput

func (ProxyDefaultTargetGroupArray) ToProxyDefaultTargetGroupArrayOutputWithContext

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

type ProxyDefaultTargetGroupArrayInput

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

type ProxyDefaultTargetGroupArrayOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupArrayOutput) ElementType

func (ProxyDefaultTargetGroupArrayOutput) Index

func (ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutput

func (o ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutput() ProxyDefaultTargetGroupArrayOutput

func (ProxyDefaultTargetGroupArrayOutput) ToProxyDefaultTargetGroupArrayOutputWithContext

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

type ProxyDefaultTargetGroupConnectionPoolConfig

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

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

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutput

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutput() ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext

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

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (i ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput() ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigArgs) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext

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

type ProxyDefaultTargetGroupConnectionPoolConfigInput

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

type ProxyDefaultTargetGroupConnectionPoolConfigOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ConnectionBorrowTimeout

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

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) InitQuery

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

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

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

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

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutput() ProxyDefaultTargetGroupConnectionPoolConfigOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigOutputWithContext

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

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (o ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutput() ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput

func (ProxyDefaultTargetGroupConnectionPoolConfigOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext

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

type ProxyDefaultTargetGroupConnectionPoolConfigPtrInput

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

type ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ConnectionBorrowTimeout

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

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ElementType

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) InitQuery

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

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

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

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

func (ProxyDefaultTargetGroupConnectionPoolConfigPtrOutput) ToProxyDefaultTargetGroupConnectionPoolConfigPtrOutputWithContext

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

type ProxyDefaultTargetGroupInput

type ProxyDefaultTargetGroupInput interface {
	pulumi.Input

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

type ProxyDefaultTargetGroupMap

type ProxyDefaultTargetGroupMap map[string]ProxyDefaultTargetGroupInput

func (ProxyDefaultTargetGroupMap) ElementType

func (ProxyDefaultTargetGroupMap) ElementType() reflect.Type

func (ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutput

func (i ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutput() ProxyDefaultTargetGroupMapOutput

func (ProxyDefaultTargetGroupMap) ToProxyDefaultTargetGroupMapOutputWithContext

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

type ProxyDefaultTargetGroupMapInput

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

type ProxyDefaultTargetGroupMapOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupMapOutput) ElementType

func (ProxyDefaultTargetGroupMapOutput) MapIndex

func (ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutput

func (o ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutput() ProxyDefaultTargetGroupMapOutput

func (ProxyDefaultTargetGroupMapOutput) ToProxyDefaultTargetGroupMapOutputWithContext

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

type ProxyDefaultTargetGroupOutput

type ProxyDefaultTargetGroupOutput struct{ *pulumi.OutputState }

func (ProxyDefaultTargetGroupOutput) Arn

The Amazon Resource Name (ARN) representing the target group.

func (ProxyDefaultTargetGroupOutput) ConnectionPoolConfig

The settings that determine the size and behavior of the connection pool for the target group.

func (ProxyDefaultTargetGroupOutput) DbProxyName

Name of the RDS DB Proxy.

func (ProxyDefaultTargetGroupOutput) ElementType

func (ProxyDefaultTargetGroupOutput) Name

The name of the default target group.

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutput

func (o ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutput() ProxyDefaultTargetGroupOutput

func (ProxyDefaultTargetGroupOutput) ToProxyDefaultTargetGroupOutputWithContext

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

type ProxyDefaultTargetGroupState

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

type ProxyEndpoint

type ProxyEndpoint struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) for the proxy endpoint.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The identifier for the proxy endpoint. 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.
	DbProxyEndpointName pulumi.StringOutput `pulumi:"dbProxyEndpointName"`
	// The name of the DB proxy associated with the DB proxy endpoint that you create.
	DbProxyName pulumi.StringOutput `pulumi:"dbProxyName"`
	// 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"`
	// Indicates whether this endpoint is the default endpoint for the associated DB proxy.
	IsDefault pulumi.BoolOutput `pulumi:"isDefault"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Indicates whether the DB proxy endpoint can be used for read/write or read-only operations. The default is `READ_WRITE`. Valid values are `READ_WRITE` and `READ_ONLY`.
	TargetRole pulumi.StringPtrOutput `pulumi:"targetRole"`
	// The VPC ID of the DB proxy endpoint.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// 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 endpoint resource. For additional information, see the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-proxy-endpoints.html).

## Example Usage

```go package main

import (

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

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { var splat0 []interface{} for _, val0 := range aws_subnet.Test { splat0 = append(splat0, val0.Id) } _, err := rds.NewProxyEndpoint(ctx, "example", &rds.ProxyEndpointArgs{ DbProxyName: pulumi.Any(aws_db_proxy.Test.Name), DbProxyEndpointName: pulumi.String("example"), VpcSubnetIds: toPulumiArray(splat0), TargetRole: pulumi.String("READ_ONLY"), }) if err != nil { return err } return nil }) } func toPulumiArray(arr []) pulumi.Array { var pulumiArr pulumi.Array for _, v := range arr { pulumiArr = append(pulumiArr, pulumi.(v)) } return pulumiArr } ```

## Import

Using `pulumi import`, import DB proxy endpoints using the `DB-PROXY-NAME/DB-PROXY-ENDPOINT-NAME`. For example:

```sh

$ pulumi import aws:rds/proxyEndpoint:ProxyEndpoint example example/example

```

func GetProxyEndpoint

func GetProxyEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProxyEndpointState, opts ...pulumi.ResourceOption) (*ProxyEndpoint, error)

GetProxyEndpoint gets an existing ProxyEndpoint 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 NewProxyEndpoint

func NewProxyEndpoint(ctx *pulumi.Context,
	name string, args *ProxyEndpointArgs, opts ...pulumi.ResourceOption) (*ProxyEndpoint, error)

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

func (*ProxyEndpoint) ElementType

func (*ProxyEndpoint) ElementType() reflect.Type

func (*ProxyEndpoint) ToProxyEndpointOutput

func (i *ProxyEndpoint) ToProxyEndpointOutput() ProxyEndpointOutput

func (*ProxyEndpoint) ToProxyEndpointOutputWithContext

func (i *ProxyEndpoint) ToProxyEndpointOutputWithContext(ctx context.Context) ProxyEndpointOutput

type ProxyEndpointArgs

type ProxyEndpointArgs struct {
	// The identifier for the proxy endpoint. 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.
	DbProxyEndpointName pulumi.StringInput
	// The name of the DB proxy associated with the DB proxy endpoint that you create.
	DbProxyName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Indicates whether the DB proxy endpoint can be used for read/write or read-only operations. The default is `READ_WRITE`. Valid values are `READ_WRITE` and `READ_ONLY`.
	TargetRole pulumi.StringPtrInput
	// 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 ProxyEndpoint resource.

func (ProxyEndpointArgs) ElementType

func (ProxyEndpointArgs) ElementType() reflect.Type

type ProxyEndpointArray

type ProxyEndpointArray []ProxyEndpointInput

func (ProxyEndpointArray) ElementType

func (ProxyEndpointArray) ElementType() reflect.Type

func (ProxyEndpointArray) ToProxyEndpointArrayOutput

func (i ProxyEndpointArray) ToProxyEndpointArrayOutput() ProxyEndpointArrayOutput

func (ProxyEndpointArray) ToProxyEndpointArrayOutputWithContext

func (i ProxyEndpointArray) ToProxyEndpointArrayOutputWithContext(ctx context.Context) ProxyEndpointArrayOutput

type ProxyEndpointArrayInput

type ProxyEndpointArrayInput interface {
	pulumi.Input

	ToProxyEndpointArrayOutput() ProxyEndpointArrayOutput
	ToProxyEndpointArrayOutputWithContext(context.Context) ProxyEndpointArrayOutput
}

ProxyEndpointArrayInput is an input type that accepts ProxyEndpointArray and ProxyEndpointArrayOutput values. You can construct a concrete instance of `ProxyEndpointArrayInput` via:

ProxyEndpointArray{ ProxyEndpointArgs{...} }

type ProxyEndpointArrayOutput

type ProxyEndpointArrayOutput struct{ *pulumi.OutputState }

func (ProxyEndpointArrayOutput) ElementType

func (ProxyEndpointArrayOutput) ElementType() reflect.Type

func (ProxyEndpointArrayOutput) Index

func (ProxyEndpointArrayOutput) ToProxyEndpointArrayOutput

func (o ProxyEndpointArrayOutput) ToProxyEndpointArrayOutput() ProxyEndpointArrayOutput

func (ProxyEndpointArrayOutput) ToProxyEndpointArrayOutputWithContext

func (o ProxyEndpointArrayOutput) ToProxyEndpointArrayOutputWithContext(ctx context.Context) ProxyEndpointArrayOutput

type ProxyEndpointInput

type ProxyEndpointInput interface {
	pulumi.Input

	ToProxyEndpointOutput() ProxyEndpointOutput
	ToProxyEndpointOutputWithContext(ctx context.Context) ProxyEndpointOutput
}

type ProxyEndpointMap

type ProxyEndpointMap map[string]ProxyEndpointInput

func (ProxyEndpointMap) ElementType

func (ProxyEndpointMap) ElementType() reflect.Type

func (ProxyEndpointMap) ToProxyEndpointMapOutput

func (i ProxyEndpointMap) ToProxyEndpointMapOutput() ProxyEndpointMapOutput

func (ProxyEndpointMap) ToProxyEndpointMapOutputWithContext

func (i ProxyEndpointMap) ToProxyEndpointMapOutputWithContext(ctx context.Context) ProxyEndpointMapOutput

type ProxyEndpointMapInput

type ProxyEndpointMapInput interface {
	pulumi.Input

	ToProxyEndpointMapOutput() ProxyEndpointMapOutput
	ToProxyEndpointMapOutputWithContext(context.Context) ProxyEndpointMapOutput
}

ProxyEndpointMapInput is an input type that accepts ProxyEndpointMap and ProxyEndpointMapOutput values. You can construct a concrete instance of `ProxyEndpointMapInput` via:

ProxyEndpointMap{ "key": ProxyEndpointArgs{...} }

type ProxyEndpointMapOutput

type ProxyEndpointMapOutput struct{ *pulumi.OutputState }

func (ProxyEndpointMapOutput) ElementType

func (ProxyEndpointMapOutput) ElementType() reflect.Type

func (ProxyEndpointMapOutput) MapIndex

func (ProxyEndpointMapOutput) ToProxyEndpointMapOutput

func (o ProxyEndpointMapOutput) ToProxyEndpointMapOutput() ProxyEndpointMapOutput

func (ProxyEndpointMapOutput) ToProxyEndpointMapOutputWithContext

func (o ProxyEndpointMapOutput) ToProxyEndpointMapOutputWithContext(ctx context.Context) ProxyEndpointMapOutput

type ProxyEndpointOutput

type ProxyEndpointOutput struct{ *pulumi.OutputState }

func (ProxyEndpointOutput) Arn

The Amazon Resource Name (ARN) for the proxy endpoint.

func (ProxyEndpointOutput) DbProxyEndpointName

func (o ProxyEndpointOutput) DbProxyEndpointName() pulumi.StringOutput

The identifier for the proxy endpoint. 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.

func (ProxyEndpointOutput) DbProxyName

func (o ProxyEndpointOutput) DbProxyName() pulumi.StringOutput

The name of the DB proxy associated with the DB proxy endpoint that you create.

func (ProxyEndpointOutput) ElementType

func (ProxyEndpointOutput) ElementType() reflect.Type

func (ProxyEndpointOutput) Endpoint

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.

func (ProxyEndpointOutput) IsDefault

func (o ProxyEndpointOutput) IsDefault() pulumi.BoolOutput

Indicates whether this endpoint is the default endpoint for the associated DB proxy.

func (ProxyEndpointOutput) Tags

A mapping of tags to assign to the resource.

func (ProxyEndpointOutput) TagsAll deprecated

Deprecated: Please use `tags` instead.

func (ProxyEndpointOutput) TargetRole

Indicates whether the DB proxy endpoint can be used for read/write or read-only operations. The default is `READ_WRITE`. Valid values are `READ_WRITE` and `READ_ONLY`.

func (ProxyEndpointOutput) ToProxyEndpointOutput

func (o ProxyEndpointOutput) ToProxyEndpointOutput() ProxyEndpointOutput

func (ProxyEndpointOutput) ToProxyEndpointOutputWithContext

func (o ProxyEndpointOutput) ToProxyEndpointOutputWithContext(ctx context.Context) ProxyEndpointOutput

func (ProxyEndpointOutput) VpcId

The VPC ID of the DB proxy endpoint.

func (ProxyEndpointOutput) VpcSecurityGroupIds

func (o ProxyEndpointOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

One or more VPC security group IDs to associate with the new proxy.

func (ProxyEndpointOutput) VpcSubnetIds

func (o ProxyEndpointOutput) VpcSubnetIds() pulumi.StringArrayOutput

One or more VPC subnet IDs to associate with the new proxy.

type ProxyEndpointState

type ProxyEndpointState struct {
	// The Amazon Resource Name (ARN) for the proxy endpoint.
	Arn pulumi.StringPtrInput
	// The identifier for the proxy endpoint. 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.
	DbProxyEndpointName pulumi.StringPtrInput
	// The name of the DB proxy associated with the DB proxy endpoint that you create.
	DbProxyName pulumi.StringPtrInput
	// 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
	// Indicates whether this endpoint is the default endpoint for the associated DB proxy.
	IsDefault pulumi.BoolPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Indicates whether the DB proxy endpoint can be used for read/write or read-only operations. The default is `READ_WRITE`. Valid values are `READ_WRITE` and `READ_ONLY`.
	TargetRole pulumi.StringPtrInput
	// The VPC ID of the DB proxy endpoint.
	VpcId pulumi.StringPtrInput
	// 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 (ProxyEndpointState) ElementType

func (ProxyEndpointState) ElementType() reflect.Type

type ProxyInput

type ProxyInput interface {
	pulumi.Input

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

type ProxyMap

type ProxyMap map[string]ProxyInput

func (ProxyMap) ElementType

func (ProxyMap) ElementType() reflect.Type

func (ProxyMap) ToProxyMapOutput

func (i ProxyMap) ToProxyMapOutput() ProxyMapOutput

func (ProxyMap) ToProxyMapOutputWithContext

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

type ProxyMapInput

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

type ProxyMapOutput struct{ *pulumi.OutputState }

func (ProxyMapOutput) ElementType

func (ProxyMapOutput) ElementType() reflect.Type

func (ProxyMapOutput) MapIndex

func (ProxyMapOutput) ToProxyMapOutput

func (o ProxyMapOutput) ToProxyMapOutput() ProxyMapOutput

func (ProxyMapOutput) ToProxyMapOutputWithContext

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

type ProxyOutput

type ProxyOutput struct{ *pulumi.OutputState }

func (ProxyOutput) Arn

The Amazon Resource Name (ARN) for the proxy.

func (ProxyOutput) Auths

Configuration block(s) with authorization mechanisms to connect to the associated instances or clusters. Described below.

func (ProxyOutput) DebugLogging

func (o ProxyOutput) DebugLogging() pulumi.BoolPtrOutput

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.

func (ProxyOutput) ElementType

func (ProxyOutput) ElementType() reflect.Type

func (ProxyOutput) Endpoint

func (o ProxyOutput) Endpoint() pulumi.StringOutput

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.

func (ProxyOutput) EngineFamily

func (o ProxyOutput) EngineFamily() pulumi.StringOutput

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. For Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases, specify `MYSQL`. For Aurora PostgreSQL and RDS for PostgreSQL databases, specify `POSTGRESQL`. For RDS for Microsoft SQL Server, specify `SQLSERVER`. Valid values are `MYSQL`, `POSTGRESQL`, and `SQLSERVER`.

func (ProxyOutput) IdleClientTimeout

func (o ProxyOutput) IdleClientTimeout() pulumi.IntOutput

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.

func (ProxyOutput) Name

func (o ProxyOutput) Name() pulumi.StringOutput

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.

func (ProxyOutput) RequireTls

func (o ProxyOutput) RequireTls() pulumi.BoolPtrOutput

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.

func (ProxyOutput) RoleArn

func (o ProxyOutput) RoleArn() pulumi.StringOutput

The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in AWS Secrets Manager.

func (ProxyOutput) Tags

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

func (ProxyOutput) TagsAll deprecated

func (o ProxyOutput) TagsAll() pulumi.StringMapOutput

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

Deprecated: Please use `tags` instead.

func (ProxyOutput) ToProxyOutput

func (o ProxyOutput) ToProxyOutput() ProxyOutput

func (ProxyOutput) ToProxyOutputWithContext

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

func (ProxyOutput) VpcSecurityGroupIds

func (o ProxyOutput) VpcSecurityGroupIds() pulumi.StringArrayOutput

One or more VPC security group IDs to associate with the new proxy.

func (ProxyOutput) VpcSubnetIds

func (o ProxyOutput) VpcSubnetIds() pulumi.StringArrayOutput

One or more VPC subnet IDs to associate with the new proxy.

type ProxyState

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. For Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases, specify `MYSQL`. For Aurora PostgreSQL and RDS for PostgreSQL databases, specify `POSTGRESQL`. For RDS for Microsoft SQL Server, specify `SQLSERVER`. Valid values are `MYSQL`, `POSTGRESQL`, and `SQLSERVER`.
	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. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll 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

func (ProxyState) ElementType() reflect.Type

type ProxyTarget

type ProxyTarget struct {
	pulumi.CustomResourceState

	// DB cluster identifier.
	//
	// **NOTE:** Either `dbInstanceIdentifier` or `dbClusterIdentifier` should be specified and both should not be specified together
	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 targetE.g., `RDS_INSTANCE` or `TRACKED_CLUSTER`
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides an RDS DB proxy target resource.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleProxy, err := rds.NewProxy(ctx, "exampleProxy", &rds.ProxyArgs{
			DebugLogging:      pulumi.Bool(false),
			EngineFamily:      pulumi.String("MYSQL"),
			IdleClientTimeout: pulumi.Int(1800),
			RequireTls:        pulumi.Bool(true),
			RoleArn:           pulumi.Any(aws_iam_role.Example.Arn),
			VpcSecurityGroupIds: pulumi.StringArray{
				aws_security_group.Example.Id,
			},
			VpcSubnetIds: pulumi.StringArray{
				aws_subnet.Example.Id,
			},
			Auths: rds.ProxyAuthArray{
				&rds.ProxyAuthArgs{
					AuthScheme:  pulumi.String("SECRETS"),
					Description: pulumi.String("example"),
					IamAuth:     pulumi.String("DISABLED"),
					SecretArn:   pulumi.Any(aws_secretsmanager_secret.Example.Arn),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		exampleProxyDefaultTargetGroup, err := rds.NewProxyDefaultTargetGroup(ctx, "exampleProxyDefaultTargetGroup", &rds.ProxyDefaultTargetGroupArgs{
			DbProxyName: exampleProxy.Name,
			ConnectionPoolConfig: &rds.ProxyDefaultTargetGroupConnectionPoolConfigArgs{
				ConnectionBorrowTimeout:   pulumi.Int(120),
				InitQuery:                 pulumi.String("SET x=1, y=2"),
				MaxConnectionsPercent:     pulumi.Int(100),
				MaxIdleConnectionsPercent: pulumi.Int(50),
				SessionPinningFilters: pulumi.StringArray{
					pulumi.String("EXCLUDE_VARIABLE_SETS"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewProxyTarget(ctx, "exampleProxyTarget", &rds.ProxyTargetArgs{
			DbInstanceIdentifier: pulumi.Any(aws_db_instance.Example.Identifier),
			DbProxyName:          exampleProxy.Name,
			TargetGroupName:      exampleProxyDefaultTargetGroup.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Provisioned Clusters:

__Using `pulumi import` to import__ RDS DB Proxy Targets using the `db_proxy_name`, `target_group_name`, target type (such as `RDS_INSTANCE` or `TRACKED_CLUSTER`), and resource identifier separated by forward slashes (`/`). For example:

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

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

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

func (*ProxyTarget) ElementType() reflect.Type

func (*ProxyTarget) ToProxyTargetOutput

func (i *ProxyTarget) ToProxyTargetOutput() ProxyTargetOutput

func (*ProxyTarget) ToProxyTargetOutputWithContext

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

type ProxyTargetArgs

type ProxyTargetArgs struct {
	// DB cluster identifier.
	//
	// **NOTE:** Either `dbInstanceIdentifier` or `dbClusterIdentifier` should be specified and both should not be specified together
	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

func (ProxyTargetArgs) ElementType() reflect.Type

type ProxyTargetArray

type ProxyTargetArray []ProxyTargetInput

func (ProxyTargetArray) ElementType

func (ProxyTargetArray) ElementType() reflect.Type

func (ProxyTargetArray) ToProxyTargetArrayOutput

func (i ProxyTargetArray) ToProxyTargetArrayOutput() ProxyTargetArrayOutput

func (ProxyTargetArray) ToProxyTargetArrayOutputWithContext

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

type ProxyTargetArrayInput

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

type ProxyTargetArrayOutput struct{ *pulumi.OutputState }

func (ProxyTargetArrayOutput) ElementType

func (ProxyTargetArrayOutput) ElementType() reflect.Type

func (ProxyTargetArrayOutput) Index

func (ProxyTargetArrayOutput) ToProxyTargetArrayOutput

func (o ProxyTargetArrayOutput) ToProxyTargetArrayOutput() ProxyTargetArrayOutput

func (ProxyTargetArrayOutput) ToProxyTargetArrayOutputWithContext

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

type ProxyTargetInput

type ProxyTargetInput interface {
	pulumi.Input

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

type ProxyTargetMap

type ProxyTargetMap map[string]ProxyTargetInput

func (ProxyTargetMap) ElementType

func (ProxyTargetMap) ElementType() reflect.Type

func (ProxyTargetMap) ToProxyTargetMapOutput

func (i ProxyTargetMap) ToProxyTargetMapOutput() ProxyTargetMapOutput

func (ProxyTargetMap) ToProxyTargetMapOutputWithContext

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

type ProxyTargetMapInput

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

type ProxyTargetMapOutput struct{ *pulumi.OutputState }

func (ProxyTargetMapOutput) ElementType

func (ProxyTargetMapOutput) ElementType() reflect.Type

func (ProxyTargetMapOutput) MapIndex

func (ProxyTargetMapOutput) ToProxyTargetMapOutput

func (o ProxyTargetMapOutput) ToProxyTargetMapOutput() ProxyTargetMapOutput

func (ProxyTargetMapOutput) ToProxyTargetMapOutputWithContext

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

type ProxyTargetOutput

type ProxyTargetOutput struct{ *pulumi.OutputState }

func (ProxyTargetOutput) DbClusterIdentifier

func (o ProxyTargetOutput) DbClusterIdentifier() pulumi.StringPtrOutput

DB cluster identifier.

**NOTE:** Either `dbInstanceIdentifier` or `dbClusterIdentifier` should be specified and both should not be specified together

func (ProxyTargetOutput) DbInstanceIdentifier

func (o ProxyTargetOutput) DbInstanceIdentifier() pulumi.StringPtrOutput

DB instance identifier.

func (ProxyTargetOutput) DbProxyName

func (o ProxyTargetOutput) DbProxyName() pulumi.StringOutput

The name of the DB proxy.

func (ProxyTargetOutput) ElementType

func (ProxyTargetOutput) ElementType() reflect.Type

func (ProxyTargetOutput) Endpoint

func (o ProxyTargetOutput) Endpoint() pulumi.StringOutput

Hostname for the target RDS DB Instance. Only returned for `RDS_INSTANCE` type.

func (ProxyTargetOutput) Port

Port for the target RDS DB Instance or Aurora DB Cluster.

func (ProxyTargetOutput) RdsResourceId

func (o ProxyTargetOutput) RdsResourceId() pulumi.StringOutput

Identifier representing the DB Instance or DB Cluster target.

func (ProxyTargetOutput) TargetArn

func (o ProxyTargetOutput) TargetArn() pulumi.StringOutput

Amazon Resource Name (ARN) for the DB instance or DB cluster. Currently not returned by the RDS API.

func (ProxyTargetOutput) TargetGroupName

func (o ProxyTargetOutput) TargetGroupName() pulumi.StringOutput

The name of the target group.

func (ProxyTargetOutput) ToProxyTargetOutput

func (o ProxyTargetOutput) ToProxyTargetOutput() ProxyTargetOutput

func (ProxyTargetOutput) ToProxyTargetOutputWithContext

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

func (ProxyTargetOutput) TrackedClusterId

func (o ProxyTargetOutput) TrackedClusterId() pulumi.StringOutput

DB Cluster identifier for the DB Instance target. Not returned unless manually importing an `RDS_INSTANCE` target that is part of a DB Cluster.

func (ProxyTargetOutput) Type

Type of targetE.g., `RDS_INSTANCE` or `TRACKED_CLUSTER`

type ProxyTargetState

type ProxyTargetState struct {
	// DB cluster identifier.
	//
	// **NOTE:** Either `dbInstanceIdentifier` or `dbClusterIdentifier` should be specified and both should not be specified together
	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 targetE.g., `RDS_INSTANCE` or `TRACKED_CLUSTER`
	Type pulumi.StringPtrInput
}

func (ProxyTargetState) ElementType

func (ProxyTargetState) ElementType() reflect.Type

type ReservedInstance

type ReservedInstance struct {
	pulumi.CustomResourceState

	// ARN for the reserved DB instance.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Currency code for the reserved DB instance.
	CurrencyCode pulumi.StringOutput `pulumi:"currencyCode"`
	// DB instance class for the reserved DB instance.
	DbInstanceClass pulumi.StringOutput `pulumi:"dbInstanceClass"`
	// Duration of the reservation in seconds.
	Duration pulumi.IntOutput `pulumi:"duration"`
	// Fixed price charged for this reserved DB instance.
	FixedPrice pulumi.Float64Output `pulumi:"fixedPrice"`
	// Number of instances to reserve. Default value is `1`.
	InstanceCount pulumi.IntPtrOutput `pulumi:"instanceCount"`
	// Unique identifier for the lease associated with the reserved DB instance. Amazon Web Services Support might request the lease ID for an issue related to a reserved DB instance.
	LeaseId pulumi.StringOutput `pulumi:"leaseId"`
	// Whether the reservation applies to Multi-AZ deployments.
	MultiAz pulumi.BoolOutput `pulumi:"multiAz"`
	// ID of the Reserved DB instance offering to purchase. To determine an `offeringId`, see the `rds.getReservedInstanceOffering` data source.
	//
	// The following arguments are optional:
	OfferingId pulumi.StringOutput `pulumi:"offeringId"`
	// Offering type of this reserved DB instance.
	OfferingType pulumi.StringOutput `pulumi:"offeringType"`
	// Description of the reserved DB instance.
	ProductDescription pulumi.StringOutput `pulumi:"productDescription"`
	// Recurring price charged to run this reserved DB instance.
	RecurringCharges ReservedInstanceRecurringChargeArrayOutput `pulumi:"recurringCharges"`
	// Customer-specified identifier to track this reservation.
	ReservationId pulumi.StringPtrOutput `pulumi:"reservationId"`
	// Time the reservation started.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
	// State of the reserved DB instance.
	State pulumi.StringOutput `pulumi:"state"`
	// Map of tags to assign to the DB reservation. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Hourly price charged for this reserved DB instance.
	UsagePrice pulumi.Float64Output `pulumi:"usagePrice"`
}

Manages an RDS DB Reserved Instance.

> **NOTE:** Once created, a reservation is valid for the `duration` of the provided `offeringId` and cannot be deleted. Performing a `destroy` will only remove the resource from state. For more information see [RDS Reserved Instances Documentation](https://aws.amazon.com/rds/reserved-instances/) and [PurchaseReservedDBInstancesOffering](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PurchaseReservedDBInstancesOffering.html).

> **NOTE:** Due to the expense of testing this resource, we provide it as best effort. If you find it useful, and have the ability to help test or notice issues, consider reaching out to us on GitHub.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := rds.GetReservedInstanceOffering(ctx, &rds.GetReservedInstanceOfferingArgs{
			DbInstanceClass:    "db.t2.micro",
			Duration:           31536000,
			MultiAz:            false,
			OfferingType:       "All Upfront",
			ProductDescription: "mysql",
		}, nil)
		if err != nil {
			return err
		}
		_, err = rds.NewReservedInstance(ctx, "example", &rds.ReservedInstanceArgs{
			OfferingId:    *pulumi.String(test.OfferingId),
			ReservationId: pulumi.String("optionalCustomReservationID"),
			InstanceCount: pulumi.Int(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import RDS DB Instance Reservations using the `instance_id`. For example:

```sh

$ pulumi import aws:rds/reservedInstance:ReservedInstance reservation_instance CustomReservationID

```

func GetReservedInstance

func GetReservedInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReservedInstanceState, opts ...pulumi.ResourceOption) (*ReservedInstance, error)

GetReservedInstance gets an existing ReservedInstance 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 NewReservedInstance

func NewReservedInstance(ctx *pulumi.Context,
	name string, args *ReservedInstanceArgs, opts ...pulumi.ResourceOption) (*ReservedInstance, error)

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

func (*ReservedInstance) ElementType

func (*ReservedInstance) ElementType() reflect.Type

func (*ReservedInstance) ToReservedInstanceOutput

func (i *ReservedInstance) ToReservedInstanceOutput() ReservedInstanceOutput

func (*ReservedInstance) ToReservedInstanceOutputWithContext

func (i *ReservedInstance) ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput

type ReservedInstanceArgs

type ReservedInstanceArgs struct {
	// Number of instances to reserve. Default value is `1`.
	InstanceCount pulumi.IntPtrInput
	// ID of the Reserved DB instance offering to purchase. To determine an `offeringId`, see the `rds.getReservedInstanceOffering` data source.
	//
	// The following arguments are optional:
	OfferingId pulumi.StringInput
	// Customer-specified identifier to track this reservation.
	ReservationId pulumi.StringPtrInput
	// Map of tags to assign to the DB reservation. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ReservedInstance resource.

func (ReservedInstanceArgs) ElementType

func (ReservedInstanceArgs) ElementType() reflect.Type

type ReservedInstanceArray

type ReservedInstanceArray []ReservedInstanceInput

func (ReservedInstanceArray) ElementType

func (ReservedInstanceArray) ElementType() reflect.Type

func (ReservedInstanceArray) ToReservedInstanceArrayOutput

func (i ReservedInstanceArray) ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput

func (ReservedInstanceArray) ToReservedInstanceArrayOutputWithContext

func (i ReservedInstanceArray) ToReservedInstanceArrayOutputWithContext(ctx context.Context) ReservedInstanceArrayOutput

type ReservedInstanceArrayInput

type ReservedInstanceArrayInput interface {
	pulumi.Input

	ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput
	ToReservedInstanceArrayOutputWithContext(context.Context) ReservedInstanceArrayOutput
}

ReservedInstanceArrayInput is an input type that accepts ReservedInstanceArray and ReservedInstanceArrayOutput values. You can construct a concrete instance of `ReservedInstanceArrayInput` via:

ReservedInstanceArray{ ReservedInstanceArgs{...} }

type ReservedInstanceArrayOutput

type ReservedInstanceArrayOutput struct{ *pulumi.OutputState }

func (ReservedInstanceArrayOutput) ElementType

func (ReservedInstanceArrayOutput) Index

func (ReservedInstanceArrayOutput) ToReservedInstanceArrayOutput

func (o ReservedInstanceArrayOutput) ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput

func (ReservedInstanceArrayOutput) ToReservedInstanceArrayOutputWithContext

func (o ReservedInstanceArrayOutput) ToReservedInstanceArrayOutputWithContext(ctx context.Context) ReservedInstanceArrayOutput

type ReservedInstanceInput

type ReservedInstanceInput interface {
	pulumi.Input

	ToReservedInstanceOutput() ReservedInstanceOutput
	ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput
}

type ReservedInstanceMap

type ReservedInstanceMap map[string]ReservedInstanceInput

func (ReservedInstanceMap) ElementType

func (ReservedInstanceMap) ElementType() reflect.Type

func (ReservedInstanceMap) ToReservedInstanceMapOutput

func (i ReservedInstanceMap) ToReservedInstanceMapOutput() ReservedInstanceMapOutput

func (ReservedInstanceMap) ToReservedInstanceMapOutputWithContext

func (i ReservedInstanceMap) ToReservedInstanceMapOutputWithContext(ctx context.Context) ReservedInstanceMapOutput

type ReservedInstanceMapInput

type ReservedInstanceMapInput interface {
	pulumi.Input

	ToReservedInstanceMapOutput() ReservedInstanceMapOutput
	ToReservedInstanceMapOutputWithContext(context.Context) ReservedInstanceMapOutput
}

ReservedInstanceMapInput is an input type that accepts ReservedInstanceMap and ReservedInstanceMapOutput values. You can construct a concrete instance of `ReservedInstanceMapInput` via:

ReservedInstanceMap{ "key": ReservedInstanceArgs{...} }

type ReservedInstanceMapOutput

type ReservedInstanceMapOutput struct{ *pulumi.OutputState }

func (ReservedInstanceMapOutput) ElementType

func (ReservedInstanceMapOutput) ElementType() reflect.Type

func (ReservedInstanceMapOutput) MapIndex

func (ReservedInstanceMapOutput) ToReservedInstanceMapOutput

func (o ReservedInstanceMapOutput) ToReservedInstanceMapOutput() ReservedInstanceMapOutput

func (ReservedInstanceMapOutput) ToReservedInstanceMapOutputWithContext

func (o ReservedInstanceMapOutput) ToReservedInstanceMapOutputWithContext(ctx context.Context) ReservedInstanceMapOutput

type ReservedInstanceOutput

type ReservedInstanceOutput struct{ *pulumi.OutputState }

func (ReservedInstanceOutput) Arn

ARN for the reserved DB instance.

func (ReservedInstanceOutput) CurrencyCode

func (o ReservedInstanceOutput) CurrencyCode() pulumi.StringOutput

Currency code for the reserved DB instance.

func (ReservedInstanceOutput) DbInstanceClass

func (o ReservedInstanceOutput) DbInstanceClass() pulumi.StringOutput

DB instance class for the reserved DB instance.

func (ReservedInstanceOutput) Duration

Duration of the reservation in seconds.

func (ReservedInstanceOutput) ElementType

func (ReservedInstanceOutput) ElementType() reflect.Type

func (ReservedInstanceOutput) FixedPrice

Fixed price charged for this reserved DB instance.

func (ReservedInstanceOutput) InstanceCount

func (o ReservedInstanceOutput) InstanceCount() pulumi.IntPtrOutput

Number of instances to reserve. Default value is `1`.

func (ReservedInstanceOutput) LeaseId

Unique identifier for the lease associated with the reserved DB instance. Amazon Web Services Support might request the lease ID for an issue related to a reserved DB instance.

func (ReservedInstanceOutput) MultiAz

Whether the reservation applies to Multi-AZ deployments.

func (ReservedInstanceOutput) OfferingId

ID of the Reserved DB instance offering to purchase. To determine an `offeringId`, see the `rds.getReservedInstanceOffering` data source.

The following arguments are optional:

func (ReservedInstanceOutput) OfferingType

func (o ReservedInstanceOutput) OfferingType() pulumi.StringOutput

Offering type of this reserved DB instance.

func (ReservedInstanceOutput) ProductDescription

func (o ReservedInstanceOutput) ProductDescription() pulumi.StringOutput

Description of the reserved DB instance.

func (ReservedInstanceOutput) RecurringCharges

Recurring price charged to run this reserved DB instance.

func (ReservedInstanceOutput) ReservationId

func (o ReservedInstanceOutput) ReservationId() pulumi.StringPtrOutput

Customer-specified identifier to track this reservation.

func (ReservedInstanceOutput) StartTime

Time the reservation started.

func (ReservedInstanceOutput) State

State of the reserved DB instance.

func (ReservedInstanceOutput) Tags

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

func (ReservedInstanceOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (ReservedInstanceOutput) ToReservedInstanceOutput

func (o ReservedInstanceOutput) ToReservedInstanceOutput() ReservedInstanceOutput

func (ReservedInstanceOutput) ToReservedInstanceOutputWithContext

func (o ReservedInstanceOutput) ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput

func (ReservedInstanceOutput) UsagePrice

Hourly price charged for this reserved DB instance.

type ReservedInstanceRecurringCharge

type ReservedInstanceRecurringCharge struct {
	RecurringChargeAmount    *int    `pulumi:"recurringChargeAmount"`
	RecurringChargeFrequency *string `pulumi:"recurringChargeFrequency"`
}

type ReservedInstanceRecurringChargeArgs

type ReservedInstanceRecurringChargeArgs struct {
	RecurringChargeAmount    pulumi.IntPtrInput    `pulumi:"recurringChargeAmount"`
	RecurringChargeFrequency pulumi.StringPtrInput `pulumi:"recurringChargeFrequency"`
}

func (ReservedInstanceRecurringChargeArgs) ElementType

func (ReservedInstanceRecurringChargeArgs) ToReservedInstanceRecurringChargeOutput

func (i ReservedInstanceRecurringChargeArgs) ToReservedInstanceRecurringChargeOutput() ReservedInstanceRecurringChargeOutput

func (ReservedInstanceRecurringChargeArgs) ToReservedInstanceRecurringChargeOutputWithContext

func (i ReservedInstanceRecurringChargeArgs) ToReservedInstanceRecurringChargeOutputWithContext(ctx context.Context) ReservedInstanceRecurringChargeOutput

type ReservedInstanceRecurringChargeArray

type ReservedInstanceRecurringChargeArray []ReservedInstanceRecurringChargeInput

func (ReservedInstanceRecurringChargeArray) ElementType

func (ReservedInstanceRecurringChargeArray) ToReservedInstanceRecurringChargeArrayOutput

func (i ReservedInstanceRecurringChargeArray) ToReservedInstanceRecurringChargeArrayOutput() ReservedInstanceRecurringChargeArrayOutput

func (ReservedInstanceRecurringChargeArray) ToReservedInstanceRecurringChargeArrayOutputWithContext

func (i ReservedInstanceRecurringChargeArray) ToReservedInstanceRecurringChargeArrayOutputWithContext(ctx context.Context) ReservedInstanceRecurringChargeArrayOutput

type ReservedInstanceRecurringChargeArrayInput

type ReservedInstanceRecurringChargeArrayInput interface {
	pulumi.Input

	ToReservedInstanceRecurringChargeArrayOutput() ReservedInstanceRecurringChargeArrayOutput
	ToReservedInstanceRecurringChargeArrayOutputWithContext(context.Context) ReservedInstanceRecurringChargeArrayOutput
}

ReservedInstanceRecurringChargeArrayInput is an input type that accepts ReservedInstanceRecurringChargeArray and ReservedInstanceRecurringChargeArrayOutput values. You can construct a concrete instance of `ReservedInstanceRecurringChargeArrayInput` via:

ReservedInstanceRecurringChargeArray{ ReservedInstanceRecurringChargeArgs{...} }

type ReservedInstanceRecurringChargeArrayOutput

type ReservedInstanceRecurringChargeArrayOutput struct{ *pulumi.OutputState }

func (ReservedInstanceRecurringChargeArrayOutput) ElementType

func (ReservedInstanceRecurringChargeArrayOutput) Index

func (ReservedInstanceRecurringChargeArrayOutput) ToReservedInstanceRecurringChargeArrayOutput

func (o ReservedInstanceRecurringChargeArrayOutput) ToReservedInstanceRecurringChargeArrayOutput() ReservedInstanceRecurringChargeArrayOutput

func (ReservedInstanceRecurringChargeArrayOutput) ToReservedInstanceRecurringChargeArrayOutputWithContext

func (o ReservedInstanceRecurringChargeArrayOutput) ToReservedInstanceRecurringChargeArrayOutputWithContext(ctx context.Context) ReservedInstanceRecurringChargeArrayOutput

type ReservedInstanceRecurringChargeInput

type ReservedInstanceRecurringChargeInput interface {
	pulumi.Input

	ToReservedInstanceRecurringChargeOutput() ReservedInstanceRecurringChargeOutput
	ToReservedInstanceRecurringChargeOutputWithContext(context.Context) ReservedInstanceRecurringChargeOutput
}

ReservedInstanceRecurringChargeInput is an input type that accepts ReservedInstanceRecurringChargeArgs and ReservedInstanceRecurringChargeOutput values. You can construct a concrete instance of `ReservedInstanceRecurringChargeInput` via:

ReservedInstanceRecurringChargeArgs{...}

type ReservedInstanceRecurringChargeOutput

type ReservedInstanceRecurringChargeOutput struct{ *pulumi.OutputState }

func (ReservedInstanceRecurringChargeOutput) ElementType

func (ReservedInstanceRecurringChargeOutput) RecurringChargeAmount

func (o ReservedInstanceRecurringChargeOutput) RecurringChargeAmount() pulumi.IntPtrOutput

func (ReservedInstanceRecurringChargeOutput) RecurringChargeFrequency

func (o ReservedInstanceRecurringChargeOutput) RecurringChargeFrequency() pulumi.StringPtrOutput

func (ReservedInstanceRecurringChargeOutput) ToReservedInstanceRecurringChargeOutput

func (o ReservedInstanceRecurringChargeOutput) ToReservedInstanceRecurringChargeOutput() ReservedInstanceRecurringChargeOutput

func (ReservedInstanceRecurringChargeOutput) ToReservedInstanceRecurringChargeOutputWithContext

func (o ReservedInstanceRecurringChargeOutput) ToReservedInstanceRecurringChargeOutputWithContext(ctx context.Context) ReservedInstanceRecurringChargeOutput

type ReservedInstanceState

type ReservedInstanceState struct {
	// ARN for the reserved DB instance.
	Arn pulumi.StringPtrInput
	// Currency code for the reserved DB instance.
	CurrencyCode pulumi.StringPtrInput
	// DB instance class for the reserved DB instance.
	DbInstanceClass pulumi.StringPtrInput
	// Duration of the reservation in seconds.
	Duration pulumi.IntPtrInput
	// Fixed price charged for this reserved DB instance.
	FixedPrice pulumi.Float64PtrInput
	// Number of instances to reserve. Default value is `1`.
	InstanceCount pulumi.IntPtrInput
	// Unique identifier for the lease associated with the reserved DB instance. Amazon Web Services Support might request the lease ID for an issue related to a reserved DB instance.
	LeaseId pulumi.StringPtrInput
	// Whether the reservation applies to Multi-AZ deployments.
	MultiAz pulumi.BoolPtrInput
	// ID of the Reserved DB instance offering to purchase. To determine an `offeringId`, see the `rds.getReservedInstanceOffering` data source.
	//
	// The following arguments are optional:
	OfferingId pulumi.StringPtrInput
	// Offering type of this reserved DB instance.
	OfferingType pulumi.StringPtrInput
	// Description of the reserved DB instance.
	ProductDescription pulumi.StringPtrInput
	// Recurring price charged to run this reserved DB instance.
	RecurringCharges ReservedInstanceRecurringChargeArrayInput
	// Customer-specified identifier to track this reservation.
	ReservationId pulumi.StringPtrInput
	// Time the reservation started.
	StartTime pulumi.StringPtrInput
	// State of the reserved DB instance.
	State pulumi.StringPtrInput
	// Map of tags to assign to the DB reservation. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Hourly price charged for this reserved DB instance.
	UsagePrice pulumi.Float64PtrInput
}

func (ReservedInstanceState) ElementType

func (ReservedInstanceState) 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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.Identifier),
			FeatureName:          pulumi.String("S3_INTEGRATION"),
			RoleArn:              pulumi.Any(aws_iam_role.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_db_instance_role_association` using the DB Instance Identifier and IAM Role ARN separated by a comma (`,`). For example:

```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

func (*RoleAssociation) ElementType() reflect.Type

func (*RoleAssociation) ToRoleAssociationOutput

func (i *RoleAssociation) ToRoleAssociationOutput() RoleAssociationOutput

func (*RoleAssociation) ToRoleAssociationOutputWithContext

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

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

type RoleAssociationArray []RoleAssociationInput

func (RoleAssociationArray) ElementType

func (RoleAssociationArray) ElementType() reflect.Type

func (RoleAssociationArray) ToRoleAssociationArrayOutput

func (i RoleAssociationArray) ToRoleAssociationArrayOutput() RoleAssociationArrayOutput

func (RoleAssociationArray) ToRoleAssociationArrayOutputWithContext

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

type RoleAssociationArrayInput

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

type RoleAssociationArrayOutput struct{ *pulumi.OutputState }

func (RoleAssociationArrayOutput) ElementType

func (RoleAssociationArrayOutput) ElementType() reflect.Type

func (RoleAssociationArrayOutput) Index

func (RoleAssociationArrayOutput) ToRoleAssociationArrayOutput

func (o RoleAssociationArrayOutput) ToRoleAssociationArrayOutput() RoleAssociationArrayOutput

func (RoleAssociationArrayOutput) ToRoleAssociationArrayOutputWithContext

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

type RoleAssociationInput

type RoleAssociationInput interface {
	pulumi.Input

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

type RoleAssociationMap

type RoleAssociationMap map[string]RoleAssociationInput

func (RoleAssociationMap) ElementType

func (RoleAssociationMap) ElementType() reflect.Type

func (RoleAssociationMap) ToRoleAssociationMapOutput

func (i RoleAssociationMap) ToRoleAssociationMapOutput() RoleAssociationMapOutput

func (RoleAssociationMap) ToRoleAssociationMapOutputWithContext

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

type RoleAssociationMapInput

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

type RoleAssociationMapOutput struct{ *pulumi.OutputState }

func (RoleAssociationMapOutput) ElementType

func (RoleAssociationMapOutput) ElementType() reflect.Type

func (RoleAssociationMapOutput) MapIndex

func (RoleAssociationMapOutput) ToRoleAssociationMapOutput

func (o RoleAssociationMapOutput) ToRoleAssociationMapOutput() RoleAssociationMapOutput

func (RoleAssociationMapOutput) ToRoleAssociationMapOutputWithContext

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

type RoleAssociationOutput

type RoleAssociationOutput struct{ *pulumi.OutputState }

func (RoleAssociationOutput) DbInstanceIdentifier

func (o RoleAssociationOutput) DbInstanceIdentifier() pulumi.StringOutput

DB Instance Identifier to associate with the IAM Role.

func (RoleAssociationOutput) ElementType

func (RoleAssociationOutput) ElementType() reflect.Type

func (RoleAssociationOutput) FeatureName

func (o RoleAssociationOutput) FeatureName() pulumi.StringOutput

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).

func (RoleAssociationOutput) RoleArn

Amazon Resource Name (ARN) of the IAM Role to associate with the DB Instance.

func (RoleAssociationOutput) ToRoleAssociationOutput

func (o RoleAssociationOutput) ToRoleAssociationOutput() RoleAssociationOutput

func (RoleAssociationOutput) ToRoleAssociationOutputWithContext

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

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 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"`
	// List of AWS Account ids to share snapshot with, use `all` to make snaphot public.
	SharedAccounts pulumi.StringArrayOutput `pulumi:"sharedAccounts"`
	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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Provides the VPC ID associated with the 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/v6/go/aws/rds"
"github.com/pulumi/pulumi/sdk/v3/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"),
			DbName:                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.Identifier,
			DbSnapshotIdentifier: pulumi.String("testsnapshot1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_db_snapshot` using the snapshot identifier. For example:

```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

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext

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

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
	// List of AWS Account ids to share snapshot with, use `all` to make snaphot public.
	SharedAccounts pulumi.StringArrayInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext

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

type SnapshotArrayInput

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

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index

func (SnapshotArrayOutput) ToSnapshotArrayOutput

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext

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

type SnapshotCopy

type SnapshotCopy 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"`
	// Whether to copy existing tags. Defaults to `false`.
	CopyTags pulumi.BoolPtrOutput `pulumi:"copyTags"`
	// The Amazon Resource Name (ARN) for the DB snapshot.
	DbSnapshotArn pulumi.StringOutput `pulumi:"dbSnapshotArn"`
	// The Destination region to place snapshot copy.
	DestinationRegion pulumi.StringPtrOutput `pulumi:"destinationRegion"`
	// 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"`
	// KMS key ID.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// License model information for the restored DB instance.
	LicenseModel pulumi.StringOutput `pulumi:"licenseModel"`
	// The name of an option group to associate with the copy of the snapshot.
	OptionGroupName pulumi.StringOutput `pulumi:"optionGroupName"`
	Port            pulumi.IntOutput    `pulumi:"port"`
	// he URL that contains a Signature Version 4 signed request.
	PresignedUrl pulumi.StringPtrOutput `pulumi:"presignedUrl"`
	SnapshotType pulumi.StringOutput    `pulumi:"snapshotType"`
	// Snapshot identifier of the source snapshot.
	SourceDbSnapshotIdentifier pulumi.StringOutput `pulumi:"sourceDbSnapshotIdentifier"`
	// The region that the DB snapshot was created in or copied from.
	SourceRegion pulumi.StringOutput `pulumi:"sourceRegion"`
	// Specifies the storage type associated with DB snapshot.
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The external custom Availability Zone.
	TargetCustomAvailabilityZone pulumi.StringPtrOutput `pulumi:"targetCustomAvailabilityZone"`
	// The Identifier for the snapshot.
	TargetDbSnapshotIdentifier pulumi.StringOutput `pulumi:"targetDbSnapshotIdentifier"`
	// Provides the VPC ID associated with the DB snapshot.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleInstance, err := rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			AllocatedStorage:      pulumi.Int(10),
			Engine:                pulumi.String("mysql"),
			EngineVersion:         pulumi.String("5.6.21"),
			InstanceClass:         pulumi.String("db.t2.micro"),
			DbName:                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
		}
		exampleSnapshot, err := rds.NewSnapshot(ctx, "exampleSnapshot", &rds.SnapshotArgs{
			DbInstanceIdentifier: exampleInstance.Identifier,
			DbSnapshotIdentifier: pulumi.String("testsnapshot1234"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewSnapshotCopy(ctx, "exampleSnapshotCopy", &rds.SnapshotCopyArgs{
			SourceDbSnapshotIdentifier: exampleSnapshot.DbSnapshotArn,
			TargetDbSnapshotIdentifier: pulumi.String("testsnapshot1234-copy"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_db_snapshot_copy` using the snapshot identifier. For example:

```sh

$ pulumi import aws:rds/snapshotCopy:SnapshotCopy example my-snapshot

```

func GetSnapshotCopy

func GetSnapshotCopy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotCopyState, opts ...pulumi.ResourceOption) (*SnapshotCopy, error)

GetSnapshotCopy gets an existing SnapshotCopy 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 NewSnapshotCopy

func NewSnapshotCopy(ctx *pulumi.Context,
	name string, args *SnapshotCopyArgs, opts ...pulumi.ResourceOption) (*SnapshotCopy, error)

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

func (*SnapshotCopy) ElementType

func (*SnapshotCopy) ElementType() reflect.Type

func (*SnapshotCopy) ToSnapshotCopyOutput

func (i *SnapshotCopy) ToSnapshotCopyOutput() SnapshotCopyOutput

func (*SnapshotCopy) ToSnapshotCopyOutputWithContext

func (i *SnapshotCopy) ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput

type SnapshotCopyArgs

type SnapshotCopyArgs struct {
	// Whether to copy existing tags. Defaults to `false`.
	CopyTags pulumi.BoolPtrInput
	// The Destination region to place snapshot copy.
	DestinationRegion pulumi.StringPtrInput
	// KMS key ID.
	KmsKeyId pulumi.StringPtrInput
	// The name of an option group to associate with the copy of the snapshot.
	OptionGroupName pulumi.StringPtrInput
	// he URL that contains a Signature Version 4 signed request.
	PresignedUrl pulumi.StringPtrInput
	// Snapshot identifier of the source snapshot.
	SourceDbSnapshotIdentifier pulumi.StringInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The external custom Availability Zone.
	TargetCustomAvailabilityZone pulumi.StringPtrInput
	// The Identifier for the snapshot.
	TargetDbSnapshotIdentifier pulumi.StringInput
}

The set of arguments for constructing a SnapshotCopy resource.

func (SnapshotCopyArgs) ElementType

func (SnapshotCopyArgs) ElementType() reflect.Type

type SnapshotCopyArray

type SnapshotCopyArray []SnapshotCopyInput

func (SnapshotCopyArray) ElementType

func (SnapshotCopyArray) ElementType() reflect.Type

func (SnapshotCopyArray) ToSnapshotCopyArrayOutput

func (i SnapshotCopyArray) ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput

func (SnapshotCopyArray) ToSnapshotCopyArrayOutputWithContext

func (i SnapshotCopyArray) ToSnapshotCopyArrayOutputWithContext(ctx context.Context) SnapshotCopyArrayOutput

type SnapshotCopyArrayInput

type SnapshotCopyArrayInput interface {
	pulumi.Input

	ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput
	ToSnapshotCopyArrayOutputWithContext(context.Context) SnapshotCopyArrayOutput
}

SnapshotCopyArrayInput is an input type that accepts SnapshotCopyArray and SnapshotCopyArrayOutput values. You can construct a concrete instance of `SnapshotCopyArrayInput` via:

SnapshotCopyArray{ SnapshotCopyArgs{...} }

type SnapshotCopyArrayOutput

type SnapshotCopyArrayOutput struct{ *pulumi.OutputState }

func (SnapshotCopyArrayOutput) ElementType

func (SnapshotCopyArrayOutput) ElementType() reflect.Type

func (SnapshotCopyArrayOutput) Index

func (SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutput

func (o SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput

func (SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutputWithContext

func (o SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutputWithContext(ctx context.Context) SnapshotCopyArrayOutput

type SnapshotCopyInput

type SnapshotCopyInput interface {
	pulumi.Input

	ToSnapshotCopyOutput() SnapshotCopyOutput
	ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput
}

type SnapshotCopyMap

type SnapshotCopyMap map[string]SnapshotCopyInput

func (SnapshotCopyMap) ElementType

func (SnapshotCopyMap) ElementType() reflect.Type

func (SnapshotCopyMap) ToSnapshotCopyMapOutput

func (i SnapshotCopyMap) ToSnapshotCopyMapOutput() SnapshotCopyMapOutput

func (SnapshotCopyMap) ToSnapshotCopyMapOutputWithContext

func (i SnapshotCopyMap) ToSnapshotCopyMapOutputWithContext(ctx context.Context) SnapshotCopyMapOutput

type SnapshotCopyMapInput

type SnapshotCopyMapInput interface {
	pulumi.Input

	ToSnapshotCopyMapOutput() SnapshotCopyMapOutput
	ToSnapshotCopyMapOutputWithContext(context.Context) SnapshotCopyMapOutput
}

SnapshotCopyMapInput is an input type that accepts SnapshotCopyMap and SnapshotCopyMapOutput values. You can construct a concrete instance of `SnapshotCopyMapInput` via:

SnapshotCopyMap{ "key": SnapshotCopyArgs{...} }

type SnapshotCopyMapOutput

type SnapshotCopyMapOutput struct{ *pulumi.OutputState }

func (SnapshotCopyMapOutput) ElementType

func (SnapshotCopyMapOutput) ElementType() reflect.Type

func (SnapshotCopyMapOutput) MapIndex

func (SnapshotCopyMapOutput) ToSnapshotCopyMapOutput

func (o SnapshotCopyMapOutput) ToSnapshotCopyMapOutput() SnapshotCopyMapOutput

func (SnapshotCopyMapOutput) ToSnapshotCopyMapOutputWithContext

func (o SnapshotCopyMapOutput) ToSnapshotCopyMapOutputWithContext(ctx context.Context) SnapshotCopyMapOutput

type SnapshotCopyOutput

type SnapshotCopyOutput struct{ *pulumi.OutputState }

func (SnapshotCopyOutput) AllocatedStorage

func (o SnapshotCopyOutput) AllocatedStorage() pulumi.IntOutput

Specifies the allocated storage size in gigabytes (GB).

func (SnapshotCopyOutput) AvailabilityZone

func (o SnapshotCopyOutput) AvailabilityZone() pulumi.StringOutput

Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

func (SnapshotCopyOutput) CopyTags

Whether to copy existing tags. Defaults to `false`.

func (SnapshotCopyOutput) DbSnapshotArn

func (o SnapshotCopyOutput) DbSnapshotArn() pulumi.StringOutput

The Amazon Resource Name (ARN) for the DB snapshot.

func (SnapshotCopyOutput) DestinationRegion

func (o SnapshotCopyOutput) DestinationRegion() pulumi.StringPtrOutput

The Destination region to place snapshot copy.

func (SnapshotCopyOutput) ElementType

func (SnapshotCopyOutput) ElementType() reflect.Type

func (SnapshotCopyOutput) Encrypted

func (o SnapshotCopyOutput) Encrypted() pulumi.BoolOutput

Specifies whether the DB snapshot is encrypted.

func (SnapshotCopyOutput) Engine

Specifies the name of the database engine.

func (SnapshotCopyOutput) EngineVersion

func (o SnapshotCopyOutput) EngineVersion() pulumi.StringOutput

Specifies the version of the database engine.

func (SnapshotCopyOutput) Iops

Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

func (SnapshotCopyOutput) KmsKeyId

KMS key ID.

func (SnapshotCopyOutput) LicenseModel

func (o SnapshotCopyOutput) LicenseModel() pulumi.StringOutput

License model information for the restored DB instance.

func (SnapshotCopyOutput) OptionGroupName

func (o SnapshotCopyOutput) OptionGroupName() pulumi.StringOutput

The name of an option group to associate with the copy of the snapshot.

func (SnapshotCopyOutput) Port

func (SnapshotCopyOutput) PresignedUrl

func (o SnapshotCopyOutput) PresignedUrl() pulumi.StringPtrOutput

he URL that contains a Signature Version 4 signed request.

func (SnapshotCopyOutput) SnapshotType

func (o SnapshotCopyOutput) SnapshotType() pulumi.StringOutput

func (SnapshotCopyOutput) SourceDbSnapshotIdentifier

func (o SnapshotCopyOutput) SourceDbSnapshotIdentifier() pulumi.StringOutput

Snapshot identifier of the source snapshot.

func (SnapshotCopyOutput) SourceRegion

func (o SnapshotCopyOutput) SourceRegion() pulumi.StringOutput

The region that the DB snapshot was created in or copied from.

func (SnapshotCopyOutput) StorageType

func (o SnapshotCopyOutput) StorageType() pulumi.StringOutput

Specifies the storage type associated with DB snapshot.

func (SnapshotCopyOutput) Tags

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

func (SnapshotCopyOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (SnapshotCopyOutput) TargetCustomAvailabilityZone

func (o SnapshotCopyOutput) TargetCustomAvailabilityZone() pulumi.StringPtrOutput

The external custom Availability Zone.

func (SnapshotCopyOutput) TargetDbSnapshotIdentifier

func (o SnapshotCopyOutput) TargetDbSnapshotIdentifier() pulumi.StringOutput

The Identifier for the snapshot.

func (SnapshotCopyOutput) ToSnapshotCopyOutput

func (o SnapshotCopyOutput) ToSnapshotCopyOutput() SnapshotCopyOutput

func (SnapshotCopyOutput) ToSnapshotCopyOutputWithContext

func (o SnapshotCopyOutput) ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput

func (SnapshotCopyOutput) VpcId

Provides the VPC ID associated with the DB snapshot.

type SnapshotCopyState

type SnapshotCopyState 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
	// Whether to copy existing tags. Defaults to `false`.
	CopyTags pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) for the DB snapshot.
	DbSnapshotArn pulumi.StringPtrInput
	// The Destination region to place snapshot copy.
	DestinationRegion 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
	// KMS key ID.
	KmsKeyId pulumi.StringPtrInput
	// License model information for the restored DB instance.
	LicenseModel pulumi.StringPtrInput
	// The name of an option group to associate with the copy of the snapshot.
	OptionGroupName pulumi.StringPtrInput
	Port            pulumi.IntPtrInput
	// he URL that contains a Signature Version 4 signed request.
	PresignedUrl pulumi.StringPtrInput
	SnapshotType pulumi.StringPtrInput
	// Snapshot identifier of the source snapshot.
	SourceDbSnapshotIdentifier pulumi.StringPtrInput
	// The region that the DB snapshot was created in or copied from.
	SourceRegion pulumi.StringPtrInput
	// Specifies the storage type associated with DB snapshot.
	StorageType pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The external custom Availability Zone.
	TargetCustomAvailabilityZone pulumi.StringPtrInput
	// The Identifier for the snapshot.
	TargetDbSnapshotIdentifier pulumi.StringPtrInput
	// Provides the VPC ID associated with the DB snapshot.
	VpcId pulumi.StringPtrInput
}

func (SnapshotCopyState) ElementType

func (SnapshotCopyState) ElementType() reflect.Type

type SnapshotInput

type SnapshotInput interface {
	pulumi.Input

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

type SnapshotMap

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext

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

type SnapshotMapInput

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

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex

func (SnapshotMapOutput) ToSnapshotMapOutput

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext

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

type SnapshotOutput

type SnapshotOutput struct{ *pulumi.OutputState }

func (SnapshotOutput) AllocatedStorage

func (o SnapshotOutput) AllocatedStorage() pulumi.IntOutput

Specifies the allocated storage size in gigabytes (GB).

func (SnapshotOutput) AvailabilityZone

func (o SnapshotOutput) AvailabilityZone() pulumi.StringOutput

Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

func (SnapshotOutput) DbInstanceIdentifier

func (o SnapshotOutput) DbInstanceIdentifier() pulumi.StringOutput

The DB Instance Identifier from which to take the snapshot.

func (SnapshotOutput) DbSnapshotArn

func (o SnapshotOutput) DbSnapshotArn() pulumi.StringOutput

The Amazon Resource Name (ARN) for the DB snapshot.

func (SnapshotOutput) DbSnapshotIdentifier

func (o SnapshotOutput) DbSnapshotIdentifier() pulumi.StringOutput

The Identifier for the snapshot.

func (SnapshotOutput) ElementType

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) Encrypted

func (o SnapshotOutput) Encrypted() pulumi.BoolOutput

Specifies whether the DB snapshot is encrypted.

func (SnapshotOutput) Engine

func (o SnapshotOutput) Engine() pulumi.StringOutput

Specifies the name of the database engine.

func (SnapshotOutput) EngineVersion

func (o SnapshotOutput) EngineVersion() pulumi.StringOutput

Specifies the version of the database engine.

func (SnapshotOutput) Iops

func (o SnapshotOutput) Iops() pulumi.IntOutput

Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

func (SnapshotOutput) KmsKeyId

func (o SnapshotOutput) KmsKeyId() pulumi.StringOutput

The ARN for the KMS encryption key.

func (SnapshotOutput) LicenseModel

func (o SnapshotOutput) LicenseModel() pulumi.StringOutput

License model information for the restored DB instance.

func (SnapshotOutput) OptionGroupName

func (o SnapshotOutput) OptionGroupName() pulumi.StringOutput

Provides the option group name for the DB snapshot.

func (SnapshotOutput) Port

func (o SnapshotOutput) Port() pulumi.IntOutput

func (SnapshotOutput) SharedAccounts

func (o SnapshotOutput) SharedAccounts() pulumi.StringArrayOutput

List of AWS Account ids to share snapshot with, use `all` to make snaphot public.

func (SnapshotOutput) SnapshotType

func (o SnapshotOutput) SnapshotType() pulumi.StringOutput

func (SnapshotOutput) SourceDbSnapshotIdentifier

func (o SnapshotOutput) SourceDbSnapshotIdentifier() pulumi.StringOutput

The DB snapshot Arn that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.

func (SnapshotOutput) SourceRegion

func (o SnapshotOutput) SourceRegion() pulumi.StringOutput

The region that the DB snapshot was created in or copied from.

func (SnapshotOutput) Status

func (o SnapshotOutput) Status() pulumi.StringOutput

Specifies the status of this DB snapshot.

func (SnapshotOutput) StorageType

func (o SnapshotOutput) StorageType() pulumi.StringOutput

Specifies the storage type associated with DB snapshot.

func (SnapshotOutput) Tags

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

func (SnapshotOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (SnapshotOutput) ToSnapshotOutput

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext

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

func (SnapshotOutput) VpcId

Provides the VPC ID associated with the DB snapshot.

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
	// List of AWS Account ids to share snapshot with, use `all` to make snaphot public.
	SharedAccounts pulumi.StringArrayInput
	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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Provides the VPC ID associated with the DB snapshot.
	VpcId pulumi.StringPtrInput
}

func (SnapshotState) ElementType

func (SnapshotState) ElementType() reflect.Type

type StorageType

type StorageType string

func (StorageType) ElementType

func (StorageType) ElementType() reflect.Type

func (StorageType) ToStorageTypeOutput

func (e StorageType) ToStorageTypeOutput() StorageTypeOutput

func (StorageType) ToStorageTypeOutputWithContext

func (e StorageType) ToStorageTypeOutputWithContext(ctx context.Context) StorageTypeOutput

func (StorageType) ToStorageTypePtrOutput

func (e StorageType) ToStorageTypePtrOutput() StorageTypePtrOutput

func (StorageType) ToStorageTypePtrOutputWithContext

func (e StorageType) ToStorageTypePtrOutputWithContext(ctx context.Context) StorageTypePtrOutput

func (StorageType) ToStringOutput

func (e StorageType) ToStringOutput() pulumi.StringOutput

func (StorageType) ToStringOutputWithContext

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

func (StorageType) ToStringPtrOutput

func (e StorageType) ToStringPtrOutput() pulumi.StringPtrOutput

func (StorageType) ToStringPtrOutputWithContext

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

type StorageTypeInput

type StorageTypeInput interface {
	pulumi.Input

	ToStorageTypeOutput() StorageTypeOutput
	ToStorageTypeOutputWithContext(context.Context) StorageTypeOutput
}

StorageTypeInput is an input type that accepts values of the StorageType enum A concrete instance of `StorageTypeInput` can be one of the following:

StorageTypeStandard
StorageTypeGP2
StorageTypeGP3
StorageTypeIO1

type StorageTypeOutput

type StorageTypeOutput struct{ *pulumi.OutputState }

func (StorageTypeOutput) ElementType

func (StorageTypeOutput) ElementType() reflect.Type

func (StorageTypeOutput) ToStorageTypeOutput

func (o StorageTypeOutput) ToStorageTypeOutput() StorageTypeOutput

func (StorageTypeOutput) ToStorageTypeOutputWithContext

func (o StorageTypeOutput) ToStorageTypeOutputWithContext(ctx context.Context) StorageTypeOutput

func (StorageTypeOutput) ToStorageTypePtrOutput

func (o StorageTypeOutput) ToStorageTypePtrOutput() StorageTypePtrOutput

func (StorageTypeOutput) ToStorageTypePtrOutputWithContext

func (o StorageTypeOutput) ToStorageTypePtrOutputWithContext(ctx context.Context) StorageTypePtrOutput

func (StorageTypeOutput) ToStringOutput

func (o StorageTypeOutput) ToStringOutput() pulumi.StringOutput

func (StorageTypeOutput) ToStringOutputWithContext

func (o StorageTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (StorageTypeOutput) ToStringPtrOutput

func (o StorageTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (StorageTypeOutput) ToStringPtrOutputWithContext

func (o StorageTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type StorageTypePtrInput

type StorageTypePtrInput interface {
	pulumi.Input

	ToStorageTypePtrOutput() StorageTypePtrOutput
	ToStorageTypePtrOutputWithContext(context.Context) StorageTypePtrOutput
}

func StorageTypePtr

func StorageTypePtr(v string) StorageTypePtrInput

type StorageTypePtrOutput

type StorageTypePtrOutput struct{ *pulumi.OutputState }

func (StorageTypePtrOutput) Elem

func (StorageTypePtrOutput) ElementType

func (StorageTypePtrOutput) ElementType() reflect.Type

func (StorageTypePtrOutput) ToStorageTypePtrOutput

func (o StorageTypePtrOutput) ToStorageTypePtrOutput() StorageTypePtrOutput

func (StorageTypePtrOutput) ToStorageTypePtrOutputWithContext

func (o StorageTypePtrOutput) ToStorageTypePtrOutputWithContext(ctx context.Context) StorageTypePtrOutput

func (StorageTypePtrOutput) ToStringPtrOutput

func (o StorageTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (StorageTypePtrOutput) ToStringPtrOutputWithContext

func (o StorageTypePtrOutput) 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, the 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"`
	// The network type of the db subnet group.
	SupportedNetworkTypes pulumi.StringArrayOutput `pulumi:"supportedNetworkTypes"`
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Provides the VPC ID of the DB subnet group.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides an RDS DB subnet group resource.

## Example Usage

```go package main

import (

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

)

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

```

## Import

Using `pulumi import`, import DB Subnet groups using the `name`. For example:

```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

func (*SubnetGroup) ElementType() reflect.Type

func (*SubnetGroup) ToSubnetGroupOutput

func (i *SubnetGroup) ToSubnetGroupOutput() SubnetGroupOutput

func (*SubnetGroup) ToSubnetGroupOutputWithContext

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

type SubnetGroupArgs

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

The set of arguments for constructing a SubnetGroup resource.

func (SubnetGroupArgs) ElementType

func (SubnetGroupArgs) ElementType() reflect.Type

type SubnetGroupArray

type SubnetGroupArray []SubnetGroupInput

func (SubnetGroupArray) ElementType

func (SubnetGroupArray) ElementType() reflect.Type

func (SubnetGroupArray) ToSubnetGroupArrayOutput

func (i SubnetGroupArray) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArray) ToSubnetGroupArrayOutputWithContext

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

type SubnetGroupArrayInput

type SubnetGroupArrayInput interface {
	pulumi.Input

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

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

SubnetGroupArray{ SubnetGroupArgs{...} }

type SubnetGroupArrayOutput

type SubnetGroupArrayOutput struct{ *pulumi.OutputState }

func (SubnetGroupArrayOutput) ElementType

func (SubnetGroupArrayOutput) ElementType() reflect.Type

func (SubnetGroupArrayOutput) Index

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutput

func (o SubnetGroupArrayOutput) ToSubnetGroupArrayOutput() SubnetGroupArrayOutput

func (SubnetGroupArrayOutput) ToSubnetGroupArrayOutputWithContext

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

type SubnetGroupInput

type SubnetGroupInput interface {
	pulumi.Input

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

type SubnetGroupMap

type SubnetGroupMap map[string]SubnetGroupInput

func (SubnetGroupMap) ElementType

func (SubnetGroupMap) ElementType() reflect.Type

func (SubnetGroupMap) ToSubnetGroupMapOutput

func (i SubnetGroupMap) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMap) ToSubnetGroupMapOutputWithContext

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

type SubnetGroupMapInput

type SubnetGroupMapInput interface {
	pulumi.Input

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

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

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

type SubnetGroupMapOutput

type SubnetGroupMapOutput struct{ *pulumi.OutputState }

func (SubnetGroupMapOutput) ElementType

func (SubnetGroupMapOutput) ElementType() reflect.Type

func (SubnetGroupMapOutput) MapIndex

func (SubnetGroupMapOutput) ToSubnetGroupMapOutput

func (o SubnetGroupMapOutput) ToSubnetGroupMapOutput() SubnetGroupMapOutput

func (SubnetGroupMapOutput) ToSubnetGroupMapOutputWithContext

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

type SubnetGroupOutput

type SubnetGroupOutput struct{ *pulumi.OutputState }

func (SubnetGroupOutput) Arn

The ARN of the db subnet group.

func (SubnetGroupOutput) Description

func (o SubnetGroupOutput) Description() pulumi.StringOutput

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

func (SubnetGroupOutput) ElementType

func (SubnetGroupOutput) ElementType() reflect.Type

func (SubnetGroupOutput) Name

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

func (SubnetGroupOutput) NamePrefix

func (o SubnetGroupOutput) NamePrefix() pulumi.StringOutput

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

func (SubnetGroupOutput) SubnetIds

A list of VPC subnet IDs.

func (SubnetGroupOutput) SupportedNetworkTypes

func (o SubnetGroupOutput) SupportedNetworkTypes() pulumi.StringArrayOutput

The network type of the db subnet group.

func (SubnetGroupOutput) Tags

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

func (SubnetGroupOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (SubnetGroupOutput) ToSubnetGroupOutput

func (o SubnetGroupOutput) ToSubnetGroupOutput() SubnetGroupOutput

func (SubnetGroupOutput) ToSubnetGroupOutputWithContext

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

func (SubnetGroupOutput) VpcId

Provides the VPC ID of the DB subnet group.

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, the 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
	// The network type of the db subnet group.
	SupportedNetworkTypes pulumi.StringArrayInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Provides the VPC ID of the DB subnet group.
	VpcId pulumi.StringPtrInput
}

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