elasticsan

package
v6.14.0 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2024 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 ElasticSan

type ElasticSan struct {
	pulumi.CustomResourceState

	// Specifies the base size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** When updating `baseSizeInTib`, the new value should be greater than the existing one.
	BaseSizeInTib pulumi.IntOutput `pulumi:"baseSizeInTib"`
	// Specifies the extended size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** `extendedSizeInTib` cannot be removed and when updating, the new value should be greater than the existing one.
	ExtendedSizeInTib pulumi.IntPtrOutput `pulumi:"extendedSizeInTib"`
	// The Azure Region where the Elastic SAN resource should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of this Elastic SAN resource. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the Resource Group within which this Elastic SAN resource should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `sku` block as defined below.
	Sku ElasticSanSkuOutput `pulumi:"sku"`
	// A mapping of tags which should be assigned to the Elastic SAN resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Total Provisioned IOps of the Elastic SAN resource.
	TotalIops pulumi.IntOutput `pulumi:"totalIops"`
	// Total Provisioned MBps Elastic SAN resource.
	TotalMbps pulumi.IntOutput `pulumi:"totalMbps"`
	// Total size of the Elastic SAN resource in TB.
	TotalSizeInTib pulumi.IntOutput `pulumi:"totalSizeInTib"`
	// Total size of the provisioned Volumes in GiB.
	TotalVolumeSizeInGib pulumi.IntOutput `pulumi:"totalVolumeSizeInGib"`
	// Total number of volume groups in this Elastic SAN resource.
	VolumeGroupCount pulumi.IntOutput `pulumi:"volumeGroupCount"`
	// Logical zone for the Elastic SAN resource. Changing this forces a new resource to be created.
	//
	// > **NOTE** `zones` cannot be specified if `sku.name` is set to `Premium_ZRS`.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages an Elastic SAN resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = elasticsan.NewElasticSan(ctx, "example", &elasticsan.ElasticSanArgs{
			Name:              pulumi.String("example"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			BaseSizeInTib:     pulumi.Int(1),
			ExtendedSizeInTib: pulumi.Int(2),
			Sku: &elasticsan.ElasticSanSkuArgs{
				Name: pulumi.String("example-value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An existing Elastic SAN can be imported into Pulumi using the `resource id`, e.g.

```sh $ pulumi import azure:elasticsan/elasticSan:ElasticSan example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ElasticSan/elasticSans/esan1 ```

func GetElasticSan

func GetElasticSan(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ElasticSanState, opts ...pulumi.ResourceOption) (*ElasticSan, error)

GetElasticSan gets an existing ElasticSan 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 NewElasticSan

func NewElasticSan(ctx *pulumi.Context,
	name string, args *ElasticSanArgs, opts ...pulumi.ResourceOption) (*ElasticSan, error)

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

func (*ElasticSan) ElementType

func (*ElasticSan) ElementType() reflect.Type

func (*ElasticSan) ToElasticSanOutput

func (i *ElasticSan) ToElasticSanOutput() ElasticSanOutput

func (*ElasticSan) ToElasticSanOutputWithContext

func (i *ElasticSan) ToElasticSanOutputWithContext(ctx context.Context) ElasticSanOutput

type ElasticSanArgs

type ElasticSanArgs struct {
	// Specifies the base size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** When updating `baseSizeInTib`, the new value should be greater than the existing one.
	BaseSizeInTib pulumi.IntInput
	// Specifies the extended size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** `extendedSizeInTib` cannot be removed and when updating, the new value should be greater than the existing one.
	ExtendedSizeInTib pulumi.IntPtrInput
	// The Azure Region where the Elastic SAN resource should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Elastic SAN resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Resource Group within which this Elastic SAN resource should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `sku` block as defined below.
	Sku ElasticSanSkuInput
	// A mapping of tags which should be assigned to the Elastic SAN resource.
	Tags pulumi.StringMapInput
	// Logical zone for the Elastic SAN resource. Changing this forces a new resource to be created.
	//
	// > **NOTE** `zones` cannot be specified if `sku.name` is set to `Premium_ZRS`.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a ElasticSan resource.

func (ElasticSanArgs) ElementType

func (ElasticSanArgs) ElementType() reflect.Type

type ElasticSanArray

type ElasticSanArray []ElasticSanInput

func (ElasticSanArray) ElementType

func (ElasticSanArray) ElementType() reflect.Type

func (ElasticSanArray) ToElasticSanArrayOutput

func (i ElasticSanArray) ToElasticSanArrayOutput() ElasticSanArrayOutput

func (ElasticSanArray) ToElasticSanArrayOutputWithContext

func (i ElasticSanArray) ToElasticSanArrayOutputWithContext(ctx context.Context) ElasticSanArrayOutput

type ElasticSanArrayInput

type ElasticSanArrayInput interface {
	pulumi.Input

	ToElasticSanArrayOutput() ElasticSanArrayOutput
	ToElasticSanArrayOutputWithContext(context.Context) ElasticSanArrayOutput
}

ElasticSanArrayInput is an input type that accepts ElasticSanArray and ElasticSanArrayOutput values. You can construct a concrete instance of `ElasticSanArrayInput` via:

ElasticSanArray{ ElasticSanArgs{...} }

type ElasticSanArrayOutput

type ElasticSanArrayOutput struct{ *pulumi.OutputState }

func (ElasticSanArrayOutput) ElementType

func (ElasticSanArrayOutput) ElementType() reflect.Type

func (ElasticSanArrayOutput) Index

func (ElasticSanArrayOutput) ToElasticSanArrayOutput

func (o ElasticSanArrayOutput) ToElasticSanArrayOutput() ElasticSanArrayOutput

func (ElasticSanArrayOutput) ToElasticSanArrayOutputWithContext

func (o ElasticSanArrayOutput) ToElasticSanArrayOutputWithContext(ctx context.Context) ElasticSanArrayOutput

type ElasticSanInput

type ElasticSanInput interface {
	pulumi.Input

	ToElasticSanOutput() ElasticSanOutput
	ToElasticSanOutputWithContext(ctx context.Context) ElasticSanOutput
}

type ElasticSanMap

type ElasticSanMap map[string]ElasticSanInput

func (ElasticSanMap) ElementType

func (ElasticSanMap) ElementType() reflect.Type

func (ElasticSanMap) ToElasticSanMapOutput

func (i ElasticSanMap) ToElasticSanMapOutput() ElasticSanMapOutput

func (ElasticSanMap) ToElasticSanMapOutputWithContext

func (i ElasticSanMap) ToElasticSanMapOutputWithContext(ctx context.Context) ElasticSanMapOutput

type ElasticSanMapInput

type ElasticSanMapInput interface {
	pulumi.Input

	ToElasticSanMapOutput() ElasticSanMapOutput
	ToElasticSanMapOutputWithContext(context.Context) ElasticSanMapOutput
}

ElasticSanMapInput is an input type that accepts ElasticSanMap and ElasticSanMapOutput values. You can construct a concrete instance of `ElasticSanMapInput` via:

ElasticSanMap{ "key": ElasticSanArgs{...} }

type ElasticSanMapOutput

type ElasticSanMapOutput struct{ *pulumi.OutputState }

func (ElasticSanMapOutput) ElementType

func (ElasticSanMapOutput) ElementType() reflect.Type

func (ElasticSanMapOutput) MapIndex

func (ElasticSanMapOutput) ToElasticSanMapOutput

func (o ElasticSanMapOutput) ToElasticSanMapOutput() ElasticSanMapOutput

func (ElasticSanMapOutput) ToElasticSanMapOutputWithContext

func (o ElasticSanMapOutput) ToElasticSanMapOutputWithContext(ctx context.Context) ElasticSanMapOutput

type ElasticSanOutput

type ElasticSanOutput struct{ *pulumi.OutputState }

func (ElasticSanOutput) BaseSizeInTib

func (o ElasticSanOutput) BaseSizeInTib() pulumi.IntOutput

Specifies the base size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.

> **NOTE** When updating `baseSizeInTib`, the new value should be greater than the existing one.

func (ElasticSanOutput) ElementType

func (ElasticSanOutput) ElementType() reflect.Type

func (ElasticSanOutput) ExtendedSizeInTib

func (o ElasticSanOutput) ExtendedSizeInTib() pulumi.IntPtrOutput

Specifies the extended size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.

> **NOTE** `extendedSizeInTib` cannot be removed and when updating, the new value should be greater than the existing one.

func (ElasticSanOutput) Location

func (o ElasticSanOutput) Location() pulumi.StringOutput

The Azure Region where the Elastic SAN resource should exist. Changing this forces a new resource to be created.

func (ElasticSanOutput) Name

Specifies the name of this Elastic SAN resource. Changing this forces a new resource to be created.

func (ElasticSanOutput) ResourceGroupName

func (o ElasticSanOutput) ResourceGroupName() pulumi.StringOutput

Specifies the name of the Resource Group within which this Elastic SAN resource should exist. Changing this forces a new resource to be created.

func (ElasticSanOutput) Sku

A `sku` block as defined below.

func (ElasticSanOutput) Tags

A mapping of tags which should be assigned to the Elastic SAN resource.

func (ElasticSanOutput) ToElasticSanOutput

func (o ElasticSanOutput) ToElasticSanOutput() ElasticSanOutput

func (ElasticSanOutput) ToElasticSanOutputWithContext

func (o ElasticSanOutput) ToElasticSanOutputWithContext(ctx context.Context) ElasticSanOutput

func (ElasticSanOutput) TotalIops

func (o ElasticSanOutput) TotalIops() pulumi.IntOutput

Total Provisioned IOps of the Elastic SAN resource.

func (ElasticSanOutput) TotalMbps

func (o ElasticSanOutput) TotalMbps() pulumi.IntOutput

Total Provisioned MBps Elastic SAN resource.

func (ElasticSanOutput) TotalSizeInTib

func (o ElasticSanOutput) TotalSizeInTib() pulumi.IntOutput

Total size of the Elastic SAN resource in TB.

func (ElasticSanOutput) TotalVolumeSizeInGib

func (o ElasticSanOutput) TotalVolumeSizeInGib() pulumi.IntOutput

Total size of the provisioned Volumes in GiB.

func (ElasticSanOutput) VolumeGroupCount

func (o ElasticSanOutput) VolumeGroupCount() pulumi.IntOutput

Total number of volume groups in this Elastic SAN resource.

func (ElasticSanOutput) Zones

Logical zone for the Elastic SAN resource. Changing this forces a new resource to be created.

> **NOTE** `zones` cannot be specified if `sku.name` is set to `Premium_ZRS`.

type ElasticSanSku

type ElasticSanSku struct {
	// The SKU name. Possible values are `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	//
	// > **NOTE** `Premium_ZRS` SKU is only available in limited Azure regions including `France Central`, `North Europe`, `West Europe`, and `West US 2`. Please refer to this [document](https://azure.microsoft.com/updates/regional-expansion-azure-elastic-san-public-preview-is-now-available-in-more-regions) for more details.
	Name string `pulumi:"name"`
	// The SKU tier. The only possible value is `Premium`. Defaults to `Premium`.
	Tier *string `pulumi:"tier"`
}

type ElasticSanSkuArgs

type ElasticSanSkuArgs struct {
	// The SKU name. Possible values are `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	//
	// > **NOTE** `Premium_ZRS` SKU is only available in limited Azure regions including `France Central`, `North Europe`, `West Europe`, and `West US 2`. Please refer to this [document](https://azure.microsoft.com/updates/regional-expansion-azure-elastic-san-public-preview-is-now-available-in-more-regions) for more details.
	Name pulumi.StringInput `pulumi:"name"`
	// The SKU tier. The only possible value is `Premium`. Defaults to `Premium`.
	Tier pulumi.StringPtrInput `pulumi:"tier"`
}

func (ElasticSanSkuArgs) ElementType

func (ElasticSanSkuArgs) ElementType() reflect.Type

func (ElasticSanSkuArgs) ToElasticSanSkuOutput

func (i ElasticSanSkuArgs) ToElasticSanSkuOutput() ElasticSanSkuOutput

func (ElasticSanSkuArgs) ToElasticSanSkuOutputWithContext

func (i ElasticSanSkuArgs) ToElasticSanSkuOutputWithContext(ctx context.Context) ElasticSanSkuOutput

func (ElasticSanSkuArgs) ToElasticSanSkuPtrOutput

func (i ElasticSanSkuArgs) ToElasticSanSkuPtrOutput() ElasticSanSkuPtrOutput

func (ElasticSanSkuArgs) ToElasticSanSkuPtrOutputWithContext

func (i ElasticSanSkuArgs) ToElasticSanSkuPtrOutputWithContext(ctx context.Context) ElasticSanSkuPtrOutput

type ElasticSanSkuInput

type ElasticSanSkuInput interface {
	pulumi.Input

	ToElasticSanSkuOutput() ElasticSanSkuOutput
	ToElasticSanSkuOutputWithContext(context.Context) ElasticSanSkuOutput
}

ElasticSanSkuInput is an input type that accepts ElasticSanSkuArgs and ElasticSanSkuOutput values. You can construct a concrete instance of `ElasticSanSkuInput` via:

ElasticSanSkuArgs{...}

type ElasticSanSkuOutput

type ElasticSanSkuOutput struct{ *pulumi.OutputState }

func (ElasticSanSkuOutput) ElementType

func (ElasticSanSkuOutput) ElementType() reflect.Type

func (ElasticSanSkuOutput) Name

The SKU name. Possible values are `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

> **NOTE** `Premium_ZRS` SKU is only available in limited Azure regions including `France Central`, `North Europe`, `West Europe`, and `West US 2`. Please refer to this [document](https://azure.microsoft.com/updates/regional-expansion-azure-elastic-san-public-preview-is-now-available-in-more-regions) for more details.

func (ElasticSanSkuOutput) Tier

The SKU tier. The only possible value is `Premium`. Defaults to `Premium`.

func (ElasticSanSkuOutput) ToElasticSanSkuOutput

func (o ElasticSanSkuOutput) ToElasticSanSkuOutput() ElasticSanSkuOutput

func (ElasticSanSkuOutput) ToElasticSanSkuOutputWithContext

func (o ElasticSanSkuOutput) ToElasticSanSkuOutputWithContext(ctx context.Context) ElasticSanSkuOutput

func (ElasticSanSkuOutput) ToElasticSanSkuPtrOutput

func (o ElasticSanSkuOutput) ToElasticSanSkuPtrOutput() ElasticSanSkuPtrOutput

func (ElasticSanSkuOutput) ToElasticSanSkuPtrOutputWithContext

func (o ElasticSanSkuOutput) ToElasticSanSkuPtrOutputWithContext(ctx context.Context) ElasticSanSkuPtrOutput

type ElasticSanSkuPtrInput

type ElasticSanSkuPtrInput interface {
	pulumi.Input

	ToElasticSanSkuPtrOutput() ElasticSanSkuPtrOutput
	ToElasticSanSkuPtrOutputWithContext(context.Context) ElasticSanSkuPtrOutput
}

ElasticSanSkuPtrInput is an input type that accepts ElasticSanSkuArgs, ElasticSanSkuPtr and ElasticSanSkuPtrOutput values. You can construct a concrete instance of `ElasticSanSkuPtrInput` via:

        ElasticSanSkuArgs{...}

or:

        nil

type ElasticSanSkuPtrOutput

type ElasticSanSkuPtrOutput struct{ *pulumi.OutputState }

func (ElasticSanSkuPtrOutput) Elem

func (ElasticSanSkuPtrOutput) ElementType

func (ElasticSanSkuPtrOutput) ElementType() reflect.Type

func (ElasticSanSkuPtrOutput) Name

The SKU name. Possible values are `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

> **NOTE** `Premium_ZRS` SKU is only available in limited Azure regions including `France Central`, `North Europe`, `West Europe`, and `West US 2`. Please refer to this [document](https://azure.microsoft.com/updates/regional-expansion-azure-elastic-san-public-preview-is-now-available-in-more-regions) for more details.

func (ElasticSanSkuPtrOutput) Tier

The SKU tier. The only possible value is `Premium`. Defaults to `Premium`.

func (ElasticSanSkuPtrOutput) ToElasticSanSkuPtrOutput

func (o ElasticSanSkuPtrOutput) ToElasticSanSkuPtrOutput() ElasticSanSkuPtrOutput

func (ElasticSanSkuPtrOutput) ToElasticSanSkuPtrOutputWithContext

func (o ElasticSanSkuPtrOutput) ToElasticSanSkuPtrOutputWithContext(ctx context.Context) ElasticSanSkuPtrOutput

type ElasticSanState

type ElasticSanState struct {
	// Specifies the base size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** When updating `baseSizeInTib`, the new value should be greater than the existing one.
	BaseSizeInTib pulumi.IntPtrInput
	// Specifies the extended size of the Elastic SAN resource in TiB. Possible values are between `1` and `100`.
	//
	// > **NOTE** `extendedSizeInTib` cannot be removed and when updating, the new value should be greater than the existing one.
	ExtendedSizeInTib pulumi.IntPtrInput
	// The Azure Region where the Elastic SAN resource should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Elastic SAN resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Resource Group within which this Elastic SAN resource should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `sku` block as defined below.
	Sku ElasticSanSkuPtrInput
	// A mapping of tags which should be assigned to the Elastic SAN resource.
	Tags pulumi.StringMapInput
	// Total Provisioned IOps of the Elastic SAN resource.
	TotalIops pulumi.IntPtrInput
	// Total Provisioned MBps Elastic SAN resource.
	TotalMbps pulumi.IntPtrInput
	// Total size of the Elastic SAN resource in TB.
	TotalSizeInTib pulumi.IntPtrInput
	// Total size of the provisioned Volumes in GiB.
	TotalVolumeSizeInGib pulumi.IntPtrInput
	// Total number of volume groups in this Elastic SAN resource.
	VolumeGroupCount pulumi.IntPtrInput
	// Logical zone for the Elastic SAN resource. Changing this forces a new resource to be created.
	//
	// > **NOTE** `zones` cannot be specified if `sku.name` is set to `Premium_ZRS`.
	Zones pulumi.StringArrayInput
}

func (ElasticSanState) ElementType

func (ElasticSanState) ElementType() reflect.Type

type GetArgs

type GetArgs struct {
	// The name of this Elastic SAN.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Elastic SAN exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking get.

type GetOutputArgs

type GetOutputArgs struct {
	// The name of this Elastic SAN.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Elastic SAN exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking get.

func (GetOutputArgs) ElementType

func (GetOutputArgs) ElementType() reflect.Type

type GetResult

type GetResult struct {
	// The base size of the Elastic SAN resource in TiB.
	BaseSizeInTib int `pulumi:"baseSizeInTib"`
	// The base size of the Elastic SAN resource in TiB.
	ExtendedSizeInTib int `pulumi:"extendedSizeInTib"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure Region where the Elastic SAN exists.
	Location string `pulumi:"location"`
	// The SKU name.
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A `sku` block as defined below.
	Skus []GetSkus `pulumi:"skus"`
	// A mapping of tags assigned to the Elastic SAN.
	Tags map[string]string `pulumi:"tags"`
	// Total Provisioned IOps of the Elastic SAN resource.
	TotalIops int `pulumi:"totalIops"`
	// Total Provisioned MBps Elastic SAN resource.
	TotalMbps int `pulumi:"totalMbps"`
	// Total size of the Elastic SAN resource in TB.
	TotalSizeInTib int `pulumi:"totalSizeInTib"`
	// Total size of the provisioned Volumes in GiB.
	TotalVolumeSizeInGib int `pulumi:"totalVolumeSizeInGib"`
	// Total number of volume groups in this Elastic SAN resource.
	VolumeGroupCount int `pulumi:"volumeGroupCount"`
	// Logical zone for the Elastic SAN resource.
	Zones []string `pulumi:"zones"`
}

A collection of values returned by get.

func Get

func Get(ctx *pulumi.Context, args *GetArgs, opts ...pulumi.InvokeOption) (*GetResult, error)

Use this data source to access information about an existing Elastic SAN.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := elasticsan.Get(ctx, &elasticsan.GetArgs{
			Name:              "existing",
			ResourceGroupName: "existing",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type GetResultOutput

type GetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by get.

func GetOutput

func GetOutput(ctx *pulumi.Context, args GetOutputArgs, opts ...pulumi.InvokeOption) GetResultOutput

func (GetResultOutput) BaseSizeInTib

func (o GetResultOutput) BaseSizeInTib() pulumi.IntOutput

The base size of the Elastic SAN resource in TiB.

func (GetResultOutput) ElementType

func (GetResultOutput) ElementType() reflect.Type

func (GetResultOutput) ExtendedSizeInTib

func (o GetResultOutput) ExtendedSizeInTib() pulumi.IntOutput

The base size of the Elastic SAN resource in TiB.

func (GetResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetResultOutput) Location

func (o GetResultOutput) Location() pulumi.StringOutput

The Azure Region where the Elastic SAN exists.

func (GetResultOutput) Name

The SKU name.

func (GetResultOutput) ResourceGroupName

func (o GetResultOutput) ResourceGroupName() pulumi.StringOutput

func (GetResultOutput) Skus

A `sku` block as defined below.

func (GetResultOutput) Tags

A mapping of tags assigned to the Elastic SAN.

func (GetResultOutput) ToGetResultOutput

func (o GetResultOutput) ToGetResultOutput() GetResultOutput

func (GetResultOutput) ToGetResultOutputWithContext

func (o GetResultOutput) ToGetResultOutputWithContext(ctx context.Context) GetResultOutput

func (GetResultOutput) TotalIops

func (o GetResultOutput) TotalIops() pulumi.IntOutput

Total Provisioned IOps of the Elastic SAN resource.

func (GetResultOutput) TotalMbps

func (o GetResultOutput) TotalMbps() pulumi.IntOutput

Total Provisioned MBps Elastic SAN resource.

func (GetResultOutput) TotalSizeInTib

func (o GetResultOutput) TotalSizeInTib() pulumi.IntOutput

Total size of the Elastic SAN resource in TB.

func (GetResultOutput) TotalVolumeSizeInGib

func (o GetResultOutput) TotalVolumeSizeInGib() pulumi.IntOutput

Total size of the provisioned Volumes in GiB.

func (GetResultOutput) VolumeGroupCount

func (o GetResultOutput) VolumeGroupCount() pulumi.IntOutput

Total number of volume groups in this Elastic SAN resource.

func (GetResultOutput) Zones

Logical zone for the Elastic SAN resource.

type GetSkus

type GetSkus struct {
	// The name of this Elastic SAN.
	Name string `pulumi:"name"`
	// The SKU tier.
	Tier string `pulumi:"tier"`
}

type GetSkusArgs

type GetSkusArgs struct {
	// The name of this Elastic SAN.
	Name pulumi.StringInput `pulumi:"name"`
	// The SKU tier.
	Tier pulumi.StringInput `pulumi:"tier"`
}

func (GetSkusArgs) ElementType

func (GetSkusArgs) ElementType() reflect.Type

func (GetSkusArgs) ToGetSkusOutput

func (i GetSkusArgs) ToGetSkusOutput() GetSkusOutput

func (GetSkusArgs) ToGetSkusOutputWithContext

func (i GetSkusArgs) ToGetSkusOutputWithContext(ctx context.Context) GetSkusOutput

type GetSkusArray

type GetSkusArray []GetSkusInput

func (GetSkusArray) ElementType

func (GetSkusArray) ElementType() reflect.Type

func (GetSkusArray) ToGetSkusArrayOutput

func (i GetSkusArray) ToGetSkusArrayOutput() GetSkusArrayOutput

func (GetSkusArray) ToGetSkusArrayOutputWithContext

func (i GetSkusArray) ToGetSkusArrayOutputWithContext(ctx context.Context) GetSkusArrayOutput

type GetSkusArrayInput

type GetSkusArrayInput interface {
	pulumi.Input

	ToGetSkusArrayOutput() GetSkusArrayOutput
	ToGetSkusArrayOutputWithContext(context.Context) GetSkusArrayOutput
}

GetSkusArrayInput is an input type that accepts GetSkusArray and GetSkusArrayOutput values. You can construct a concrete instance of `GetSkusArrayInput` via:

GetSkusArray{ GetSkusArgs{...} }

type GetSkusArrayOutput

type GetSkusArrayOutput struct{ *pulumi.OutputState }

func (GetSkusArrayOutput) ElementType

func (GetSkusArrayOutput) ElementType() reflect.Type

func (GetSkusArrayOutput) Index

func (GetSkusArrayOutput) ToGetSkusArrayOutput

func (o GetSkusArrayOutput) ToGetSkusArrayOutput() GetSkusArrayOutput

func (GetSkusArrayOutput) ToGetSkusArrayOutputWithContext

func (o GetSkusArrayOutput) ToGetSkusArrayOutputWithContext(ctx context.Context) GetSkusArrayOutput

type GetSkusInput

type GetSkusInput interface {
	pulumi.Input

	ToGetSkusOutput() GetSkusOutput
	ToGetSkusOutputWithContext(context.Context) GetSkusOutput
}

GetSkusInput is an input type that accepts GetSkusArgs and GetSkusOutput values. You can construct a concrete instance of `GetSkusInput` via:

GetSkusArgs{...}

type GetSkusOutput

type GetSkusOutput struct{ *pulumi.OutputState }

func (GetSkusOutput) ElementType

func (GetSkusOutput) ElementType() reflect.Type

func (GetSkusOutput) Name

The name of this Elastic SAN.

func (GetSkusOutput) Tier

The SKU tier.

func (GetSkusOutput) ToGetSkusOutput

func (o GetSkusOutput) ToGetSkusOutput() GetSkusOutput

func (GetSkusOutput) ToGetSkusOutputWithContext

func (o GetSkusOutput) ToGetSkusOutputWithContext(ctx context.Context) GetSkusOutput

type GetVolumeGroupEncryption

type GetVolumeGroupEncryption struct {
	// The timestamp of the expiration time for the current version of the Customer Managed Key.
	CurrentVersionedKeyExpirationTimestamp string `pulumi:"currentVersionedKeyExpirationTimestamp"`
	// The ID of the current versioned Key Vault Key in use.
	CurrentVersionedKeyId string `pulumi:"currentVersionedKeyId"`
	// The Key Vault Key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.
	KeyVaultKeyId string `pulumi:"keyVaultKeyId"`
	// The timestamp of the last rotation of the Key Vault Key.
	LastKeyRotationTimestamp string `pulumi:"lastKeyRotationTimestamp"`
	// The ID of the User Assigned Identity used by this Elastic SAN Volume Group.
	UserAssignedIdentityId string `pulumi:"userAssignedIdentityId"`
}

type GetVolumeGroupEncryptionArgs

type GetVolumeGroupEncryptionArgs struct {
	// The timestamp of the expiration time for the current version of the Customer Managed Key.
	CurrentVersionedKeyExpirationTimestamp pulumi.StringInput `pulumi:"currentVersionedKeyExpirationTimestamp"`
	// The ID of the current versioned Key Vault Key in use.
	CurrentVersionedKeyId pulumi.StringInput `pulumi:"currentVersionedKeyId"`
	// The Key Vault Key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.
	KeyVaultKeyId pulumi.StringInput `pulumi:"keyVaultKeyId"`
	// The timestamp of the last rotation of the Key Vault Key.
	LastKeyRotationTimestamp pulumi.StringInput `pulumi:"lastKeyRotationTimestamp"`
	// The ID of the User Assigned Identity used by this Elastic SAN Volume Group.
	UserAssignedIdentityId pulumi.StringInput `pulumi:"userAssignedIdentityId"`
}

func (GetVolumeGroupEncryptionArgs) ElementType

func (GetVolumeGroupEncryptionArgs) ToGetVolumeGroupEncryptionOutput

func (i GetVolumeGroupEncryptionArgs) ToGetVolumeGroupEncryptionOutput() GetVolumeGroupEncryptionOutput

func (GetVolumeGroupEncryptionArgs) ToGetVolumeGroupEncryptionOutputWithContext

func (i GetVolumeGroupEncryptionArgs) ToGetVolumeGroupEncryptionOutputWithContext(ctx context.Context) GetVolumeGroupEncryptionOutput

type GetVolumeGroupEncryptionArray

type GetVolumeGroupEncryptionArray []GetVolumeGroupEncryptionInput

func (GetVolumeGroupEncryptionArray) ElementType

func (GetVolumeGroupEncryptionArray) ToGetVolumeGroupEncryptionArrayOutput

func (i GetVolumeGroupEncryptionArray) ToGetVolumeGroupEncryptionArrayOutput() GetVolumeGroupEncryptionArrayOutput

func (GetVolumeGroupEncryptionArray) ToGetVolumeGroupEncryptionArrayOutputWithContext

func (i GetVolumeGroupEncryptionArray) ToGetVolumeGroupEncryptionArrayOutputWithContext(ctx context.Context) GetVolumeGroupEncryptionArrayOutput

type GetVolumeGroupEncryptionArrayInput

type GetVolumeGroupEncryptionArrayInput interface {
	pulumi.Input

	ToGetVolumeGroupEncryptionArrayOutput() GetVolumeGroupEncryptionArrayOutput
	ToGetVolumeGroupEncryptionArrayOutputWithContext(context.Context) GetVolumeGroupEncryptionArrayOutput
}

GetVolumeGroupEncryptionArrayInput is an input type that accepts GetVolumeGroupEncryptionArray and GetVolumeGroupEncryptionArrayOutput values. You can construct a concrete instance of `GetVolumeGroupEncryptionArrayInput` via:

GetVolumeGroupEncryptionArray{ GetVolumeGroupEncryptionArgs{...} }

type GetVolumeGroupEncryptionArrayOutput

type GetVolumeGroupEncryptionArrayOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupEncryptionArrayOutput) ElementType

func (GetVolumeGroupEncryptionArrayOutput) Index

func (GetVolumeGroupEncryptionArrayOutput) ToGetVolumeGroupEncryptionArrayOutput

func (o GetVolumeGroupEncryptionArrayOutput) ToGetVolumeGroupEncryptionArrayOutput() GetVolumeGroupEncryptionArrayOutput

func (GetVolumeGroupEncryptionArrayOutput) ToGetVolumeGroupEncryptionArrayOutputWithContext

func (o GetVolumeGroupEncryptionArrayOutput) ToGetVolumeGroupEncryptionArrayOutputWithContext(ctx context.Context) GetVolumeGroupEncryptionArrayOutput

type GetVolumeGroupEncryptionInput

type GetVolumeGroupEncryptionInput interface {
	pulumi.Input

	ToGetVolumeGroupEncryptionOutput() GetVolumeGroupEncryptionOutput
	ToGetVolumeGroupEncryptionOutputWithContext(context.Context) GetVolumeGroupEncryptionOutput
}

GetVolumeGroupEncryptionInput is an input type that accepts GetVolumeGroupEncryptionArgs and GetVolumeGroupEncryptionOutput values. You can construct a concrete instance of `GetVolumeGroupEncryptionInput` via:

GetVolumeGroupEncryptionArgs{...}

type GetVolumeGroupEncryptionOutput

type GetVolumeGroupEncryptionOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupEncryptionOutput) CurrentVersionedKeyExpirationTimestamp

func (o GetVolumeGroupEncryptionOutput) CurrentVersionedKeyExpirationTimestamp() pulumi.StringOutput

The timestamp of the expiration time for the current version of the Customer Managed Key.

func (GetVolumeGroupEncryptionOutput) CurrentVersionedKeyId

func (o GetVolumeGroupEncryptionOutput) CurrentVersionedKeyId() pulumi.StringOutput

The ID of the current versioned Key Vault Key in use.

func (GetVolumeGroupEncryptionOutput) ElementType

func (GetVolumeGroupEncryptionOutput) KeyVaultKeyId

The Key Vault Key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.

func (GetVolumeGroupEncryptionOutput) LastKeyRotationTimestamp

func (o GetVolumeGroupEncryptionOutput) LastKeyRotationTimestamp() pulumi.StringOutput

The timestamp of the last rotation of the Key Vault Key.

func (GetVolumeGroupEncryptionOutput) ToGetVolumeGroupEncryptionOutput

func (o GetVolumeGroupEncryptionOutput) ToGetVolumeGroupEncryptionOutput() GetVolumeGroupEncryptionOutput

func (GetVolumeGroupEncryptionOutput) ToGetVolumeGroupEncryptionOutputWithContext

func (o GetVolumeGroupEncryptionOutput) ToGetVolumeGroupEncryptionOutputWithContext(ctx context.Context) GetVolumeGroupEncryptionOutput

func (GetVolumeGroupEncryptionOutput) UserAssignedIdentityId

func (o GetVolumeGroupEncryptionOutput) UserAssignedIdentityId() pulumi.StringOutput

The ID of the User Assigned Identity used by this Elastic SAN Volume Group.

type GetVolumeGroupIdentity

type GetVolumeGroupIdentity struct {
	// A list of the User Assigned Identity IDs assigned to this Elastic SAN Volume Group.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.
	TenantId string `pulumi:"tenantId"`
	// The type of Managed Identity assigned to this Elastic SAN Volume Group.
	Type string `pulumi:"type"`
}

type GetVolumeGroupIdentityArgs

type GetVolumeGroupIdentityArgs struct {
	// A list of the User Assigned Identity IDs assigned to this Elastic SAN Volume Group.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The type of Managed Identity assigned to this Elastic SAN Volume Group.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetVolumeGroupIdentityArgs) ElementType

func (GetVolumeGroupIdentityArgs) ElementType() reflect.Type

func (GetVolumeGroupIdentityArgs) ToGetVolumeGroupIdentityOutput

func (i GetVolumeGroupIdentityArgs) ToGetVolumeGroupIdentityOutput() GetVolumeGroupIdentityOutput

func (GetVolumeGroupIdentityArgs) ToGetVolumeGroupIdentityOutputWithContext

func (i GetVolumeGroupIdentityArgs) ToGetVolumeGroupIdentityOutputWithContext(ctx context.Context) GetVolumeGroupIdentityOutput

type GetVolumeGroupIdentityArray

type GetVolumeGroupIdentityArray []GetVolumeGroupIdentityInput

func (GetVolumeGroupIdentityArray) ElementType

func (GetVolumeGroupIdentityArray) ToGetVolumeGroupIdentityArrayOutput

func (i GetVolumeGroupIdentityArray) ToGetVolumeGroupIdentityArrayOutput() GetVolumeGroupIdentityArrayOutput

func (GetVolumeGroupIdentityArray) ToGetVolumeGroupIdentityArrayOutputWithContext

func (i GetVolumeGroupIdentityArray) ToGetVolumeGroupIdentityArrayOutputWithContext(ctx context.Context) GetVolumeGroupIdentityArrayOutput

type GetVolumeGroupIdentityArrayInput

type GetVolumeGroupIdentityArrayInput interface {
	pulumi.Input

	ToGetVolumeGroupIdentityArrayOutput() GetVolumeGroupIdentityArrayOutput
	ToGetVolumeGroupIdentityArrayOutputWithContext(context.Context) GetVolumeGroupIdentityArrayOutput
}

GetVolumeGroupIdentityArrayInput is an input type that accepts GetVolumeGroupIdentityArray and GetVolumeGroupIdentityArrayOutput values. You can construct a concrete instance of `GetVolumeGroupIdentityArrayInput` via:

GetVolumeGroupIdentityArray{ GetVolumeGroupIdentityArgs{...} }

type GetVolumeGroupIdentityArrayOutput

type GetVolumeGroupIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupIdentityArrayOutput) ElementType

func (GetVolumeGroupIdentityArrayOutput) Index

func (GetVolumeGroupIdentityArrayOutput) ToGetVolumeGroupIdentityArrayOutput

func (o GetVolumeGroupIdentityArrayOutput) ToGetVolumeGroupIdentityArrayOutput() GetVolumeGroupIdentityArrayOutput

func (GetVolumeGroupIdentityArrayOutput) ToGetVolumeGroupIdentityArrayOutputWithContext

func (o GetVolumeGroupIdentityArrayOutput) ToGetVolumeGroupIdentityArrayOutputWithContext(ctx context.Context) GetVolumeGroupIdentityArrayOutput

type GetVolumeGroupIdentityInput

type GetVolumeGroupIdentityInput interface {
	pulumi.Input

	ToGetVolumeGroupIdentityOutput() GetVolumeGroupIdentityOutput
	ToGetVolumeGroupIdentityOutputWithContext(context.Context) GetVolumeGroupIdentityOutput
}

GetVolumeGroupIdentityInput is an input type that accepts GetVolumeGroupIdentityArgs and GetVolumeGroupIdentityOutput values. You can construct a concrete instance of `GetVolumeGroupIdentityInput` via:

GetVolumeGroupIdentityArgs{...}

type GetVolumeGroupIdentityOutput

type GetVolumeGroupIdentityOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupIdentityOutput) ElementType

func (GetVolumeGroupIdentityOutput) IdentityIds

A list of the User Assigned Identity IDs assigned to this Elastic SAN Volume Group.

func (GetVolumeGroupIdentityOutput) PrincipalId

The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.

func (GetVolumeGroupIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.

func (GetVolumeGroupIdentityOutput) ToGetVolumeGroupIdentityOutput

func (o GetVolumeGroupIdentityOutput) ToGetVolumeGroupIdentityOutput() GetVolumeGroupIdentityOutput

func (GetVolumeGroupIdentityOutput) ToGetVolumeGroupIdentityOutputWithContext

func (o GetVolumeGroupIdentityOutput) ToGetVolumeGroupIdentityOutputWithContext(ctx context.Context) GetVolumeGroupIdentityOutput

func (GetVolumeGroupIdentityOutput) Type

The type of Managed Identity assigned to this Elastic SAN Volume Group.

type GetVolumeGroupNetworkRule

type GetVolumeGroupNetworkRule struct {
	// The action to take when an access attempt to this Elastic SAN Volume Group from this Subnet is made.
	Action string `pulumi:"action"`
	// The ID of the Subnet from which access to this Elastic SAN Volume Group is allowed.
	SubnetId string `pulumi:"subnetId"`
}

type GetVolumeGroupNetworkRuleArgs

type GetVolumeGroupNetworkRuleArgs struct {
	// The action to take when an access attempt to this Elastic SAN Volume Group from this Subnet is made.
	Action pulumi.StringInput `pulumi:"action"`
	// The ID of the Subnet from which access to this Elastic SAN Volume Group is allowed.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetVolumeGroupNetworkRuleArgs) ElementType

func (GetVolumeGroupNetworkRuleArgs) ToGetVolumeGroupNetworkRuleOutput

func (i GetVolumeGroupNetworkRuleArgs) ToGetVolumeGroupNetworkRuleOutput() GetVolumeGroupNetworkRuleOutput

func (GetVolumeGroupNetworkRuleArgs) ToGetVolumeGroupNetworkRuleOutputWithContext

func (i GetVolumeGroupNetworkRuleArgs) ToGetVolumeGroupNetworkRuleOutputWithContext(ctx context.Context) GetVolumeGroupNetworkRuleOutput

type GetVolumeGroupNetworkRuleArray

type GetVolumeGroupNetworkRuleArray []GetVolumeGroupNetworkRuleInput

func (GetVolumeGroupNetworkRuleArray) ElementType

func (GetVolumeGroupNetworkRuleArray) ToGetVolumeGroupNetworkRuleArrayOutput

func (i GetVolumeGroupNetworkRuleArray) ToGetVolumeGroupNetworkRuleArrayOutput() GetVolumeGroupNetworkRuleArrayOutput

func (GetVolumeGroupNetworkRuleArray) ToGetVolumeGroupNetworkRuleArrayOutputWithContext

func (i GetVolumeGroupNetworkRuleArray) ToGetVolumeGroupNetworkRuleArrayOutputWithContext(ctx context.Context) GetVolumeGroupNetworkRuleArrayOutput

type GetVolumeGroupNetworkRuleArrayInput

type GetVolumeGroupNetworkRuleArrayInput interface {
	pulumi.Input

	ToGetVolumeGroupNetworkRuleArrayOutput() GetVolumeGroupNetworkRuleArrayOutput
	ToGetVolumeGroupNetworkRuleArrayOutputWithContext(context.Context) GetVolumeGroupNetworkRuleArrayOutput
}

GetVolumeGroupNetworkRuleArrayInput is an input type that accepts GetVolumeGroupNetworkRuleArray and GetVolumeGroupNetworkRuleArrayOutput values. You can construct a concrete instance of `GetVolumeGroupNetworkRuleArrayInput` via:

GetVolumeGroupNetworkRuleArray{ GetVolumeGroupNetworkRuleArgs{...} }

type GetVolumeGroupNetworkRuleArrayOutput

type GetVolumeGroupNetworkRuleArrayOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupNetworkRuleArrayOutput) ElementType

func (GetVolumeGroupNetworkRuleArrayOutput) Index

func (GetVolumeGroupNetworkRuleArrayOutput) ToGetVolumeGroupNetworkRuleArrayOutput

func (o GetVolumeGroupNetworkRuleArrayOutput) ToGetVolumeGroupNetworkRuleArrayOutput() GetVolumeGroupNetworkRuleArrayOutput

func (GetVolumeGroupNetworkRuleArrayOutput) ToGetVolumeGroupNetworkRuleArrayOutputWithContext

func (o GetVolumeGroupNetworkRuleArrayOutput) ToGetVolumeGroupNetworkRuleArrayOutputWithContext(ctx context.Context) GetVolumeGroupNetworkRuleArrayOutput

type GetVolumeGroupNetworkRuleInput

type GetVolumeGroupNetworkRuleInput interface {
	pulumi.Input

	ToGetVolumeGroupNetworkRuleOutput() GetVolumeGroupNetworkRuleOutput
	ToGetVolumeGroupNetworkRuleOutputWithContext(context.Context) GetVolumeGroupNetworkRuleOutput
}

GetVolumeGroupNetworkRuleInput is an input type that accepts GetVolumeGroupNetworkRuleArgs and GetVolumeGroupNetworkRuleOutput values. You can construct a concrete instance of `GetVolumeGroupNetworkRuleInput` via:

GetVolumeGroupNetworkRuleArgs{...}

type GetVolumeGroupNetworkRuleOutput

type GetVolumeGroupNetworkRuleOutput struct{ *pulumi.OutputState }

func (GetVolumeGroupNetworkRuleOutput) Action

The action to take when an access attempt to this Elastic SAN Volume Group from this Subnet is made.

func (GetVolumeGroupNetworkRuleOutput) ElementType

func (GetVolumeGroupNetworkRuleOutput) SubnetId

The ID of the Subnet from which access to this Elastic SAN Volume Group is allowed.

func (GetVolumeGroupNetworkRuleOutput) ToGetVolumeGroupNetworkRuleOutput

func (o GetVolumeGroupNetworkRuleOutput) ToGetVolumeGroupNetworkRuleOutput() GetVolumeGroupNetworkRuleOutput

func (GetVolumeGroupNetworkRuleOutput) ToGetVolumeGroupNetworkRuleOutputWithContext

func (o GetVolumeGroupNetworkRuleOutput) ToGetVolumeGroupNetworkRuleOutputWithContext(ctx context.Context) GetVolumeGroupNetworkRuleOutput

type GetVolumeSnapshotArgs

type GetVolumeSnapshotArgs struct {
	// The name of the Elastic SAN Volume Snapshot.
	Name string `pulumi:"name"`
	// The Elastic SAN Volume Group ID within which the Elastic SAN Volume Snapshot exists.
	VolumeGroupId string `pulumi:"volumeGroupId"`
}

A collection of arguments for invoking getVolumeSnapshot.

type GetVolumeSnapshotOutputArgs

type GetVolumeSnapshotOutputArgs struct {
	// The name of the Elastic SAN Volume Snapshot.
	Name pulumi.StringInput `pulumi:"name"`
	// The Elastic SAN Volume Group ID within which the Elastic SAN Volume Snapshot exists.
	VolumeGroupId pulumi.StringInput `pulumi:"volumeGroupId"`
}

A collection of arguments for invoking getVolumeSnapshot.

func (GetVolumeSnapshotOutputArgs) ElementType

type GetVolumeSnapshotResult

type GetVolumeSnapshotResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The resource ID from which the Snapshot is created.
	SourceId string `pulumi:"sourceId"`
	// The size of source volume.
	SourceVolumeSizeInGib int    `pulumi:"sourceVolumeSizeInGib"`
	VolumeGroupId         string `pulumi:"volumeGroupId"`
	// The source volume name of the Snapshot.
	VolumeName string `pulumi:"volumeName"`
}

A collection of values returned by getVolumeSnapshot.

func GetVolumeSnapshot

func GetVolumeSnapshot(ctx *pulumi.Context, args *GetVolumeSnapshotArgs, opts ...pulumi.InvokeOption) (*GetVolumeSnapshotResult, error)

Use this data source to access information about an existing Elastic SAN Volume Snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := elasticsan.Get(ctx, &elasticsan.GetArgs{
			Name:              "existing",
			ResourceGroupName: "existing",
		}, nil)
		if err != nil {
			return err
		}
		exampleGetVolumeGroup, err := elasticsan.LookupVolumeGroup(ctx, &elasticsan.LookupVolumeGroupArgs{
			Name:         "existing",
			ElasticSanId: example.Id,
		}, nil)
		if err != nil {
			return err
		}
		exampleGetVolumeSnapshot, err := elasticsan.GetVolumeSnapshot(ctx, &elasticsan.GetVolumeSnapshotArgs{
			Name:          "existing",
			VolumeGroupId: exampleGetVolumeGroup.Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", exampleGetVolumeSnapshot.Id)
		return nil
	})
}

```

type GetVolumeSnapshotResultOutput

type GetVolumeSnapshotResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVolumeSnapshot.

func (GetVolumeSnapshotResultOutput) ElementType

func (GetVolumeSnapshotResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetVolumeSnapshotResultOutput) Name

func (GetVolumeSnapshotResultOutput) SourceId

The resource ID from which the Snapshot is created.

func (GetVolumeSnapshotResultOutput) SourceVolumeSizeInGib

func (o GetVolumeSnapshotResultOutput) SourceVolumeSizeInGib() pulumi.IntOutput

The size of source volume.

func (GetVolumeSnapshotResultOutput) ToGetVolumeSnapshotResultOutput

func (o GetVolumeSnapshotResultOutput) ToGetVolumeSnapshotResultOutput() GetVolumeSnapshotResultOutput

func (GetVolumeSnapshotResultOutput) ToGetVolumeSnapshotResultOutputWithContext

func (o GetVolumeSnapshotResultOutput) ToGetVolumeSnapshotResultOutputWithContext(ctx context.Context) GetVolumeSnapshotResultOutput

func (GetVolumeSnapshotResultOutput) VolumeGroupId

func (GetVolumeSnapshotResultOutput) VolumeName

The source volume name of the Snapshot.

type LookupVolumeGroupArgs

type LookupVolumeGroupArgs struct {
	// The Elastic SAN ID within which the Elastic SAN Volume Group exists.
	ElasticSanId string `pulumi:"elasticSanId"`
	// The name of the Elastic SAN Volume Group.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getVolumeGroup.

type LookupVolumeGroupOutputArgs

type LookupVolumeGroupOutputArgs struct {
	// The Elastic SAN ID within which the Elastic SAN Volume Group exists.
	ElasticSanId pulumi.StringInput `pulumi:"elasticSanId"`
	// The name of the Elastic SAN Volume Group.
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getVolumeGroup.

func (LookupVolumeGroupOutputArgs) ElementType

type LookupVolumeGroupResult

type LookupVolumeGroupResult struct {
	ElasticSanId string `pulumi:"elasticSanId"`
	// The type of the key used to encrypt the data of the disk.
	EncryptionType string `pulumi:"encryptionType"`
	// An `encryption` block as defined below.
	Encryptions []GetVolumeGroupEncryption `pulumi:"encryptions"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An `identity` block as defined below.
	Identities []GetVolumeGroupIdentity `pulumi:"identities"`
	Name       string                   `pulumi:"name"`
	// One or more `networkRule` blocks as defined below.
	NetworkRules []GetVolumeGroupNetworkRule `pulumi:"networkRules"`
	// The type of the storage target.
	ProtocolType string `pulumi:"protocolType"`
}

A collection of values returned by getVolumeGroup.

func LookupVolumeGroup

func LookupVolumeGroup(ctx *pulumi.Context, args *LookupVolumeGroupArgs, opts ...pulumi.InvokeOption) (*LookupVolumeGroupResult, error)

Use this data source to access information about an existing Elastic SAN Volume Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := elasticsan.Get(ctx, &elasticsan.GetArgs{
			Name:              "existing",
			ResourceGroupName: "existing",
		}, nil)
		if err != nil {
			return err
		}
		exampleGetVolumeGroup, err := elasticsan.LookupVolumeGroup(ctx, &elasticsan.LookupVolumeGroupArgs{
			Name:         "existing",
			ElasticSanId: example.Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", exampleGetVolumeGroup.Id)
		return nil
	})
}

```

type LookupVolumeGroupResultOutput

type LookupVolumeGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVolumeGroup.

func (LookupVolumeGroupResultOutput) ElasticSanId

func (LookupVolumeGroupResultOutput) ElementType

func (LookupVolumeGroupResultOutput) EncryptionType

The type of the key used to encrypt the data of the disk.

func (LookupVolumeGroupResultOutput) Encryptions

An `encryption` block as defined below.

func (LookupVolumeGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupVolumeGroupResultOutput) Identities

An `identity` block as defined below.

func (LookupVolumeGroupResultOutput) Name

func (LookupVolumeGroupResultOutput) NetworkRules

One or more `networkRule` blocks as defined below.

func (LookupVolumeGroupResultOutput) ProtocolType

The type of the storage target.

func (LookupVolumeGroupResultOutput) ToLookupVolumeGroupResultOutput

func (o LookupVolumeGroupResultOutput) ToLookupVolumeGroupResultOutput() LookupVolumeGroupResultOutput

func (LookupVolumeGroupResultOutput) ToLookupVolumeGroupResultOutputWithContext

func (o LookupVolumeGroupResultOutput) ToLookupVolumeGroupResultOutputWithContext(ctx context.Context) LookupVolumeGroupResultOutput

type Volume

type Volume struct {
	pulumi.CustomResourceState

	// A `createSource` block as defined below.
	CreateSource VolumeCreateSourcePtrOutput `pulumi:"createSource"`
	// Specifies the name of this Elastic SAN Volume. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the size of the Elastic SAN Volume in GiB. The size should be within the remaining capacity of the parent Elastic SAN. Possible values are between `1` and `65536` (16 TiB).
	//
	// > **NOTE:** The size can only be increased. If `createSource` is specified, then the size must be equal to or greater than the source's size.
	SizeInGib pulumi.IntOutput `pulumi:"sizeInGib"`
	// The iSCSI Target IQN of the Elastic SAN Volume.
	TargetIqn pulumi.StringOutput `pulumi:"targetIqn"`
	// The iSCSI Target Portal Host Name of the Elastic SAN Volume.
	TargetPortalHostname pulumi.StringOutput `pulumi:"targetPortalHostname"`
	// The iSCSI Target Portal Port of the Elastic SAN Volume.
	TargetPortalPort pulumi.IntOutput `pulumi:"targetPortalPort"`
	// Specifies the Volume Group ID within which this Elastic SAN Volume should exist. Changing this forces a new resource to be created.
	VolumeGroupId pulumi.StringOutput `pulumi:"volumeGroupId"`
	// The UUID of the Elastic SAN Volume.
	VolumeId pulumi.StringOutput `pulumi:"volumeId"`
}

Manages an Elastic SAN Volume resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-rg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleElasticSan, err := elasticsan.NewElasticSan(ctx, "example", &elasticsan.ElasticSanArgs{
			Name:              pulumi.String("example-es"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			BaseSizeInTib:     pulumi.Int(1),
			Sku: &elasticsan.ElasticSanSkuArgs{
				Name: pulumi.String("Premium_LRS"),
			},
		})
		if err != nil {
			return err
		}
		exampleVolumeGroup, err := elasticsan.NewVolumeGroup(ctx, "example", &elasticsan.VolumeGroupArgs{
			Name:         pulumi.String("example-esvg"),
			ElasticSanId: exampleElasticSan.ID(),
		})
		if err != nil {
			return err
		}
		exampleVolume, err := elasticsan.NewVolume(ctx, "example", &elasticsan.VolumeArgs{
			Name:          pulumi.String("example-esv"),
			VolumeGroupId: exampleVolumeGroup.ID(),
			SizeInGib:     pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		ctx.Export("targetIqn", exampleVolume.TargetIqn)
		return nil
	})
}

```

## Example of creating an Elastic SAN Volume from a Disk Snapshot

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-rg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleElasticSan, err := elasticsan.NewElasticSan(ctx, "example", &elasticsan.ElasticSanArgs{
			Name:              pulumi.String("example-es"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			BaseSizeInTib:     pulumi.Int(1),
			Sku: &elasticsan.ElasticSanSkuArgs{
				Name: pulumi.String("Premium_LRS"),
			},
		})
		if err != nil {
			return err
		}
		exampleVolumeGroup, err := elasticsan.NewVolumeGroup(ctx, "example", &elasticsan.VolumeGroupArgs{
			Name:         pulumi.String("example-esvg"),
			ElasticSanId: exampleElasticSan.ID(),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("example-disk"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			CreateOption:       pulumi.String("Empty"),
			StorageAccountType: pulumi.String("Standard_LRS"),
			DiskSizeGb:         pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		exampleSnapshot, err := compute.NewSnapshot(ctx, "example", &compute.SnapshotArgs{
			Name:              pulumi.String("example-ss"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			CreateOption:      pulumi.String("Copy"),
			SourceUri:         exampleManagedDisk.ID(),
		})
		if err != nil {
			return err
		}
		_, err = elasticsan.NewVolume(ctx, "example2", &elasticsan.VolumeArgs{
			Name:          pulumi.String("example-esv2"),
			VolumeGroupId: exampleVolumeGroup.ID(),
			SizeInGib:     pulumi.Int(2),
			CreateSource: &elasticsan.VolumeCreateSourceArgs{
				SourceType: pulumi.String("DiskSnapshot"),
				SourceId:   exampleSnapshot.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An existing Elastic SAN Volume can be imported into Pulumi using the `resource id`, e.g.

```sh $ pulumi import azure:elasticsan/volume:Volume example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ElasticSan/elasticSans/esan1/volumeGroups/vg1/volumes/vol1 ```

func GetVolume

func GetVolume(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VolumeState, opts ...pulumi.ResourceOption) (*Volume, error)

GetVolume gets an existing Volume 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 NewVolume

func NewVolume(ctx *pulumi.Context,
	name string, args *VolumeArgs, opts ...pulumi.ResourceOption) (*Volume, error)

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

func (*Volume) ElementType

func (*Volume) ElementType() reflect.Type

func (*Volume) ToVolumeOutput

func (i *Volume) ToVolumeOutput() VolumeOutput

func (*Volume) ToVolumeOutputWithContext

func (i *Volume) ToVolumeOutputWithContext(ctx context.Context) VolumeOutput

type VolumeArgs

type VolumeArgs struct {
	// A `createSource` block as defined below.
	CreateSource VolumeCreateSourcePtrInput
	// Specifies the name of this Elastic SAN Volume. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the size of the Elastic SAN Volume in GiB. The size should be within the remaining capacity of the parent Elastic SAN. Possible values are between `1` and `65536` (16 TiB).
	//
	// > **NOTE:** The size can only be increased. If `createSource` is specified, then the size must be equal to or greater than the source's size.
	SizeInGib pulumi.IntInput
	// Specifies the Volume Group ID within which this Elastic SAN Volume should exist. Changing this forces a new resource to be created.
	VolumeGroupId pulumi.StringInput
}

The set of arguments for constructing a Volume resource.

func (VolumeArgs) ElementType

func (VolumeArgs) ElementType() reflect.Type

type VolumeArray

type VolumeArray []VolumeInput

func (VolumeArray) ElementType

func (VolumeArray) ElementType() reflect.Type

func (VolumeArray) ToVolumeArrayOutput

func (i VolumeArray) ToVolumeArrayOutput() VolumeArrayOutput

func (VolumeArray) ToVolumeArrayOutputWithContext

func (i VolumeArray) ToVolumeArrayOutputWithContext(ctx context.Context) VolumeArrayOutput

type VolumeArrayInput

type VolumeArrayInput interface {
	pulumi.Input

	ToVolumeArrayOutput() VolumeArrayOutput
	ToVolumeArrayOutputWithContext(context.Context) VolumeArrayOutput
}

VolumeArrayInput is an input type that accepts VolumeArray and VolumeArrayOutput values. You can construct a concrete instance of `VolumeArrayInput` via:

VolumeArray{ VolumeArgs{...} }

type VolumeArrayOutput

type VolumeArrayOutput struct{ *pulumi.OutputState }

func (VolumeArrayOutput) ElementType

func (VolumeArrayOutput) ElementType() reflect.Type

func (VolumeArrayOutput) Index

func (VolumeArrayOutput) ToVolumeArrayOutput

func (o VolumeArrayOutput) ToVolumeArrayOutput() VolumeArrayOutput

func (VolumeArrayOutput) ToVolumeArrayOutputWithContext

func (o VolumeArrayOutput) ToVolumeArrayOutputWithContext(ctx context.Context) VolumeArrayOutput

type VolumeCreateSource

type VolumeCreateSource struct {
	// Specifies the ID of the source to create the Elastic SAN Volume from. Changing this forces a new resource to be created.
	SourceId string `pulumi:"sourceId"`
	// Specifies the type of the source to create the Elastic SAN Volume from. Possible values are `Disk`, `DiskRestorePoint`, `DiskSnapshot` and `VolumeSnapshot`. Changing this forces a new resource to be created.
	SourceType string `pulumi:"sourceType"`
}

type VolumeCreateSourceArgs

type VolumeCreateSourceArgs struct {
	// Specifies the ID of the source to create the Elastic SAN Volume from. Changing this forces a new resource to be created.
	SourceId pulumi.StringInput `pulumi:"sourceId"`
	// Specifies the type of the source to create the Elastic SAN Volume from. Possible values are `Disk`, `DiskRestorePoint`, `DiskSnapshot` and `VolumeSnapshot`. Changing this forces a new resource to be created.
	SourceType pulumi.StringInput `pulumi:"sourceType"`
}

func (VolumeCreateSourceArgs) ElementType

func (VolumeCreateSourceArgs) ElementType() reflect.Type

func (VolumeCreateSourceArgs) ToVolumeCreateSourceOutput

func (i VolumeCreateSourceArgs) ToVolumeCreateSourceOutput() VolumeCreateSourceOutput

func (VolumeCreateSourceArgs) ToVolumeCreateSourceOutputWithContext

func (i VolumeCreateSourceArgs) ToVolumeCreateSourceOutputWithContext(ctx context.Context) VolumeCreateSourceOutput

func (VolumeCreateSourceArgs) ToVolumeCreateSourcePtrOutput

func (i VolumeCreateSourceArgs) ToVolumeCreateSourcePtrOutput() VolumeCreateSourcePtrOutput

func (VolumeCreateSourceArgs) ToVolumeCreateSourcePtrOutputWithContext

func (i VolumeCreateSourceArgs) ToVolumeCreateSourcePtrOutputWithContext(ctx context.Context) VolumeCreateSourcePtrOutput

type VolumeCreateSourceInput

type VolumeCreateSourceInput interface {
	pulumi.Input

	ToVolumeCreateSourceOutput() VolumeCreateSourceOutput
	ToVolumeCreateSourceOutputWithContext(context.Context) VolumeCreateSourceOutput
}

VolumeCreateSourceInput is an input type that accepts VolumeCreateSourceArgs and VolumeCreateSourceOutput values. You can construct a concrete instance of `VolumeCreateSourceInput` via:

VolumeCreateSourceArgs{...}

type VolumeCreateSourceOutput

type VolumeCreateSourceOutput struct{ *pulumi.OutputState }

func (VolumeCreateSourceOutput) ElementType

func (VolumeCreateSourceOutput) ElementType() reflect.Type

func (VolumeCreateSourceOutput) SourceId

Specifies the ID of the source to create the Elastic SAN Volume from. Changing this forces a new resource to be created.

func (VolumeCreateSourceOutput) SourceType

Specifies the type of the source to create the Elastic SAN Volume from. Possible values are `Disk`, `DiskRestorePoint`, `DiskSnapshot` and `VolumeSnapshot`. Changing this forces a new resource to be created.

func (VolumeCreateSourceOutput) ToVolumeCreateSourceOutput

func (o VolumeCreateSourceOutput) ToVolumeCreateSourceOutput() VolumeCreateSourceOutput

func (VolumeCreateSourceOutput) ToVolumeCreateSourceOutputWithContext

func (o VolumeCreateSourceOutput) ToVolumeCreateSourceOutputWithContext(ctx context.Context) VolumeCreateSourceOutput

func (VolumeCreateSourceOutput) ToVolumeCreateSourcePtrOutput

func (o VolumeCreateSourceOutput) ToVolumeCreateSourcePtrOutput() VolumeCreateSourcePtrOutput

func (VolumeCreateSourceOutput) ToVolumeCreateSourcePtrOutputWithContext

func (o VolumeCreateSourceOutput) ToVolumeCreateSourcePtrOutputWithContext(ctx context.Context) VolumeCreateSourcePtrOutput

type VolumeCreateSourcePtrInput

type VolumeCreateSourcePtrInput interface {
	pulumi.Input

	ToVolumeCreateSourcePtrOutput() VolumeCreateSourcePtrOutput
	ToVolumeCreateSourcePtrOutputWithContext(context.Context) VolumeCreateSourcePtrOutput
}

VolumeCreateSourcePtrInput is an input type that accepts VolumeCreateSourceArgs, VolumeCreateSourcePtr and VolumeCreateSourcePtrOutput values. You can construct a concrete instance of `VolumeCreateSourcePtrInput` via:

        VolumeCreateSourceArgs{...}

or:

        nil

type VolumeCreateSourcePtrOutput

type VolumeCreateSourcePtrOutput struct{ *pulumi.OutputState }

func (VolumeCreateSourcePtrOutput) Elem

func (VolumeCreateSourcePtrOutput) ElementType

func (VolumeCreateSourcePtrOutput) SourceId

Specifies the ID of the source to create the Elastic SAN Volume from. Changing this forces a new resource to be created.

func (VolumeCreateSourcePtrOutput) SourceType

Specifies the type of the source to create the Elastic SAN Volume from. Possible values are `Disk`, `DiskRestorePoint`, `DiskSnapshot` and `VolumeSnapshot`. Changing this forces a new resource to be created.

func (VolumeCreateSourcePtrOutput) ToVolumeCreateSourcePtrOutput

func (o VolumeCreateSourcePtrOutput) ToVolumeCreateSourcePtrOutput() VolumeCreateSourcePtrOutput

func (VolumeCreateSourcePtrOutput) ToVolumeCreateSourcePtrOutputWithContext

func (o VolumeCreateSourcePtrOutput) ToVolumeCreateSourcePtrOutputWithContext(ctx context.Context) VolumeCreateSourcePtrOutput

type VolumeGroup

type VolumeGroup struct {
	pulumi.CustomResourceState

	// Specifies the Elastic SAN ID within which this Elastic SAN Volume Group should exist. Changing this forces a new resource to be created.
	ElasticSanId pulumi.StringOutput `pulumi:"elasticSanId"`
	// An `encryption` block as defined below.
	//
	// > **NOTE:** The `encryption` block can only be set when `encryptionType` is set to `EncryptionAtRestWithCustomerManagedKey`.
	Encryption VolumeGroupEncryptionPtrOutput `pulumi:"encryption"`
	// Specifies the type of the key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerManagedKey` and `EncryptionAtRestWithPlatformKey`. Defaults to `EncryptionAtRestWithPlatformKey`.
	EncryptionType pulumi.StringPtrOutput `pulumi:"encryptionType"`
	// An `identity` block as defined below. Specifies the Managed Identity which should be assigned to this Elastic SAN Volume Group.
	Identity VolumeGroupIdentityPtrOutput `pulumi:"identity"`
	// Specifies the name of this Elastic SAN Volume Group. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkRule` blocks as defined below.
	NetworkRules VolumeGroupNetworkRuleArrayOutput `pulumi:"networkRules"`
	// Specifies the type of the storage target. The only possible value is `Iscsi`. Defaults to `Iscsi`.
	ProtocolType pulumi.StringPtrOutput `pulumi:"protocolType"`
}

Manages an Elastic SAN Volume Group resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/elasticsan"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/keyvault"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-rg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleElasticSan, err := elasticsan.NewElasticSan(ctx, "example", &elasticsan.ElasticSanArgs{
			Name:              pulumi.String("examplees-es"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			BaseSizeInTib:     pulumi.Int(1),
			Sku: &elasticsan.ElasticSanSkuArgs{
				Name: pulumi.String("Premium_LRS"),
			},
		})
		if err != nil {
			return err
		}
		current, err := core.GetClientConfig(ctx, map[string]interface{}{}, nil)
		if err != nil {
			return err
		}
		exampleUserAssignedIdentity, err := authorization.NewUserAssignedIdentity(ctx, "example", &authorization.UserAssignedIdentityArgs{
			Name:              pulumi.String("example-uai"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-vnet"),
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.1.0/24"),
			},
			ServiceEndpoints: pulumi.StringArray{
				pulumi.String("Microsoft.Storage.Global"),
			},
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:                     pulumi.String("examplekv"),
			Location:                 example.Location,
			ResourceGroupName:        example.Name,
			EnabledForDiskEncryption: pulumi.Bool(true),
			TenantId:                 pulumi.String(current.TenantId),
			SoftDeleteRetentionDays:  pulumi.Int(7),
			PurgeProtectionEnabled:   pulumi.Bool(true),
			SkuName:                  pulumi.String("standard"),
		})
		if err != nil {
			return err
		}
		userAssignedIdentity, err := keyvault.NewAccessPolicy(ctx, "userAssignedIdentity", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId:   pulumi.String(current.TenantId),
			ObjectId:   exampleUserAssignedIdentity.PrincipalId,
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Get"),
				pulumi.String("UnwrapKey"),
				pulumi.String("WrapKey"),
			},
			SecretPermissions: pulumi.StringArray{
				pulumi.String("Get"),
			},
		})
		if err != nil {
			return err
		}
		client, err := keyvault.NewAccessPolicy(ctx, "client", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId:   pulumi.String(current.TenantId),
			ObjectId:   pulumi.String(current.ObjectId),
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Get"),
				pulumi.String("Create"),
				pulumi.String("Delete"),
				pulumi.String("List"),
				pulumi.String("Restore"),
				pulumi.String("Recover"),
				pulumi.String("UnwrapKey"),
				pulumi.String("WrapKey"),
				pulumi.String("Purge"),
				pulumi.String("Encrypt"),
				pulumi.String("Decrypt"),
				pulumi.String("Sign"),
				pulumi.String("Verify"),
				pulumi.String("GetRotationPolicy"),
			},
			SecretPermissions: pulumi.StringArray{
				pulumi.String("Get"),
			},
		})
		if err != nil {
			return err
		}
		exampleKey, err := keyvault.NewKey(ctx, "example", &keyvault.KeyArgs{
			Name:       pulumi.String("example-kvk"),
			KeyVaultId: exampleKeyVault.ID(),
			KeyType:    pulumi.String("RSA"),
			KeySize:    pulumi.Int(2048),
			KeyOpts: pulumi.StringArray{
				pulumi.String("decrypt"),
				pulumi.String("encrypt"),
				pulumi.String("sign"),
				pulumi.String("unwrapKey"),
				pulumi.String("verify"),
				pulumi.String("wrapKey"),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			userAssignedIdentity,
			client,
		}))
		if err != nil {
			return err
		}
		_, err = elasticsan.NewVolumeGroup(ctx, "example", &elasticsan.VolumeGroupArgs{
			Name:           pulumi.String("example-esvg"),
			ElasticSanId:   exampleElasticSan.ID(),
			EncryptionType: pulumi.String("EncryptionAtRestWithCustomerManagedKey"),
			Encryption: &elasticsan.VolumeGroupEncryptionArgs{
				KeyVaultKeyId:          exampleKey.VersionlessId,
				UserAssignedIdentityId: exampleUserAssignedIdentity.ID(),
			},
			Identity: &elasticsan.VolumeGroupIdentityArgs{
				Type: pulumi.String("UserAssigned"),
				IdentityIds: pulumi.StringArray{
					exampleUserAssignedIdentity.ID(),
				},
			},
			NetworkRules: elasticsan.VolumeGroupNetworkRuleArray{
				&elasticsan.VolumeGroupNetworkRuleArgs{
					SubnetId: exampleSubnet.ID(),
					Action:   pulumi.String("Allow"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An existing Elastic SAN Volume Group can be imported into Pulumi using the `resource id`, e.g.

```sh $ pulumi import azure:elasticsan/volumeGroup:VolumeGroup example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ElasticSan/elasticSans/esan1/volumeGroups/vg1 ```

func GetVolumeGroup

func GetVolumeGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VolumeGroupState, opts ...pulumi.ResourceOption) (*VolumeGroup, error)

GetVolumeGroup gets an existing VolumeGroup 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 NewVolumeGroup

func NewVolumeGroup(ctx *pulumi.Context,
	name string, args *VolumeGroupArgs, opts ...pulumi.ResourceOption) (*VolumeGroup, error)

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

func (*VolumeGroup) ElementType

func (*VolumeGroup) ElementType() reflect.Type

func (*VolumeGroup) ToVolumeGroupOutput

func (i *VolumeGroup) ToVolumeGroupOutput() VolumeGroupOutput

func (*VolumeGroup) ToVolumeGroupOutputWithContext

func (i *VolumeGroup) ToVolumeGroupOutputWithContext(ctx context.Context) VolumeGroupOutput

type VolumeGroupArgs

type VolumeGroupArgs struct {
	// Specifies the Elastic SAN ID within which this Elastic SAN Volume Group should exist. Changing this forces a new resource to be created.
	ElasticSanId pulumi.StringInput
	// An `encryption` block as defined below.
	//
	// > **NOTE:** The `encryption` block can only be set when `encryptionType` is set to `EncryptionAtRestWithCustomerManagedKey`.
	Encryption VolumeGroupEncryptionPtrInput
	// Specifies the type of the key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerManagedKey` and `EncryptionAtRestWithPlatformKey`. Defaults to `EncryptionAtRestWithPlatformKey`.
	EncryptionType pulumi.StringPtrInput
	// An `identity` block as defined below. Specifies the Managed Identity which should be assigned to this Elastic SAN Volume Group.
	Identity VolumeGroupIdentityPtrInput
	// Specifies the name of this Elastic SAN Volume Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkRule` blocks as defined below.
	NetworkRules VolumeGroupNetworkRuleArrayInput
	// Specifies the type of the storage target. The only possible value is `Iscsi`. Defaults to `Iscsi`.
	ProtocolType pulumi.StringPtrInput
}

The set of arguments for constructing a VolumeGroup resource.

func (VolumeGroupArgs) ElementType

func (VolumeGroupArgs) ElementType() reflect.Type

type VolumeGroupArray

type VolumeGroupArray []VolumeGroupInput

func (VolumeGroupArray) ElementType

func (VolumeGroupArray) ElementType() reflect.Type

func (VolumeGroupArray) ToVolumeGroupArrayOutput

func (i VolumeGroupArray) ToVolumeGroupArrayOutput() VolumeGroupArrayOutput

func (VolumeGroupArray) ToVolumeGroupArrayOutputWithContext

func (i VolumeGroupArray) ToVolumeGroupArrayOutputWithContext(ctx context.Context) VolumeGroupArrayOutput

type VolumeGroupArrayInput

type VolumeGroupArrayInput interface {
	pulumi.Input

	ToVolumeGroupArrayOutput() VolumeGroupArrayOutput
	ToVolumeGroupArrayOutputWithContext(context.Context) VolumeGroupArrayOutput
}

VolumeGroupArrayInput is an input type that accepts VolumeGroupArray and VolumeGroupArrayOutput values. You can construct a concrete instance of `VolumeGroupArrayInput` via:

VolumeGroupArray{ VolumeGroupArgs{...} }

type VolumeGroupArrayOutput

type VolumeGroupArrayOutput struct{ *pulumi.OutputState }

func (VolumeGroupArrayOutput) ElementType

func (VolumeGroupArrayOutput) ElementType() reflect.Type

func (VolumeGroupArrayOutput) Index

func (VolumeGroupArrayOutput) ToVolumeGroupArrayOutput

func (o VolumeGroupArrayOutput) ToVolumeGroupArrayOutput() VolumeGroupArrayOutput

func (VolumeGroupArrayOutput) ToVolumeGroupArrayOutputWithContext

func (o VolumeGroupArrayOutput) ToVolumeGroupArrayOutputWithContext(ctx context.Context) VolumeGroupArrayOutput

type VolumeGroupEncryption

type VolumeGroupEncryption struct {
	// The timestamp of the expiration time for the current version of the customer managed key.
	CurrentVersionedKeyExpirationTimestamp *string `pulumi:"currentVersionedKeyExpirationTimestamp"`
	// The ID of the current versioned Key Vault Key in use.
	CurrentVersionedKeyId *string `pulumi:"currentVersionedKeyId"`
	// The Key Vault key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.
	KeyVaultKeyId string `pulumi:"keyVaultKeyId"`
	// The timestamp of the last rotation of the Key Vault Key.
	LastKeyRotationTimestamp *string `pulumi:"lastKeyRotationTimestamp"`
	// The ID of the User Assigned Identity used by this Elastic SAN Volume Group.
	UserAssignedIdentityId *string `pulumi:"userAssignedIdentityId"`
}

type VolumeGroupEncryptionArgs

type VolumeGroupEncryptionArgs struct {
	// The timestamp of the expiration time for the current version of the customer managed key.
	CurrentVersionedKeyExpirationTimestamp pulumi.StringPtrInput `pulumi:"currentVersionedKeyExpirationTimestamp"`
	// The ID of the current versioned Key Vault Key in use.
	CurrentVersionedKeyId pulumi.StringPtrInput `pulumi:"currentVersionedKeyId"`
	// The Key Vault key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.
	KeyVaultKeyId pulumi.StringInput `pulumi:"keyVaultKeyId"`
	// The timestamp of the last rotation of the Key Vault Key.
	LastKeyRotationTimestamp pulumi.StringPtrInput `pulumi:"lastKeyRotationTimestamp"`
	// The ID of the User Assigned Identity used by this Elastic SAN Volume Group.
	UserAssignedIdentityId pulumi.StringPtrInput `pulumi:"userAssignedIdentityId"`
}

func (VolumeGroupEncryptionArgs) ElementType

func (VolumeGroupEncryptionArgs) ElementType() reflect.Type

func (VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionOutput

func (i VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionOutput() VolumeGroupEncryptionOutput

func (VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionOutputWithContext

func (i VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionOutputWithContext(ctx context.Context) VolumeGroupEncryptionOutput

func (VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionPtrOutput

func (i VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionPtrOutput() VolumeGroupEncryptionPtrOutput

func (VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionPtrOutputWithContext

func (i VolumeGroupEncryptionArgs) ToVolumeGroupEncryptionPtrOutputWithContext(ctx context.Context) VolumeGroupEncryptionPtrOutput

type VolumeGroupEncryptionInput

type VolumeGroupEncryptionInput interface {
	pulumi.Input

	ToVolumeGroupEncryptionOutput() VolumeGroupEncryptionOutput
	ToVolumeGroupEncryptionOutputWithContext(context.Context) VolumeGroupEncryptionOutput
}

VolumeGroupEncryptionInput is an input type that accepts VolumeGroupEncryptionArgs and VolumeGroupEncryptionOutput values. You can construct a concrete instance of `VolumeGroupEncryptionInput` via:

VolumeGroupEncryptionArgs{...}

type VolumeGroupEncryptionOutput

type VolumeGroupEncryptionOutput struct{ *pulumi.OutputState }

func (VolumeGroupEncryptionOutput) CurrentVersionedKeyExpirationTimestamp

func (o VolumeGroupEncryptionOutput) CurrentVersionedKeyExpirationTimestamp() pulumi.StringPtrOutput

The timestamp of the expiration time for the current version of the customer managed key.

func (VolumeGroupEncryptionOutput) CurrentVersionedKeyId

func (o VolumeGroupEncryptionOutput) CurrentVersionedKeyId() pulumi.StringPtrOutput

The ID of the current versioned Key Vault Key in use.

func (VolumeGroupEncryptionOutput) ElementType

func (VolumeGroupEncryptionOutput) KeyVaultKeyId

The Key Vault key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.

func (VolumeGroupEncryptionOutput) LastKeyRotationTimestamp

func (o VolumeGroupEncryptionOutput) LastKeyRotationTimestamp() pulumi.StringPtrOutput

The timestamp of the last rotation of the Key Vault Key.

func (VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionOutput

func (o VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionOutput() VolumeGroupEncryptionOutput

func (VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionOutputWithContext

func (o VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionOutputWithContext(ctx context.Context) VolumeGroupEncryptionOutput

func (VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionPtrOutput

func (o VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionPtrOutput() VolumeGroupEncryptionPtrOutput

func (VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionPtrOutputWithContext

func (o VolumeGroupEncryptionOutput) ToVolumeGroupEncryptionPtrOutputWithContext(ctx context.Context) VolumeGroupEncryptionPtrOutput

func (VolumeGroupEncryptionOutput) UserAssignedIdentityId

func (o VolumeGroupEncryptionOutput) UserAssignedIdentityId() pulumi.StringPtrOutput

The ID of the User Assigned Identity used by this Elastic SAN Volume Group.

type VolumeGroupEncryptionPtrInput

type VolumeGroupEncryptionPtrInput interface {
	pulumi.Input

	ToVolumeGroupEncryptionPtrOutput() VolumeGroupEncryptionPtrOutput
	ToVolumeGroupEncryptionPtrOutputWithContext(context.Context) VolumeGroupEncryptionPtrOutput
}

VolumeGroupEncryptionPtrInput is an input type that accepts VolumeGroupEncryptionArgs, VolumeGroupEncryptionPtr and VolumeGroupEncryptionPtrOutput values. You can construct a concrete instance of `VolumeGroupEncryptionPtrInput` via:

        VolumeGroupEncryptionArgs{...}

or:

        nil

type VolumeGroupEncryptionPtrOutput

type VolumeGroupEncryptionPtrOutput struct{ *pulumi.OutputState }

func (VolumeGroupEncryptionPtrOutput) CurrentVersionedKeyExpirationTimestamp

func (o VolumeGroupEncryptionPtrOutput) CurrentVersionedKeyExpirationTimestamp() pulumi.StringPtrOutput

The timestamp of the expiration time for the current version of the customer managed key.

func (VolumeGroupEncryptionPtrOutput) CurrentVersionedKeyId

func (o VolumeGroupEncryptionPtrOutput) CurrentVersionedKeyId() pulumi.StringPtrOutput

The ID of the current versioned Key Vault Key in use.

func (VolumeGroupEncryptionPtrOutput) Elem

func (VolumeGroupEncryptionPtrOutput) ElementType

func (VolumeGroupEncryptionPtrOutput) KeyVaultKeyId

The Key Vault key URI for Customer Managed Key encryption, which can be either a full URI or a versionless URI.

func (VolumeGroupEncryptionPtrOutput) LastKeyRotationTimestamp

func (o VolumeGroupEncryptionPtrOutput) LastKeyRotationTimestamp() pulumi.StringPtrOutput

The timestamp of the last rotation of the Key Vault Key.

func (VolumeGroupEncryptionPtrOutput) ToVolumeGroupEncryptionPtrOutput

func (o VolumeGroupEncryptionPtrOutput) ToVolumeGroupEncryptionPtrOutput() VolumeGroupEncryptionPtrOutput

func (VolumeGroupEncryptionPtrOutput) ToVolumeGroupEncryptionPtrOutputWithContext

func (o VolumeGroupEncryptionPtrOutput) ToVolumeGroupEncryptionPtrOutputWithContext(ctx context.Context) VolumeGroupEncryptionPtrOutput

func (VolumeGroupEncryptionPtrOutput) UserAssignedIdentityId

func (o VolumeGroupEncryptionPtrOutput) UserAssignedIdentityId() pulumi.StringPtrOutput

The ID of the User Assigned Identity used by this Elastic SAN Volume Group.

type VolumeGroupIdentity

type VolumeGroupIdentity struct {
	// A list of the User Assigned Identity IDs that should be assigned to this Elastic SAN Volume Group.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Identity that should be assigned to this Elastic SAN Volume Group. Possible values are `SystemAssigned` and `UserAssigned`.
	Type string `pulumi:"type"`
}

type VolumeGroupIdentityArgs

type VolumeGroupIdentityArgs struct {
	// A list of the User Assigned Identity IDs that should be assigned to this Elastic SAN Volume Group.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Identity that should be assigned to this Elastic SAN Volume Group. Possible values are `SystemAssigned` and `UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (VolumeGroupIdentityArgs) ElementType

func (VolumeGroupIdentityArgs) ElementType() reflect.Type

func (VolumeGroupIdentityArgs) ToVolumeGroupIdentityOutput

func (i VolumeGroupIdentityArgs) ToVolumeGroupIdentityOutput() VolumeGroupIdentityOutput

func (VolumeGroupIdentityArgs) ToVolumeGroupIdentityOutputWithContext

func (i VolumeGroupIdentityArgs) ToVolumeGroupIdentityOutputWithContext(ctx context.Context) VolumeGroupIdentityOutput

func (VolumeGroupIdentityArgs) ToVolumeGroupIdentityPtrOutput

func (i VolumeGroupIdentityArgs) ToVolumeGroupIdentityPtrOutput() VolumeGroupIdentityPtrOutput

func (VolumeGroupIdentityArgs) ToVolumeGroupIdentityPtrOutputWithContext

func (i VolumeGroupIdentityArgs) ToVolumeGroupIdentityPtrOutputWithContext(ctx context.Context) VolumeGroupIdentityPtrOutput

type VolumeGroupIdentityInput

type VolumeGroupIdentityInput interface {
	pulumi.Input

	ToVolumeGroupIdentityOutput() VolumeGroupIdentityOutput
	ToVolumeGroupIdentityOutputWithContext(context.Context) VolumeGroupIdentityOutput
}

VolumeGroupIdentityInput is an input type that accepts VolumeGroupIdentityArgs and VolumeGroupIdentityOutput values. You can construct a concrete instance of `VolumeGroupIdentityInput` via:

VolumeGroupIdentityArgs{...}

type VolumeGroupIdentityOutput

type VolumeGroupIdentityOutput struct{ *pulumi.OutputState }

func (VolumeGroupIdentityOutput) ElementType

func (VolumeGroupIdentityOutput) ElementType() reflect.Type

func (VolumeGroupIdentityOutput) IdentityIds

A list of the User Assigned Identity IDs that should be assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityOutput) PrincipalId

The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityOutput) ToVolumeGroupIdentityOutput

func (o VolumeGroupIdentityOutput) ToVolumeGroupIdentityOutput() VolumeGroupIdentityOutput

func (VolumeGroupIdentityOutput) ToVolumeGroupIdentityOutputWithContext

func (o VolumeGroupIdentityOutput) ToVolumeGroupIdentityOutputWithContext(ctx context.Context) VolumeGroupIdentityOutput

func (VolumeGroupIdentityOutput) ToVolumeGroupIdentityPtrOutput

func (o VolumeGroupIdentityOutput) ToVolumeGroupIdentityPtrOutput() VolumeGroupIdentityPtrOutput

func (VolumeGroupIdentityOutput) ToVolumeGroupIdentityPtrOutputWithContext

func (o VolumeGroupIdentityOutput) ToVolumeGroupIdentityPtrOutputWithContext(ctx context.Context) VolumeGroupIdentityPtrOutput

func (VolumeGroupIdentityOutput) Type

Specifies the type of Managed Identity that should be assigned to this Elastic SAN Volume Group. Possible values are `SystemAssigned` and `UserAssigned`.

type VolumeGroupIdentityPtrInput

type VolumeGroupIdentityPtrInput interface {
	pulumi.Input

	ToVolumeGroupIdentityPtrOutput() VolumeGroupIdentityPtrOutput
	ToVolumeGroupIdentityPtrOutputWithContext(context.Context) VolumeGroupIdentityPtrOutput
}

VolumeGroupIdentityPtrInput is an input type that accepts VolumeGroupIdentityArgs, VolumeGroupIdentityPtr and VolumeGroupIdentityPtrOutput values. You can construct a concrete instance of `VolumeGroupIdentityPtrInput` via:

        VolumeGroupIdentityArgs{...}

or:

        nil

type VolumeGroupIdentityPtrOutput

type VolumeGroupIdentityPtrOutput struct{ *pulumi.OutputState }

func (VolumeGroupIdentityPtrOutput) Elem

func (VolumeGroupIdentityPtrOutput) ElementType

func (VolumeGroupIdentityPtrOutput) IdentityIds

A list of the User Assigned Identity IDs that should be assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityPtrOutput) PrincipalId

The Principal ID associated with the Managed Service Identity assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity assigned to this Elastic SAN Volume Group.

func (VolumeGroupIdentityPtrOutput) ToVolumeGroupIdentityPtrOutput

func (o VolumeGroupIdentityPtrOutput) ToVolumeGroupIdentityPtrOutput() VolumeGroupIdentityPtrOutput

func (VolumeGroupIdentityPtrOutput) ToVolumeGroupIdentityPtrOutputWithContext

func (o VolumeGroupIdentityPtrOutput) ToVolumeGroupIdentityPtrOutputWithContext(ctx context.Context) VolumeGroupIdentityPtrOutput

func (VolumeGroupIdentityPtrOutput) Type

Specifies the type of Managed Identity that should be assigned to this Elastic SAN Volume Group. Possible values are `SystemAssigned` and `UserAssigned`.

type VolumeGroupInput

type VolumeGroupInput interface {
	pulumi.Input

	ToVolumeGroupOutput() VolumeGroupOutput
	ToVolumeGroupOutputWithContext(ctx context.Context) VolumeGroupOutput
}

type VolumeGroupMap

type VolumeGroupMap map[string]VolumeGroupInput

func (VolumeGroupMap) ElementType

func (VolumeGroupMap) ElementType() reflect.Type

func (VolumeGroupMap) ToVolumeGroupMapOutput

func (i VolumeGroupMap) ToVolumeGroupMapOutput() VolumeGroupMapOutput

func (VolumeGroupMap) ToVolumeGroupMapOutputWithContext

func (i VolumeGroupMap) ToVolumeGroupMapOutputWithContext(ctx context.Context) VolumeGroupMapOutput

type VolumeGroupMapInput

type VolumeGroupMapInput interface {
	pulumi.Input

	ToVolumeGroupMapOutput() VolumeGroupMapOutput
	ToVolumeGroupMapOutputWithContext(context.Context) VolumeGroupMapOutput
}

VolumeGroupMapInput is an input type that accepts VolumeGroupMap and VolumeGroupMapOutput values. You can construct a concrete instance of `VolumeGroupMapInput` via:

VolumeGroupMap{ "key": VolumeGroupArgs{...} }

type VolumeGroupMapOutput

type VolumeGroupMapOutput struct{ *pulumi.OutputState }

func (VolumeGroupMapOutput) ElementType

func (VolumeGroupMapOutput) ElementType() reflect.Type

func (VolumeGroupMapOutput) MapIndex

func (VolumeGroupMapOutput) ToVolumeGroupMapOutput

func (o VolumeGroupMapOutput) ToVolumeGroupMapOutput() VolumeGroupMapOutput

func (VolumeGroupMapOutput) ToVolumeGroupMapOutputWithContext

func (o VolumeGroupMapOutput) ToVolumeGroupMapOutputWithContext(ctx context.Context) VolumeGroupMapOutput

type VolumeGroupNetworkRule

type VolumeGroupNetworkRule struct {
	// The action to take when the Subnet attempts to access this Elastic SAN Volume Group. The only possible value is `Allow`. Defaults to `Allow`.
	Action *string `pulumi:"action"`
	// The ID of the Subnet which should be allowed to access this Elastic SAN Volume Group.
	SubnetId string `pulumi:"subnetId"`
}

type VolumeGroupNetworkRuleArgs

type VolumeGroupNetworkRuleArgs struct {
	// The action to take when the Subnet attempts to access this Elastic SAN Volume Group. The only possible value is `Allow`. Defaults to `Allow`.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// The ID of the Subnet which should be allowed to access this Elastic SAN Volume Group.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (VolumeGroupNetworkRuleArgs) ElementType

func (VolumeGroupNetworkRuleArgs) ElementType() reflect.Type

func (VolumeGroupNetworkRuleArgs) ToVolumeGroupNetworkRuleOutput

func (i VolumeGroupNetworkRuleArgs) ToVolumeGroupNetworkRuleOutput() VolumeGroupNetworkRuleOutput

func (VolumeGroupNetworkRuleArgs) ToVolumeGroupNetworkRuleOutputWithContext

func (i VolumeGroupNetworkRuleArgs) ToVolumeGroupNetworkRuleOutputWithContext(ctx context.Context) VolumeGroupNetworkRuleOutput

type VolumeGroupNetworkRuleArray

type VolumeGroupNetworkRuleArray []VolumeGroupNetworkRuleInput

func (VolumeGroupNetworkRuleArray) ElementType

func (VolumeGroupNetworkRuleArray) ToVolumeGroupNetworkRuleArrayOutput

func (i VolumeGroupNetworkRuleArray) ToVolumeGroupNetworkRuleArrayOutput() VolumeGroupNetworkRuleArrayOutput

func (VolumeGroupNetworkRuleArray) ToVolumeGroupNetworkRuleArrayOutputWithContext

func (i VolumeGroupNetworkRuleArray) ToVolumeGroupNetworkRuleArrayOutputWithContext(ctx context.Context) VolumeGroupNetworkRuleArrayOutput

type VolumeGroupNetworkRuleArrayInput

type VolumeGroupNetworkRuleArrayInput interface {
	pulumi.Input

	ToVolumeGroupNetworkRuleArrayOutput() VolumeGroupNetworkRuleArrayOutput
	ToVolumeGroupNetworkRuleArrayOutputWithContext(context.Context) VolumeGroupNetworkRuleArrayOutput
}

VolumeGroupNetworkRuleArrayInput is an input type that accepts VolumeGroupNetworkRuleArray and VolumeGroupNetworkRuleArrayOutput values. You can construct a concrete instance of `VolumeGroupNetworkRuleArrayInput` via:

VolumeGroupNetworkRuleArray{ VolumeGroupNetworkRuleArgs{...} }

type VolumeGroupNetworkRuleArrayOutput

type VolumeGroupNetworkRuleArrayOutput struct{ *pulumi.OutputState }

func (VolumeGroupNetworkRuleArrayOutput) ElementType

func (VolumeGroupNetworkRuleArrayOutput) Index

func (VolumeGroupNetworkRuleArrayOutput) ToVolumeGroupNetworkRuleArrayOutput

func (o VolumeGroupNetworkRuleArrayOutput) ToVolumeGroupNetworkRuleArrayOutput() VolumeGroupNetworkRuleArrayOutput

func (VolumeGroupNetworkRuleArrayOutput) ToVolumeGroupNetworkRuleArrayOutputWithContext

func (o VolumeGroupNetworkRuleArrayOutput) ToVolumeGroupNetworkRuleArrayOutputWithContext(ctx context.Context) VolumeGroupNetworkRuleArrayOutput

type VolumeGroupNetworkRuleInput

type VolumeGroupNetworkRuleInput interface {
	pulumi.Input

	ToVolumeGroupNetworkRuleOutput() VolumeGroupNetworkRuleOutput
	ToVolumeGroupNetworkRuleOutputWithContext(context.Context) VolumeGroupNetworkRuleOutput
}

VolumeGroupNetworkRuleInput is an input type that accepts VolumeGroupNetworkRuleArgs and VolumeGroupNetworkRuleOutput values. You can construct a concrete instance of `VolumeGroupNetworkRuleInput` via:

VolumeGroupNetworkRuleArgs{...}

type VolumeGroupNetworkRuleOutput

type VolumeGroupNetworkRuleOutput struct{ *pulumi.OutputState }

func (VolumeGroupNetworkRuleOutput) Action

The action to take when the Subnet attempts to access this Elastic SAN Volume Group. The only possible value is `Allow`. Defaults to `Allow`.

func (VolumeGroupNetworkRuleOutput) ElementType

func (VolumeGroupNetworkRuleOutput) SubnetId

The ID of the Subnet which should be allowed to access this Elastic SAN Volume Group.

func (VolumeGroupNetworkRuleOutput) ToVolumeGroupNetworkRuleOutput

func (o VolumeGroupNetworkRuleOutput) ToVolumeGroupNetworkRuleOutput() VolumeGroupNetworkRuleOutput

func (VolumeGroupNetworkRuleOutput) ToVolumeGroupNetworkRuleOutputWithContext

func (o VolumeGroupNetworkRuleOutput) ToVolumeGroupNetworkRuleOutputWithContext(ctx context.Context) VolumeGroupNetworkRuleOutput

type VolumeGroupOutput

type VolumeGroupOutput struct{ *pulumi.OutputState }

func (VolumeGroupOutput) ElasticSanId

func (o VolumeGroupOutput) ElasticSanId() pulumi.StringOutput

Specifies the Elastic SAN ID within which this Elastic SAN Volume Group should exist. Changing this forces a new resource to be created.

func (VolumeGroupOutput) ElementType

func (VolumeGroupOutput) ElementType() reflect.Type

func (VolumeGroupOutput) Encryption

An `encryption` block as defined below.

> **NOTE:** The `encryption` block can only be set when `encryptionType` is set to `EncryptionAtRestWithCustomerManagedKey`.

func (VolumeGroupOutput) EncryptionType

func (o VolumeGroupOutput) EncryptionType() pulumi.StringPtrOutput

Specifies the type of the key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerManagedKey` and `EncryptionAtRestWithPlatformKey`. Defaults to `EncryptionAtRestWithPlatformKey`.

func (VolumeGroupOutput) Identity

An `identity` block as defined below. Specifies the Managed Identity which should be assigned to this Elastic SAN Volume Group.

func (VolumeGroupOutput) Name

Specifies the name of this Elastic SAN Volume Group. Changing this forces a new resource to be created.

func (VolumeGroupOutput) NetworkRules

One or more `networkRule` blocks as defined below.

func (VolumeGroupOutput) ProtocolType

func (o VolumeGroupOutput) ProtocolType() pulumi.StringPtrOutput

Specifies the type of the storage target. The only possible value is `Iscsi`. Defaults to `Iscsi`.

func (VolumeGroupOutput) ToVolumeGroupOutput

func (o VolumeGroupOutput) ToVolumeGroupOutput() VolumeGroupOutput

func (VolumeGroupOutput) ToVolumeGroupOutputWithContext

func (o VolumeGroupOutput) ToVolumeGroupOutputWithContext(ctx context.Context) VolumeGroupOutput

type VolumeGroupState

type VolumeGroupState struct {
	// Specifies the Elastic SAN ID within which this Elastic SAN Volume Group should exist. Changing this forces a new resource to be created.
	ElasticSanId pulumi.StringPtrInput
	// An `encryption` block as defined below.
	//
	// > **NOTE:** The `encryption` block can only be set when `encryptionType` is set to `EncryptionAtRestWithCustomerManagedKey`.
	Encryption VolumeGroupEncryptionPtrInput
	// Specifies the type of the key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerManagedKey` and `EncryptionAtRestWithPlatformKey`. Defaults to `EncryptionAtRestWithPlatformKey`.
	EncryptionType pulumi.StringPtrInput
	// An `identity` block as defined below. Specifies the Managed Identity which should be assigned to this Elastic SAN Volume Group.
	Identity VolumeGroupIdentityPtrInput
	// Specifies the name of this Elastic SAN Volume Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkRule` blocks as defined below.
	NetworkRules VolumeGroupNetworkRuleArrayInput
	// Specifies the type of the storage target. The only possible value is `Iscsi`. Defaults to `Iscsi`.
	ProtocolType pulumi.StringPtrInput
}

func (VolumeGroupState) ElementType

func (VolumeGroupState) ElementType() reflect.Type

type VolumeInput

type VolumeInput interface {
	pulumi.Input

	ToVolumeOutput() VolumeOutput
	ToVolumeOutputWithContext(ctx context.Context) VolumeOutput
}

type VolumeMap

type VolumeMap map[string]VolumeInput

func (VolumeMap) ElementType

func (VolumeMap) ElementType() reflect.Type

func (VolumeMap) ToVolumeMapOutput

func (i VolumeMap) ToVolumeMapOutput() VolumeMapOutput

func (VolumeMap) ToVolumeMapOutputWithContext

func (i VolumeMap) ToVolumeMapOutputWithContext(ctx context.Context) VolumeMapOutput

type VolumeMapInput

type VolumeMapInput interface {
	pulumi.Input

	ToVolumeMapOutput() VolumeMapOutput
	ToVolumeMapOutputWithContext(context.Context) VolumeMapOutput
}

VolumeMapInput is an input type that accepts VolumeMap and VolumeMapOutput values. You can construct a concrete instance of `VolumeMapInput` via:

VolumeMap{ "key": VolumeArgs{...} }

type VolumeMapOutput

type VolumeMapOutput struct{ *pulumi.OutputState }

func (VolumeMapOutput) ElementType

func (VolumeMapOutput) ElementType() reflect.Type

func (VolumeMapOutput) MapIndex

func (VolumeMapOutput) ToVolumeMapOutput

func (o VolumeMapOutput) ToVolumeMapOutput() VolumeMapOutput

func (VolumeMapOutput) ToVolumeMapOutputWithContext

func (o VolumeMapOutput) ToVolumeMapOutputWithContext(ctx context.Context) VolumeMapOutput

type VolumeOutput

type VolumeOutput struct{ *pulumi.OutputState }

func (VolumeOutput) CreateSource

func (o VolumeOutput) CreateSource() VolumeCreateSourcePtrOutput

A `createSource` block as defined below.

func (VolumeOutput) ElementType

func (VolumeOutput) ElementType() reflect.Type

func (VolumeOutput) Name

func (o VolumeOutput) Name() pulumi.StringOutput

Specifies the name of this Elastic SAN Volume. Changing this forces a new resource to be created.

func (VolumeOutput) SizeInGib

func (o VolumeOutput) SizeInGib() pulumi.IntOutput

Specifies the size of the Elastic SAN Volume in GiB. The size should be within the remaining capacity of the parent Elastic SAN. Possible values are between `1` and `65536` (16 TiB).

> **NOTE:** The size can only be increased. If `createSource` is specified, then the size must be equal to or greater than the source's size.

func (VolumeOutput) TargetIqn

func (o VolumeOutput) TargetIqn() pulumi.StringOutput

The iSCSI Target IQN of the Elastic SAN Volume.

func (VolumeOutput) TargetPortalHostname

func (o VolumeOutput) TargetPortalHostname() pulumi.StringOutput

The iSCSI Target Portal Host Name of the Elastic SAN Volume.

func (VolumeOutput) TargetPortalPort

func (o VolumeOutput) TargetPortalPort() pulumi.IntOutput

The iSCSI Target Portal Port of the Elastic SAN Volume.

func (VolumeOutput) ToVolumeOutput

func (o VolumeOutput) ToVolumeOutput() VolumeOutput

func (VolumeOutput) ToVolumeOutputWithContext

func (o VolumeOutput) ToVolumeOutputWithContext(ctx context.Context) VolumeOutput

func (VolumeOutput) VolumeGroupId

func (o VolumeOutput) VolumeGroupId() pulumi.StringOutput

Specifies the Volume Group ID within which this Elastic SAN Volume should exist. Changing this forces a new resource to be created.

func (VolumeOutput) VolumeId

func (o VolumeOutput) VolumeId() pulumi.StringOutput

The UUID of the Elastic SAN Volume.

type VolumeState

type VolumeState struct {
	// A `createSource` block as defined below.
	CreateSource VolumeCreateSourcePtrInput
	// Specifies the name of this Elastic SAN Volume. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the size of the Elastic SAN Volume in GiB. The size should be within the remaining capacity of the parent Elastic SAN. Possible values are between `1` and `65536` (16 TiB).
	//
	// > **NOTE:** The size can only be increased. If `createSource` is specified, then the size must be equal to or greater than the source's size.
	SizeInGib pulumi.IntPtrInput
	// The iSCSI Target IQN of the Elastic SAN Volume.
	TargetIqn pulumi.StringPtrInput
	// The iSCSI Target Portal Host Name of the Elastic SAN Volume.
	TargetPortalHostname pulumi.StringPtrInput
	// The iSCSI Target Portal Port of the Elastic SAN Volume.
	TargetPortalPort pulumi.IntPtrInput
	// Specifies the Volume Group ID within which this Elastic SAN Volume should exist. Changing this forces a new resource to be created.
	VolumeGroupId pulumi.StringPtrInput
	// The UUID of the Elastic SAN Volume.
	VolumeId pulumi.StringPtrInput
}

func (VolumeState) ElementType

func (VolumeState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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