DatabaseAccountSqlContainer

class DatabaseAccountSqlContainer : KotlinCustomResource

An Azure Cosmos DB container. Uses Azure REST API version 2016-03-31. Other available API versions: 2015-04-01, 2015-04-08, 2015-11-06, 2016-03-19. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native cosmosdb [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

CosmosDBSqlContainerCreateUpdate

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var databaseAccountSqlContainer = new AzureNative.CosmosDB.DatabaseAccountSqlContainer("databaseAccountSqlContainer", new()
{
AccountName = "ddb1",
ContainerName = "containerName",
DatabaseName = "databaseName",
Options = null,
Resource = new AzureNative.CosmosDB.Inputs.SqlContainerResourceArgs
{
ConflictResolutionPolicy = new AzureNative.CosmosDB.Inputs.ConflictResolutionPolicyArgs
{
ConflictResolutionPath = "/path",
Mode = AzureNative.CosmosDB.ConflictResolutionMode.LastWriterWins,
},
DefaultTtl = 100,
Id = "containerName",
IndexingPolicy = new AzureNative.CosmosDB.Inputs.IndexingPolicyArgs
{
Automatic = true,
ExcludedPaths = new() { },
IncludedPaths = new[]
{
new AzureNative.CosmosDB.Inputs.IncludedPathArgs
{
Indexes = new[]
{
new AzureNative.CosmosDB.Inputs.IndexesArgs
{
DataType = AzureNative.CosmosDB.DataType.String,
Kind = AzureNative.CosmosDB.IndexKind.Range,
Precision = -1,
},
new AzureNative.CosmosDB.Inputs.IndexesArgs
{
DataType = AzureNative.CosmosDB.DataType.Number,
Kind = AzureNative.CosmosDB.IndexKind.Range,
Precision = -1,
},
},
Path = "/*",
},
},
IndexingMode = "Consistent",
},
PartitionKey = new AzureNative.CosmosDB.Inputs.ContainerPartitionKeyArgs
{
Kind = AzureNative.CosmosDB.PartitionKind.Hash,
Paths = new[]
{
"/AccountNumber",
},
},
UniqueKeyPolicy = new AzureNative.CosmosDB.Inputs.UniqueKeyPolicyArgs
{
UniqueKeys = new[]
{
new AzureNative.CosmosDB.Inputs.UniqueKeyArgs
{
Paths = new[]
{
"/testPath",
},
},
},
},
},
ResourceGroupName = "rg1",
});
});
package main
import (
cosmosdb "github.com/pulumi/pulumi-azure-native-sdk/cosmosdb/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cosmosdb.NewDatabaseAccountSqlContainer(ctx, "databaseAccountSqlContainer", &cosmosdb.DatabaseAccountSqlContainerArgs{
AccountName: pulumi.String("ddb1"),
ContainerName: pulumi.String("containerName"),
DatabaseName: pulumi.String("databaseName"),
Options: pulumi.StringMap{},
Resource: &cosmosdb.SqlContainerResourceArgs{
ConflictResolutionPolicy: &cosmosdb.ConflictResolutionPolicyArgs{
ConflictResolutionPath: pulumi.String("/path"),
Mode: pulumi.String(cosmosdb.ConflictResolutionModeLastWriterWins),
},
DefaultTtl: pulumi.Int(100),
Id: pulumi.String("containerName"),
IndexingPolicy: &cosmosdb.IndexingPolicyArgs{
Automatic: pulumi.Bool(true),
ExcludedPaths: cosmosdb.ExcludedPathArray{},
IncludedPaths: cosmosdb.IncludedPathArray{
&cosmosdb.IncludedPathArgs{
Indexes: cosmosdb.IndexesArray{
&cosmosdb.IndexesArgs{
DataType: pulumi.String(cosmosdb.DataTypeString),
Kind: pulumi.String(cosmosdb.IndexKindRange),
Precision: pulumi.Int(-1),
},
&cosmosdb.IndexesArgs{
DataType: pulumi.String(cosmosdb.DataTypeNumber),
Kind: pulumi.String(cosmosdb.IndexKindRange),
Precision: pulumi.Int(-1),
},
},
Path: pulumi.String("/*"),
},
},
IndexingMode: pulumi.String("Consistent"),
},
PartitionKey: &cosmosdb.ContainerPartitionKeyArgs{
Kind: pulumi.String(cosmosdb.PartitionKindHash),
Paths: pulumi.StringArray{
pulumi.String("/AccountNumber"),
},
},
UniqueKeyPolicy: &cosmosdb.UniqueKeyPolicyArgs{
UniqueKeys: cosmosdb.UniqueKeyArray{
&cosmosdb.UniqueKeyArgs{
Paths: pulumi.StringArray{
pulumi.String("/testPath"),
},
},
},
},
},
ResourceGroupName: pulumi.String("rg1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cosmosdb.DatabaseAccountSqlContainer;
import com.pulumi.azurenative.cosmosdb.DatabaseAccountSqlContainerArgs;
import com.pulumi.azurenative.cosmosdb.inputs.SqlContainerResourceArgs;
import com.pulumi.azurenative.cosmosdb.inputs.ConflictResolutionPolicyArgs;
import com.pulumi.azurenative.cosmosdb.inputs.IndexingPolicyArgs;
import com.pulumi.azurenative.cosmosdb.inputs.ContainerPartitionKeyArgs;
import com.pulumi.azurenative.cosmosdb.inputs.UniqueKeyPolicyArgs;
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 databaseAccountSqlContainer = new DatabaseAccountSqlContainer("databaseAccountSqlContainer", DatabaseAccountSqlContainerArgs.builder()
.accountName("ddb1")
.containerName("containerName")
.databaseName("databaseName")
.options(Map.ofEntries(
))
.resource(SqlContainerResourceArgs.builder()
.conflictResolutionPolicy(ConflictResolutionPolicyArgs.builder()
.conflictResolutionPath("/path")
.mode("LastWriterWins")
.build())
.defaultTtl(100)
.id("containerName")
.indexingPolicy(IndexingPolicyArgs.builder()
.automatic(true)
.excludedPaths()
.includedPaths(IncludedPathArgs.builder()
.indexes(
IndexesArgs.builder()
.dataType("String")
.kind("Range")
.precision(-1)
.build(),
IndexesArgs.builder()
.dataType("Number")
.kind("Range")
.precision(-1)
.build())
.path("/*")
.build())
.indexingMode("Consistent")
.build())
.partitionKey(ContainerPartitionKeyArgs.builder()
.kind("Hash")
.paths("/AccountNumber")
.build())
.uniqueKeyPolicy(UniqueKeyPolicyArgs.builder()
.uniqueKeys(UniqueKeyArgs.builder()
.paths("/testPath")
.build())
.build())
.build())
.resourceGroupName("rg1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:cosmosdb:DatabaseAccountSqlContainer containerName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/apis/sql/databases/{databaseName}/containers/{containerName}

//*/

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard

The conflict resolution policy for the container.

Link copied to clipboard
val defaultTtl: Output<Int>?

Default time to live

Link copied to clipboard
val etag: Output<String>?

A system generated property representing the resource etag required for optimistic concurrency control.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container

Link copied to clipboard
val location: Output<String>?

The location of the resource group to which the resource belongs.

Link copied to clipboard
val name: Output<String>

The name of the database account.

Link copied to clipboard

The configuration of the partition key to be used for partitioning data into multiple partitions

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val rid: Output<String>?

A system generated property. A unique identifier.

Link copied to clipboard
val tags: Output<Map<String, String>>?

Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB".

Link copied to clipboard
val ts: Output<Any>?

A system generated property that denotes the last updated timestamp of the resource.

Link copied to clipboard
val type: Output<String>

The type of Azure resource.

Link copied to clipboard

The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.

Link copied to clipboard
val urn: Output<String>