kusto

package
v3.31.0 Latest Latest
Warning

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

Go to latest
Published: Nov 20, 2020 License: Apache-2.0 Imports: 4 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

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.

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 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"`
	// 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"`
	// A 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.
	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("East US"),
		})
		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
	})
}

```

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.

type ClusterArgs

type ClusterArgs struct {
	// 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
	// A 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.
	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 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.

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.

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 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 {
	// The list of user identities associated with the Kusto cluster.
	IdentityIds []string `pulumi:"identityIds"`
	// Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.
	PrincipalId *string `pulumi:"principalId"`
	// Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned` (where Azure will generate a Service Principal for you).
	Type string `pulumi:"type"`
}

type ClusterIdentityArgs added in v3.11.0

type ClusterIdentityArgs struct {
	// The list of user identities associated with the Kusto cluster.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: `SystemAssigned` (where Azure will generate a Service Principal for you).
	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

The list of user identities associated with the Kusto cluster.

func (ClusterIdentityOutput) PrincipalId added in v3.11.0

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

func (ClusterIdentityOutput) TenantId added in v3.11.0

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

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` (where Azure will generate a Service Principal for you).

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

The list of user identities associated with the Kusto cluster.

func (ClusterIdentityPtrOutput) PrincipalId added in v3.11.0

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

func (ClusterIdentityPtrOutput) TenantId added in v3.11.0

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

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` (where Azure will generate a Service Principal for you).

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 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("East US"),
		})
		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
	})
}

```

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.

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 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 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_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_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_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_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
	// 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
	// A 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.
	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("East US"),
		})
		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
	})
}

```

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.

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 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("East US"),
		})
		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
	})
}

```

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.

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 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("East US"),
		})
		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
	})
}

```

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.

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 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 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 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 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 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 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("East US"),
		})
		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
	})
}

```

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.

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