kusto

package
v3.55.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AttachedDatabaseConfiguration added in v3.12.0

type AttachedDatabaseConfiguration struct {
	pulumi.CustomResourceState

	// The list of databases from the `clusterResourceId` which are currently attached to the cluster.
	AttachedDatabaseNames pulumi.StringArrayOutput `pulumi:"attachedDatabaseNames"`
	// Specifies the name of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// The resource id of the cluster where the databases you would like to attach reside.
	ClusterResourceId pulumi.StringOutput `pulumi:"clusterResourceId"`
	// The name of the database which you would like to attach, use * if you want to follow all current and future databases.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// The default principals modification kind. Valid values are: `None` (default), `Replace` and `Union`.
	DefaultPrincipalModificationKind pulumi.StringPtrOutput `pulumi:"defaultPrincipalModificationKind"`
	// Specifies the location of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Kusto Attached Database Configuration to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the resource group of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
}

Manages a Kusto (also known as Azure Data Explorer) Attached Database Configuration

## Import

Kusto Attached Database Configurations can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/attachedDatabaseConfiguration:AttachedDatabaseConfiguration example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/AttachedDatabaseConfigurations/configuration1

```

func GetAttachedDatabaseConfiguration added in v3.12.0

func GetAttachedDatabaseConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AttachedDatabaseConfigurationState, opts ...pulumi.ResourceOption) (*AttachedDatabaseConfiguration, error)

GetAttachedDatabaseConfiguration gets an existing AttachedDatabaseConfiguration 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 NewAttachedDatabaseConfiguration added in v3.12.0

func NewAttachedDatabaseConfiguration(ctx *pulumi.Context,
	name string, args *AttachedDatabaseConfigurationArgs, opts ...pulumi.ResourceOption) (*AttachedDatabaseConfiguration, error)

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

func (*AttachedDatabaseConfiguration) ElementType added in v3.31.1

func (*AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationOutput added in v3.31.1

func (i *AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationOutput() AttachedDatabaseConfigurationOutput

func (*AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationOutputWithContext added in v3.31.1

func (i *AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationOutput

func (*AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationPtrOutput added in v3.47.1

func (i *AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationPtrOutput() AttachedDatabaseConfigurationPtrOutput

func (*AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationPtrOutputWithContext added in v3.47.1

func (i *AttachedDatabaseConfiguration) ToAttachedDatabaseConfigurationPtrOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationPtrOutput

type AttachedDatabaseConfigurationArgs added in v3.12.0

type AttachedDatabaseConfigurationArgs struct {
	// Specifies the name of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// The resource id of the cluster where the databases you would like to attach reside.
	ClusterResourceId pulumi.StringInput
	// The name of the database which you would like to attach, use * if you want to follow all current and future databases.
	DatabaseName pulumi.StringInput
	// The default principals modification kind. Valid values are: `None` (default), `Replace` and `Union`.
	DefaultPrincipalModificationKind pulumi.StringPtrInput
	// Specifies the location of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Attached Database Configuration to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the resource group of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
}

The set of arguments for constructing a AttachedDatabaseConfiguration resource.

func (AttachedDatabaseConfigurationArgs) ElementType added in v3.12.0

type AttachedDatabaseConfigurationArray added in v3.47.1

type AttachedDatabaseConfigurationArray []AttachedDatabaseConfigurationInput

func (AttachedDatabaseConfigurationArray) ElementType added in v3.47.1

func (AttachedDatabaseConfigurationArray) ToAttachedDatabaseConfigurationArrayOutput added in v3.47.1

func (i AttachedDatabaseConfigurationArray) ToAttachedDatabaseConfigurationArrayOutput() AttachedDatabaseConfigurationArrayOutput

func (AttachedDatabaseConfigurationArray) ToAttachedDatabaseConfigurationArrayOutputWithContext added in v3.47.1

func (i AttachedDatabaseConfigurationArray) ToAttachedDatabaseConfigurationArrayOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationArrayOutput

type AttachedDatabaseConfigurationArrayInput added in v3.47.1

type AttachedDatabaseConfigurationArrayInput interface {
	pulumi.Input

	ToAttachedDatabaseConfigurationArrayOutput() AttachedDatabaseConfigurationArrayOutput
	ToAttachedDatabaseConfigurationArrayOutputWithContext(context.Context) AttachedDatabaseConfigurationArrayOutput
}

AttachedDatabaseConfigurationArrayInput is an input type that accepts AttachedDatabaseConfigurationArray and AttachedDatabaseConfigurationArrayOutput values. You can construct a concrete instance of `AttachedDatabaseConfigurationArrayInput` via:

AttachedDatabaseConfigurationArray{ AttachedDatabaseConfigurationArgs{...} }

type AttachedDatabaseConfigurationArrayOutput added in v3.47.1

type AttachedDatabaseConfigurationArrayOutput struct{ *pulumi.OutputState }

func (AttachedDatabaseConfigurationArrayOutput) ElementType added in v3.47.1

func (AttachedDatabaseConfigurationArrayOutput) Index added in v3.47.1

func (AttachedDatabaseConfigurationArrayOutput) ToAttachedDatabaseConfigurationArrayOutput added in v3.47.1

func (o AttachedDatabaseConfigurationArrayOutput) ToAttachedDatabaseConfigurationArrayOutput() AttachedDatabaseConfigurationArrayOutput

func (AttachedDatabaseConfigurationArrayOutput) ToAttachedDatabaseConfigurationArrayOutputWithContext added in v3.47.1

func (o AttachedDatabaseConfigurationArrayOutput) ToAttachedDatabaseConfigurationArrayOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationArrayOutput

type AttachedDatabaseConfigurationInput added in v3.31.1

type AttachedDatabaseConfigurationInput interface {
	pulumi.Input

	ToAttachedDatabaseConfigurationOutput() AttachedDatabaseConfigurationOutput
	ToAttachedDatabaseConfigurationOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationOutput
}

type AttachedDatabaseConfigurationMap added in v3.47.1

type AttachedDatabaseConfigurationMap map[string]AttachedDatabaseConfigurationInput

func (AttachedDatabaseConfigurationMap) ElementType added in v3.47.1

func (AttachedDatabaseConfigurationMap) ToAttachedDatabaseConfigurationMapOutput added in v3.47.1

func (i AttachedDatabaseConfigurationMap) ToAttachedDatabaseConfigurationMapOutput() AttachedDatabaseConfigurationMapOutput

func (AttachedDatabaseConfigurationMap) ToAttachedDatabaseConfigurationMapOutputWithContext added in v3.47.1

func (i AttachedDatabaseConfigurationMap) ToAttachedDatabaseConfigurationMapOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationMapOutput

type AttachedDatabaseConfigurationMapInput added in v3.47.1

type AttachedDatabaseConfigurationMapInput interface {
	pulumi.Input

	ToAttachedDatabaseConfigurationMapOutput() AttachedDatabaseConfigurationMapOutput
	ToAttachedDatabaseConfigurationMapOutputWithContext(context.Context) AttachedDatabaseConfigurationMapOutput
}

AttachedDatabaseConfigurationMapInput is an input type that accepts AttachedDatabaseConfigurationMap and AttachedDatabaseConfigurationMapOutput values. You can construct a concrete instance of `AttachedDatabaseConfigurationMapInput` via:

AttachedDatabaseConfigurationMap{ "key": AttachedDatabaseConfigurationArgs{...} }

type AttachedDatabaseConfigurationMapOutput added in v3.47.1

type AttachedDatabaseConfigurationMapOutput struct{ *pulumi.OutputState }

func (AttachedDatabaseConfigurationMapOutput) ElementType added in v3.47.1

func (AttachedDatabaseConfigurationMapOutput) MapIndex added in v3.47.1

func (AttachedDatabaseConfigurationMapOutput) ToAttachedDatabaseConfigurationMapOutput added in v3.47.1

func (o AttachedDatabaseConfigurationMapOutput) ToAttachedDatabaseConfigurationMapOutput() AttachedDatabaseConfigurationMapOutput

func (AttachedDatabaseConfigurationMapOutput) ToAttachedDatabaseConfigurationMapOutputWithContext added in v3.47.1

func (o AttachedDatabaseConfigurationMapOutput) ToAttachedDatabaseConfigurationMapOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationMapOutput

type AttachedDatabaseConfigurationOutput added in v3.31.1

type AttachedDatabaseConfigurationOutput struct {
	*pulumi.OutputState
}

func (AttachedDatabaseConfigurationOutput) ElementType added in v3.31.1

func (AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationOutput added in v3.31.1

func (o AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationOutput() AttachedDatabaseConfigurationOutput

func (AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationOutputWithContext added in v3.31.1

func (o AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationOutput

func (AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationPtrOutput added in v3.47.1

func (o AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationPtrOutput() AttachedDatabaseConfigurationPtrOutput

func (AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationPtrOutputWithContext added in v3.47.1

func (o AttachedDatabaseConfigurationOutput) ToAttachedDatabaseConfigurationPtrOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationPtrOutput

type AttachedDatabaseConfigurationPtrInput added in v3.47.1

type AttachedDatabaseConfigurationPtrInput interface {
	pulumi.Input

	ToAttachedDatabaseConfigurationPtrOutput() AttachedDatabaseConfigurationPtrOutput
	ToAttachedDatabaseConfigurationPtrOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationPtrOutput
}

type AttachedDatabaseConfigurationPtrOutput added in v3.47.1

type AttachedDatabaseConfigurationPtrOutput struct {
	*pulumi.OutputState
}

func (AttachedDatabaseConfigurationPtrOutput) ElementType added in v3.47.1

func (AttachedDatabaseConfigurationPtrOutput) ToAttachedDatabaseConfigurationPtrOutput added in v3.47.1

func (o AttachedDatabaseConfigurationPtrOutput) ToAttachedDatabaseConfigurationPtrOutput() AttachedDatabaseConfigurationPtrOutput

func (AttachedDatabaseConfigurationPtrOutput) ToAttachedDatabaseConfigurationPtrOutputWithContext added in v3.47.1

func (o AttachedDatabaseConfigurationPtrOutput) ToAttachedDatabaseConfigurationPtrOutputWithContext(ctx context.Context) AttachedDatabaseConfigurationPtrOutput

type AttachedDatabaseConfigurationState added in v3.12.0

type AttachedDatabaseConfigurationState struct {
	// The list of databases from the `clusterResourceId` which are currently attached to the cluster.
	AttachedDatabaseNames pulumi.StringArrayInput
	// Specifies the name of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// The resource id of the cluster where the databases you would like to attach reside.
	ClusterResourceId pulumi.StringPtrInput
	// The name of the database which you would like to attach, use * if you want to follow all current and future databases.
	DatabaseName pulumi.StringPtrInput
	// The default principals modification kind. Valid values are: `None` (default), `Replace` and `Union`.
	DefaultPrincipalModificationKind pulumi.StringPtrInput
	// Specifies the location of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Attached Database Configuration to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the resource group of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
}

func (AttachedDatabaseConfigurationState) ElementType added in v3.12.0

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// The Kusto Cluster URI to be used for data ingestion.
	DataIngestionUri pulumi.StringOutput `pulumi:"dataIngestionUri"`
	// Is the cluster's double encryption enabled? Defaults to `false`. Changing this forces a new resource to be created.
	DoubleEncryptionEnabled pulumi.BoolPtrOutput `pulumi:"doubleEncryptionEnabled"`
	// Specifies if the cluster's disks are encrypted.
	EnableDiskEncryption pulumi.BoolPtrOutput `pulumi:"enableDiskEncryption"`
	// Specifies if the purge operations are enabled.
	EnablePurge pulumi.BoolPtrOutput `pulumi:"enablePurge"`
	// Specifies if the streaming ingest is enabled.
	EnableStreamingIngest pulumi.BoolPtrOutput `pulumi:"enableStreamingIngest"`
	// . The engine type that should be used. Possible values are `V2` and `V3`. Defaults to `V2`.
	Engine pulumi.StringPtrOutput `pulumi:"engine"`
	// An identity block.
	Identity ClusterIdentityOutput `pulumi:"identity"`
	// An list of `languageExtensions` to enable. Valid values are: `PYTHON` and `R`.
	LanguageExtensions pulumi.StringArrayOutput `pulumi:"languageExtensions"`
	// The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Kusto Cluster to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// An `optimizedAutoScale` block as defined below.
	OptimizedAutoScale ClusterOptimizedAutoScalePtrOutput `pulumi:"optimizedAutoScale"`
	// Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `sku` block as defined below.
	Sku ClusterSkuOutput `pulumi:"sku"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies a list of tenant IDs that are trusted by the cluster.
	TrustedExternalTenants pulumi.StringArrayOutput `pulumi:"trustedExternalTenants"`
	// The FQDN of the Azure Kusto Cluster.
	Uri pulumi.StringOutput `pulumi:"uri"`
	// A `virtualNetworkConfiguration` block as defined below. Changing this forces a new resource to be created.
	VirtualNetworkConfiguration ClusterVirtualNetworkConfigurationPtrOutput `pulumi:"virtualNetworkConfiguration"`
	// A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a Kusto (also known as Azure Data Explorer) Cluster

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewCluster(ctx, "example", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto Clusters can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/cluster:Cluster example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1

```

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 added in v3.31.1

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput added in v3.31.1

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext added in v3.31.1

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

func (*Cluster) ToClusterPtrOutput added in v3.47.1

func (i *Cluster) ToClusterPtrOutput() ClusterPtrOutput

func (*Cluster) ToClusterPtrOutputWithContext added in v3.47.1

func (i *Cluster) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterArgs

type ClusterArgs struct {
	// Is the cluster's double encryption enabled? Defaults to `false`. Changing this forces a new resource to be created.
	DoubleEncryptionEnabled pulumi.BoolPtrInput
	// Specifies if the cluster's disks are encrypted.
	EnableDiskEncryption pulumi.BoolPtrInput
	// Specifies if the purge operations are enabled.
	EnablePurge pulumi.BoolPtrInput
	// Specifies if the streaming ingest is enabled.
	EnableStreamingIngest pulumi.BoolPtrInput
	// . The engine type that should be used. Possible values are `V2` and `V3`. Defaults to `V2`.
	Engine pulumi.StringPtrInput
	// An identity block.
	Identity ClusterIdentityPtrInput
	// An list of `languageExtensions` to enable. Valid values are: `PYTHON` and `R`.
	LanguageExtensions pulumi.StringArrayInput
	// The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Cluster to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// An `optimizedAutoScale` block as defined below.
	OptimizedAutoScale ClusterOptimizedAutoScalePtrInput
	// Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `sku` block as defined below.
	Sku ClusterSkuInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies a list of tenant IDs that are trusted by the cluster.
	TrustedExternalTenants pulumi.StringArrayInput
	// A `virtualNetworkConfiguration` block as defined below. Changing this forces a new resource to be created.
	VirtualNetworkConfiguration ClusterVirtualNetworkConfigurationPtrInput
	// A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray added in v3.47.1

type ClusterArray []ClusterInput

func (ClusterArray) ElementType added in v3.47.1

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput added in v3.47.1

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext added in v3.47.1

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

type ClusterArrayInput added in v3.47.1

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 added in v3.47.1

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType added in v3.47.1

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index added in v3.47.1

func (ClusterArrayOutput) ToClusterArrayOutput added in v3.47.1

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext added in v3.47.1

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

type ClusterCustomerManagedKey added in v3.13.0

type ClusterCustomerManagedKey struct {
	pulumi.CustomResourceState

	// The ID of the Kusto Cluster. Changing this forces a new resource to be created.
	ClusterId pulumi.StringOutput `pulumi:"clusterId"`
	// The name of Key Vault Key.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// The ID of the Key Vault. Changing this forces a new resource to be created.
	KeyVaultId pulumi.StringOutput `pulumi:"keyVaultId"`
	// The version of Key Vault Key.
	KeyVersion pulumi.StringOutput `pulumi:"keyVersion"`
}

Manages a Customer Managed Key for a Kusto Cluster.

## Import

Customer Managed Keys for a Kusto Cluster can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/clusterCustomerManagedKey:ClusterCustomerManagedKey example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1

```

func GetClusterCustomerManagedKey added in v3.13.0

func GetClusterCustomerManagedKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterCustomerManagedKeyState, opts ...pulumi.ResourceOption) (*ClusterCustomerManagedKey, error)

GetClusterCustomerManagedKey gets an existing ClusterCustomerManagedKey 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 NewClusterCustomerManagedKey added in v3.13.0

func NewClusterCustomerManagedKey(ctx *pulumi.Context,
	name string, args *ClusterCustomerManagedKeyArgs, opts ...pulumi.ResourceOption) (*ClusterCustomerManagedKey, error)

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

func (*ClusterCustomerManagedKey) ElementType added in v3.31.1

func (*ClusterCustomerManagedKey) ElementType() reflect.Type

func (*ClusterCustomerManagedKey) ToClusterCustomerManagedKeyOutput added in v3.31.1

func (i *ClusterCustomerManagedKey) ToClusterCustomerManagedKeyOutput() ClusterCustomerManagedKeyOutput

func (*ClusterCustomerManagedKey) ToClusterCustomerManagedKeyOutputWithContext added in v3.31.1

