@pulumi/aws-native
Version:
The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)
316 lines (315 loc) • 19.1 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster.
*/
export declare class DbCluster extends pulumi.CustomResource {
/**
* Get an existing DbCluster resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): DbCluster;
/**
* Returns true if the given object is an instance of DbCluster. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is DbCluster;
/**
* Provides a list of the AWS Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other AWS services on your behalf.
*/
readonly associatedRoles: pulumi.Output<outputs.neptune.DbClusterDbClusterRole[] | undefined>;
/**
* Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.
*/
readonly availabilityZones: pulumi.Output<string[] | undefined>;
/**
* Specifies the number of days for which automatic DB snapshots are retained.
*/
readonly backupRetentionPeriod: pulumi.Output<number | undefined>;
/**
* The resource id for the DB cluster. For example: `cluster-ABCD1234EFGH5678IJKL90MNOP`. The cluster ID uniquely identifies the cluster and is used in things like IAM authentication policies.
*/
readonly clusterResourceId: pulumi.Output<string>;
/**
* A value that indicates whether to copy all tags from the DB cluster to snapshots of the DB cluster. The default behaviour is not to copy them.
*/
readonly copyTagsToSnapshot: pulumi.Output<boolean | undefined>;
/**
* The DB cluster identifier. Contains a user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster stored as a lowercase string.
*/
readonly dbClusterIdentifier: pulumi.Output<string | undefined>;
/**
* Provides the name of the DB cluster parameter group.
*/
readonly dbClusterParameterGroupName: pulumi.Output<string | undefined>;
/**
* The name of the DB parameter group to apply to all instances of the DB cluster. Used only in case of a major EngineVersion upgrade request.
*/
readonly dbInstanceParameterGroupName: pulumi.Output<string | undefined>;
/**
* The port number on which the DB instances in the DB cluster accept connections.
*
* If not specified, the default port used is `8182`.
*
* Note: `Port` property will soon be deprecated from this resource. Please update existing templates to rename it with new property `DBPort` having same functionalities.
*/
readonly dbPort: pulumi.Output<number | undefined>;
/**
* Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.
*/
readonly dbSubnetGroupName: pulumi.Output<string | undefined>;
/**
* Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.
*/
readonly deletionProtection: pulumi.Output<boolean | undefined>;
/**
* Specifies a list of log types that are enabled for export to CloudWatch Logs.
*/
readonly enableCloudwatchLogsExports: pulumi.Output<string[] | undefined>;
/**
* The connection endpoint for the DB cluster. For example: `mystack-mydbcluster-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`
*/
readonly endpoint: pulumi.Output<string>;
/**
* Indicates the database engine version.
*/
readonly engineVersion: pulumi.Output<string | undefined>;
/**
* True if mapping of Amazon Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.
*/
readonly iamAuthEnabled: pulumi.Output<boolean | undefined>;
/**
* The Amazon Resource Name (ARN) of the AWS KMS key that is used to encrypt the database instances in the DB cluster, such as arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If you enable the StorageEncrypted property but don't specify this property, the default KMS key is used. If you specify this property, you must set the StorageEncrypted property to true.
*/
readonly kmsKeyId: pulumi.Output<string | undefined>;
/**
* The port number on which the DB cluster accepts connections. For example: `8182`.
*/
readonly port: pulumi.Output<string>;
/**
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.
*/
readonly preferredBackupWindow: pulumi.Output<string | undefined>;
/**
* Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
*/
readonly preferredMaintenanceWindow: pulumi.Output<string | undefined>;
/**
* The reader endpoint for the DB cluster. For example: `mystack-mydbcluster-ro-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`
*/
readonly readEndpoint: pulumi.Output<string>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
readonly restoreToTime: pulumi.Output<string | undefined>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
readonly restoreType: pulumi.Output<string | undefined>;
/**
* Contains the scaling configuration used by the Neptune Serverless Instances within this DB cluster.
*/
readonly serverlessScalingConfiguration: pulumi.Output<outputs.neptune.DbClusterServerlessScalingConfiguration | undefined>;
/**
* Specifies the identifier for a DB cluster snapshot. Must match the identifier of an existing snapshot.
*
* After you restore a DB cluster using a SnapshotIdentifier, you must specify the same SnapshotIdentifier for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed.
*
* However, if you don't specify the SnapshotIdentifier, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, the DB cluster is restored from the snapshot specified by the SnapshotIdentifier, and the original DB cluster is deleted.
*/
readonly snapshotIdentifier: pulumi.Output<string | undefined>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
readonly sourceDbClusterIdentifier: pulumi.Output<string | undefined>;
/**
* Indicates whether the DB cluster is encrypted.
*
* If you specify the KmsKeyId property, then you must enable encryption and set this property to true.
*
* If you enable the StorageEncrypted property but don't specify KmsKeyId property, then the default KMS key is used. If you specify KmsKeyId property, then that KMS Key is used to encrypt the database instances in the DB cluster.
*
* If you specify the SourceDBClusterIdentifier property and don't specify this property or disable it. The value is inherited from the source DB cluster, and if the DB cluster is encrypted, the KmsKeyId property from the source cluster is used.
*
* If you specify the DBSnapshotIdentifier and don't specify this property or disable it. The value is inherited from the snapshot, and the specified KmsKeyId property from the snapshot is used.
*/
readonly storageEncrypted: pulumi.Output<boolean | undefined>;
/**
* The tags assigned to this cluster.
*/
readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
readonly useLatestRestorableTime: pulumi.Output<boolean | undefined>;
/**
* Provides a list of VPC security groups that the DB cluster belongs to.
*/
readonly vpcSecurityGroupIds: pulumi.Output<string[] | undefined>;
/**
* Create a DbCluster resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args?: DbClusterArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a DbCluster resource.
*/
export interface DbClusterArgs {
/**
* Provides a list of the AWS Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other AWS services on your behalf.
*/
associatedRoles?: pulumi.Input<pulumi.Input<inputs.neptune.DbClusterDbClusterRoleArgs>[]>;
/**
* Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.
*/
availabilityZones?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Specifies the number of days for which automatic DB snapshots are retained.
*/
backupRetentionPeriod?: pulumi.Input<number>;
/**
* A value that indicates whether to copy all tags from the DB cluster to snapshots of the DB cluster. The default behaviour is not to copy them.
*/
copyTagsToSnapshot?: pulumi.Input<boolean>;
/**
* The DB cluster identifier. Contains a user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster stored as a lowercase string.
*/
dbClusterIdentifier?: pulumi.Input<string>;
/**
* Provides the name of the DB cluster parameter group.
*/
dbClusterParameterGroupName?: pulumi.Input<string>;
/**
* The name of the DB parameter group to apply to all instances of the DB cluster. Used only in case of a major EngineVersion upgrade request.
*/
dbInstanceParameterGroupName?: pulumi.Input<string>;
/**
* The port number on which the DB instances in the DB cluster accept connections.
*
* If not specified, the default port used is `8182`.
*
* Note: `Port` property will soon be deprecated from this resource. Please update existing templates to rename it with new property `DBPort` having same functionalities.
*/
dbPort?: pulumi.Input<number>;
/**
* Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.
*/
dbSubnetGroupName?: pulumi.Input<string>;
/**
* Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.
*/
deletionProtection?: pulumi.Input<boolean>;
/**
* Specifies a list of log types that are enabled for export to CloudWatch Logs.
*/
enableCloudwatchLogsExports?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Indicates the database engine version.
*/
engineVersion?: pulumi.Input<string>;
/**
* True if mapping of Amazon Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.
*/
iamAuthEnabled?: pulumi.Input<boolean>;
/**
* The Amazon Resource Name (ARN) of the AWS KMS key that is used to encrypt the database instances in the DB cluster, such as arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If you enable the StorageEncrypted property but don't specify this property, the default KMS key is used. If you specify this property, you must set the StorageEncrypted property to true.
*/
kmsKeyId?: pulumi.Input<string>;
/**
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.
*/
preferredBackupWindow?: pulumi.Input<string>;
/**
* Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
*/
preferredMaintenanceWindow?: pulumi.Input<string>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
restoreToTime?: pulumi.Input<string>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
restoreType?: pulumi.Input<string>;
/**
* Contains the scaling configuration used by the Neptune Serverless Instances within this DB cluster.
*/
serverlessScalingConfiguration?: pulumi.Input<inputs.neptune.DbClusterServerlessScalingConfigurationArgs>;
/**
* Specifies the identifier for a DB cluster snapshot. Must match the identifier of an existing snapshot.
*
* After you restore a DB cluster using a SnapshotIdentifier, you must specify the same SnapshotIdentifier for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed.
*
* However, if you don't specify the SnapshotIdentifier, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, the DB cluster is restored from the snapshot specified by the SnapshotIdentifier, and the original DB cluster is deleted.
*/
snapshotIdentifier?: pulumi.Input<string>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
sourceDbClusterIdentifier?: pulumi.Input<string>;
/**
* Indicates whether the DB cluster is encrypted.
*
* If you specify the KmsKeyId property, then you must enable encryption and set this property to true.
*
* If you enable the StorageEncrypted property but don't specify KmsKeyId property, then the default KMS key is used. If you specify KmsKeyId property, then that KMS Key is used to encrypt the database instances in the DB cluster.
*
* If you specify the SourceDBClusterIdentifier property and don't specify this property or disable it. The value is inherited from the source DB cluster, and if the DB cluster is encrypted, the KmsKeyId property from the source cluster is used.
*
* If you specify the DBSnapshotIdentifier and don't specify this property or disable it. The value is inherited from the snapshot, and the specified KmsKeyId property from the snapshot is used.
*/
storageEncrypted?: pulumi.Input<boolean>;
/**
* The tags assigned to this cluster.
*/
tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
/**
* Creates a new DB cluster from a DB snapshot or DB cluster snapshot.
*
* If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.
*
* If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.
*/
useLatestRestorableTime?: pulumi.Input<boolean>;
/**
* Provides a list of VPC security groups that the DB cluster belongs to.
*/
vpcSecurityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
}