UNPKG

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

143 lines (142 loc) 5.99 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource schema for AWS::Cassandra::Keyspace * * ## Example Usage * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const myNewKeyspace = new aws_native.cassandra.Keyspace("myNewKeyspace", { * keyspaceName: "MyNewKeyspace", * tags: [ * { * key: "tag1", * value: "val1", * }, * { * key: "tag2", * value: "val2", * }, * ], * }); * * ``` * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const multiRegionKeyspace = new aws_native.cassandra.Keyspace("multiRegionKeyspace", { * keyspaceName: "MultiRegionKeyspace", * replicationSpecification: { * replicationStrategy: aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion, * regionList: [ * aws_native.cassandra.KeyspaceRegionListItem.UsEast1, * aws_native.cassandra.KeyspaceRegionListItem.UsWest2, * aws_native.cassandra.KeyspaceRegionListItem.EuWest1, * ], * }, * }); * * ``` * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const multiRegionKeyspace = new aws_native.cassandra.Keyspace("multiRegionKeyspace", { * keyspaceName: "MultiRegionKeyspace", * replicationSpecification: { * replicationStrategy: aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion, * regionList: [ * aws_native.cassandra.KeyspaceRegionListItem.UsEast1, * aws_native.cassandra.KeyspaceRegionListItem.UsWest2, * aws_native.cassandra.KeyspaceRegionListItem.EuWest1, * ], * }, * }); * * ``` */ export declare class Keyspace extends pulumi.CustomResource { /** * Get an existing Keyspace 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): Keyspace; /** * Returns true if the given object is an instance of Keyspace. 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 Keyspace; /** * Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. */ readonly clientSideTimestampsEnabled: pulumi.Output<boolean | undefined>; /** * Name for Cassandra keyspace */ readonly keyspaceName: pulumi.Output<string | undefined>; /** * Specifies the `ReplicationStrategy` of a keyspace. The options are: * * - `SINGLE_REGION` for a single Region keyspace (optional) or * - `MULTI_REGION` for a multi-Region keyspace * * If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. */ readonly replicationSpecification: pulumi.Output<outputs.cassandra.KeyspaceReplicationSpecification | undefined>; /** * An array of key-value pairs to apply to this resource. * * For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . */ readonly tags: pulumi.Output<outputs.Tag[] | undefined>; /** * Create a Keyspace 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?: KeyspaceArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Keyspace resource. */ export interface KeyspaceArgs { /** * Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. */ clientSideTimestampsEnabled?: pulumi.Input<boolean>; /** * Name for Cassandra keyspace */ keyspaceName?: pulumi.Input<string>; /** * Specifies the `ReplicationStrategy` of a keyspace. The options are: * * - `SINGLE_REGION` for a single Region keyspace (optional) or * - `MULTI_REGION` for a multi-Region keyspace * * If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. */ replicationSpecification?: pulumi.Input<inputs.cassandra.KeyspaceReplicationSpecificationArgs>; /** * An array of key-value pairs to apply to this resource. * * For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . */ tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>; }