func (i *ClusterCustomerManagedKey) ToClusterCustomerManagedKeyOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyOutput

func (*ClusterCustomerManagedKey) ToClusterCustomerManagedKeyPtrOutput added in v3.47.1

func (i *ClusterCustomerManagedKey) ToClusterCustomerManagedKeyPtrOutput() ClusterCustomerManagedKeyPtrOutput

func (*ClusterCustomerManagedKey) ToClusterCustomerManagedKeyPtrOutputWithContext added in v3.47.1

func (i *ClusterCustomerManagedKey) ToClusterCustomerManagedKeyPtrOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyPtrOutput

type ClusterCustomerManagedKeyArgs added in v3.13.0

type ClusterCustomerManagedKeyArgs struct {
	// The ID of the Kusto Cluster. Changing this forces a new resource to be created.
	ClusterId pulumi.StringInput
	// The name of Key Vault Key.
	KeyName pulumi.StringInput
	// The ID of the Key Vault. Changing this forces a new resource to be created.
	KeyVaultId pulumi.StringInput
	// The version of Key Vault Key.
	KeyVersion pulumi.StringInput
}

The set of arguments for constructing a ClusterCustomerManagedKey resource.

func (ClusterCustomerManagedKeyArgs) ElementType added in v3.13.0

type ClusterCustomerManagedKeyArray added in v3.47.1

type ClusterCustomerManagedKeyArray []ClusterCustomerManagedKeyInput

func (ClusterCustomerManagedKeyArray) ElementType added in v3.47.1

func (ClusterCustomerManagedKeyArray) ToClusterCustomerManagedKeyArrayOutput added in v3.47.1

func (i ClusterCustomerManagedKeyArray) ToClusterCustomerManagedKeyArrayOutput() ClusterCustomerManagedKeyArrayOutput

func (ClusterCustomerManagedKeyArray) ToClusterCustomerManagedKeyArrayOutputWithContext added in v3.47.1

func (i ClusterCustomerManagedKeyArray) ToClusterCustomerManagedKeyArrayOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyArrayOutput

type ClusterCustomerManagedKeyArrayInput added in v3.47.1

type ClusterCustomerManagedKeyArrayInput interface {
	pulumi.Input

	ToClusterCustomerManagedKeyArrayOutput() ClusterCustomerManagedKeyArrayOutput
	ToClusterCustomerManagedKeyArrayOutputWithContext(context.Context) ClusterCustomerManagedKeyArrayOutput
}

ClusterCustomerManagedKeyArrayInput is an input type that accepts ClusterCustomerManagedKeyArray and ClusterCustomerManagedKeyArrayOutput values. You can construct a concrete instance of `ClusterCustomerManagedKeyArrayInput` via:

ClusterCustomerManagedKeyArray{ ClusterCustomerManagedKeyArgs{...} }

type ClusterCustomerManagedKeyArrayOutput added in v3.47.1

type ClusterCustomerManagedKeyArrayOutput struct{ *pulumi.OutputState }

func (ClusterCustomerManagedKeyArrayOutput) ElementType added in v3.47.1

func (ClusterCustomerManagedKeyArrayOutput) Index added in v3.47.1

func (ClusterCustomerManagedKeyArrayOutput) ToClusterCustomerManagedKeyArrayOutput added in v3.47.1

func (o ClusterCustomerManagedKeyArrayOutput) ToClusterCustomerManagedKeyArrayOutput() ClusterCustomerManagedKeyArrayOutput

func (ClusterCustomerManagedKeyArrayOutput) ToClusterCustomerManagedKeyArrayOutputWithContext added in v3.47.1

func (o ClusterCustomerManagedKeyArrayOutput) ToClusterCustomerManagedKeyArrayOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyArrayOutput

type ClusterCustomerManagedKeyInput added in v3.31.1

type ClusterCustomerManagedKeyInput interface {
	pulumi.Input

	ToClusterCustomerManagedKeyOutput() ClusterCustomerManagedKeyOutput
	ToClusterCustomerManagedKeyOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyOutput
}

type ClusterCustomerManagedKeyMap added in v3.47.1

type ClusterCustomerManagedKeyMap map[string]ClusterCustomerManagedKeyInput

func (ClusterCustomerManagedKeyMap) ElementType added in v3.47.1

func (ClusterCustomerManagedKeyMap) ToClusterCustomerManagedKeyMapOutput added in v3.47.1

func (i ClusterCustomerManagedKeyMap) ToClusterCustomerManagedKeyMapOutput() ClusterCustomerManagedKeyMapOutput

func (ClusterCustomerManagedKeyMap) ToClusterCustomerManagedKeyMapOutputWithContext added in v3.47.1

func (i ClusterCustomerManagedKeyMap) ToClusterCustomerManagedKeyMapOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyMapOutput

type ClusterCustomerManagedKeyMapInput added in v3.47.1

type ClusterCustomerManagedKeyMapInput interface {
	pulumi.Input

	ToClusterCustomerManagedKeyMapOutput() ClusterCustomerManagedKeyMapOutput
	ToClusterCustomerManagedKeyMapOutputWithContext(context.Context) ClusterCustomerManagedKeyMapOutput
}

ClusterCustomerManagedKeyMapInput is an input type that accepts ClusterCustomerManagedKeyMap and ClusterCustomerManagedKeyMapOutput values. You can construct a concrete instance of `ClusterCustomerManagedKeyMapInput` via:

ClusterCustomerManagedKeyMap{ "key": ClusterCustomerManagedKeyArgs{...} }

type ClusterCustomerManagedKeyMapOutput added in v3.47.1

type ClusterCustomerManagedKeyMapOutput struct{ *pulumi.OutputState }

func (ClusterCustomerManagedKeyMapOutput) ElementType added in v3.47.1

func (ClusterCustomerManagedKeyMapOutput) MapIndex added in v3.47.1

func (ClusterCustomerManagedKeyMapOutput) ToClusterCustomerManagedKeyMapOutput added in v3.47.1

func (o ClusterCustomerManagedKeyMapOutput) ToClusterCustomerManagedKeyMapOutput() ClusterCustomerManagedKeyMapOutput

func (ClusterCustomerManagedKeyMapOutput) ToClusterCustomerManagedKeyMapOutputWithContext added in v3.47.1

func (o ClusterCustomerManagedKeyMapOutput) ToClusterCustomerManagedKeyMapOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyMapOutput

type ClusterCustomerManagedKeyOutput added in v3.31.1

type ClusterCustomerManagedKeyOutput struct {
	*pulumi.OutputState
}

func (ClusterCustomerManagedKeyOutput) ElementType added in v3.31.1

