Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.aws.keyspaces.kotlin
import com.pulumi.aws.keyspaces.TableArgs.builder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableCapacitySpecificationArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableCapacitySpecificationArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableClientSideTimestampsArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableClientSideTimestampsArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableCommentArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableCommentArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableEncryptionSpecificationArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableEncryptionSpecificationArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TablePointInTimeRecoveryArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TablePointInTimeRecoveryArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableSchemaDefinitionArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableSchemaDefinitionArgsBuilder
import com.pulumi.aws.keyspaces.kotlin.inputs.TableTtlArgs
import com.pulumi.aws.keyspaces.kotlin.inputs.TableTtlArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Provides a Keyspaces Table.
* More information about Keyspaces tables can be found in the [Keyspaces Developer Guide](https://docs.aws.amazon.com/keyspaces/latest/devguide/working-with-tables.html).
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
* const example = new aws.keyspaces.Table("example", {
* keyspaceName: exampleAwsKeyspacesKeyspace.name,
* tableName: "my_table",
* schemaDefinition: {
* columns: [{
* name: "Message",
* type: "ASCII",
* }],
* partitionKeys: [{
* name: "Message",
* }],
* },
* });
* ```
* ```python
* import pulumi
* import pulumi_aws as aws
* example = aws.keyspaces.Table("example",
* keyspace_name=example_aws_keyspaces_keyspace["name"],
* table_name="my_table",
* schema_definition={
* "columns": [{
* "name": "Message",
* "type": "ASCII",
* }],
* "partition_keys": [{
* "name": "Message",
* }],
* })
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Aws = Pulumi.Aws;
* return await Deployment.RunAsync(() =>
* {
* var example = new Aws.Keyspaces.Table("example", new()
* {
* KeyspaceName = exampleAwsKeyspacesKeyspace.Name,
* TableName = "my_table",
* SchemaDefinition = new Aws.Keyspaces.Inputs.TableSchemaDefinitionArgs
* {
* Columns = new[]
* {
* new Aws.Keyspaces.Inputs.TableSchemaDefinitionColumnArgs
* {
* Name = "Message",
* Type = "ASCII",
* },
* },
* PartitionKeys = new[]
* {
* new Aws.Keyspaces.Inputs.TableSchemaDefinitionPartitionKeyArgs
* {
* Name = "Message",
* },
* },
* },
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/keyspaces"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := keyspaces.NewTable(ctx, "example", &keyspaces.TableArgs{
* KeyspaceName: pulumi.Any(exampleAwsKeyspacesKeyspace.Name),
* TableName: pulumi.String("my_table"),
* SchemaDefinition: &keyspaces.TableSchemaDefinitionArgs{
* Columns: keyspaces.TableSchemaDefinitionColumnArray{
* &keyspaces.TableSchemaDefinitionColumnArgs{
* Name: pulumi.String("Message"),
* Type: pulumi.String("ASCII"),
* },
* },
* PartitionKeys: keyspaces.TableSchemaDefinitionPartitionKeyArray{
* &keyspaces.TableSchemaDefinitionPartitionKeyArgs{
* Name: pulumi.String("Message"),
* },
* },
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.aws.keyspaces.Table;
* import com.pulumi.aws.keyspaces.TableArgs;
* import com.pulumi.aws.keyspaces.inputs.TableSchemaDefinitionArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var example = new Table("example", TableArgs.builder()
* .keyspaceName(exampleAwsKeyspacesKeyspace.name())
* .tableName("my_table")
* .schemaDefinition(TableSchemaDefinitionArgs.builder()
* .columns(TableSchemaDefinitionColumnArgs.builder()
* .name("Message")
* .type("ASCII")
* .build())
* .partitionKeys(TableSchemaDefinitionPartitionKeyArgs.builder()
* .name("Message")
* .build())
* .build())
* .build());
* }
* }
* ```
* ```yaml
* resources:
* example:
* type: aws:keyspaces:Table
* properties:
* keyspaceName: ${exampleAwsKeyspacesKeyspace.name}
* tableName: my_table
* schemaDefinition:
* columns:
* - name: Message
* type: ASCII
* partitionKeys:
* - name: Message
* ```
*
* ## Import
* Using `pulumi import`, import a table using the `keyspace_name` and `table_name` separated by `/`. For example:
* ```sh
* $ pulumi import aws:keyspaces/table:Table example my_keyspace/my_table
* ```
* @property capacitySpecification Specifies the read/write throughput capacity mode for the table.
* @property clientSideTimestamps Enables client-side timestamps for the table. By default, the setting is disabled.
* @property comment A description of the table.
* @property defaultTimeToLive The default Time to Live setting in seconds for the table. More information can be found in the [Developer Guide](https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL-how-it-works.html#ttl-howitworks_default_ttl).
* @property encryptionSpecification Specifies how the encryption key for encryption at rest is managed for the table. More information can be found in the [Developer Guide](https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html).
* @property keyspaceName The name of the keyspace that the table is going to be created in.
* @property pointInTimeRecovery Specifies if point-in-time recovery is enabled or disabled for the table. More information can be found in the [Developer Guide](https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html).
* @property schemaDefinition Describes the schema of the table.
* @property tableName The name of the table.
* The following arguments are optional:
* @property tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
* @property ttl Enables Time to Live custom settings for the table. More information can be found in the [Developer Guide](https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL.html).
*/
public data class TableArgs(
public val capacitySpecification: Output? = null,
public val clientSideTimestamps: Output? = null,
public val comment: Output? = null,
public val defaultTimeToLive: Output? = null,
public val encryptionSpecification: Output? = null,
public val keyspaceName: Output? = null,
public val pointInTimeRecovery: Output? = null,
public val schemaDefinition: Output? = null,
public val tableName: Output? = null,
public val tags: Output