func (ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyOutput added in v3.31.1

func (o ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyOutput() ClusterCustomerManagedKeyOutput

func (ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyOutputWithContext added in v3.31.1

func (o ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyOutput

func (ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyPtrOutput added in v3.47.1

func (o ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyPtrOutput() ClusterCustomerManagedKeyPtrOutput

func (ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyPtrOutputWithContext added in v3.47.1

func (o ClusterCustomerManagedKeyOutput) ToClusterCustomerManagedKeyPtrOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyPtrOutput

type ClusterCustomerManagedKeyPtrInput added in v3.47.1

type ClusterCustomerManagedKeyPtrInput interface {
	pulumi.Input

	ToClusterCustomerManagedKeyPtrOutput() ClusterCustomerManagedKeyPtrOutput
	ToClusterCustomerManagedKeyPtrOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyPtrOutput
}

type ClusterCustomerManagedKeyPtrOutput added in v3.47.1

type ClusterCustomerManagedKeyPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterCustomerManagedKeyPtrOutput) ElementType added in v3.47.1

func (ClusterCustomerManagedKeyPtrOutput) ToClusterCustomerManagedKeyPtrOutput added in v3.47.1

func (o ClusterCustomerManagedKeyPtrOutput) ToClusterCustomerManagedKeyPtrOutput() ClusterCustomerManagedKeyPtrOutput

func (ClusterCustomerManagedKeyPtrOutput) ToClusterCustomerManagedKeyPtrOutputWithContext added in v3.47.1

func (o ClusterCustomerManagedKeyPtrOutput) ToClusterCustomerManagedKeyPtrOutputWithContext(ctx context.Context) ClusterCustomerManagedKeyPtrOutput

type ClusterCustomerManagedKeyState added in v3.13.0

type ClusterCustomerManagedKeyState struct {
	// The ID of the Kusto Cluster. Changing this forces a new resource to be created.
	ClusterId pulumi.StringPtrInput
	// The name of Key Vault Key.
	KeyName pulumi.StringPtrInput
	// The ID of the Key Vault. Changing this forces a new resource to be created.
	KeyVaultId pulumi.StringPtrInput
	// The version of Key Vault Key.
	KeyVersion pulumi.StringPtrInput
}

func (ClusterCustomerManagedKeyState) ElementType added in v3.13.0

type ClusterIdentity added in v3.11.0

type ClusterIdentity struct {
	// A list of IDs for User Assigned Managed Identity resources to be assigned.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this System Assigned Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this System Assigned Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.
	Type string `pulumi:"type"`
}

type ClusterIdentityArgs added in v3.11.0

type ClusterIdentityArgs struct {
	// A list of IDs for User Assigned Managed Identity resources to be assigned.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this System Assigned Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this System Assigned Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ClusterIdentityArgs) ElementType added in v3.11.0

func (ClusterIdentityArgs) ElementType() reflect.Type

func (ClusterIdentityArgs) ToClusterIdentityOutput added in v3.11.0

func (i ClusterIdentityArgs) ToClusterIdentityOutput() ClusterIdentityOutput

func (ClusterIdentityArgs) ToClusterIdentityOutputWithContext added in v3.11.0

func (i ClusterIdentityArgs) ToClusterIdentityOutputWithContext(ctx context.Context) ClusterIdentityOutput

func (ClusterIdentityArgs) ToClusterIdentityPtrOutput added in v3.11.0

func (i ClusterIdentityArgs) ToClusterIdentityPtrOutput() ClusterIdentityPtrOutput

func (ClusterIdentityArgs) ToClusterIdentityPtrOutputWithContext added in v3.11.0

func (i ClusterIdentityArgs) ToClusterIdentityPtrOutputWithContext(ctx context.Context) ClusterIdentityPtrOutput

type ClusterIdentityInput added in v3.11.0

type ClusterIdentityInput interface {
	pulumi.Input

	ToClusterIdentityOutput() ClusterIdentityOutput
	ToClusterIdentityOutputWithContext(context.Context) ClusterIdentityOutput
}

ClusterIdentityInput is an input type that accepts ClusterIdentityArgs and ClusterIdentityOutput values. You can construct a concrete instance of `ClusterIdentityInput` via:

ClusterIdentityArgs{...}

type ClusterIdentityOutput added in v3.11.0

type ClusterIdentityOutput struct{ *pulumi.OutputState }

func (ClusterIdentityOutput) ElementType added in v3.11.0

func (ClusterIdentityOutput) ElementType() reflect.Type

func (ClusterIdentityOutput) IdentityIds added in v3.11.0

A list of IDs for User Assigned Managed Identity resources to be assigned.

func (ClusterIdentityOutput) PrincipalId added in v3.11.0

The Principal ID associated with this System Assigned Managed Service Identity.

func (ClusterIdentityOutput) TenantId added in v3.11.0

The Tenant ID associated with this System Assigned Managed Service Identity.

func (ClusterIdentityOutput) ToClusterIdentityOutput added in v3.11.0

func (o ClusterIdentityOutput) ToClusterIdentityOutput() ClusterIdentityOutput

func (ClusterIdentityOutput) ToClusterIdentityOutputWithContext added in v3.11.0

func (o ClusterIdentityOutput) ToClusterIdentityOutputWithContext(ctx context.Context) ClusterIdentityOutput

func (ClusterIdentityOutput) ToClusterIdentityPtrOutput added in v3.11.0

func (o ClusterIdentityOutput) ToClusterIdentityPtrOutput() ClusterIdentityPtrOutput

func (ClusterIdentityOutput) ToClusterIdentityPtrOutputWithContext added in v3.11.0

func (o ClusterIdentityOutput) ToClusterIdentityPtrOutputWithContext(ctx context.Context) ClusterIdentityPtrOutput

func (ClusterIdentityOutput) Type added in v3.11.0

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.

type ClusterIdentityPtrInput added in v3.11.0

type ClusterIdentityPtrInput interface {
	pulumi.Input

	ToClusterIdentityPtrOutput() ClusterIdentityPtrOutput
	ToClusterIdentityPtrOutputWithContext(context.Context) ClusterIdentityPtrOutput
}

ClusterIdentityPtrInput is an input type that accepts ClusterIdentityArgs, ClusterIdentityPtr and ClusterIdentityPtrOutput values. You can construct a concrete instance of `ClusterIdentityPtrInput` via:

        ClusterIdentityArgs{...}

or:

        nil

func ClusterIdentityPtr added in v3.11.0

func ClusterIdentityPtr(v *ClusterIdentityArgs) ClusterIdentityPtrInput

type ClusterIdentityPtrOutput added in v3.11.0

type ClusterIdentityPtrOutput struct{ *pulumi.OutputState }

func (ClusterIdentityPtrOutput) Elem added in v3.11.0

func (ClusterIdentityPtrOutput) ElementType added in v3.11.0

func (ClusterIdentityPtrOutput) ElementType() reflect.Type

func (ClusterIdentityPtrOutput) IdentityIds added in v3.11.0

A list of IDs for User Assigned Managed Identity resources to be assigned.

func (ClusterIdentityPtrOutput) PrincipalId added in v3.11.0

The Principal ID associated with this System Assigned Managed Service Identity.

func (ClusterIdentityPtrOutput) TenantId added in v3.11.0

The Tenant ID associated with this System Assigned Managed Service Identity.

func (ClusterIdentityPtrOutput) ToClusterIdentityPtrOutput added in v3.11.0

func (o ClusterIdentityPtrOutput) ToClusterIdentityPtrOutput() ClusterIdentityPtrOutput

func (ClusterIdentityPtrOutput) ToClusterIdentityPtrOutputWithContext added in v3.11.0

func (o ClusterIdentityPtrOutput) ToClusterIdentityPtrOutputWithContext(ctx context.Context) ClusterIdentityPtrOutput

func (ClusterIdentityPtrOutput) Type added in v3.11.0

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.

type ClusterInput added in v3.31.1

type ClusterInput interface {
	pulumi.Input

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

type ClusterMap added in v3.47.1

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType added in v3.47.1

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput added in v3.47.1

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext added in v3.47.1

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

type ClusterMapInput added in v3.47.1

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 added in v3.47.1

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType added in v3.47.1

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex added in v3.47.1

func (ClusterMapOutput) ToClusterMapOutput added in v3.47.1

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext added in v3.47.1

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

type ClusterOptimizedAutoScale added in v3.12.0

type ClusterOptimizedAutoScale struct {
	// The maximum number of allowed instances. Must between `0` and `1000`.
	MaximumInstances int `pulumi:"maximumInstances"`
	// The minimum number of allowed instances. Must between `0` and `1000`.
	MinimumInstances int `pulumi:"minimumInstances"`
}

type ClusterOptimizedAutoScaleArgs added in v3.12.0

type ClusterOptimizedAutoScaleArgs struct {
	// The maximum number of allowed instances. Must between `0` and `1000`.
	MaximumInstances pulumi.IntInput `pulumi:"maximumInstances"`
	// The minimum number of allowed instances. Must between `0` and `1000`.
	MinimumInstances pulumi.IntInput `pulumi:"minimumInstances"`
}

func (ClusterOptimizedAutoScaleArgs) ElementType added in v3.12.0

func (ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScaleOutput added in v3.12.0

func (i ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScaleOutput() ClusterOptimizedAutoScaleOutput

func (ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScaleOutputWithContext added in v3.12.0

func (i ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScaleOutputWithContext(ctx context.Context) ClusterOptimizedAutoScaleOutput

func (ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScalePtrOutput added in v3.12.0

func (i ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScalePtrOutput() ClusterOptimizedAutoScalePtrOutput

func (ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScalePtrOutputWithContext added in v3.12.0

func (i ClusterOptimizedAutoScaleArgs) ToClusterOptimizedAutoScalePtrOutputWithContext(ctx context.Context) ClusterOptimizedAutoScalePtrOutput

type ClusterOptimizedAutoScaleInput added in v3.12.0

type ClusterOptimizedAutoScaleInput interface {
	pulumi.Input

	ToClusterOptimizedAutoScaleOutput() ClusterOptimizedAutoScaleOutput
	ToClusterOptimizedAutoScaleOutputWithContext(context.Context) ClusterOptimizedAutoScaleOutput
}

ClusterOptimizedAutoScaleInput is an input type that accepts ClusterOptimizedAutoScaleArgs and ClusterOptimizedAutoScaleOutput values. You can construct a concrete instance of `ClusterOptimizedAutoScaleInput` via:

ClusterOptimizedAutoScaleArgs{...}

type ClusterOptimizedAutoScaleOutput added in v3.12.0

type ClusterOptimizedAutoScaleOutput struct{ *pulumi.OutputState }

func (ClusterOptimizedAutoScaleOutput) ElementType added in v3.12.0

func (ClusterOptimizedAutoScaleOutput) MaximumInstances added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) MaximumInstances() pulumi.IntOutput

The maximum number of allowed instances. Must between `0` and `1000`.

func (ClusterOptimizedAutoScaleOutput) MinimumInstances added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) MinimumInstances() pulumi.IntOutput

The minimum number of allowed instances. Must between `0` and `1000`.

func (ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScaleOutput added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScaleOutput() ClusterOptimizedAutoScaleOutput

func (ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScaleOutputWithContext added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScaleOutputWithContext(ctx context.Context) ClusterOptimizedAutoScaleOutput

func (ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScalePtrOutput added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScalePtrOutput() ClusterOptimizedAutoScalePtrOutput

func (ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScalePtrOutputWithContext added in v3.12.0

func (o ClusterOptimizedAutoScaleOutput) ToClusterOptimizedAutoScalePtrOutputWithContext(ctx context.Context) ClusterOptimizedAutoScalePtrOutput

type ClusterOptimizedAutoScalePtrInput added in v3.12.0

type ClusterOptimizedAutoScalePtrInput interface {
	pulumi.Input

	ToClusterOptimizedAutoScalePtrOutput() ClusterOptimizedAutoScalePtrOutput
	ToClusterOptimizedAutoScalePtrOutputWithContext(context.Context) ClusterOptimizedAutoScalePtrOutput
}

ClusterOptimizedAutoScalePtrInput is an input type that accepts ClusterOptimizedAutoScaleArgs, ClusterOptimizedAutoScalePtr and ClusterOptimizedAutoScalePtrOutput values. You can construct a concrete instance of `ClusterOptimizedAutoScalePtrInput` via:

        ClusterOptimizedAutoScaleArgs{...}

or:

        nil

func ClusterOptimizedAutoScalePtr added in v3.12.0

type ClusterOptimizedAutoScalePtrOutput added in v3.12.0

type ClusterOptimizedAutoScalePtrOutput struct{ *pulumi.OutputState }

func (ClusterOptimizedAutoScalePtrOutput) Elem added in v3.12.0

func (ClusterOptimizedAutoScalePtrOutput) ElementType added in v3.12.0

func (ClusterOptimizedAutoScalePtrOutput) MaximumInstances added in v3.12.0

The maximum number of allowed instances. Must between `0` and `1000`.

func (ClusterOptimizedAutoScalePtrOutput) MinimumInstances added in v3.12.0

The minimum number of allowed instances. Must between `0` and `1000`.

func (ClusterOptimizedAutoScalePtrOutput) ToClusterOptimizedAutoScalePtrOutput added in v3.12.0

func (o ClusterOptimizedAutoScalePtrOutput) ToClusterOptimizedAutoScalePtrOutput() ClusterOptimizedAutoScalePtrOutput

func (ClusterOptimizedAutoScalePtrOutput) ToClusterOptimizedAutoScalePtrOutputWithContext added in v3.12.0

func (o ClusterOptimizedAutoScalePtrOutput) ToClusterOptimizedAutoScalePtrOutputWithContext(ctx context.Context) ClusterOptimizedAutoScalePtrOutput

type ClusterOutput added in v3.31.1

type ClusterOutput struct {
	*pulumi.OutputState
}

func (ClusterOutput) ElementType added in v3.31.1

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) ToClusterOutput added in v3.31.1

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext added in v3.31.1

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

func (ClusterOutput) ToClusterPtrOutput added in v3.47.1

func (o ClusterOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterOutput) ToClusterPtrOutputWithContext added in v3.47.1

func (o ClusterOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterPrincipalAssignment added in v3.12.0

type ClusterPrincipalAssignment struct {
	pulumi.CustomResourceState

	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	Name        pulumi.StringOutput `pulumi:"name"`
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringOutput `pulumi:"principalId"`
	// The name of the principal.
	PrincipalName pulumi.StringOutput `pulumi:"principalName"`
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringOutput `pulumi:"principalType"`
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The cluster role assigned to the principal. Valid values include `AllDatabasesAdmin` and `AllDatabasesViewer`. Changing this forces a new resource to be created.
	Role pulumi.StringOutput `pulumi:"role"`
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// The name of the tenant.
	TenantName pulumi.StringOutput `pulumi:"tenantName"`
}

Manages a Kusto Cluster Principal Assignment.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleCluster, err := kusto.NewCluster(ctx, "exampleCluster", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewClusterPrincipalAssignment(ctx, "exampleClusterPrincipalAssignment", &kusto.ClusterPrincipalAssignmentArgs{
			ResourceGroupName: rg.Name,
			ClusterName:       exampleCluster.Name,
			TenantId:          pulumi.String(current.TenantId),
			PrincipalId:       pulumi.String(current.ClientId),
			PrincipalType:     pulumi.String("App"),
			Role:              pulumi.String("AllDatabasesAdmin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Data Explorer Cluster Principal Assignments can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/clusterPrincipalAssignment:ClusterPrincipalAssignment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/PrincipalAssignments/assignment1

```

func GetClusterPrincipalAssignment added in v3.12.0

func GetClusterPrincipalAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterPrincipalAssignmentState, opts ...pulumi.ResourceOption) (*ClusterPrincipalAssignment, error)

GetClusterPrincipalAssignment gets an existing ClusterPrincipalAssignment 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 NewClusterPrincipalAssignment added in v3.12.0

func NewClusterPrincipalAssignment(ctx *pulumi.Context,
	name string, args *ClusterPrincipalAssignmentArgs, opts ...pulumi.ResourceOption) (*ClusterPrincipalAssignment, error)

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

func (*ClusterPrincipalAssignment) ElementType added in v3.31.1

func (*ClusterPrincipalAssignment) ElementType() reflect.Type

func (*ClusterPrincipalAssignment) ToClusterPrincipalAssignmentOutput added in v3.31.1

func (i *ClusterPrincipalAssignment) ToClusterPrincipalAssignmentOutput() ClusterPrincipalAssignmentOutput

func (*ClusterPrincipalAssignment) ToClusterPrincipalAssignmentOutputWithContext added in v3.31.1

func (i *ClusterPrincipalAssignment) ToClusterPrincipalAssignmentOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentOutput

func (*ClusterPrincipalAssignment) ToClusterPrincipalAssignmentPtrOutput added in v3.47.1

func (i *ClusterPrincipalAssignment) ToClusterPrincipalAssignmentPtrOutput() ClusterPrincipalAssignmentPtrOutput

func (*ClusterPrincipalAssignment) ToClusterPrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (i *ClusterPrincipalAssignment) ToClusterPrincipalAssignmentPtrOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentPtrOutput

type ClusterPrincipalAssignmentArgs added in v3.12.0

type ClusterPrincipalAssignmentArgs struct {
	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	Name        pulumi.StringPtrInput
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringInput
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringInput
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The cluster role assigned to the principal. Valid values include `AllDatabasesAdmin` and `AllDatabasesViewer`. Changing this forces a new resource to be created.
	Role pulumi.StringInput
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringInput
}

The set of arguments for constructing a ClusterPrincipalAssignment resource.

func (ClusterPrincipalAssignmentArgs) ElementType added in v3.12.0

type ClusterPrincipalAssignmentArray added in v3.47.1

type ClusterPrincipalAssignmentArray []ClusterPrincipalAssignmentInput

func (ClusterPrincipalAssignmentArray) ElementType added in v3.47.1

func (ClusterPrincipalAssignmentArray) ToClusterPrincipalAssignmentArrayOutput added in v3.47.1

func (i ClusterPrincipalAssignmentArray) ToClusterPrincipalAssignmentArrayOutput() ClusterPrincipalAssignmentArrayOutput

func (ClusterPrincipalAssignmentArray) ToClusterPrincipalAssignmentArrayOutputWithContext added in v3.47.1

func (i ClusterPrincipalAssignmentArray) ToClusterPrincipalAssignmentArrayOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentArrayOutput

type ClusterPrincipalAssignmentArrayInput added in v3.47.1

type ClusterPrincipalAssignmentArrayInput interface {
	pulumi.Input

	ToClusterPrincipalAssignmentArrayOutput() ClusterPrincipalAssignmentArrayOutput
	ToClusterPrincipalAssignmentArrayOutputWithContext(context.Context) ClusterPrincipalAssignmentArrayOutput
}

ClusterPrincipalAssignmentArrayInput is an input type that accepts ClusterPrincipalAssignmentArray and ClusterPrincipalAssignmentArrayOutput values. You can construct a concrete instance of `ClusterPrincipalAssignmentArrayInput` via:

ClusterPrincipalAssignmentArray{ ClusterPrincipalAssignmentArgs{...} }

type ClusterPrincipalAssignmentArrayOutput added in v3.47.1

type ClusterPrincipalAssignmentArrayOutput struct{ *pulumi.OutputState }

func (ClusterPrincipalAssignmentArrayOutput) ElementType added in v3.47.1

func (ClusterPrincipalAssignmentArrayOutput) Index added in v3.47.1

func (ClusterPrincipalAssignmentArrayOutput) ToClusterPrincipalAssignmentArrayOutput added in v3.47.1

func (o ClusterPrincipalAssignmentArrayOutput) ToClusterPrincipalAssignmentArrayOutput() ClusterPrincipalAssignmentArrayOutput

func (ClusterPrincipalAssignmentArrayOutput) ToClusterPrincipalAssignmentArrayOutputWithContext added in v3.47.1

func (o ClusterPrincipalAssignmentArrayOutput) ToClusterPrincipalAssignmentArrayOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentArrayOutput

type ClusterPrincipalAssignmentInput added in v3.31.1

type ClusterPrincipalAssignmentInput interface {
	pulumi.Input

	ToClusterPrincipalAssignmentOutput() ClusterPrincipalAssignmentOutput
	ToClusterPrincipalAssignmentOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentOutput
}

type ClusterPrincipalAssignmentMap added in v3.47.1

type ClusterPrincipalAssignmentMap map[string]ClusterPrincipalAssignmentInput

func (ClusterPrincipalAssignmentMap) ElementType added in v3.47.1

func (ClusterPrincipalAssignmentMap) ToClusterPrincipalAssignmentMapOutput added in v3.47.1

func (i ClusterPrincipalAssignmentMap) ToClusterPrincipalAssignmentMapOutput() ClusterPrincipalAssignmentMapOutput

func (ClusterPrincipalAssignmentMap) ToClusterPrincipalAssignmentMapOutputWithContext added in v3.47.1

func (i ClusterPrincipalAssignmentMap) ToClusterPrincipalAssignmentMapOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentMapOutput

type ClusterPrincipalAssignmentMapInput added in v3.47.1

type ClusterPrincipalAssignmentMapInput interface {
	pulumi.Input

	ToClusterPrincipalAssignmentMapOutput() ClusterPrincipalAssignmentMapOutput
	ToClusterPrincipalAssignmentMapOutputWithContext(context.Context) ClusterPrincipalAssignmentMapOutput
}

ClusterPrincipalAssignmentMapInput is an input type that accepts ClusterPrincipalAssignmentMap and ClusterPrincipalAssignmentMapOutput values. You can construct a concrete instance of `ClusterPrincipalAssignmentMapInput` via:

ClusterPrincipalAssignmentMap{ "key": ClusterPrincipalAssignmentArgs{...} }

type ClusterPrincipalAssignmentMapOutput added in v3.47.1

type ClusterPrincipalAssignmentMapOutput struct{ *pulumi.OutputState }

func (ClusterPrincipalAssignmentMapOutput) ElementType added in v3.47.1

func (ClusterPrincipalAssignmentMapOutput) MapIndex added in v3.47.1

func (ClusterPrincipalAssignmentMapOutput) ToClusterPrincipalAssignmentMapOutput added in v3.47.1

func (o ClusterPrincipalAssignmentMapOutput) ToClusterPrincipalAssignmentMapOutput() ClusterPrincipalAssignmentMapOutput

func (ClusterPrincipalAssignmentMapOutput) ToClusterPrincipalAssignmentMapOutputWithContext added in v3.47.1

func (o ClusterPrincipalAssignmentMapOutput) ToClusterPrincipalAssignmentMapOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentMapOutput

type ClusterPrincipalAssignmentOutput added in v3.31.1

type ClusterPrincipalAssignmentOutput struct {
	*pulumi.OutputState
}

func (ClusterPrincipalAssignmentOutput) ElementType added in v3.31.1

func (ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentOutput added in v3.31.1

func (o ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentOutput() ClusterPrincipalAssignmentOutput

func (ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentOutputWithContext added in v3.31.1

func (o ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentOutput

func (ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentPtrOutput added in v3.47.1

func (o ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentPtrOutput() ClusterPrincipalAssignmentPtrOutput

func (ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (o ClusterPrincipalAssignmentOutput) ToClusterPrincipalAssignmentPtrOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentPtrOutput

type ClusterPrincipalAssignmentPtrInput added in v3.47.1

type ClusterPrincipalAssignmentPtrInput interface {
	pulumi.Input

	ToClusterPrincipalAssignmentPtrOutput() ClusterPrincipalAssignmentPtrOutput
	ToClusterPrincipalAssignmentPtrOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentPtrOutput
}

type ClusterPrincipalAssignmentPtrOutput added in v3.47.1

type ClusterPrincipalAssignmentPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterPrincipalAssignmentPtrOutput) ElementType added in v3.47.1

func (ClusterPrincipalAssignmentPtrOutput) ToClusterPrincipalAssignmentPtrOutput added in v3.47.1

func (o ClusterPrincipalAssignmentPtrOutput) ToClusterPrincipalAssignmentPtrOutput() ClusterPrincipalAssignmentPtrOutput

func (ClusterPrincipalAssignmentPtrOutput) ToClusterPrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (o ClusterPrincipalAssignmentPtrOutput) ToClusterPrincipalAssignmentPtrOutputWithContext(ctx context.Context) ClusterPrincipalAssignmentPtrOutput

type ClusterPrincipalAssignmentState added in v3.12.0

type ClusterPrincipalAssignmentState struct {
	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	Name        pulumi.StringPtrInput
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringPtrInput
	// The name of the principal.
	PrincipalName pulumi.StringPtrInput
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringPtrInput
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The cluster role assigned to the principal. Valid values include `AllDatabasesAdmin` and `AllDatabasesViewer`. Changing this forces a new resource to be created.
	Role pulumi.StringPtrInput
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringPtrInput
	// The name of the tenant.
	TenantName pulumi.StringPtrInput
}

func (ClusterPrincipalAssignmentState) ElementType added in v3.12.0

type ClusterPtrInput added in v3.47.1

type ClusterPtrInput interface {
	pulumi.Input

	ToClusterPtrOutput() ClusterPtrOutput
	ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput
}

type ClusterPtrOutput added in v3.47.1

type ClusterPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterPtrOutput) ElementType added in v3.47.1

func (ClusterPtrOutput) ElementType() reflect.Type

func (ClusterPtrOutput) ToClusterPtrOutput added in v3.47.1

func (o ClusterPtrOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterPtrOutput) ToClusterPtrOutputWithContext added in v3.47.1

func (o ClusterPtrOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterSku

type ClusterSku struct {
	// Specifies the node count for the cluster. Boundaries depend on the sku name.
	Capacity *int `pulumi:"capacity"`
	// The name of the SKU. Valid values are: `Dev(No SLA)_Standard_D11_v2`, `Dev(No SLA)_Standard_E2a_v4`, `Standard_D11_v2`, `Standard_D12_v2`, `Standard_D13_v2`, `Standard_D14_v2`, `Standard_DS13_v2+1TB_PS`, `Standard_DS13_v2+2TB_PS`, `Standard_DS14_v2+3TB_PS`, `Standard_DS14_v2+4TB_PS`, `Standard_E16as_v4+3TB_PS`, `Standard_E16as_v4+4TB_PS`, `Standard_E16a_v4`, `Standard_E2a_v4`, `Standard_E4a_v4`, `Standard_E64i_v3`, `Standard_E8as_v4+1TB_PS`, `Standard_E8as_v4+2TB_PS`, `Standard_E8a_v4`, `Standard_L16s`, `Standard_L4s` and `Standard_L8s`.
	Name string `pulumi:"name"`
}

type ClusterSkuArgs

type ClusterSkuArgs struct {
	// Specifies the node count for the cluster. Boundaries depend on the sku name.
	Capacity pulumi.IntPtrInput `pulumi:"capacity"`
	// The name of the SKU. Valid values are: `Dev(No SLA)_Standard_D11_v2`, `Dev(No SLA)_Standard_E2a_v4`, `Standard_D11_v2`, `Standard_D12_v2`, `Standard_D13_v2`, `Standard_D14_v2`, `Standard_DS13_v2+1TB_PS`, `Standard_DS13_v2+2TB_PS`, `Standard_DS14_v2+3TB_PS`, `Standard_DS14_v2+4TB_PS`, `Standard_E16as_v4+3TB_PS`, `Standard_E16as_v4+4TB_PS`, `Standard_E16a_v4`, `Standard_E2a_v4`, `Standard_E4a_v4`, `Standard_E64i_v3`, `Standard_E8as_v4+1TB_PS`, `Standard_E8as_v4+2TB_PS`, `Standard_E8a_v4`, `Standard_L16s`, `Standard_L4s` and `Standard_L8s`.
	Name pulumi.StringInput `pulumi:"name"`
}

func (ClusterSkuArgs) ElementType

func (ClusterSkuArgs) ElementType() reflect.Type

func (ClusterSkuArgs) ToClusterSkuOutput

func (i ClusterSkuArgs) ToClusterSkuOutput() ClusterSkuOutput

func (ClusterSkuArgs) ToClusterSkuOutputWithContext

func (i ClusterSkuArgs) ToClusterSkuOutputWithContext(ctx context.Context) ClusterSkuOutput

func (ClusterSkuArgs) ToClusterSkuPtrOutput

func (i ClusterSkuArgs) ToClusterSkuPtrOutput() ClusterSkuPtrOutput

func (ClusterSkuArgs) ToClusterSkuPtrOutputWithContext

func (i ClusterSkuArgs) ToClusterSkuPtrOutputWithContext(ctx context.Context) ClusterSkuPtrOutput

type ClusterSkuInput

type ClusterSkuInput interface {
	pulumi.Input

	ToClusterSkuOutput() ClusterSkuOutput
	ToClusterSkuOutputWithContext(context.Context) ClusterSkuOutput
}

ClusterSkuInput is an input type that accepts ClusterSkuArgs and ClusterSkuOutput values. You can construct a concrete instance of `ClusterSkuInput` via:

ClusterSkuArgs{...}

type ClusterSkuOutput

type ClusterSkuOutput struct{ *pulumi.OutputState }

func (ClusterSkuOutput) Capacity

func (o ClusterSkuOutput) Capacity() pulumi.IntPtrOutput

Specifies the node count for the cluster. Boundaries depend on the sku name.

func (ClusterSkuOutput) ElementType

func (ClusterSkuOutput) ElementType() reflect.Type

func (ClusterSkuOutput) Name

The name of the SKU. Valid values are: `Dev(No SLA)_Standard_D11_v2`, `Dev(No SLA)_Standard_E2a_v4`, `Standard_D11_v2`, `Standard_D12_v2`, `Standard_D13_v2`, `Standard_D14_v2`, `Standard_DS13_v2+1TB_PS`, `Standard_DS13_v2+2TB_PS`, `Standard_DS14_v2+3TB_PS`, `Standard_DS14_v2+4TB_PS`, `Standard_E16as_v4+3TB_PS`, `Standard_E16as_v4+4TB_PS`, `Standard_E16a_v4`, `Standard_E2a_v4`, `Standard_E4a_v4`, `Standard_E64i_v3`, `Standard_E8as_v4+1TB_PS`, `Standard_E8as_v4+2TB_PS`, `Standard_E8a_v4`, `Standard_L16s`, `Standard_L4s` and `Standard_L8s`.

func (ClusterSkuOutput) ToClusterSkuOutput

func (o ClusterSkuOutput) ToClusterSkuOutput() ClusterSkuOutput

func (ClusterSkuOutput) ToClusterSkuOutputWithContext

func (o ClusterSkuOutput) ToClusterSkuOutputWithContext(ctx context.Context) ClusterSkuOutput

func (ClusterSkuOutput) ToClusterSkuPtrOutput

func (o ClusterSkuOutput) ToClusterSkuPtrOutput() ClusterSkuPtrOutput

func (ClusterSkuOutput) ToClusterSkuPtrOutputWithContext

func (o ClusterSkuOutput) ToClusterSkuPtrOutputWithContext(ctx context.Context) ClusterSkuPtrOutput

type ClusterSkuPtrInput

type ClusterSkuPtrInput interface {
	pulumi.Input

	ToClusterSkuPtrOutput() ClusterSkuPtrOutput
	ToClusterSkuPtrOutputWithContext(context.Context) ClusterSkuPtrOutput
}

ClusterSkuPtrInput is an input type that accepts ClusterSkuArgs, ClusterSkuPtr and ClusterSkuPtrOutput values. You can construct a concrete instance of `ClusterSkuPtrInput` via:

        ClusterSkuArgs{...}

or:

        nil

func ClusterSkuPtr

func ClusterSkuPtr(v *ClusterSkuArgs) ClusterSkuPtrInput

type ClusterSkuPtrOutput

type ClusterSkuPtrOutput struct{ *pulumi.OutputState }

func (ClusterSkuPtrOutput) Capacity

Specifies the node count for the cluster. Boundaries depend on the sku name.

func (ClusterSkuPtrOutput) Elem

func (ClusterSkuPtrOutput) ElementType

func (ClusterSkuPtrOutput) ElementType() reflect.Type

func (ClusterSkuPtrOutput) Name

The name of the SKU. Valid values are: `Dev(No SLA)_Standard_D11_v2`, `Dev(No SLA)_Standard_E2a_v4`, `Standard_D11_v2`, `Standard_D12_v2`, `Standard_D13_v2`, `Standard_D14_v2`, `Standard_DS13_v2+1TB_PS`, `Standard_DS13_v2+2TB_PS`, `Standard_DS14_v2+3TB_PS`, `Standard_DS14_v2+4TB_PS`, `Standard_E16as_v4+3TB_PS`, `Standard_E16as_v4+4TB_PS`, `Standard_E16a_v4`, `Standard_E2a_v4`, `Standard_E4a_v4`, `Standard_E64i_v3`, `Standard_E8as_v4+1TB_PS`, `Standard_E8as_v4+2TB_PS`, `Standard_E8a_v4`, `Standard_L16s`, `Standard_L4s` and `Standard_L8s`.

func (ClusterSkuPtrOutput) ToClusterSkuPtrOutput

func (o ClusterSkuPtrOutput) ToClusterSkuPtrOutput() ClusterSkuPtrOutput

func (ClusterSkuPtrOutput) ToClusterSkuPtrOutputWithContext

func (o ClusterSkuPtrOutput) ToClusterSkuPtrOutputWithContext(ctx context.Context) ClusterSkuPtrOutput

type ClusterState

type ClusterState struct {
	// The Kusto Cluster URI to be used for data ingestion.
	DataIngestionUri pulumi.StringPtrInput
	// Is the cluster's double encryption enabled? Defaults to `false`. Changing this forces a new resource to be created.
	DoubleEncryptionEnabled pulumi.BoolPtrInput
	// Specifies if the cluster's disks are encrypted.
	EnableDiskEncryption pulumi.BoolPtrInput
	// Specifies if the purge operations are enabled.
	EnablePurge pulumi.BoolPtrInput
	// Specifies if the streaming ingest is enabled.
	EnableStreamingIngest pulumi.BoolPtrInput
	// . The engine type that should be used. Possible values are `V2` and `V3`. Defaults to `V2`.
	Engine pulumi.StringPtrInput
	// An identity block.
	Identity ClusterIdentityPtrInput
	// An list of `languageExtensions` to enable. Valid values are: `PYTHON` and `R`.
	LanguageExtensions pulumi.StringArrayInput
	// The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Cluster to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// An `optimizedAutoScale` block as defined below.
	OptimizedAutoScale ClusterOptimizedAutoScalePtrInput
	// Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `sku` block as defined below.
	Sku ClusterSkuPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies a list of tenant IDs that are trusted by the cluster.
	TrustedExternalTenants pulumi.StringArrayInput
	// The FQDN of the Azure Kusto Cluster.
	Uri pulumi.StringPtrInput
	// A `virtualNetworkConfiguration` block as defined below. Changing this forces a new resource to be created.
	VirtualNetworkConfiguration ClusterVirtualNetworkConfigurationPtrInput
	// A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type ClusterVirtualNetworkConfiguration added in v3.11.0

type ClusterVirtualNetworkConfiguration struct {
	// Data management's service public IP address resource id.
	DataManagementPublicIpId string `pulumi:"dataManagementPublicIpId"`
	// Engine service's public IP address resource id.
	EnginePublicIpId string `pulumi:"enginePublicIpId"`
	// The subnet resource id.
	SubnetId string `pulumi:"subnetId"`
}

type ClusterVirtualNetworkConfigurationArgs added in v3.11.0

type ClusterVirtualNetworkConfigurationArgs struct {
	// Data management's service public IP address resource id.
	DataManagementPublicIpId pulumi.StringInput `pulumi:"dataManagementPublicIpId"`
	// Engine service's public IP address resource id.
	EnginePublicIpId pulumi.StringInput `pulumi:"enginePublicIpId"`
	// The subnet resource id.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (ClusterVirtualNetworkConfigurationArgs) ElementType added in v3.11.0

func (ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationOutput added in v3.11.0

func (i ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationOutput() ClusterVirtualNetworkConfigurationOutput

func (ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationOutputWithContext added in v3.11.0

func (i ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationOutputWithContext(ctx context.Context) ClusterVirtualNetworkConfigurationOutput

func (ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationPtrOutput added in v3.11.0

func (i ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationPtrOutput() ClusterVirtualNetworkConfigurationPtrOutput

func (ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationPtrOutputWithContext added in v3.11.0

func (i ClusterVirtualNetworkConfigurationArgs) ToClusterVirtualNetworkConfigurationPtrOutputWithContext(ctx context.Context) ClusterVirtualNetworkConfigurationPtrOutput

type ClusterVirtualNetworkConfigurationInput added in v3.11.0

type ClusterVirtualNetworkConfigurationInput interface {
	pulumi.Input

	ToClusterVirtualNetworkConfigurationOutput() ClusterVirtualNetworkConfigurationOutput
	ToClusterVirtualNetworkConfigurationOutputWithContext(context.Context) ClusterVirtualNetworkConfigurationOutput
}

ClusterVirtualNetworkConfigurationInput is an input type that accepts ClusterVirtualNetworkConfigurationArgs and ClusterVirtualNetworkConfigurationOutput values. You can construct a concrete instance of `ClusterVirtualNetworkConfigurationInput` via:

ClusterVirtualNetworkConfigurationArgs{...}

type ClusterVirtualNetworkConfigurationOutput added in v3.11.0

type ClusterVirtualNetworkConfigurationOutput struct{ *pulumi.OutputState }

func (ClusterVirtualNetworkConfigurationOutput) DataManagementPublicIpId added in v3.11.0

func (o ClusterVirtualNetworkConfigurationOutput) DataManagementPublicIpId() pulumi.StringOutput

Data management's service public IP address resource id.

func (ClusterVirtualNetworkConfigurationOutput) ElementType added in v3.11.0

func (ClusterVirtualNetworkConfigurationOutput) EnginePublicIpId added in v3.11.0

Engine service's public IP address resource id.

func (ClusterVirtualNetworkConfigurationOutput) SubnetId added in v3.11.0

The subnet resource id.

func (ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationOutput added in v3.11.0

func (o ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationOutput() ClusterVirtualNetworkConfigurationOutput

func (ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationOutputWithContext added in v3.11.0

func (o ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationOutputWithContext(ctx context.Context) ClusterVirtualNetworkConfigurationOutput

func (ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationPtrOutput added in v3.11.0

func (o ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationPtrOutput() ClusterVirtualNetworkConfigurationPtrOutput

func (ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationPtrOutputWithContext added in v3.11.0

func (o ClusterVirtualNetworkConfigurationOutput) ToClusterVirtualNetworkConfigurationPtrOutputWithContext(ctx context.Context) ClusterVirtualNetworkConfigurationPtrOutput

type ClusterVirtualNetworkConfigurationPtrInput added in v3.11.0

type ClusterVirtualNetworkConfigurationPtrInput interface {
	pulumi.Input

	ToClusterVirtualNetworkConfigurationPtrOutput() ClusterVirtualNetworkConfigurationPtrOutput
	ToClusterVirtualNetworkConfigurationPtrOutputWithContext(context.Context) ClusterVirtualNetworkConfigurationPtrOutput
}

ClusterVirtualNetworkConfigurationPtrInput is an input type that accepts ClusterVirtualNetworkConfigurationArgs, ClusterVirtualNetworkConfigurationPtr and ClusterVirtualNetworkConfigurationPtrOutput values. You can construct a concrete instance of `ClusterVirtualNetworkConfigurationPtrInput` via:

        ClusterVirtualNetworkConfigurationArgs{...}

or:

        nil

type ClusterVirtualNetworkConfigurationPtrOutput added in v3.11.0

type ClusterVirtualNetworkConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ClusterVirtualNetworkConfigurationPtrOutput) DataManagementPublicIpId added in v3.11.0

Data management's service public IP address resource id.

func (ClusterVirtualNetworkConfigurationPtrOutput) Elem added in v3.11.0

func (ClusterVirtualNetworkConfigurationPtrOutput) ElementType added in v3.11.0

func (ClusterVirtualNetworkConfigurationPtrOutput) EnginePublicIpId added in v3.11.0

Engine service's public IP address resource id.

func (ClusterVirtualNetworkConfigurationPtrOutput) SubnetId added in v3.11.0

The subnet resource id.

func (ClusterVirtualNetworkConfigurationPtrOutput) ToClusterVirtualNetworkConfigurationPtrOutput added in v3.11.0

func (o ClusterVirtualNetworkConfigurationPtrOutput) ToClusterVirtualNetworkConfigurationPtrOutput() ClusterVirtualNetworkConfigurationPtrOutput

func (ClusterVirtualNetworkConfigurationPtrOutput) ToClusterVirtualNetworkConfigurationPtrOutputWithContext added in v3.11.0

func (o ClusterVirtualNetworkConfigurationPtrOutput) ToClusterVirtualNetworkConfigurationPtrOutputWithContext(ctx context.Context) ClusterVirtualNetworkConfigurationPtrOutput

type Database

type Database struct {
	pulumi.CustomResourceState

	// Specifies the name of the Kusto Cluster this database will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// The time the data that should be kept in cache for fast queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	HotCachePeriod pulumi.StringPtrOutput `pulumi:"hotCachePeriod"`
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Kusto Database to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The size of the database in bytes.
	Size pulumi.Float64Output `pulumi:"size"`
	// The time the data should be kept before it stops being accessible to queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	SoftDeletePeriod pulumi.StringPtrOutput `pulumi:"softDeletePeriod"`
}

Manages a Kusto (also known as Azure Data Explorer) Database

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		cluster, err := kusto.NewCluster(ctx, "cluster", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewDatabase(ctx, "database", &kusto.DatabaseArgs{
			ResourceGroupName: rg.Name,
			Location:          rg.Location,
			ClusterName:       cluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto Clusters can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/database:Database example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1

```

func GetDatabase

func GetDatabase(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabaseState, opts ...pulumi.ResourceOption) (*Database, error)

GetDatabase gets an existing Database 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 NewDatabase

func NewDatabase(ctx *pulumi.Context,
	name string, args *DatabaseArgs, opts ...pulumi.ResourceOption) (*Database, error)

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

func (*Database) ElementType added in v3.31.1

func (*Database) ElementType() reflect.Type

func (*Database) ToDatabaseOutput added in v3.31.1

func (i *Database) ToDatabaseOutput() DatabaseOutput

func (*Database) ToDatabaseOutputWithContext added in v3.31.1

func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (*Database) ToDatabasePtrOutput added in v3.47.1

func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput

func (*Database) ToDatabasePtrOutputWithContext added in v3.47.1

func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseArgs

type DatabaseArgs struct {
	// Specifies the name of the Kusto Cluster this database will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// The time the data that should be kept in cache for fast queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	HotCachePeriod pulumi.StringPtrInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Database to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The time the data should be kept before it stops being accessible to queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	SoftDeletePeriod pulumi.StringPtrInput
}

The set of arguments for constructing a Database resource.

func (DatabaseArgs) ElementType

func (DatabaseArgs) ElementType() reflect.Type

type DatabaseArray added in v3.47.1

type DatabaseArray []DatabaseInput

func (DatabaseArray) ElementType added in v3.47.1

func (DatabaseArray) ElementType() reflect.Type

func (DatabaseArray) ToDatabaseArrayOutput added in v3.47.1

func (i DatabaseArray) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArray) ToDatabaseArrayOutputWithContext added in v3.47.1

func (i DatabaseArray) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseArrayInput added in v3.47.1

type DatabaseArrayInput interface {
	pulumi.Input

	ToDatabaseArrayOutput() DatabaseArrayOutput
	ToDatabaseArrayOutputWithContext(context.Context) DatabaseArrayOutput
}

DatabaseArrayInput is an input type that accepts DatabaseArray and DatabaseArrayOutput values. You can construct a concrete instance of `DatabaseArrayInput` via:

DatabaseArray{ DatabaseArgs{...} }

type DatabaseArrayOutput added in v3.47.1

type DatabaseArrayOutput struct{ *pulumi.OutputState }

func (DatabaseArrayOutput) ElementType added in v3.47.1

func (DatabaseArrayOutput) ElementType() reflect.Type

func (DatabaseArrayOutput) Index added in v3.47.1

func (DatabaseArrayOutput) ToDatabaseArrayOutput added in v3.47.1

func (o DatabaseArrayOutput) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArrayOutput) ToDatabaseArrayOutputWithContext added in v3.47.1

func (o DatabaseArrayOutput) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseInput added in v3.31.1

type DatabaseInput interface {
	pulumi.Input

	ToDatabaseOutput() DatabaseOutput
	ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
}

type DatabaseMap added in v3.47.1

type DatabaseMap map[string]DatabaseInput

func (DatabaseMap) ElementType added in v3.47.1

func (DatabaseMap) ElementType() reflect.Type

func (DatabaseMap) ToDatabaseMapOutput added in v3.47.1

func (i DatabaseMap) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMap) ToDatabaseMapOutputWithContext added in v3.47.1

func (i DatabaseMap) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseMapInput added in v3.47.1

type DatabaseMapInput interface {
	pulumi.Input

	ToDatabaseMapOutput() DatabaseMapOutput
	ToDatabaseMapOutputWithContext(context.Context) DatabaseMapOutput
}

DatabaseMapInput is an input type that accepts DatabaseMap and DatabaseMapOutput values. You can construct a concrete instance of `DatabaseMapInput` via:

DatabaseMap{ "key": DatabaseArgs{...} }

type DatabaseMapOutput added in v3.47.1

type DatabaseMapOutput struct{ *pulumi.OutputState }

func (DatabaseMapOutput) ElementType added in v3.47.1

func (DatabaseMapOutput) ElementType() reflect.Type

func (DatabaseMapOutput) MapIndex added in v3.47.1

func (DatabaseMapOutput) ToDatabaseMapOutput added in v3.47.1

func (o DatabaseMapOutput) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMapOutput) ToDatabaseMapOutputWithContext added in v3.47.1

func (o DatabaseMapOutput) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseOutput added in v3.31.1

type DatabaseOutput struct {
	*pulumi.OutputState
}

func (DatabaseOutput) ElementType added in v3.31.1

func (DatabaseOutput) ElementType() reflect.Type

func (DatabaseOutput) ToDatabaseOutput added in v3.31.1

func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput

func (DatabaseOutput) ToDatabaseOutputWithContext added in v3.31.1

func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (DatabaseOutput) ToDatabasePtrOutput added in v3.47.1

func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabaseOutput) ToDatabasePtrOutputWithContext added in v3.47.1

func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabasePrincipal

type DatabasePrincipal struct {
	pulumi.CustomResourceState

	// The app id, if not empty, of the principal.
	AppId pulumi.StringOutput `pulumi:"appId"`
	// The Client ID that owns the specified `objectId`. Changing this forces a new resource to be created.
	ClientId pulumi.StringOutput `pulumi:"clientId"`
	// Specifies the name of the Kusto Cluster this database principal will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Specified the name of the Kusto Database this principal will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// The email, if not empty, of the principal.
	Email pulumi.StringOutput `pulumi:"email"`
	// The fully qualified name of the principal.
	FullyQualifiedName pulumi.StringOutput `pulumi:"fullyQualifiedName"`
	// The name of the Kusto Database Principal.
	Name pulumi.StringOutput `pulumi:"name"`
	// An Object ID of a User, Group, or App. Changing this forces a new resource to be created.
	ObjectId pulumi.StringOutput `pulumi:"objectId"`
	// Specifies the Resource Group where the Kusto Database Principal should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the permissions the Principal will have. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User`, `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringOutput `pulumi:"role"`
	// Specifies the type of object the principal is. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	Type pulumi.StringOutput `pulumi:"type"`
}

Manages a Kusto (also known as Azure Data Explorer) Database Principal

> **NOTE:** This resource is being **deprecated** due to API updates and should no longer be used. Please use kusto.DatabasePrincipalAssignment instead.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		cluster, err := kusto.NewCluster(ctx, "cluster", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewDatabase(ctx, "database", &kusto.DatabaseArgs{
			ResourceGroupName: rg.Name,
			Location:          rg.Location,
			ClusterName:       cluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewDatabasePrincipal(ctx, "principal", &kusto.DatabasePrincipalArgs{
			ResourceGroupName: rg.Name,
			ClusterName:       cluster.Name,
			DatabaseName:      pulumi.Any(azurerm_kusto_database.Test.Name),
			Role:              pulumi.String("Viewer"),
			Type:              pulumi.String("User"),
			ClientId:          pulumi.String(current.TenantId),
			ObjectId:          pulumi.String(current.ClientId),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto Database Principals can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/databasePrincipal:DatabasePrincipal example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1/Role/role1/FQN/some-guid

```

func GetDatabasePrincipal

func GetDatabasePrincipal(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabasePrincipalState, opts ...pulumi.ResourceOption) (*DatabasePrincipal, error)

GetDatabasePrincipal gets an existing DatabasePrincipal 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 NewDatabasePrincipal

func NewDatabasePrincipal(ctx *pulumi.Context,
	name string, args *DatabasePrincipalArgs, opts ...pulumi.ResourceOption) (*DatabasePrincipal, error)

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

func (*DatabasePrincipal) ElementType added in v3.31.1

func (*DatabasePrincipal) ElementType() reflect.Type

func (*DatabasePrincipal) ToDatabasePrincipalOutput added in v3.31.1

func (i *DatabasePrincipal) ToDatabasePrincipalOutput() DatabasePrincipalOutput

func (*DatabasePrincipal) ToDatabasePrincipalOutputWithContext added in v3.31.1

func (i *DatabasePrincipal) ToDatabasePrincipalOutputWithContext(ctx context.Context) DatabasePrincipalOutput

func (*DatabasePrincipal) ToDatabasePrincipalPtrOutput added in v3.47.1

func (i *DatabasePrincipal) ToDatabasePrincipalPtrOutput() DatabasePrincipalPtrOutput

func (*DatabasePrincipal) ToDatabasePrincipalPtrOutputWithContext added in v3.47.1

func (i *DatabasePrincipal) ToDatabasePrincipalPtrOutputWithContext(ctx context.Context) DatabasePrincipalPtrOutput

type DatabasePrincipalArgs

type DatabasePrincipalArgs struct {
	// The Client ID that owns the specified `objectId`. Changing this forces a new resource to be created.
	ClientId pulumi.StringInput
	// Specifies the name of the Kusto Cluster this database principal will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// Specified the name of the Kusto Database this principal will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringInput
	// An Object ID of a User, Group, or App. Changing this forces a new resource to be created.
	ObjectId pulumi.StringInput
	// Specifies the Resource Group where the Kusto Database Principal should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the permissions the Principal will have. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User`, `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringInput
	// Specifies the type of object the principal is. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	Type pulumi.StringInput
}

The set of arguments for constructing a DatabasePrincipal resource.

func (DatabasePrincipalArgs) ElementType

func (DatabasePrincipalArgs) ElementType() reflect.Type

type DatabasePrincipalArray added in v3.47.1

type DatabasePrincipalArray []DatabasePrincipalInput

func (DatabasePrincipalArray) ElementType added in v3.47.1

func (DatabasePrincipalArray) ElementType() reflect.Type

func (DatabasePrincipalArray) ToDatabasePrincipalArrayOutput added in v3.47.1

func (i DatabasePrincipalArray) ToDatabasePrincipalArrayOutput() DatabasePrincipalArrayOutput

func (DatabasePrincipalArray) ToDatabasePrincipalArrayOutputWithContext added in v3.47.1

func (i DatabasePrincipalArray) ToDatabasePrincipalArrayOutputWithContext(ctx context.Context) DatabasePrincipalArrayOutput

type DatabasePrincipalArrayInput added in v3.47.1

type DatabasePrincipalArrayInput interface {
	pulumi.Input

	ToDatabasePrincipalArrayOutput() DatabasePrincipalArrayOutput
	ToDatabasePrincipalArrayOutputWithContext(context.Context) DatabasePrincipalArrayOutput
}

DatabasePrincipalArrayInput is an input type that accepts DatabasePrincipalArray and DatabasePrincipalArrayOutput values. You can construct a concrete instance of `DatabasePrincipalArrayInput` via:

DatabasePrincipalArray{ DatabasePrincipalArgs{...} }

type DatabasePrincipalArrayOutput added in v3.47.1

type DatabasePrincipalArrayOutput struct{ *pulumi.OutputState }

func (DatabasePrincipalArrayOutput) ElementType added in v3.47.1

func (DatabasePrincipalArrayOutput) Index added in v3.47.1

func (DatabasePrincipalArrayOutput) ToDatabasePrincipalArrayOutput added in v3.47.1

func (o DatabasePrincipalArrayOutput) ToDatabasePrincipalArrayOutput() DatabasePrincipalArrayOutput

func (DatabasePrincipalArrayOutput) ToDatabasePrincipalArrayOutputWithContext added in v3.47.1

func (o DatabasePrincipalArrayOutput) ToDatabasePrincipalArrayOutputWithContext(ctx context.Context) DatabasePrincipalArrayOutput

type DatabasePrincipalAssignment added in v3.12.0

type DatabasePrincipalAssignment struct {
	pulumi.CustomResourceState

	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// The name of the database in which to create the resource. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	Name         pulumi.StringOutput `pulumi:"name"`
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringOutput `pulumi:"principalId"`
	// The name of the principal.
	PrincipalName pulumi.StringOutput `pulumi:"principalName"`
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringOutput `pulumi:"principalType"`
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The database role assigned to the principal. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User` and `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringOutput `pulumi:"role"`
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// The name of the tenant.
	TenantName pulumi.StringOutput `pulumi:"tenantName"`
}

Manages a Kusto (also known as Azure Data Explorer) Database Principal Assignment.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleCluster, err := kusto.NewCluster(ctx, "exampleCluster", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		exampleDatabase, err := kusto.NewDatabase(ctx, "exampleDatabase", &kusto.DatabaseArgs{
			ResourceGroupName: rg.Name,
			Location:          rg.Location,
			ClusterName:       exampleCluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewDatabasePrincipalAssignment(ctx, "exampleDatabasePrincipalAssignment", &kusto.DatabasePrincipalAssignmentArgs{
			ResourceGroupName: rg.Name,
			ClusterName:       exampleCluster.Name,
			DatabaseName:      exampleDatabase.Name,
			TenantId:          pulumi.String(current.TenantId),
			PrincipalId:       pulumi.String(current.ClientId),
			PrincipalType:     pulumi.String("App"),
			Role:              pulumi.String("Viewer"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto Database Principal Assignment can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/databasePrincipalAssignment:DatabasePrincipalAssignment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1/PrincipalAssignments/assignment1

```

func GetDatabasePrincipalAssignment added in v3.12.0

func GetDatabasePrincipalAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabasePrincipalAssignmentState, opts ...pulumi.ResourceOption) (*DatabasePrincipalAssignment, error)

GetDatabasePrincipalAssignment gets an existing DatabasePrincipalAssignment 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 NewDatabasePrincipalAssignment added in v3.12.0

func NewDatabasePrincipalAssignment(ctx *pulumi.Context,
	name string, args *DatabasePrincipalAssignmentArgs, opts ...pulumi.ResourceOption) (*DatabasePrincipalAssignment, error)

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

func (*DatabasePrincipalAssignment) ElementType added in v3.31.1

func (*DatabasePrincipalAssignment) ElementType() reflect.Type

func (*DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentOutput added in v3.31.1

func (i *DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentOutput() DatabasePrincipalAssignmentOutput

func (*DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentOutputWithContext added in v3.31.1

func (i *DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentOutput

func (*DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentPtrOutput added in v3.47.1

func (i *DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentPtrOutput() DatabasePrincipalAssignmentPtrOutput

func (*DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (i *DatabasePrincipalAssignment) ToDatabasePrincipalAssignmentPtrOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentPtrOutput

type DatabasePrincipalAssignmentArgs added in v3.12.0

type DatabasePrincipalAssignmentArgs struct {
	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// The name of the database in which to create the resource. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringInput
	Name         pulumi.StringPtrInput
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringInput
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringInput
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The database role assigned to the principal. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User` and `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringInput
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringInput
}

The set of arguments for constructing a DatabasePrincipalAssignment resource.

func (DatabasePrincipalAssignmentArgs) ElementType added in v3.12.0

type DatabasePrincipalAssignmentArray added in v3.47.1

type DatabasePrincipalAssignmentArray []DatabasePrincipalAssignmentInput

func (DatabasePrincipalAssignmentArray) ElementType added in v3.47.1

func (DatabasePrincipalAssignmentArray) ToDatabasePrincipalAssignmentArrayOutput added in v3.47.1

func (i DatabasePrincipalAssignmentArray) ToDatabasePrincipalAssignmentArrayOutput() DatabasePrincipalAssignmentArrayOutput

func (DatabasePrincipalAssignmentArray) ToDatabasePrincipalAssignmentArrayOutputWithContext added in v3.47.1

func (i DatabasePrincipalAssignmentArray) ToDatabasePrincipalAssignmentArrayOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentArrayOutput

type DatabasePrincipalAssignmentArrayInput added in v3.47.1

type DatabasePrincipalAssignmentArrayInput interface {
	pulumi.Input

	ToDatabasePrincipalAssignmentArrayOutput() DatabasePrincipalAssignmentArrayOutput
	ToDatabasePrincipalAssignmentArrayOutputWithContext(context.Context) DatabasePrincipalAssignmentArrayOutput
}

DatabasePrincipalAssignmentArrayInput is an input type that accepts DatabasePrincipalAssignmentArray and DatabasePrincipalAssignmentArrayOutput values. You can construct a concrete instance of `DatabasePrincipalAssignmentArrayInput` via:

DatabasePrincipalAssignmentArray{ DatabasePrincipalAssignmentArgs{...} }

type DatabasePrincipalAssignmentArrayOutput added in v3.47.1

type DatabasePrincipalAssignmentArrayOutput struct{ *pulumi.OutputState }

func (DatabasePrincipalAssignmentArrayOutput) ElementType added in v3.47.1

func (DatabasePrincipalAssignmentArrayOutput) Index added in v3.47.1

func (DatabasePrincipalAssignmentArrayOutput) ToDatabasePrincipalAssignmentArrayOutput added in v3.47.1

func (o DatabasePrincipalAssignmentArrayOutput) ToDatabasePrincipalAssignmentArrayOutput() DatabasePrincipalAssignmentArrayOutput

func (DatabasePrincipalAssignmentArrayOutput) ToDatabasePrincipalAssignmentArrayOutputWithContext added in v3.47.1

func (o DatabasePrincipalAssignmentArrayOutput) ToDatabasePrincipalAssignmentArrayOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentArrayOutput

type DatabasePrincipalAssignmentInput added in v3.31.1

type DatabasePrincipalAssignmentInput interface {
	pulumi.Input

	ToDatabasePrincipalAssignmentOutput() DatabasePrincipalAssignmentOutput
	ToDatabasePrincipalAssignmentOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentOutput
}

type DatabasePrincipalAssignmentMap added in v3.47.1

type DatabasePrincipalAssignmentMap map[string]DatabasePrincipalAssignmentInput

func (DatabasePrincipalAssignmentMap) ElementType added in v3.47.1

func (DatabasePrincipalAssignmentMap) ToDatabasePrincipalAssignmentMapOutput added in v3.47.1

func (i DatabasePrincipalAssignmentMap) ToDatabasePrincipalAssignmentMapOutput() DatabasePrincipalAssignmentMapOutput

func (DatabasePrincipalAssignmentMap) ToDatabasePrincipalAssignmentMapOutputWithContext added in v3.47.1

func (i DatabasePrincipalAssignmentMap) ToDatabasePrincipalAssignmentMapOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentMapOutput

type DatabasePrincipalAssignmentMapInput added in v3.47.1

type DatabasePrincipalAssignmentMapInput interface {
	pulumi.Input

	ToDatabasePrincipalAssignmentMapOutput() DatabasePrincipalAssignmentMapOutput
	ToDatabasePrincipalAssignmentMapOutputWithContext(context.Context) DatabasePrincipalAssignmentMapOutput
}

DatabasePrincipalAssignmentMapInput is an input type that accepts DatabasePrincipalAssignmentMap and DatabasePrincipalAssignmentMapOutput values. You can construct a concrete instance of `DatabasePrincipalAssignmentMapInput` via:

DatabasePrincipalAssignmentMap{ "key": DatabasePrincipalAssignmentArgs{...} }

type DatabasePrincipalAssignmentMapOutput added in v3.47.1

type DatabasePrincipalAssignmentMapOutput struct{ *pulumi.OutputState }

func (DatabasePrincipalAssignmentMapOutput) ElementType added in v3.47.1

func (DatabasePrincipalAssignmentMapOutput) MapIndex added in v3.47.1

func (DatabasePrincipalAssignmentMapOutput) ToDatabasePrincipalAssignmentMapOutput added in v3.47.1

func (o DatabasePrincipalAssignmentMapOutput) ToDatabasePrincipalAssignmentMapOutput() DatabasePrincipalAssignmentMapOutput

func (DatabasePrincipalAssignmentMapOutput) ToDatabasePrincipalAssignmentMapOutputWithContext added in v3.47.1

func (o DatabasePrincipalAssignmentMapOutput) ToDatabasePrincipalAssignmentMapOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentMapOutput

type DatabasePrincipalAssignmentOutput added in v3.31.1

type DatabasePrincipalAssignmentOutput struct {
	*pulumi.OutputState
}

func (DatabasePrincipalAssignmentOutput) ElementType added in v3.31.1

func (DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentOutput added in v3.31.1

func (o DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentOutput() DatabasePrincipalAssignmentOutput

func (DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentOutputWithContext added in v3.31.1

func (o DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentOutput

func (DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentPtrOutput added in v3.47.1

func (o DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentPtrOutput() DatabasePrincipalAssignmentPtrOutput

func (DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (o DatabasePrincipalAssignmentOutput) ToDatabasePrincipalAssignmentPtrOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentPtrOutput

type DatabasePrincipalAssignmentPtrInput added in v3.47.1

type DatabasePrincipalAssignmentPtrInput interface {
	pulumi.Input

	ToDatabasePrincipalAssignmentPtrOutput() DatabasePrincipalAssignmentPtrOutput
	ToDatabasePrincipalAssignmentPtrOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentPtrOutput
}

type DatabasePrincipalAssignmentPtrOutput added in v3.47.1

type DatabasePrincipalAssignmentPtrOutput struct {
	*pulumi.OutputState
}

func (DatabasePrincipalAssignmentPtrOutput) ElementType added in v3.47.1

func (DatabasePrincipalAssignmentPtrOutput) ToDatabasePrincipalAssignmentPtrOutput added in v3.47.1

func (o DatabasePrincipalAssignmentPtrOutput) ToDatabasePrincipalAssignmentPtrOutput() DatabasePrincipalAssignmentPtrOutput

func (DatabasePrincipalAssignmentPtrOutput) ToDatabasePrincipalAssignmentPtrOutputWithContext added in v3.47.1

func (o DatabasePrincipalAssignmentPtrOutput) ToDatabasePrincipalAssignmentPtrOutputWithContext(ctx context.Context) DatabasePrincipalAssignmentPtrOutput

type DatabasePrincipalAssignmentState added in v3.12.0

type DatabasePrincipalAssignmentState struct {
	// The name of the cluster in which to create the resource. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// The name of the database in which to create the resource. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringPtrInput
	Name         pulumi.StringPtrInput
	// The object id of the principal. Changing this forces a new resource to be created.
	PrincipalId pulumi.StringPtrInput
	// The name of the principal.
	PrincipalName pulumi.StringPtrInput
	// The type of the principal. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	PrincipalType pulumi.StringPtrInput
	// The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The database role assigned to the principal. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User` and `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringPtrInput
	// The tenant id in which the principal resides. Changing this forces a new resource to be created.
	TenantId pulumi.StringPtrInput
	// The name of the tenant.
	TenantName pulumi.StringPtrInput
}

func (DatabasePrincipalAssignmentState) ElementType added in v3.12.0

type DatabasePrincipalInput added in v3.31.1

type DatabasePrincipalInput interface {
	pulumi.Input

	ToDatabasePrincipalOutput() DatabasePrincipalOutput
	ToDatabasePrincipalOutputWithContext(ctx context.Context) DatabasePrincipalOutput
}

type DatabasePrincipalMap added in v3.47.1

type DatabasePrincipalMap map[string]DatabasePrincipalInput

func (DatabasePrincipalMap) ElementType added in v3.47.1

func (DatabasePrincipalMap) ElementType() reflect.Type

func (DatabasePrincipalMap) ToDatabasePrincipalMapOutput added in v3.47.1

func (i DatabasePrincipalMap) ToDatabasePrincipalMapOutput() DatabasePrincipalMapOutput

func (DatabasePrincipalMap) ToDatabasePrincipalMapOutputWithContext added in v3.47.1

func (i DatabasePrincipalMap) ToDatabasePrincipalMapOutputWithContext(ctx context.Context) DatabasePrincipalMapOutput

type DatabasePrincipalMapInput added in v3.47.1

type DatabasePrincipalMapInput interface {
	pulumi.Input

	ToDatabasePrincipalMapOutput() DatabasePrincipalMapOutput
	ToDatabasePrincipalMapOutputWithContext(context.Context) DatabasePrincipalMapOutput
}

DatabasePrincipalMapInput is an input type that accepts DatabasePrincipalMap and DatabasePrincipalMapOutput values. You can construct a concrete instance of `DatabasePrincipalMapInput` via:

DatabasePrincipalMap{ "key": DatabasePrincipalArgs{...} }

type DatabasePrincipalMapOutput added in v3.47.1

type DatabasePrincipalMapOutput struct{ *pulumi.OutputState }

func (DatabasePrincipalMapOutput) ElementType added in v3.47.1

func (DatabasePrincipalMapOutput) ElementType() reflect.Type

func (DatabasePrincipalMapOutput) MapIndex added in v3.47.1

func (DatabasePrincipalMapOutput) ToDatabasePrincipalMapOutput added in v3.47.1

func (o DatabasePrincipalMapOutput) ToDatabasePrincipalMapOutput() DatabasePrincipalMapOutput

func (DatabasePrincipalMapOutput) ToDatabasePrincipalMapOutputWithContext added in v3.47.1

func (o DatabasePrincipalMapOutput) ToDatabasePrincipalMapOutputWithContext(ctx context.Context) DatabasePrincipalMapOutput

type DatabasePrincipalOutput added in v3.31.1

type DatabasePrincipalOutput struct {
	*pulumi.OutputState
}

func (DatabasePrincipalOutput) ElementType added in v3.31.1

func (DatabasePrincipalOutput) ElementType() reflect.Type

func (DatabasePrincipalOutput) ToDatabasePrincipalOutput added in v3.31.1

func (o DatabasePrincipalOutput) ToDatabasePrincipalOutput() DatabasePrincipalOutput

func (DatabasePrincipalOutput) ToDatabasePrincipalOutputWithContext added in v3.31.1

func (o DatabasePrincipalOutput) ToDatabasePrincipalOutputWithContext(ctx context.Context) DatabasePrincipalOutput

func (DatabasePrincipalOutput) ToDatabasePrincipalPtrOutput added in v3.47.1

func (o DatabasePrincipalOutput) ToDatabasePrincipalPtrOutput() DatabasePrincipalPtrOutput

func (DatabasePrincipalOutput) ToDatabasePrincipalPtrOutputWithContext added in v3.47.1

func (o DatabasePrincipalOutput) ToDatabasePrincipalPtrOutputWithContext(ctx context.Context) DatabasePrincipalPtrOutput

type DatabasePrincipalPtrInput added in v3.47.1

type DatabasePrincipalPtrInput interface {
	pulumi.Input

	ToDatabasePrincipalPtrOutput() DatabasePrincipalPtrOutput
	ToDatabasePrincipalPtrOutputWithContext(ctx context.Context) DatabasePrincipalPtrOutput
}

type DatabasePrincipalPtrOutput added in v3.47.1

type DatabasePrincipalPtrOutput struct {
	*pulumi.OutputState
}

func (DatabasePrincipalPtrOutput) ElementType added in v3.47.1

func (DatabasePrincipalPtrOutput) ElementType() reflect.Type

func (DatabasePrincipalPtrOutput) ToDatabasePrincipalPtrOutput added in v3.47.1

func (o DatabasePrincipalPtrOutput) ToDatabasePrincipalPtrOutput() DatabasePrincipalPtrOutput

func (DatabasePrincipalPtrOutput) ToDatabasePrincipalPtrOutputWithContext added in v3.47.1

func (o DatabasePrincipalPtrOutput) ToDatabasePrincipalPtrOutputWithContext(ctx context.Context) DatabasePrincipalPtrOutput

type DatabasePrincipalState

type DatabasePrincipalState struct {
	// The app id, if not empty, of the principal.
	AppId pulumi.StringPtrInput
	// The Client ID that owns the specified `objectId`. Changing this forces a new resource to be created.
	ClientId pulumi.StringPtrInput
	// Specifies the name of the Kusto Cluster this database principal will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// Specified the name of the Kusto Database this principal will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringPtrInput
	// The email, if not empty, of the principal.
	Email pulumi.StringPtrInput
	// The fully qualified name of the principal.
	FullyQualifiedName pulumi.StringPtrInput
	// The name of the Kusto Database Principal.
	Name pulumi.StringPtrInput
	// An Object ID of a User, Group, or App. Changing this forces a new resource to be created.
	ObjectId pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database Principal should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the permissions the Principal will have. Valid values include `Admin`, `Ingestor`, `Monitor`, `UnrestrictedViewers`, `User`, `Viewer`. Changing this forces a new resource to be created.
	Role pulumi.StringPtrInput
	// Specifies the type of object the principal is. Valid values include `App`, `Group`, `User`. Changing this forces a new resource to be created.
	Type pulumi.StringPtrInput
}

func (DatabasePrincipalState) ElementType

func (DatabasePrincipalState) ElementType() reflect.Type

type DatabasePtrInput added in v3.47.1

type DatabasePtrInput interface {
	pulumi.Input

	ToDatabasePtrOutput() DatabasePtrOutput
	ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
}

type DatabasePtrOutput added in v3.47.1

type DatabasePtrOutput struct {
	*pulumi.OutputState
}

func (DatabasePtrOutput) ElementType added in v3.47.1

func (DatabasePtrOutput) ElementType() reflect.Type

func (DatabasePtrOutput) ToDatabasePtrOutput added in v3.47.1

func (o DatabasePtrOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabasePtrOutput) ToDatabasePtrOutputWithContext added in v3.47.1

func (o DatabasePtrOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseState

type DatabaseState struct {
	// Specifies the name of the Kusto Cluster this database will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// The time the data that should be kept in cache for fast queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	HotCachePeriod pulumi.StringPtrInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto Database to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The size of the database in bytes.
	Size pulumi.Float64PtrInput
	// The time the data should be kept before it stops being accessible to queries as ISO 8601 timespan. Default is unlimited. For more information see: [ISO 8601 Timespan](https://en.wikipedia.org/wiki/ISO_8601#Durations)
	SoftDeletePeriod pulumi.StringPtrInput
}

func (DatabaseState) ElementType

func (DatabaseState) ElementType() reflect.Type

type EventGridDataConnection added in v3.50.0

type EventGridDataConnection struct {
	pulumi.CustomResourceState

	// Specifies the blob storage event type that needs to be processed. Possible
	// Values are `Microsoft.Storage.BlobCreated` and `Microsoft.Storage.BlobRenamed`. Defaults
	// to `Microsoft.Storage.BlobCreated`.
	BlobStorageEventType pulumi.StringPtrOutput `pulumi:"blobStorageEventType"`
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrOutput `pulumi:"dataFormat"`
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// Specifies the Event Hub consumer group this data connection will use for
	// ingestion. Changing this forces a new resource to be created.
	EventhubConsumerGroupName pulumi.StringOutput `pulumi:"eventhubConsumerGroupName"`
	// Specifies the resource id of the Event Hub this data connection will use for ingestion.
	// Changing this forces a new resource to be created.
	EventhubId pulumi.StringOutput `pulumi:"eventhubId"`
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrOutput `pulumi:"mappingRuleName"`
	// The name of the Kusto Event Grid Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// is the first record of every file ignored? Defaults to `false`.
	SkipFirstRecord pulumi.BoolPtrOutput `pulumi:"skipFirstRecord"`
	// Specifies the resource id of the Storage Account this data connection will use for ingestion. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringOutput `pulumi:"storageAccountId"`
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrOutput `pulumi:"tableName"`
}

Manages a Kusto (also known as Azure Data Explorer) Event Grid Data Connection

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/eventgrid"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/eventhub"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleCluster, err := kusto.NewCluster(ctx, "exampleCluster", &kusto.ClusterArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		exampleDatabase, err := kusto.NewDatabase(ctx, "exampleDatabase", &kusto.DatabaseArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			ClusterName:       exampleCluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("GRS"),
		})
		if err != nil {
			return err
		}
		_, err = eventhub.NewEventHubNamespace(ctx, "testEventHubNamespace", &eventhub.EventHubNamespaceArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = eventhub.NewEventHub(ctx, "testEventHub", &eventhub.EventHubArgs{
			NamespaceName:     pulumi.Any(azurerm_eventhub_namespace.Example.Name),
			ResourceGroupName: exampleResourceGroup.Name,
			PartitionCount:    pulumi.Int(1),
			MessageRetention:  pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		exampleConsumerGroup, err := eventhub.NewConsumerGroup(ctx, "exampleConsumerGroup", &eventhub.ConsumerGroupArgs{
			NamespaceName:     pulumi.Any(azurerm_eventhub_namespace.Example.Name),
			EventhubName:      pulumi.Any(azurerm_eventhub.Example.Name),
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		exampleEventSubscription, err := eventgrid.NewEventSubscription(ctx, "exampleEventSubscription", &eventgrid.EventSubscriptionArgs{
			Scope:               exampleAccount.ID(),
			EventhubEndpointId:  pulumi.Any(azurerm_eventhub.Example.Id),
			EventDeliverySchema: pulumi.String("EventGridSchema"),
			IncludedEventTypes: pulumi.StringArray{
				pulumi.String("Microsoft.Storage.BlobCreated"),
				pulumi.String("Microsoft.Storage.BlobRenamed"),
			},
			RetryPolicy: &eventgrid.EventSubscriptionRetryPolicyArgs{
				EventTimeToLive:     pulumi.Int(144),
				MaxDeliveryAttempts: pulumi.Int(10),
			},
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewEventGridDataConnection(ctx, "exampleEventGridDataConnection", &kusto.EventGridDataConnectionArgs{
			ResourceGroupName:         exampleResourceGroup.Name,
			Location:                  exampleResourceGroup.Location,
			ClusterName:               exampleCluster.Name,
			DatabaseName:              exampleDatabase.Name,
			StorageAccountId:          exampleAccount.ID(),
			EventhubId:                pulumi.Any(azurerm_eventhub.Example.Id),
			EventhubConsumerGroupName: exampleConsumerGroup.Name,
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleEventSubscription,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto Event Grid Data Connections can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/eventGridDataConnection:EventGridDataConnection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1/DataConnections/dataConnection1

```

func GetEventGridDataConnection added in v3.50.0

func GetEventGridDataConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EventGridDataConnectionState, opts ...pulumi.ResourceOption) (*EventGridDataConnection, error)

GetEventGridDataConnection gets an existing EventGridDataConnection 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 NewEventGridDataConnection added in v3.50.0

func NewEventGridDataConnection(ctx *pulumi.Context,
	name string, args *EventGridDataConnectionArgs, opts ...pulumi.ResourceOption) (*EventGridDataConnection, error)

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

func (*EventGridDataConnection) ElementType added in v3.50.0

func (*EventGridDataConnection) ElementType() reflect.Type

func (*EventGridDataConnection) ToEventGridDataConnectionOutput added in v3.50.0

func (i *EventGridDataConnection) ToEventGridDataConnectionOutput() EventGridDataConnectionOutput

func (*EventGridDataConnection) ToEventGridDataConnectionOutputWithContext added in v3.50.0

func (i *EventGridDataConnection) ToEventGridDataConnectionOutputWithContext(ctx context.Context) EventGridDataConnectionOutput

func (*EventGridDataConnection) ToEventGridDataConnectionPtrOutput added in v3.50.0

func (i *EventGridDataConnection) ToEventGridDataConnectionPtrOutput() EventGridDataConnectionPtrOutput

func (*EventGridDataConnection) ToEventGridDataConnectionPtrOutputWithContext added in v3.50.0

func (i *EventGridDataConnection) ToEventGridDataConnectionPtrOutputWithContext(ctx context.Context) EventGridDataConnectionPtrOutput

type EventGridDataConnectionArgs added in v3.50.0

type EventGridDataConnectionArgs struct {
	// Specifies the blob storage event type that needs to be processed. Possible
	// Values are `Microsoft.Storage.BlobCreated` and `Microsoft.Storage.BlobRenamed`. Defaults
	// to `Microsoft.Storage.BlobCreated`.
	BlobStorageEventType pulumi.StringPtrInput
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringInput
	// Specifies the Event Hub consumer group this data connection will use for
	// ingestion. Changing this forces a new resource to be created.
	EventhubConsumerGroupName pulumi.StringInput
	// Specifies the resource id of the Event Hub this data connection will use for ingestion.
	// Changing this forces a new resource to be created.
	EventhubId pulumi.StringInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrInput
	// The name of the Kusto Event Grid Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// is the first record of every file ignored? Defaults to `false`.
	SkipFirstRecord pulumi.BoolPtrInput
	// Specifies the resource id of the Storage Account this data connection will use for ingestion. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringInput
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrInput
}

The set of arguments for constructing a EventGridDataConnection resource.

func (EventGridDataConnectionArgs) ElementType added in v3.50.0

type EventGridDataConnectionArray added in v3.50.0

type EventGridDataConnectionArray []EventGridDataConnectionInput

func (EventGridDataConnectionArray) ElementType added in v3.50.0

func (EventGridDataConnectionArray) ToEventGridDataConnectionArrayOutput added in v3.50.0

func (i EventGridDataConnectionArray) ToEventGridDataConnectionArrayOutput() EventGridDataConnectionArrayOutput

func (EventGridDataConnectionArray) ToEventGridDataConnectionArrayOutputWithContext added in v3.50.0

func (i EventGridDataConnectionArray) ToEventGridDataConnectionArrayOutputWithContext(ctx context.Context) EventGridDataConnectionArrayOutput

type EventGridDataConnectionArrayInput added in v3.50.0

type EventGridDataConnectionArrayInput interface {
	pulumi.Input

	ToEventGridDataConnectionArrayOutput() EventGridDataConnectionArrayOutput
	ToEventGridDataConnectionArrayOutputWithContext(context.Context) EventGridDataConnectionArrayOutput
}

EventGridDataConnectionArrayInput is an input type that accepts EventGridDataConnectionArray and EventGridDataConnectionArrayOutput values. You can construct a concrete instance of `EventGridDataConnectionArrayInput` via:

EventGridDataConnectionArray{ EventGridDataConnectionArgs{...} }

type EventGridDataConnectionArrayOutput added in v3.50.0

type EventGridDataConnectionArrayOutput struct{ *pulumi.OutputState }

func (EventGridDataConnectionArrayOutput) ElementType added in v3.50.0

func (EventGridDataConnectionArrayOutput) Index added in v3.50.0

func (EventGridDataConnectionArrayOutput) ToEventGridDataConnectionArrayOutput added in v3.50.0

func (o EventGridDataConnectionArrayOutput) ToEventGridDataConnectionArrayOutput() EventGridDataConnectionArrayOutput

func (EventGridDataConnectionArrayOutput) ToEventGridDataConnectionArrayOutputWithContext added in v3.50.0

func (o EventGridDataConnectionArrayOutput) ToEventGridDataConnectionArrayOutputWithContext(ctx context.Context) EventGridDataConnectionArrayOutput

type EventGridDataConnectionInput added in v3.50.0

type EventGridDataConnectionInput interface {
	pulumi.Input

	ToEventGridDataConnectionOutput() EventGridDataConnectionOutput
	ToEventGridDataConnectionOutputWithContext(ctx context.Context) EventGridDataConnectionOutput
}

type EventGridDataConnectionMap added in v3.50.0

type EventGridDataConnectionMap map[string]EventGridDataConnectionInput

func (EventGridDataConnectionMap) ElementType added in v3.50.0

func (EventGridDataConnectionMap) ElementType() reflect.Type

func (EventGridDataConnectionMap) ToEventGridDataConnectionMapOutput added in v3.50.0

func (i EventGridDataConnectionMap) ToEventGridDataConnectionMapOutput() EventGridDataConnectionMapOutput

func (EventGridDataConnectionMap) ToEventGridDataConnectionMapOutputWithContext added in v3.50.0

func (i EventGridDataConnectionMap) ToEventGridDataConnectionMapOutputWithContext(ctx context.Context) EventGridDataConnectionMapOutput

type EventGridDataConnectionMapInput added in v3.50.0

type EventGridDataConnectionMapInput interface {
	pulumi.Input

	ToEventGridDataConnectionMapOutput() EventGridDataConnectionMapOutput
	ToEventGridDataConnectionMapOutputWithContext(context.Context) EventGridDataConnectionMapOutput
}

EventGridDataConnectionMapInput is an input type that accepts EventGridDataConnectionMap and EventGridDataConnectionMapOutput values. You can construct a concrete instance of `EventGridDataConnectionMapInput` via:

EventGridDataConnectionMap{ "key": EventGridDataConnectionArgs{...} }

type EventGridDataConnectionMapOutput added in v3.50.0

type EventGridDataConnectionMapOutput struct{ *pulumi.OutputState }

func (EventGridDataConnectionMapOutput) ElementType added in v3.50.0

func (EventGridDataConnectionMapOutput) MapIndex added in v3.50.0

func (EventGridDataConnectionMapOutput) ToEventGridDataConnectionMapOutput added in v3.50.0

func (o EventGridDataConnectionMapOutput) ToEventGridDataConnectionMapOutput() EventGridDataConnectionMapOutput

func (EventGridDataConnectionMapOutput) ToEventGridDataConnectionMapOutputWithContext added in v3.50.0

func (o EventGridDataConnectionMapOutput) ToEventGridDataConnectionMapOutputWithContext(ctx context.Context) EventGridDataConnectionMapOutput

type EventGridDataConnectionOutput added in v3.50.0

type EventGridDataConnectionOutput struct {
	*pulumi.OutputState
}

func (EventGridDataConnectionOutput) ElementType added in v3.50.0

func (EventGridDataConnectionOutput) ToEventGridDataConnectionOutput added in v3.50.0

func (o EventGridDataConnectionOutput) ToEventGridDataConnectionOutput() EventGridDataConnectionOutput

func (EventGridDataConnectionOutput) ToEventGridDataConnectionOutputWithContext added in v3.50.0

func (o EventGridDataConnectionOutput) ToEventGridDataConnectionOutputWithContext(ctx context.Context) EventGridDataConnectionOutput

func (EventGridDataConnectionOutput) ToEventGridDataConnectionPtrOutput added in v3.50.0

func (o EventGridDataConnectionOutput) ToEventGridDataConnectionPtrOutput() EventGridDataConnectionPtrOutput

func (EventGridDataConnectionOutput) ToEventGridDataConnectionPtrOutputWithContext added in v3.50.0

func (o EventGridDataConnectionOutput) ToEventGridDataConnectionPtrOutputWithContext(ctx context.Context) EventGridDataConnectionPtrOutput

type EventGridDataConnectionPtrInput added in v3.50.0

type EventGridDataConnectionPtrInput interface {
	pulumi.Input

	ToEventGridDataConnectionPtrOutput() EventGridDataConnectionPtrOutput
	ToEventGridDataConnectionPtrOutputWithContext(ctx context.Context) EventGridDataConnectionPtrOutput
}

type EventGridDataConnectionPtrOutput added in v3.50.0

type EventGridDataConnectionPtrOutput struct {
	*pulumi.OutputState
}

func (EventGridDataConnectionPtrOutput) ElementType added in v3.50.0

func (EventGridDataConnectionPtrOutput) ToEventGridDataConnectionPtrOutput added in v3.50.0

func (o EventGridDataConnectionPtrOutput) ToEventGridDataConnectionPtrOutput() EventGridDataConnectionPtrOutput

func (EventGridDataConnectionPtrOutput) ToEventGridDataConnectionPtrOutputWithContext added in v3.50.0

func (o EventGridDataConnectionPtrOutput) ToEventGridDataConnectionPtrOutputWithContext(ctx context.Context) EventGridDataConnectionPtrOutput

type EventGridDataConnectionState added in v3.50.0

type EventGridDataConnectionState struct {
	// Specifies the blob storage event type that needs to be processed. Possible
	// Values are `Microsoft.Storage.BlobCreated` and `Microsoft.Storage.BlobRenamed`. Defaults
	// to `Microsoft.Storage.BlobCreated`.
	BlobStorageEventType pulumi.StringPtrInput
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringPtrInput
	// Specifies the Event Hub consumer group this data connection will use for
	// ingestion. Changing this forces a new resource to be created.
	EventhubConsumerGroupName pulumi.StringPtrInput
	// Specifies the resource id of the Event Hub this data connection will use for ingestion.
	// Changing this forces a new resource to be created.
	EventhubId pulumi.StringPtrInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrInput
	// The name of the Kusto Event Grid Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// is the first record of every file ignored? Defaults to `false`.
	SkipFirstRecord pulumi.BoolPtrInput
	// Specifies the resource id of the Storage Account this data connection will use for ingestion. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrInput
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrInput
}

func (EventGridDataConnectionState) ElementType added in v3.50.0

type EventhubDataConnection

type EventhubDataConnection struct {
	pulumi.CustomResourceState

	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Specifies compression type for the connection. Allowed values: `GZip` and `None`. Defaults to `None`. Changing this forces a new resource to be created.
	Compression pulumi.StringPtrOutput `pulumi:"compression"`
	// Specifies the EventHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringOutput `pulumi:"consumerGroup"`
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrOutput `pulumi:"dataFormat"`
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// Specifies a list of system properties for the Event Hub.
	EventSystemProperties pulumi.StringArrayOutput `pulumi:"eventSystemProperties"`
	// Specifies the resource id of the EventHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	EventhubId pulumi.StringOutput `pulumi:"eventhubId"`
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrOutput `pulumi:"mappingRuleName"`
	// The name of the Kusto EventHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrOutput `pulumi:"tableName"`
}

Manages a Kusto (also known as Azure Data Explorer) EventHub Data Connection

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/eventhub"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		cluster, err := kusto.NewCluster(ctx, "cluster", &kusto.ClusterArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		database, err := kusto.NewDatabase(ctx, "database", &kusto.DatabaseArgs{
			ResourceGroupName: rg.Name,
			Location:          rg.Location,
			ClusterName:       cluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		eventhubNs, err := eventhub.NewEventHubNamespace(ctx, "eventhubNs", &eventhub.EventHubNamespaceArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		eventhub, err := eventhub.NewEventHub(ctx, "eventhub", &eventhub.EventHubArgs{
			NamespaceName:     eventhubNs.Name,
			ResourceGroupName: rg.Name,
			PartitionCount:    pulumi.Int(1),
			MessageRetention:  pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		consumerGroup, err := eventhub.NewConsumerGroup(ctx, "consumerGroup", &eventhub.ConsumerGroupArgs{
			NamespaceName:     eventhubNs.Name,
			EventhubName:      eventhub.Name,
			ResourceGroupName: rg.Name,
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewEventhubDataConnection(ctx, "eventhubConnection", &kusto.EventhubDataConnectionArgs{
			ResourceGroupName: rg.Name,
			Location:          rg.Location,
			ClusterName:       cluster.Name,
			DatabaseName:      database.Name,
			EventhubId:        pulumi.Any(azurerm_eventhub.Evenhub.Id),
			ConsumerGroup:     consumerGroup.Name,
			TableName:         pulumi.String("my-table"),
			MappingRuleName:   pulumi.String("my-table-mapping"),
			DataFormat:        pulumi.String("JSON"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto EventHub Data Connections can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/eventhubDataConnection:EventhubDataConnection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1/DataConnections/eventHubConnection1

```

func GetEventhubDataConnection

func GetEventhubDataConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EventhubDataConnectionState, opts ...pulumi.ResourceOption) (*EventhubDataConnection, error)

GetEventhubDataConnection gets an existing EventhubDataConnection 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 NewEventhubDataConnection

func NewEventhubDataConnection(ctx *pulumi.Context,
	name string, args *EventhubDataConnectionArgs, opts ...pulumi.ResourceOption) (*EventhubDataConnection, error)

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

func (*EventhubDataConnection) ElementType added in v3.31.1

func (*EventhubDataConnection) ElementType() reflect.Type

func (*EventhubDataConnection) ToEventhubDataConnectionOutput added in v3.31.1

func (i *EventhubDataConnection) ToEventhubDataConnectionOutput() EventhubDataConnectionOutput

func (*EventhubDataConnection) ToEventhubDataConnectionOutputWithContext added in v3.31.1

func (i *EventhubDataConnection) ToEventhubDataConnectionOutputWithContext(ctx context.Context) EventhubDataConnectionOutput

func (*EventhubDataConnection) ToEventhubDataConnectionPtrOutput added in v3.47.1

func (i *EventhubDataConnection) ToEventhubDataConnectionPtrOutput() EventhubDataConnectionPtrOutput

func (*EventhubDataConnection) ToEventhubDataConnectionPtrOutputWithContext added in v3.47.1

func (i *EventhubDataConnection) ToEventhubDataConnectionPtrOutputWithContext(ctx context.Context) EventhubDataConnectionPtrOutput

type EventhubDataConnectionArgs

type EventhubDataConnectionArgs struct {
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// Specifies compression type for the connection. Allowed values: `GZip` and `None`. Defaults to `None`. Changing this forces a new resource to be created.
	Compression pulumi.StringPtrInput
	// Specifies the EventHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringInput
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringInput
	// Specifies a list of system properties for the Event Hub.
	EventSystemProperties pulumi.StringArrayInput
	// Specifies the resource id of the EventHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	EventhubId pulumi.StringInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrInput
	// The name of the Kusto EventHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrInput
}

The set of arguments for constructing a EventhubDataConnection resource.

func (EventhubDataConnectionArgs) ElementType

func (EventhubDataConnectionArgs) ElementType() reflect.Type

type EventhubDataConnectionArray added in v3.47.1

type EventhubDataConnectionArray []EventhubDataConnectionInput

func (EventhubDataConnectionArray) ElementType added in v3.47.1

func (EventhubDataConnectionArray) ToEventhubDataConnectionArrayOutput added in v3.47.1

func (i EventhubDataConnectionArray) ToEventhubDataConnectionArrayOutput() EventhubDataConnectionArrayOutput

func (EventhubDataConnectionArray) ToEventhubDataConnectionArrayOutputWithContext added in v3.47.1

func (i EventhubDataConnectionArray) ToEventhubDataConnectionArrayOutputWithContext(ctx context.Context) EventhubDataConnectionArrayOutput

type EventhubDataConnectionArrayInput added in v3.47.1

type EventhubDataConnectionArrayInput interface {
	pulumi.Input

	ToEventhubDataConnectionArrayOutput() EventhubDataConnectionArrayOutput
	ToEventhubDataConnectionArrayOutputWithContext(context.Context) EventhubDataConnectionArrayOutput
}

EventhubDataConnectionArrayInput is an input type that accepts EventhubDataConnectionArray and EventhubDataConnectionArrayOutput values. You can construct a concrete instance of `EventhubDataConnectionArrayInput` via:

EventhubDataConnectionArray{ EventhubDataConnectionArgs{...} }

type EventhubDataConnectionArrayOutput added in v3.47.1

type EventhubDataConnectionArrayOutput struct{ *pulumi.OutputState }

func (EventhubDataConnectionArrayOutput) ElementType added in v3.47.1

func (EventhubDataConnectionArrayOutput) Index added in v3.47.1

func (EventhubDataConnectionArrayOutput) ToEventhubDataConnectionArrayOutput added in v3.47.1

func (o EventhubDataConnectionArrayOutput) ToEventhubDataConnectionArrayOutput() EventhubDataConnectionArrayOutput

func (EventhubDataConnectionArrayOutput) ToEventhubDataConnectionArrayOutputWithContext added in v3.47.1

func (o EventhubDataConnectionArrayOutput) ToEventhubDataConnectionArrayOutputWithContext(ctx context.Context) EventhubDataConnectionArrayOutput

type EventhubDataConnectionInput added in v3.31.1

type EventhubDataConnectionInput interface {
	pulumi.Input

	ToEventhubDataConnectionOutput() EventhubDataConnectionOutput
	ToEventhubDataConnectionOutputWithContext(ctx context.Context) EventhubDataConnectionOutput
}

type EventhubDataConnectionMap added in v3.47.1

type EventhubDataConnectionMap map[string]EventhubDataConnectionInput

func (EventhubDataConnectionMap) ElementType added in v3.47.1

func (EventhubDataConnectionMap) ElementType() reflect.Type

func (EventhubDataConnectionMap) ToEventhubDataConnectionMapOutput added in v3.47.1

func (i EventhubDataConnectionMap) ToEventhubDataConnectionMapOutput() EventhubDataConnectionMapOutput

func (EventhubDataConnectionMap) ToEventhubDataConnectionMapOutputWithContext added in v3.47.1

func (i EventhubDataConnectionMap) ToEventhubDataConnectionMapOutputWithContext(ctx context.Context) EventhubDataConnectionMapOutput

type EventhubDataConnectionMapInput added in v3.47.1

type EventhubDataConnectionMapInput interface {
	pulumi.Input

	ToEventhubDataConnectionMapOutput() EventhubDataConnectionMapOutput
	ToEventhubDataConnectionMapOutputWithContext(context.Context) EventhubDataConnectionMapOutput
}

EventhubDataConnectionMapInput is an input type that accepts EventhubDataConnectionMap and EventhubDataConnectionMapOutput values. You can construct a concrete instance of `EventhubDataConnectionMapInput` via:

EventhubDataConnectionMap{ "key": EventhubDataConnectionArgs{...} }

type EventhubDataConnectionMapOutput added in v3.47.1

type EventhubDataConnectionMapOutput struct{ *pulumi.OutputState }

func (EventhubDataConnectionMapOutput) ElementType added in v3.47.1

func (EventhubDataConnectionMapOutput) MapIndex added in v3.47.1

func (EventhubDataConnectionMapOutput) ToEventhubDataConnectionMapOutput added in v3.47.1

func (o EventhubDataConnectionMapOutput) ToEventhubDataConnectionMapOutput() EventhubDataConnectionMapOutput

func (EventhubDataConnectionMapOutput) ToEventhubDataConnectionMapOutputWithContext added in v3.47.1

func (o EventhubDataConnectionMapOutput) ToEventhubDataConnectionMapOutputWithContext(ctx context.Context) EventhubDataConnectionMapOutput

type EventhubDataConnectionOutput added in v3.31.1

type EventhubDataConnectionOutput struct {
	*pulumi.OutputState
}

func (EventhubDataConnectionOutput) ElementType added in v3.31.1

func (EventhubDataConnectionOutput) ToEventhubDataConnectionOutput added in v3.31.1

func (o EventhubDataConnectionOutput) ToEventhubDataConnectionOutput() EventhubDataConnectionOutput

func (EventhubDataConnectionOutput) ToEventhubDataConnectionOutputWithContext added in v3.31.1

func (o EventhubDataConnectionOutput) ToEventhubDataConnectionOutputWithContext(ctx context.Context) EventhubDataConnectionOutput

func (EventhubDataConnectionOutput) ToEventhubDataConnectionPtrOutput added in v3.47.1

func (o EventhubDataConnectionOutput) ToEventhubDataConnectionPtrOutput() EventhubDataConnectionPtrOutput

func (EventhubDataConnectionOutput) ToEventhubDataConnectionPtrOutputWithContext added in v3.47.1

func (o EventhubDataConnectionOutput) ToEventhubDataConnectionPtrOutputWithContext(ctx context.Context) EventhubDataConnectionPtrOutput

type EventhubDataConnectionPtrInput added in v3.47.1

type EventhubDataConnectionPtrInput interface {
	pulumi.Input

	ToEventhubDataConnectionPtrOutput() EventhubDataConnectionPtrOutput
	ToEventhubDataConnectionPtrOutputWithContext(ctx context.Context) EventhubDataConnectionPtrOutput
}

type EventhubDataConnectionPtrOutput added in v3.47.1

type EventhubDataConnectionPtrOutput struct {
	*pulumi.OutputState
}

func (EventhubDataConnectionPtrOutput) ElementType added in v3.47.1

func (EventhubDataConnectionPtrOutput) ToEventhubDataConnectionPtrOutput added in v3.47.1

func (o EventhubDataConnectionPtrOutput) ToEventhubDataConnectionPtrOutput() EventhubDataConnectionPtrOutput

func (EventhubDataConnectionPtrOutput) ToEventhubDataConnectionPtrOutputWithContext added in v3.47.1

func (o EventhubDataConnectionPtrOutput) ToEventhubDataConnectionPtrOutputWithContext(ctx context.Context) EventhubDataConnectionPtrOutput

type EventhubDataConnectionState

type EventhubDataConnectionState struct {
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// Specifies compression type for the connection. Allowed values: `GZip` and `None`. Defaults to `None`. Changing this forces a new resource to be created.
	Compression pulumi.StringPtrInput
	// Specifies the EventHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringPtrInput
	// Specifies the data format of the EventHub messages. Allowed values: `AVRO`, `CSV`, `JSON`, `MULTIJSON`, `PSV`, `RAW`, `SCSV`, `SINGLEJSON`, `SOHSV`, `TSV` and `TXT`
	DataFormat pulumi.StringPtrInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringPtrInput
	// Specifies a list of system properties for the Event Hub.
	EventSystemProperties pulumi.StringArrayInput
	// Specifies the resource id of the EventHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	EventhubId pulumi.StringPtrInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created.
	MappingRuleName pulumi.StringPtrInput
	// The name of the Kusto EventHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the target table name used for the message ingestion. Table must exist before resource is created.
	TableName pulumi.StringPtrInput
}

func (EventhubDataConnectionState) ElementType

type IotHubDataConnection added in v3.49.0

type IotHubDataConnection struct {
	pulumi.CustomResourceState

	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Specifies the IotHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringOutput `pulumi:"consumerGroup"`
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
	// Specifies the System Properties that each IoT Hub message should contain. Changing this forces a new resource to be created.
	EventSystemProperties pulumi.StringArrayOutput `pulumi:"eventSystemProperties"`
	// Specifies the resource id of the IotHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	IothubId pulumi.StringOutput `pulumi:"iothubId"`
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Kusto IotHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the IotHub Shared Access Policy this data connection will use for ingestion, which must have read permission. Changing this forces a new resource to be created.
	SharedAccessPolicyName pulumi.StringOutput `pulumi:"sharedAccessPolicyName"`
}

Manages a Kusto (also known as Azure Data Explorer) IotHub Data Connection

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/iot"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleCluster, err := kusto.NewCluster(ctx, "exampleCluster", &kusto.ClusterArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku: &kusto.ClusterSkuArgs{
				Name:     pulumi.String("Standard_D13_v2"),
				Capacity: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		exampleDatabase, err := kusto.NewDatabase(ctx, "exampleDatabase", &kusto.DatabaseArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			ClusterName:       exampleCluster.Name,
			HotCachePeriod:    pulumi.String("P7D"),
			SoftDeletePeriod:  pulumi.String("P31D"),
		})
		if err != nil {
			return err
		}
		exampleIoTHub, err := iot.NewIoTHub(ctx, "exampleIoTHub", &iot.IoTHubArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			Sku: &iot.IoTHubSkuArgs{
				Name:     pulumi.String("B1"),
				Capacity: pulumi.Int(1),
			},
		})
		if err != nil {
			return err
		}
		exampleSharedAccessPolicy, err := iot.NewSharedAccessPolicy(ctx, "exampleSharedAccessPolicy", &iot.SharedAccessPolicyArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			IothubName:        exampleIoTHub.Name,
			RegistryRead:      pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleConsumerGroup, err := iot.NewConsumerGroup(ctx, "exampleConsumerGroup", &iot.ConsumerGroupArgs{
			ResourceGroupName:    exampleResourceGroup.Name,
			IothubName:           exampleIoTHub.Name,
			EventhubEndpointName: pulumi.String("events"),
		})
		if err != nil {
			return err
		}
		_, err = kusto.NewIotHubDataConnection(ctx, "exampleIotHubDataConnection", &kusto.IotHubDataConnectionArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			ClusterName:            exampleCluster.Name,
			DatabaseName:           exampleDatabase.Name,
			IothubId:               exampleIoTHub.ID(),
			ConsumerGroup:          exampleConsumerGroup.Name,
			SharedAccessPolicyName: exampleSharedAccessPolicy.Name,
			EventSystemProperties: pulumi.StringArray{
				pulumi.String("message-id"),
				pulumi.String("sequence-number"),
				pulumi.String("to"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Kusto IotHub Data Connections can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:kusto/iotHubDataConnection:IotHubDataConnection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/Clusters/cluster1/Databases/database1/DataConnections/dataConnection1

```

func GetIotHubDataConnection added in v3.49.0

func GetIotHubDataConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IotHubDataConnectionState, opts ...pulumi.ResourceOption) (*IotHubDataConnection, error)

GetIotHubDataConnection gets an existing IotHubDataConnection 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 NewIotHubDataConnection added in v3.49.0

func NewIotHubDataConnection(ctx *pulumi.Context,
	name string, args *IotHubDataConnectionArgs, opts ...pulumi.ResourceOption) (*IotHubDataConnection, error)

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

func (*IotHubDataConnection) ElementType added in v3.49.0

func (*IotHubDataConnection) ElementType() reflect.Type

func (*IotHubDataConnection) ToIotHubDataConnectionOutput added in v3.49.0

func (i *IotHubDataConnection) ToIotHubDataConnectionOutput() IotHubDataConnectionOutput

func (*IotHubDataConnection) ToIotHubDataConnectionOutputWithContext added in v3.49.0

func (i *IotHubDataConnection) ToIotHubDataConnectionOutputWithContext(ctx context.Context) IotHubDataConnectionOutput

func (*IotHubDataConnection) ToIotHubDataConnectionPtrOutput added in v3.49.0

func (i *IotHubDataConnection) ToIotHubDataConnectionPtrOutput() IotHubDataConnectionPtrOutput

func (*IotHubDataConnection) ToIotHubDataConnectionPtrOutputWithContext added in v3.49.0

func (i *IotHubDataConnection) ToIotHubDataConnectionPtrOutputWithContext(ctx context.Context) IotHubDataConnectionPtrOutput

type IotHubDataConnectionArgs added in v3.49.0

type IotHubDataConnectionArgs struct {
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringInput
	// Specifies the IotHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringInput
	// Specifies the System Properties that each IoT Hub message should contain. Changing this forces a new resource to be created.
	EventSystemProperties pulumi.StringArrayInput
	// Specifies the resource id of the IotHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	IothubId pulumi.StringInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto IotHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the IotHub Shared Access Policy this data connection will use for ingestion, which must have read permission. Changing this forces a new resource to be created.
	SharedAccessPolicyName pulumi.StringInput
}

The set of arguments for constructing a IotHubDataConnection resource.

func (IotHubDataConnectionArgs) ElementType added in v3.49.0

func (IotHubDataConnectionArgs) ElementType() reflect.Type

type IotHubDataConnectionArray added in v3.49.0

type IotHubDataConnectionArray []IotHubDataConnectionInput

func (IotHubDataConnectionArray) ElementType added in v3.49.0

func (IotHubDataConnectionArray) ElementType() reflect.Type

func (IotHubDataConnectionArray) ToIotHubDataConnectionArrayOutput added in v3.49.0

func (i IotHubDataConnectionArray) ToIotHubDataConnectionArrayOutput() IotHubDataConnectionArrayOutput

func (IotHubDataConnectionArray) ToIotHubDataConnectionArrayOutputWithContext added in v3.49.0

func (i IotHubDataConnectionArray) ToIotHubDataConnectionArrayOutputWithContext(ctx context.Context) IotHubDataConnectionArrayOutput

type IotHubDataConnectionArrayInput added in v3.49.0

type IotHubDataConnectionArrayInput interface {
	pulumi.Input

	ToIotHubDataConnectionArrayOutput() IotHubDataConnectionArrayOutput
	ToIotHubDataConnectionArrayOutputWithContext(context.Context) IotHubDataConnectionArrayOutput
}

IotHubDataConnectionArrayInput is an input type that accepts IotHubDataConnectionArray and IotHubDataConnectionArrayOutput values. You can construct a concrete instance of `IotHubDataConnectionArrayInput` via:

IotHubDataConnectionArray{ IotHubDataConnectionArgs{...} }

type IotHubDataConnectionArrayOutput added in v3.49.0

type IotHubDataConnectionArrayOutput struct{ *pulumi.OutputState }

func (IotHubDataConnectionArrayOutput) ElementType added in v3.49.0

func (IotHubDataConnectionArrayOutput) Index added in v3.49.0

func (IotHubDataConnectionArrayOutput) ToIotHubDataConnectionArrayOutput added in v3.49.0

func (o IotHubDataConnectionArrayOutput) ToIotHubDataConnectionArrayOutput() IotHubDataConnectionArrayOutput

func (IotHubDataConnectionArrayOutput) ToIotHubDataConnectionArrayOutputWithContext added in v3.49.0

func (o IotHubDataConnectionArrayOutput) ToIotHubDataConnectionArrayOutputWithContext(ctx context.Context) IotHubDataConnectionArrayOutput

type IotHubDataConnectionInput added in v3.49.0

type IotHubDataConnectionInput interface {
	pulumi.Input

	ToIotHubDataConnectionOutput() IotHubDataConnectionOutput
	ToIotHubDataConnectionOutputWithContext(ctx context.Context) IotHubDataConnectionOutput
}

type IotHubDataConnectionMap added in v3.49.0

type IotHubDataConnectionMap map[string]IotHubDataConnectionInput

func (IotHubDataConnectionMap) ElementType added in v3.49.0

func (IotHubDataConnectionMap) ElementType() reflect.Type

func (IotHubDataConnectionMap) ToIotHubDataConnectionMapOutput added in v3.49.0

func (i IotHubDataConnectionMap) ToIotHubDataConnectionMapOutput() IotHubDataConnectionMapOutput

func (IotHubDataConnectionMap) ToIotHubDataConnectionMapOutputWithContext added in v3.49.0

func (i IotHubDataConnectionMap) ToIotHubDataConnectionMapOutputWithContext(ctx context.Context) IotHubDataConnectionMapOutput

type IotHubDataConnectionMapInput added in v3.49.0

type IotHubDataConnectionMapInput interface {
	pulumi.Input

	ToIotHubDataConnectionMapOutput() IotHubDataConnectionMapOutput
	ToIotHubDataConnectionMapOutputWithContext(context.Context) IotHubDataConnectionMapOutput
}

IotHubDataConnectionMapInput is an input type that accepts IotHubDataConnectionMap and IotHubDataConnectionMapOutput values. You can construct a concrete instance of `IotHubDataConnectionMapInput` via:

IotHubDataConnectionMap{ "key": IotHubDataConnectionArgs{...} }

type IotHubDataConnectionMapOutput added in v3.49.0

type IotHubDataConnectionMapOutput struct{ *pulumi.OutputState }

func (IotHubDataConnectionMapOutput) ElementType added in v3.49.0

func (IotHubDataConnectionMapOutput) MapIndex added in v3.49.0

func (IotHubDataConnectionMapOutput) ToIotHubDataConnectionMapOutput added in v3.49.0

func (o IotHubDataConnectionMapOutput) ToIotHubDataConnectionMapOutput() IotHubDataConnectionMapOutput

func (IotHubDataConnectionMapOutput) ToIotHubDataConnectionMapOutputWithContext added in v3.49.0

func (o IotHubDataConnectionMapOutput) ToIotHubDataConnectionMapOutputWithContext(ctx context.Context) IotHubDataConnectionMapOutput

type IotHubDataConnectionOutput added in v3.49.0

type IotHubDataConnectionOutput struct {
	*pulumi.OutputState
}

func (IotHubDataConnectionOutput) ElementType added in v3.49.0

func (IotHubDataConnectionOutput) ElementType() reflect.Type

func (IotHubDataConnectionOutput) ToIotHubDataConnectionOutput added in v3.49.0

func (o IotHubDataConnectionOutput) ToIotHubDataConnectionOutput() IotHubDataConnectionOutput

func (IotHubDataConnectionOutput) ToIotHubDataConnectionOutputWithContext added in v3.49.0

func (o IotHubDataConnectionOutput) ToIotHubDataConnectionOutputWithContext(ctx context.Context) IotHubDataConnectionOutput

func (IotHubDataConnectionOutput) ToIotHubDataConnectionPtrOutput added in v3.49.0

func (o IotHubDataConnectionOutput) ToIotHubDataConnectionPtrOutput() IotHubDataConnectionPtrOutput

func (IotHubDataConnectionOutput) ToIotHubDataConnectionPtrOutputWithContext added in v3.49.0

func (o IotHubDataConnectionOutput) ToIotHubDataConnectionPtrOutputWithContext(ctx context.Context) IotHubDataConnectionPtrOutput

type IotHubDataConnectionPtrInput added in v3.49.0

type IotHubDataConnectionPtrInput interface {
	pulumi.Input

	ToIotHubDataConnectionPtrOutput() IotHubDataConnectionPtrOutput
	ToIotHubDataConnectionPtrOutputWithContext(ctx context.Context) IotHubDataConnectionPtrOutput
}

type IotHubDataConnectionPtrOutput added in v3.49.0

type IotHubDataConnectionPtrOutput struct {
	*pulumi.OutputState
}

func (IotHubDataConnectionPtrOutput) ElementType added in v3.49.0

func (IotHubDataConnectionPtrOutput) ToIotHubDataConnectionPtrOutput added in v3.49.0

func (o IotHubDataConnectionPtrOutput) ToIotHubDataConnectionPtrOutput() IotHubDataConnectionPtrOutput

func (IotHubDataConnectionPtrOutput) ToIotHubDataConnectionPtrOutputWithContext added in v3.49.0

func (o IotHubDataConnectionPtrOutput) ToIotHubDataConnectionPtrOutputWithContext(ctx context.Context) IotHubDataConnectionPtrOutput

type IotHubDataConnectionState added in v3.49.0

type IotHubDataConnectionState struct {
	// Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created.
	ClusterName pulumi.StringPtrInput
	// Specifies the IotHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created.
	ConsumerGroup pulumi.StringPtrInput
	// Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created.
	DatabaseName pulumi.StringPtrInput
	// Specifies the System Properties that each IoT Hub message should contain. Changing this forces a new resource to be created.
	EventSystemProperties pulumi.StringArrayInput
	// Specifies the resource id of the IotHub this data connection will use for ingestion. Changing this forces a new resource to be created.
	IothubId pulumi.StringPtrInput
	// The location where the Kusto Database should be created. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Kusto IotHub Data Connection to create. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the IotHub Shared Access Policy this data connection will use for ingestion, which must have read permission. Changing this forces a new resource to be created.
	SharedAccessPolicyName pulumi.StringPtrInput
}

func (IotHubDataConnectionState) ElementType added in v3.49.0

func (IotHubDataConnectionState) ElementType() reflect.Type

type LookupClusterArgs

type LookupClusterArgs struct {
	// Specifies the name of the Kusto Cluster.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Kusto Cluster exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getCluster.

type LookupClusterResult

type LookupClusterResult struct {
	// The Kusto Cluster URI to be used for data ingestion.
	DataIngestionUri string `pulumi:"dataIngestionUri"`
	// The provider-assigned unique ID for this managed resource.
	Id                string            `pulumi:"id"`
	Location          string            `pulumi:"location"`
	Name              string            `pulumi:"name"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	Tags              map[string]string `pulumi:"tags"`
	// The FQDN of the Azure Kusto Cluster.
	Uri string `pulumi:"uri"`
}

A collection of values returned by getCluster.

func LookupCluster

func LookupCluster(ctx *pulumi.Context, args *LookupClusterArgs, opts ...pulumi.InvokeOption) (*LookupClusterResult, error)

Use this data source to access information about an existing Kusto (also known as Azure Data Explorer) Cluster

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := kusto.LookupCluster(ctx, &kusto.LookupClusterArgs{
			Name:              "kustocluster",
			ResourceGroupName: "test_resource_group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL