compute

package
v5.74.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2024 License: Apache-2.0 Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AvailabilitySet

type AvailabilitySet struct {
	pulumi.CustomResourceState

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies whether the availability set is managed or not. Possible values are `true` (to specify aligned) or `false` (to specify classic). Default is `true`. Changing this forces a new resource to be created.
	Managed pulumi.BoolPtrOutput `pulumi:"managed"`
	// Specifies the name of the availability set. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the number of fault domains that are used. Defaults to `3`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntPtrOutput `pulumi:"platformFaultDomainCount"`
	// Specifies the number of update domains that are used. Defaults to `5`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Update Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformUpdateDomainCount pulumi.IntPtrOutput `pulumi:"platformUpdateDomainCount"`
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an Availability Set for Virtual Machines.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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 = compute.NewAvailabilitySet(ctx, "example", &compute.AvailabilitySetArgs{
			Name:              pulumi.String("example-aset"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Tags: pulumi.StringMap{
				"environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Availability Sets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/availabilitySet:AvailabilitySet group1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/availabilitySets/webAvailSet ```

func GetAvailabilitySet

func GetAvailabilitySet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AvailabilitySetState, opts ...pulumi.ResourceOption) (*AvailabilitySet, error)

GetAvailabilitySet gets an existing AvailabilitySet 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 NewAvailabilitySet

func NewAvailabilitySet(ctx *pulumi.Context,
	name string, args *AvailabilitySetArgs, opts ...pulumi.ResourceOption) (*AvailabilitySet, error)

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

func (*AvailabilitySet) ElementType

func (*AvailabilitySet) ElementType() reflect.Type

func (*AvailabilitySet) ToAvailabilitySetOutput

func (i *AvailabilitySet) ToAvailabilitySetOutput() AvailabilitySetOutput

func (*AvailabilitySet) ToAvailabilitySetOutputWithContext

func (i *AvailabilitySet) ToAvailabilitySetOutputWithContext(ctx context.Context) AvailabilitySetOutput

type AvailabilitySetArgs

type AvailabilitySetArgs struct {
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies whether the availability set is managed or not. Possible values are `true` (to specify aligned) or `false` (to specify classic). Default is `true`. Changing this forces a new resource to be created.
	Managed pulumi.BoolPtrInput
	// Specifies the name of the availability set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the number of fault domains that are used. Defaults to `3`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntPtrInput
	// Specifies the number of update domains that are used. Defaults to `5`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Update Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformUpdateDomainCount pulumi.IntPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a AvailabilitySet resource.

func (AvailabilitySetArgs) ElementType

func (AvailabilitySetArgs) ElementType() reflect.Type

type AvailabilitySetArray

type AvailabilitySetArray []AvailabilitySetInput

func (AvailabilitySetArray) ElementType

func (AvailabilitySetArray) ElementType() reflect.Type

func (AvailabilitySetArray) ToAvailabilitySetArrayOutput

func (i AvailabilitySetArray) ToAvailabilitySetArrayOutput() AvailabilitySetArrayOutput

func (AvailabilitySetArray) ToAvailabilitySetArrayOutputWithContext

func (i AvailabilitySetArray) ToAvailabilitySetArrayOutputWithContext(ctx context.Context) AvailabilitySetArrayOutput

type AvailabilitySetArrayInput

type AvailabilitySetArrayInput interface {
	pulumi.Input

	ToAvailabilitySetArrayOutput() AvailabilitySetArrayOutput
	ToAvailabilitySetArrayOutputWithContext(context.Context) AvailabilitySetArrayOutput
}

AvailabilitySetArrayInput is an input type that accepts AvailabilitySetArray and AvailabilitySetArrayOutput values. You can construct a concrete instance of `AvailabilitySetArrayInput` via:

AvailabilitySetArray{ AvailabilitySetArgs{...} }

type AvailabilitySetArrayOutput

type AvailabilitySetArrayOutput struct{ *pulumi.OutputState }

func (AvailabilitySetArrayOutput) ElementType

func (AvailabilitySetArrayOutput) ElementType() reflect.Type

func (AvailabilitySetArrayOutput) Index

func (AvailabilitySetArrayOutput) ToAvailabilitySetArrayOutput

func (o AvailabilitySetArrayOutput) ToAvailabilitySetArrayOutput() AvailabilitySetArrayOutput

func (AvailabilitySetArrayOutput) ToAvailabilitySetArrayOutputWithContext

func (o AvailabilitySetArrayOutput) ToAvailabilitySetArrayOutputWithContext(ctx context.Context) AvailabilitySetArrayOutput

type AvailabilitySetInput

type AvailabilitySetInput interface {
	pulumi.Input

	ToAvailabilitySetOutput() AvailabilitySetOutput
	ToAvailabilitySetOutputWithContext(ctx context.Context) AvailabilitySetOutput
}

type AvailabilitySetMap

type AvailabilitySetMap map[string]AvailabilitySetInput

func (AvailabilitySetMap) ElementType

func (AvailabilitySetMap) ElementType() reflect.Type

func (AvailabilitySetMap) ToAvailabilitySetMapOutput

func (i AvailabilitySetMap) ToAvailabilitySetMapOutput() AvailabilitySetMapOutput

func (AvailabilitySetMap) ToAvailabilitySetMapOutputWithContext

func (i AvailabilitySetMap) ToAvailabilitySetMapOutputWithContext(ctx context.Context) AvailabilitySetMapOutput

type AvailabilitySetMapInput

type AvailabilitySetMapInput interface {
	pulumi.Input

	ToAvailabilitySetMapOutput() AvailabilitySetMapOutput
	ToAvailabilitySetMapOutputWithContext(context.Context) AvailabilitySetMapOutput
}

AvailabilitySetMapInput is an input type that accepts AvailabilitySetMap and AvailabilitySetMapOutput values. You can construct a concrete instance of `AvailabilitySetMapInput` via:

AvailabilitySetMap{ "key": AvailabilitySetArgs{...} }

type AvailabilitySetMapOutput

type AvailabilitySetMapOutput struct{ *pulumi.OutputState }

func (AvailabilitySetMapOutput) ElementType

func (AvailabilitySetMapOutput) ElementType() reflect.Type

func (AvailabilitySetMapOutput) MapIndex

func (AvailabilitySetMapOutput) ToAvailabilitySetMapOutput

func (o AvailabilitySetMapOutput) ToAvailabilitySetMapOutput() AvailabilitySetMapOutput

func (AvailabilitySetMapOutput) ToAvailabilitySetMapOutputWithContext

func (o AvailabilitySetMapOutput) ToAvailabilitySetMapOutputWithContext(ctx context.Context) AvailabilitySetMapOutput

type AvailabilitySetOutput

type AvailabilitySetOutput struct{ *pulumi.OutputState }

func (AvailabilitySetOutput) ElementType

func (AvailabilitySetOutput) ElementType() reflect.Type

func (AvailabilitySetOutput) Location added in v5.5.0

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (AvailabilitySetOutput) Managed added in v5.5.0

Specifies whether the availability set is managed or not. Possible values are `true` (to specify aligned) or `false` (to specify classic). Default is `true`. Changing this forces a new resource to be created.

func (AvailabilitySetOutput) Name added in v5.5.0

Specifies the name of the availability set. Changing this forces a new resource to be created.

func (AvailabilitySetOutput) PlatformFaultDomainCount added in v5.5.0

func (o AvailabilitySetOutput) PlatformFaultDomainCount() pulumi.IntPtrOutput

Specifies the number of fault domains that are used. Defaults to `3`. Changing this forces a new resource to be created.

> **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).

func (AvailabilitySetOutput) PlatformUpdateDomainCount added in v5.5.0

func (o AvailabilitySetOutput) PlatformUpdateDomainCount() pulumi.IntPtrOutput

Specifies the number of update domains that are used. Defaults to `5`. Changing this forces a new resource to be created.

> **NOTE:** The number of Update Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).

func (AvailabilitySetOutput) ProximityPlacementGroupId added in v5.5.0

func (o AvailabilitySetOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.

func (AvailabilitySetOutput) ResourceGroupName added in v5.5.0

func (o AvailabilitySetOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.

func (AvailabilitySetOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (AvailabilitySetOutput) ToAvailabilitySetOutput

func (o AvailabilitySetOutput) ToAvailabilitySetOutput() AvailabilitySetOutput

func (AvailabilitySetOutput) ToAvailabilitySetOutputWithContext

func (o AvailabilitySetOutput) ToAvailabilitySetOutputWithContext(ctx context.Context) AvailabilitySetOutput

type AvailabilitySetState

type AvailabilitySetState struct {
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies whether the availability set is managed or not. Possible values are `true` (to specify aligned) or `false` (to specify classic). Default is `true`. Changing this forces a new resource to be created.
	Managed pulumi.BoolPtrInput
	// Specifies the name of the availability set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the number of fault domains that are used. Defaults to `3`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntPtrInput
	// Specifies the number of update domains that are used. Defaults to `5`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Update Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformUpdateDomainCount pulumi.IntPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (AvailabilitySetState) ElementType

func (AvailabilitySetState) ElementType() reflect.Type

type BastionHost

type BastionHost struct {
	pulumi.CustomResourceState

	// Is Copy/Paste feature enabled for the Bastion Host. Defaults to `true`.
	CopyPasteEnabled pulumi.BoolPtrOutput `pulumi:"copyPasteEnabled"`
	// The FQDN for the Bastion Host.
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// Is File Copy feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `fileCopyEnabled` is only supported when `sku` is `Standard`.
	FileCopyEnabled pulumi.BoolPtrOutput `pulumi:"fileCopyEnabled"`
	// A `ipConfiguration` block as defined below. Changing this forces a new resource to be created.
	IpConfiguration BastionHostIpConfigurationOutput `pulumi:"ipConfiguration"`
	// Is IP Connect feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `ipConnectEnabled` is only supported when `sku` is `Standard`.
	IpConnectEnabled pulumi.BoolPtrOutput `pulumi:"ipConnectEnabled"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Review [Azure Bastion Host FAQ](https://docs.microsoft.com/azure/bastion/bastion-faq) for supported locations.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which to create the Bastion Host. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The number of scale units with which to provision the Bastion Host. Possible values are between `2` and `50`. Defaults to `2`.
	//
	// > **Note:** `scaleUnits` only can be changed when `sku` is `Standard`. `scaleUnits` is always `2` when `sku` is `Basic`.
	ScaleUnits pulumi.IntPtrOutput `pulumi:"scaleUnits"`
	// Is Shareable Link feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `shareableLinkEnabled` is only supported when `sku` is `Standard`.
	ShareableLinkEnabled pulumi.BoolPtrOutput `pulumi:"shareableLinkEnabled"`
	// The SKU of the Bastion Host. Accepted values are `Basic` and `Standard`. Defaults to `Basic`.
	//
	// > **Note** Downgrading the SKU will force a new resource to be created.
	Sku pulumi.StringPtrOutput `pulumi:"sku"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Is Tunneling feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `tunnelingEnabled` is only supported when `sku` is `Standard`.
	TunnelingEnabled pulumi.BoolPtrOutput `pulumi:"tunnelingEnabled"`
}

Manages a Bastion Host.

## Example Usage

This example deploys an Azure Bastion Host Instance to a target virtual network.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("examplevnet"),
			AddressSpaces: pulumi.StringArray{
				pulumi.String("192.168.1.0/24"),
			},
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("AzureBastionSubnet"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("192.168.1.224/27"),
			},
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "example", &network.PublicIpArgs{
			Name:              pulumi.String("examplepip"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			AllocationMethod:  pulumi.String("Static"),
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewBastionHost(ctx, "example", &compute.BastionHostArgs{
			Name:              pulumi.String("examplebastion"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfiguration: &compute.BastionHostIpConfigurationArgs{
				Name:              pulumi.String("configuration"),
				SubnetId:          exampleSubnet.ID(),
				PublicIpAddressId: examplePublicIp.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Bastion Hosts can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/bastionHost:BastionHost example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/bastionHosts/instance1 ```

func GetBastionHost

func GetBastionHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BastionHostState, opts ...pulumi.ResourceOption) (*BastionHost, error)

GetBastionHost gets an existing BastionHost 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 NewBastionHost

func NewBastionHost(ctx *pulumi.Context,
	name string, args *BastionHostArgs, opts ...pulumi.ResourceOption) (*BastionHost, error)

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

func (*BastionHost) ElementType

func (*BastionHost) ElementType() reflect.Type

func (*BastionHost) ToBastionHostOutput

func (i *BastionHost) ToBastionHostOutput() BastionHostOutput

func (*BastionHost) ToBastionHostOutputWithContext

func (i *BastionHost) ToBastionHostOutputWithContext(ctx context.Context) BastionHostOutput

type BastionHostArgs

type BastionHostArgs struct {
	// Is Copy/Paste feature enabled for the Bastion Host. Defaults to `true`.
	CopyPasteEnabled pulumi.BoolPtrInput
	// Is File Copy feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `fileCopyEnabled` is only supported when `sku` is `Standard`.
	FileCopyEnabled pulumi.BoolPtrInput
	// A `ipConfiguration` block as defined below. Changing this forces a new resource to be created.
	IpConfiguration BastionHostIpConfigurationInput
	// Is IP Connect feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `ipConnectEnabled` is only supported when `sku` is `Standard`.
	IpConnectEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Review [Azure Bastion Host FAQ](https://docs.microsoft.com/azure/bastion/bastion-faq) for supported locations.
	Location pulumi.StringPtrInput
	// Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Bastion Host. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The number of scale units with which to provision the Bastion Host. Possible values are between `2` and `50`. Defaults to `2`.
	//
	// > **Note:** `scaleUnits` only can be changed when `sku` is `Standard`. `scaleUnits` is always `2` when `sku` is `Basic`.
	ScaleUnits pulumi.IntPtrInput
	// Is Shareable Link feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `shareableLinkEnabled` is only supported when `sku` is `Standard`.
	ShareableLinkEnabled pulumi.BoolPtrInput
	// The SKU of the Bastion Host. Accepted values are `Basic` and `Standard`. Defaults to `Basic`.
	//
	// > **Note** Downgrading the SKU will force a new resource to be created.
	Sku pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Is Tunneling feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `tunnelingEnabled` is only supported when `sku` is `Standard`.
	TunnelingEnabled pulumi.BoolPtrInput
}

The set of arguments for constructing a BastionHost resource.

func (BastionHostArgs) ElementType

func (BastionHostArgs) ElementType() reflect.Type

type BastionHostArray

type BastionHostArray []BastionHostInput

func (BastionHostArray) ElementType

func (BastionHostArray) ElementType() reflect.Type

func (BastionHostArray) ToBastionHostArrayOutput

func (i BastionHostArray) ToBastionHostArrayOutput() BastionHostArrayOutput

func (BastionHostArray) ToBastionHostArrayOutputWithContext

func (i BastionHostArray) ToBastionHostArrayOutputWithContext(ctx context.Context) BastionHostArrayOutput

type BastionHostArrayInput

type BastionHostArrayInput interface {
	pulumi.Input

	ToBastionHostArrayOutput() BastionHostArrayOutput
	ToBastionHostArrayOutputWithContext(context.Context) BastionHostArrayOutput
}

BastionHostArrayInput is an input type that accepts BastionHostArray and BastionHostArrayOutput values. You can construct a concrete instance of `BastionHostArrayInput` via:

BastionHostArray{ BastionHostArgs{...} }

type BastionHostArrayOutput

type BastionHostArrayOutput struct{ *pulumi.OutputState }

func (BastionHostArrayOutput) ElementType

func (BastionHostArrayOutput) ElementType() reflect.Type

func (BastionHostArrayOutput) Index

func (BastionHostArrayOutput) ToBastionHostArrayOutput

func (o BastionHostArrayOutput) ToBastionHostArrayOutput() BastionHostArrayOutput

func (BastionHostArrayOutput) ToBastionHostArrayOutputWithContext

func (o BastionHostArrayOutput) ToBastionHostArrayOutputWithContext(ctx context.Context) BastionHostArrayOutput

type BastionHostInput

type BastionHostInput interface {
	pulumi.Input

	ToBastionHostOutput() BastionHostOutput
	ToBastionHostOutputWithContext(ctx context.Context) BastionHostOutput
}

type BastionHostIpConfiguration

type BastionHostIpConfiguration struct {
	// The name of the IP configuration. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Reference to a Public IP Address to associate with this Bastion Host. Changing this forces a new resource to be created.
	PublicIpAddressId string `pulumi:"publicIpAddressId"`
	// Reference to a subnet in which this Bastion Host has been created. Changing this forces a new resource to be created.
	//
	// > **Note:** The Subnet used for the Bastion Host must have the name `AzureBastionSubnet` and the subnet mask must be at least a `/26`.
	SubnetId string `pulumi:"subnetId"`
}

type BastionHostIpConfigurationArgs

type BastionHostIpConfigurationArgs struct {
	// The name of the IP configuration. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Reference to a Public IP Address to associate with this Bastion Host. Changing this forces a new resource to be created.
	PublicIpAddressId pulumi.StringInput `pulumi:"publicIpAddressId"`
	// Reference to a subnet in which this Bastion Host has been created. Changing this forces a new resource to be created.
	//
	// > **Note:** The Subnet used for the Bastion Host must have the name `AzureBastionSubnet` and the subnet mask must be at least a `/26`.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (BastionHostIpConfigurationArgs) ElementType

func (BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationOutput

func (i BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationOutput() BastionHostIpConfigurationOutput

func (BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationOutputWithContext

func (i BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationOutputWithContext(ctx context.Context) BastionHostIpConfigurationOutput

func (BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationPtrOutput

func (i BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationPtrOutput() BastionHostIpConfigurationPtrOutput

func (BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationPtrOutputWithContext

func (i BastionHostIpConfigurationArgs) ToBastionHostIpConfigurationPtrOutputWithContext(ctx context.Context) BastionHostIpConfigurationPtrOutput

type BastionHostIpConfigurationInput

type BastionHostIpConfigurationInput interface {
	pulumi.Input

	ToBastionHostIpConfigurationOutput() BastionHostIpConfigurationOutput
	ToBastionHostIpConfigurationOutputWithContext(context.Context) BastionHostIpConfigurationOutput
}

BastionHostIpConfigurationInput is an input type that accepts BastionHostIpConfigurationArgs and BastionHostIpConfigurationOutput values. You can construct a concrete instance of `BastionHostIpConfigurationInput` via:

BastionHostIpConfigurationArgs{...}

type BastionHostIpConfigurationOutput

type BastionHostIpConfigurationOutput struct{ *pulumi.OutputState }

func (BastionHostIpConfigurationOutput) ElementType

func (BastionHostIpConfigurationOutput) Name

The name of the IP configuration. Changing this forces a new resource to be created.

func (BastionHostIpConfigurationOutput) PublicIpAddressId

Reference to a Public IP Address to associate with this Bastion Host. Changing this forces a new resource to be created.

func (BastionHostIpConfigurationOutput) SubnetId

Reference to a subnet in which this Bastion Host has been created. Changing this forces a new resource to be created.

> **Note:** The Subnet used for the Bastion Host must have the name `AzureBastionSubnet` and the subnet mask must be at least a `/26`.

func (BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationOutput

func (o BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationOutput() BastionHostIpConfigurationOutput

func (BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationOutputWithContext

func (o BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationOutputWithContext(ctx context.Context) BastionHostIpConfigurationOutput

func (BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationPtrOutput

func (o BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationPtrOutput() BastionHostIpConfigurationPtrOutput

func (BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationPtrOutputWithContext

func (o BastionHostIpConfigurationOutput) ToBastionHostIpConfigurationPtrOutputWithContext(ctx context.Context) BastionHostIpConfigurationPtrOutput

type BastionHostIpConfigurationPtrInput

type BastionHostIpConfigurationPtrInput interface {
	pulumi.Input

	ToBastionHostIpConfigurationPtrOutput() BastionHostIpConfigurationPtrOutput
	ToBastionHostIpConfigurationPtrOutputWithContext(context.Context) BastionHostIpConfigurationPtrOutput
}

BastionHostIpConfigurationPtrInput is an input type that accepts BastionHostIpConfigurationArgs, BastionHostIpConfigurationPtr and BastionHostIpConfigurationPtrOutput values. You can construct a concrete instance of `BastionHostIpConfigurationPtrInput` via:

        BastionHostIpConfigurationArgs{...}

or:

        nil

type BastionHostIpConfigurationPtrOutput

type BastionHostIpConfigurationPtrOutput struct{ *pulumi.OutputState }

func (BastionHostIpConfigurationPtrOutput) Elem

func (BastionHostIpConfigurationPtrOutput) ElementType

func (BastionHostIpConfigurationPtrOutput) Name

The name of the IP configuration. Changing this forces a new resource to be created.

func (BastionHostIpConfigurationPtrOutput) PublicIpAddressId

Reference to a Public IP Address to associate with this Bastion Host. Changing this forces a new resource to be created.

func (BastionHostIpConfigurationPtrOutput) SubnetId

Reference to a subnet in which this Bastion Host has been created. Changing this forces a new resource to be created.

> **Note:** The Subnet used for the Bastion Host must have the name `AzureBastionSubnet` and the subnet mask must be at least a `/26`.

func (BastionHostIpConfigurationPtrOutput) ToBastionHostIpConfigurationPtrOutput

func (o BastionHostIpConfigurationPtrOutput) ToBastionHostIpConfigurationPtrOutput() BastionHostIpConfigurationPtrOutput

func (BastionHostIpConfigurationPtrOutput) ToBastionHostIpConfigurationPtrOutputWithContext

func (o BastionHostIpConfigurationPtrOutput) ToBastionHostIpConfigurationPtrOutputWithContext(ctx context.Context) BastionHostIpConfigurationPtrOutput

type BastionHostMap

type BastionHostMap map[string]BastionHostInput

func (BastionHostMap) ElementType

func (BastionHostMap) ElementType() reflect.Type

func (BastionHostMap) ToBastionHostMapOutput

func (i BastionHostMap) ToBastionHostMapOutput() BastionHostMapOutput

func (BastionHostMap) ToBastionHostMapOutputWithContext

func (i BastionHostMap) ToBastionHostMapOutputWithContext(ctx context.Context) BastionHostMapOutput

type BastionHostMapInput

type BastionHostMapInput interface {
	pulumi.Input

	ToBastionHostMapOutput() BastionHostMapOutput
	ToBastionHostMapOutputWithContext(context.Context) BastionHostMapOutput
}

BastionHostMapInput is an input type that accepts BastionHostMap and BastionHostMapOutput values. You can construct a concrete instance of `BastionHostMapInput` via:

BastionHostMap{ "key": BastionHostArgs{...} }

type BastionHostMapOutput

type BastionHostMapOutput struct{ *pulumi.OutputState }

func (BastionHostMapOutput) ElementType

func (BastionHostMapOutput) ElementType() reflect.Type

func (BastionHostMapOutput) MapIndex

func (BastionHostMapOutput) ToBastionHostMapOutput

func (o BastionHostMapOutput) ToBastionHostMapOutput() BastionHostMapOutput

func (BastionHostMapOutput) ToBastionHostMapOutputWithContext

func (o BastionHostMapOutput) ToBastionHostMapOutputWithContext(ctx context.Context) BastionHostMapOutput

type BastionHostOutput

type BastionHostOutput struct{ *pulumi.OutputState }

func (BastionHostOutput) CopyPasteEnabled added in v5.5.0

func (o BastionHostOutput) CopyPasteEnabled() pulumi.BoolPtrOutput

Is Copy/Paste feature enabled for the Bastion Host. Defaults to `true`.

func (BastionHostOutput) DnsName added in v5.5.0

The FQDN for the Bastion Host.

func (BastionHostOutput) ElementType

func (BastionHostOutput) ElementType() reflect.Type

func (BastionHostOutput) FileCopyEnabled added in v5.5.0

func (o BastionHostOutput) FileCopyEnabled() pulumi.BoolPtrOutput

Is File Copy feature enabled for the Bastion Host. Defaults to `false`.

> **Note:** `fileCopyEnabled` is only supported when `sku` is `Standard`.

func (BastionHostOutput) IpConfiguration added in v5.5.0

A `ipConfiguration` block as defined below. Changing this forces a new resource to be created.

func (BastionHostOutput) IpConnectEnabled added in v5.5.0

func (o BastionHostOutput) IpConnectEnabled() pulumi.BoolPtrOutput

Is IP Connect feature enabled for the Bastion Host. Defaults to `false`.

> **Note:** `ipConnectEnabled` is only supported when `sku` is `Standard`.

func (BastionHostOutput) Location added in v5.5.0

func (o BastionHostOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Review [Azure Bastion Host FAQ](https://docs.microsoft.com/azure/bastion/bastion-faq) for supported locations.

func (BastionHostOutput) Name added in v5.5.0

Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

func (BastionHostOutput) ResourceGroupName added in v5.5.0

func (o BastionHostOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the Bastion Host. Changing this forces a new resource to be created.

func (BastionHostOutput) ScaleUnits added in v5.5.0

func (o BastionHostOutput) ScaleUnits() pulumi.IntPtrOutput

The number of scale units with which to provision the Bastion Host. Possible values are between `2` and `50`. Defaults to `2`.

> **Note:** `scaleUnits` only can be changed when `sku` is `Standard`. `scaleUnits` is always `2` when `sku` is `Basic`.

func (BastionHostOutput) ShareableLinkEnabled added in v5.5.0

func (o BastionHostOutput) ShareableLinkEnabled() pulumi.BoolPtrOutput

Is Shareable Link feature enabled for the Bastion Host. Defaults to `false`.

> **Note:** `shareableLinkEnabled` is only supported when `sku` is `Standard`.

func (BastionHostOutput) Sku added in v5.5.0

The SKU of the Bastion Host. Accepted values are `Basic` and `Standard`. Defaults to `Basic`.

> **Note** Downgrading the SKU will force a new resource to be created.

func (BastionHostOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (BastionHostOutput) ToBastionHostOutput

func (o BastionHostOutput) ToBastionHostOutput() BastionHostOutput

func (BastionHostOutput) ToBastionHostOutputWithContext

func (o BastionHostOutput) ToBastionHostOutputWithContext(ctx context.Context) BastionHostOutput

func (BastionHostOutput) TunnelingEnabled added in v5.5.0

func (o BastionHostOutput) TunnelingEnabled() pulumi.BoolPtrOutput

Is Tunneling feature enabled for the Bastion Host. Defaults to `false`.

> **Note:** `tunnelingEnabled` is only supported when `sku` is `Standard`.

type BastionHostState

type BastionHostState struct {
	// Is Copy/Paste feature enabled for the Bastion Host. Defaults to `true`.
	CopyPasteEnabled pulumi.BoolPtrInput
	// The FQDN for the Bastion Host.
	DnsName pulumi.StringPtrInput
	// Is File Copy feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `fileCopyEnabled` is only supported when `sku` is `Standard`.
	FileCopyEnabled pulumi.BoolPtrInput
	// A `ipConfiguration` block as defined below. Changing this forces a new resource to be created.
	IpConfiguration BastionHostIpConfigurationPtrInput
	// Is IP Connect feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `ipConnectEnabled` is only supported when `sku` is `Standard`.
	IpConnectEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Review [Azure Bastion Host FAQ](https://docs.microsoft.com/azure/bastion/bastion-faq) for supported locations.
	Location pulumi.StringPtrInput
	// Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Bastion Host. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The number of scale units with which to provision the Bastion Host. Possible values are between `2` and `50`. Defaults to `2`.
	//
	// > **Note:** `scaleUnits` only can be changed when `sku` is `Standard`. `scaleUnits` is always `2` when `sku` is `Basic`.
	ScaleUnits pulumi.IntPtrInput
	// Is Shareable Link feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `shareableLinkEnabled` is only supported when `sku` is `Standard`.
	ShareableLinkEnabled pulumi.BoolPtrInput
	// The SKU of the Bastion Host. Accepted values are `Basic` and `Standard`. Defaults to `Basic`.
	//
	// > **Note** Downgrading the SKU will force a new resource to be created.
	Sku pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Is Tunneling feature enabled for the Bastion Host. Defaults to `false`.
	//
	// > **Note:** `tunnelingEnabled` is only supported when `sku` is `Standard`.
	TunnelingEnabled pulumi.BoolPtrInput
}

func (BastionHostState) ElementType

func (BastionHostState) ElementType() reflect.Type

type CapacityReservation added in v5.10.0

type CapacityReservation struct {
	pulumi.CustomResourceState

	// The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.
	CapacityReservationGroupId pulumi.StringOutput `pulumi:"capacityReservationGroupId"`
	// Specifies the name of this Capacity Reservation. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A `sku` block as defined below.
	Sku CapacityReservationSkuOutput `pulumi:"sku"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

Manages a Capacity Reservation within a Capacity Reservation Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		exampleCapacityReservationGroup, err := compute.NewCapacityReservationGroup(ctx, "example", &compute.CapacityReservationGroupArgs{
			Name:              pulumi.String("example-capacity-reservation-group"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
		})
		if err != nil {
			return err
		}
		_, err = compute.NewCapacityReservation(ctx, "example", &compute.CapacityReservationArgs{
			Name:                       pulumi.String("example-capacity-reservation"),
			CapacityReservationGroupId: exampleCapacityReservationGroup.ID(),
			Sku: &compute.CapacityReservationSkuArgs{
				Name:     pulumi.String("Standard_D2s_v3"),
				Capacity: pulumi.Int(1),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Capacity Reservations can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/capacityReservation:CapacityReservation example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/capacityReservationGroups/capacityReservationGroup1/capacityReservations/capacityReservation1 ```

func GetCapacityReservation added in v5.10.0

func GetCapacityReservation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CapacityReservationState, opts ...pulumi.ResourceOption) (*CapacityReservation, error)

GetCapacityReservation gets an existing CapacityReservation 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 NewCapacityReservation added in v5.10.0

func NewCapacityReservation(ctx *pulumi.Context,
	name string, args *CapacityReservationArgs, opts ...pulumi.ResourceOption) (*CapacityReservation, error)

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

func (*CapacityReservation) ElementType added in v5.10.0

func (*CapacityReservation) ElementType() reflect.Type

func (*CapacityReservation) ToCapacityReservationOutput added in v5.10.0

func (i *CapacityReservation) ToCapacityReservationOutput() CapacityReservationOutput

func (*CapacityReservation) ToCapacityReservationOutputWithContext added in v5.10.0

func (i *CapacityReservation) ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput

type CapacityReservationArgs added in v5.10.0

type CapacityReservationArgs struct {
	// The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.
	CapacityReservationGroupId pulumi.StringInput
	// Specifies the name of this Capacity Reservation. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A `sku` block as defined below.
	Sku CapacityReservationSkuInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a CapacityReservation resource.

func (CapacityReservationArgs) ElementType added in v5.10.0

func (CapacityReservationArgs) ElementType() reflect.Type

type CapacityReservationArray added in v5.10.0

type CapacityReservationArray []CapacityReservationInput

func (CapacityReservationArray) ElementType added in v5.10.0

func (CapacityReservationArray) ElementType() reflect.Type

func (CapacityReservationArray) ToCapacityReservationArrayOutput added in v5.10.0

func (i CapacityReservationArray) ToCapacityReservationArrayOutput() CapacityReservationArrayOutput

func (CapacityReservationArray) ToCapacityReservationArrayOutputWithContext added in v5.10.0

func (i CapacityReservationArray) ToCapacityReservationArrayOutputWithContext(ctx context.Context) CapacityReservationArrayOutput

type CapacityReservationArrayInput added in v5.10.0

type CapacityReservationArrayInput interface {
	pulumi.Input

	ToCapacityReservationArrayOutput() CapacityReservationArrayOutput
	ToCapacityReservationArrayOutputWithContext(context.Context) CapacityReservationArrayOutput
}

CapacityReservationArrayInput is an input type that accepts CapacityReservationArray and CapacityReservationArrayOutput values. You can construct a concrete instance of `CapacityReservationArrayInput` via:

CapacityReservationArray{ CapacityReservationArgs{...} }

type CapacityReservationArrayOutput added in v5.10.0

type CapacityReservationArrayOutput struct{ *pulumi.OutputState }

func (CapacityReservationArrayOutput) ElementType added in v5.10.0

func (CapacityReservationArrayOutput) Index added in v5.10.0

func (CapacityReservationArrayOutput) ToCapacityReservationArrayOutput added in v5.10.0

func (o CapacityReservationArrayOutput) ToCapacityReservationArrayOutput() CapacityReservationArrayOutput

func (CapacityReservationArrayOutput) ToCapacityReservationArrayOutputWithContext added in v5.10.0

func (o CapacityReservationArrayOutput) ToCapacityReservationArrayOutputWithContext(ctx context.Context) CapacityReservationArrayOutput

type CapacityReservationGroup added in v5.10.0

type CapacityReservationGroup struct {
	pulumi.CustomResourceState

	// The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of this Capacity Reservation Group. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the resource group the Capacity Reservation Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a Capacity Reservation Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		_, err = compute.NewCapacityReservationGroup(ctx, "example", &compute.CapacityReservationGroupArgs{
			Name:              pulumi.String("example-capacity-reservation-group"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Capacity Reservation Groups can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/capacityReservationGroup:CapacityReservationGroup example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/capacityReservationGroups/capacityReservationGroup1 ```

func GetCapacityReservationGroup added in v5.10.0

func GetCapacityReservationGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CapacityReservationGroupState, opts ...pulumi.ResourceOption) (*CapacityReservationGroup, error)

GetCapacityReservationGroup gets an existing CapacityReservationGroup 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 NewCapacityReservationGroup added in v5.10.0

func NewCapacityReservationGroup(ctx *pulumi.Context,
	name string, args *CapacityReservationGroupArgs, opts ...pulumi.ResourceOption) (*CapacityReservationGroup, error)

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

func (*CapacityReservationGroup) ElementType added in v5.10.0

func (*CapacityReservationGroup) ElementType() reflect.Type

func (*CapacityReservationGroup) ToCapacityReservationGroupOutput added in v5.10.0

func (i *CapacityReservationGroup) ToCapacityReservationGroupOutput() CapacityReservationGroupOutput

func (*CapacityReservationGroup) ToCapacityReservationGroupOutputWithContext added in v5.10.0

func (i *CapacityReservationGroup) ToCapacityReservationGroupOutputWithContext(ctx context.Context) CapacityReservationGroupOutput

type CapacityReservationGroupArgs added in v5.10.0

type CapacityReservationGroupArgs struct {
	// The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Capacity Reservation Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the resource group the Capacity Reservation Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a CapacityReservationGroup resource.

func (CapacityReservationGroupArgs) ElementType added in v5.10.0

type CapacityReservationGroupArray added in v5.10.0

type CapacityReservationGroupArray []CapacityReservationGroupInput

func (CapacityReservationGroupArray) ElementType added in v5.10.0

func (CapacityReservationGroupArray) ToCapacityReservationGroupArrayOutput added in v5.10.0

func (i CapacityReservationGroupArray) ToCapacityReservationGroupArrayOutput() CapacityReservationGroupArrayOutput

func (CapacityReservationGroupArray) ToCapacityReservationGroupArrayOutputWithContext added in v5.10.0

func (i CapacityReservationGroupArray) ToCapacityReservationGroupArrayOutputWithContext(ctx context.Context) CapacityReservationGroupArrayOutput

type CapacityReservationGroupArrayInput added in v5.10.0

type CapacityReservationGroupArrayInput interface {
	pulumi.Input

	ToCapacityReservationGroupArrayOutput() CapacityReservationGroupArrayOutput
	ToCapacityReservationGroupArrayOutputWithContext(context.Context) CapacityReservationGroupArrayOutput
}

CapacityReservationGroupArrayInput is an input type that accepts CapacityReservationGroupArray and CapacityReservationGroupArrayOutput values. You can construct a concrete instance of `CapacityReservationGroupArrayInput` via:

CapacityReservationGroupArray{ CapacityReservationGroupArgs{...} }

type CapacityReservationGroupArrayOutput added in v5.10.0

type CapacityReservationGroupArrayOutput struct{ *pulumi.OutputState }

func (CapacityReservationGroupArrayOutput) ElementType added in v5.10.0

func (CapacityReservationGroupArrayOutput) Index added in v5.10.0

func (CapacityReservationGroupArrayOutput) ToCapacityReservationGroupArrayOutput added in v5.10.0

func (o CapacityReservationGroupArrayOutput) ToCapacityReservationGroupArrayOutput() CapacityReservationGroupArrayOutput

func (CapacityReservationGroupArrayOutput) ToCapacityReservationGroupArrayOutputWithContext added in v5.10.0

func (o CapacityReservationGroupArrayOutput) ToCapacityReservationGroupArrayOutputWithContext(ctx context.Context) CapacityReservationGroupArrayOutput

type CapacityReservationGroupInput added in v5.10.0

type CapacityReservationGroupInput interface {
	pulumi.Input

	ToCapacityReservationGroupOutput() CapacityReservationGroupOutput
	ToCapacityReservationGroupOutputWithContext(ctx context.Context) CapacityReservationGroupOutput
}

type CapacityReservationGroupMap added in v5.10.0

type CapacityReservationGroupMap map[string]CapacityReservationGroupInput

func (CapacityReservationGroupMap) ElementType added in v5.10.0

func (CapacityReservationGroupMap) ToCapacityReservationGroupMapOutput added in v5.10.0

func (i CapacityReservationGroupMap) ToCapacityReservationGroupMapOutput() CapacityReservationGroupMapOutput

func (CapacityReservationGroupMap) ToCapacityReservationGroupMapOutputWithContext added in v5.10.0

func (i CapacityReservationGroupMap) ToCapacityReservationGroupMapOutputWithContext(ctx context.Context) CapacityReservationGroupMapOutput

type CapacityReservationGroupMapInput added in v5.10.0

type CapacityReservationGroupMapInput interface {
	pulumi.Input

	ToCapacityReservationGroupMapOutput() CapacityReservationGroupMapOutput
	ToCapacityReservationGroupMapOutputWithContext(context.Context) CapacityReservationGroupMapOutput
}

CapacityReservationGroupMapInput is an input type that accepts CapacityReservationGroupMap and CapacityReservationGroupMapOutput values. You can construct a concrete instance of `CapacityReservationGroupMapInput` via:

CapacityReservationGroupMap{ "key": CapacityReservationGroupArgs{...} }

type CapacityReservationGroupMapOutput added in v5.10.0

type CapacityReservationGroupMapOutput struct{ *pulumi.OutputState }

func (CapacityReservationGroupMapOutput) ElementType added in v5.10.0

func (CapacityReservationGroupMapOutput) MapIndex added in v5.10.0

func (CapacityReservationGroupMapOutput) ToCapacityReservationGroupMapOutput added in v5.10.0

func (o CapacityReservationGroupMapOutput) ToCapacityReservationGroupMapOutput() CapacityReservationGroupMapOutput

func (CapacityReservationGroupMapOutput) ToCapacityReservationGroupMapOutputWithContext added in v5.10.0

func (o CapacityReservationGroupMapOutput) ToCapacityReservationGroupMapOutputWithContext(ctx context.Context) CapacityReservationGroupMapOutput

type CapacityReservationGroupOutput added in v5.10.0

type CapacityReservationGroupOutput struct{ *pulumi.OutputState }

func (CapacityReservationGroupOutput) ElementType added in v5.10.0

func (CapacityReservationGroupOutput) Location added in v5.10.0

The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created.

func (CapacityReservationGroupOutput) Name added in v5.10.0

Specifies the name of this Capacity Reservation Group. Changing this forces a new resource to be created.

func (CapacityReservationGroupOutput) ResourceGroupName added in v5.10.0

func (o CapacityReservationGroupOutput) ResourceGroupName() pulumi.StringOutput

Specifies the name of the resource group the Capacity Reservation Group is located in. Changing this forces a new resource to be created.

func (CapacityReservationGroupOutput) Tags added in v5.10.0

A mapping of tags to assign to the resource.

func (CapacityReservationGroupOutput) ToCapacityReservationGroupOutput added in v5.10.0

func (o CapacityReservationGroupOutput) ToCapacityReservationGroupOutput() CapacityReservationGroupOutput

func (CapacityReservationGroupOutput) ToCapacityReservationGroupOutputWithContext added in v5.10.0

func (o CapacityReservationGroupOutput) ToCapacityReservationGroupOutputWithContext(ctx context.Context) CapacityReservationGroupOutput

func (CapacityReservationGroupOutput) Zones added in v5.10.0

Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.

type CapacityReservationGroupState added in v5.10.0

type CapacityReservationGroupState struct {
	// The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Capacity Reservation Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the resource group the Capacity Reservation Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	Zones pulumi.StringArrayInput
}

func (CapacityReservationGroupState) ElementType added in v5.10.0

type CapacityReservationInput added in v5.10.0

type CapacityReservationInput interface {
	pulumi.Input

	ToCapacityReservationOutput() CapacityReservationOutput
	ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput
}

type CapacityReservationMap added in v5.10.0

type CapacityReservationMap map[string]CapacityReservationInput

func (CapacityReservationMap) ElementType added in v5.10.0

func (CapacityReservationMap) ElementType() reflect.Type

func (CapacityReservationMap) ToCapacityReservationMapOutput added in v5.10.0

func (i CapacityReservationMap) ToCapacityReservationMapOutput() CapacityReservationMapOutput

func (CapacityReservationMap) ToCapacityReservationMapOutputWithContext added in v5.10.0

func (i CapacityReservationMap) ToCapacityReservationMapOutputWithContext(ctx context.Context) CapacityReservationMapOutput

type CapacityReservationMapInput added in v5.10.0

type CapacityReservationMapInput interface {
	pulumi.Input

	ToCapacityReservationMapOutput() CapacityReservationMapOutput
	ToCapacityReservationMapOutputWithContext(context.Context) CapacityReservationMapOutput
}

CapacityReservationMapInput is an input type that accepts CapacityReservationMap and CapacityReservationMapOutput values. You can construct a concrete instance of `CapacityReservationMapInput` via:

CapacityReservationMap{ "key": CapacityReservationArgs{...} }

type CapacityReservationMapOutput added in v5.10.0

type CapacityReservationMapOutput struct{ *pulumi.OutputState }

func (CapacityReservationMapOutput) ElementType added in v5.10.0

func (CapacityReservationMapOutput) MapIndex added in v5.10.0

func (CapacityReservationMapOutput) ToCapacityReservationMapOutput added in v5.10.0

func (o CapacityReservationMapOutput) ToCapacityReservationMapOutput() CapacityReservationMapOutput

func (CapacityReservationMapOutput) ToCapacityReservationMapOutputWithContext added in v5.10.0

func (o CapacityReservationMapOutput) ToCapacityReservationMapOutputWithContext(ctx context.Context) CapacityReservationMapOutput

type CapacityReservationOutput added in v5.10.0

type CapacityReservationOutput struct{ *pulumi.OutputState }

func (CapacityReservationOutput) CapacityReservationGroupId added in v5.10.0

func (o CapacityReservationOutput) CapacityReservationGroupId() pulumi.StringOutput

The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.

func (CapacityReservationOutput) ElementType added in v5.10.0

func (CapacityReservationOutput) ElementType() reflect.Type

func (CapacityReservationOutput) Name added in v5.10.0

Specifies the name of this Capacity Reservation. Changing this forces a new resource to be created.

func (CapacityReservationOutput) Sku added in v5.10.0

A `sku` block as defined below.

func (CapacityReservationOutput) Tags added in v5.10.0

A mapping of tags to assign to the resource.

func (CapacityReservationOutput) ToCapacityReservationOutput added in v5.10.0

func (o CapacityReservationOutput) ToCapacityReservationOutput() CapacityReservationOutput

func (CapacityReservationOutput) ToCapacityReservationOutputWithContext added in v5.10.0

func (o CapacityReservationOutput) ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput

func (CapacityReservationOutput) Zone added in v5.10.0

Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.

type CapacityReservationSku added in v5.10.0

type CapacityReservationSku struct {
	// Specifies the number of instances to be reserved. It must be greater than or equal to `0` and not exceed the quota in the subscription.
	Capacity int `pulumi:"capacity"`
	// Name of the sku, such as `Standard_F2`. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
}

type CapacityReservationSkuArgs added in v5.10.0

type CapacityReservationSkuArgs struct {
	// Specifies the number of instances to be reserved. It must be greater than or equal to `0` and not exceed the quota in the subscription.
	Capacity pulumi.IntInput `pulumi:"capacity"`
	// Name of the sku, such as `Standard_F2`. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
}

func (CapacityReservationSkuArgs) ElementType added in v5.10.0

func (CapacityReservationSkuArgs) ElementType() reflect.Type

func (CapacityReservationSkuArgs) ToCapacityReservationSkuOutput added in v5.10.0

func (i CapacityReservationSkuArgs) ToCapacityReservationSkuOutput() CapacityReservationSkuOutput

func (CapacityReservationSkuArgs) ToCapacityReservationSkuOutputWithContext added in v5.10.0

func (i CapacityReservationSkuArgs) ToCapacityReservationSkuOutputWithContext(ctx context.Context) CapacityReservationSkuOutput

func (CapacityReservationSkuArgs) ToCapacityReservationSkuPtrOutput added in v5.10.0

func (i CapacityReservationSkuArgs) ToCapacityReservationSkuPtrOutput() CapacityReservationSkuPtrOutput

func (CapacityReservationSkuArgs) ToCapacityReservationSkuPtrOutputWithContext added in v5.10.0

func (i CapacityReservationSkuArgs) ToCapacityReservationSkuPtrOutputWithContext(ctx context.Context) CapacityReservationSkuPtrOutput

type CapacityReservationSkuInput added in v5.10.0

type CapacityReservationSkuInput interface {
	pulumi.Input

	ToCapacityReservationSkuOutput() CapacityReservationSkuOutput
	ToCapacityReservationSkuOutputWithContext(context.Context) CapacityReservationSkuOutput
}

CapacityReservationSkuInput is an input type that accepts CapacityReservationSkuArgs and CapacityReservationSkuOutput values. You can construct a concrete instance of `CapacityReservationSkuInput` via:

CapacityReservationSkuArgs{...}

type CapacityReservationSkuOutput added in v5.10.0

type CapacityReservationSkuOutput struct{ *pulumi.OutputState }

func (CapacityReservationSkuOutput) Capacity added in v5.10.0

Specifies the number of instances to be reserved. It must be greater than or equal to `0` and not exceed the quota in the subscription.

func (CapacityReservationSkuOutput) ElementType added in v5.10.0

func (CapacityReservationSkuOutput) Name added in v5.10.0

Name of the sku, such as `Standard_F2`. Changing this forces a new resource to be created.

func (CapacityReservationSkuOutput) ToCapacityReservationSkuOutput added in v5.10.0

func (o CapacityReservationSkuOutput) ToCapacityReservationSkuOutput() CapacityReservationSkuOutput

func (CapacityReservationSkuOutput) ToCapacityReservationSkuOutputWithContext added in v5.10.0

func (o CapacityReservationSkuOutput) ToCapacityReservationSkuOutputWithContext(ctx context.Context) CapacityReservationSkuOutput

func (CapacityReservationSkuOutput) ToCapacityReservationSkuPtrOutput added in v5.10.0

func (o CapacityReservationSkuOutput) ToCapacityReservationSkuPtrOutput() CapacityReservationSkuPtrOutput

func (CapacityReservationSkuOutput) ToCapacityReservationSkuPtrOutputWithContext added in v5.10.0

func (o CapacityReservationSkuOutput) ToCapacityReservationSkuPtrOutputWithContext(ctx context.Context) CapacityReservationSkuPtrOutput

type CapacityReservationSkuPtrInput added in v5.10.0

type CapacityReservationSkuPtrInput interface {
	pulumi.Input

	ToCapacityReservationSkuPtrOutput() CapacityReservationSkuPtrOutput
	ToCapacityReservationSkuPtrOutputWithContext(context.Context) CapacityReservationSkuPtrOutput
}

CapacityReservationSkuPtrInput is an input type that accepts CapacityReservationSkuArgs, CapacityReservationSkuPtr and CapacityReservationSkuPtrOutput values. You can construct a concrete instance of `CapacityReservationSkuPtrInput` via:

        CapacityReservationSkuArgs{...}

or:

        nil

func CapacityReservationSkuPtr added in v5.10.0

func CapacityReservationSkuPtr(v *CapacityReservationSkuArgs) CapacityReservationSkuPtrInput

type CapacityReservationSkuPtrOutput added in v5.10.0

type CapacityReservationSkuPtrOutput struct{ *pulumi.OutputState }

func (CapacityReservationSkuPtrOutput) Capacity added in v5.10.0

Specifies the number of instances to be reserved. It must be greater than or equal to `0` and not exceed the quota in the subscription.

func (CapacityReservationSkuPtrOutput) Elem added in v5.10.0

func (CapacityReservationSkuPtrOutput) ElementType added in v5.10.0

func (CapacityReservationSkuPtrOutput) Name added in v5.10.0

Name of the sku, such as `Standard_F2`. Changing this forces a new resource to be created.

func (CapacityReservationSkuPtrOutput) ToCapacityReservationSkuPtrOutput added in v5.10.0

func (o CapacityReservationSkuPtrOutput) ToCapacityReservationSkuPtrOutput() CapacityReservationSkuPtrOutput

func (CapacityReservationSkuPtrOutput) ToCapacityReservationSkuPtrOutputWithContext added in v5.10.0

func (o CapacityReservationSkuPtrOutput) ToCapacityReservationSkuPtrOutputWithContext(ctx context.Context) CapacityReservationSkuPtrOutput

type CapacityReservationState added in v5.10.0

type CapacityReservationState struct {
	// The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.
	CapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the name of this Capacity Reservation. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A `sku` block as defined below.
	Sku CapacityReservationSkuPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	Zone pulumi.StringPtrInput
}

func (CapacityReservationState) ElementType added in v5.10.0

func (CapacityReservationState) ElementType() reflect.Type

type DataDiskAttachment

type DataDiskAttachment struct {
	pulumi.CustomResourceState

	// Specifies the caching requirements for this Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringOutput `pulumi:"caching"`
	// The Create Option of the Data Disk, such as `Empty` or `Attach`. Defaults to `Attach`. Changing this forces a new resource to be created.
	CreateOption pulumi.StringPtrOutput `pulumi:"createOption"`
	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	Lun pulumi.IntOutput `pulumi:"lun"`
	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringOutput `pulumi:"managedDiskId"`
	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	WriteAcceleratorEnabled pulumi.BoolPtrOutput `pulumi:"writeAcceleratorEnabled"`
}

Manages attaching a Disk to a Virtual Machine.

> **NOTE:** Data Disks can be attached either directly on the `compute.VirtualMachine` resource, or using the `compute.DataDiskAttachment` resource - but the two cannot be used together. If both are used against the same Virtual Machine, spurious changes will occur.

> **Please Note:** only Managed Disks are supported via this separate resource, Unmanaged Disks can be attached using the `storageDataDisk` block in the `compute.VirtualMachine` resource.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		prefix := "example"
		if param := cfg.Get("prefix"); param != "" {
			prefix = param
		}
		vmName := fmt.Sprintf("%v-vm", prefix)
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String(fmt.Sprintf("%v-resources", prefix)),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		main, err := network.NewVirtualNetwork(ctx, "main", &network.VirtualNetworkArgs{
			Name: pulumi.String(fmt.Sprintf("%v-network", prefix)),
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
			Name:               pulumi.String("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: main.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		mainNetworkInterface, err := network.NewNetworkInterface(ctx, "main", &network.NetworkInterfaceArgs{
			Name:              pulumi.String(fmt.Sprintf("%v-nic", prefix)),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("internal"),
					SubnetId:                   internal.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleVirtualMachine, err := compute.NewVirtualMachine(ctx, "example", &compute.VirtualMachineArgs{
			Name:              pulumi.String(vmName),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			NetworkInterfaceIds: pulumi.StringArray{
				mainNetworkInterface.ID(),
			},
			VmSize: pulumi.String("Standard_F2"),
			StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
				Name:            pulumi.String("myosdisk1"),
				Caching:         pulumi.String("ReadWrite"),
				CreateOption:    pulumi.String("FromImage"),
				ManagedDiskType: pulumi.String("Standard_LRS"),
			},
			OsProfile: &compute.VirtualMachineOsProfileArgs{
				ComputerName:  pulumi.String(vmName),
				AdminUsername: pulumi.String("testadmin"),
				AdminPassword: pulumi.String("Password1234!"),
			},
			OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(false),
			},
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String(fmt.Sprintf("%v-disk1", vmName)),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(10),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDataDiskAttachment(ctx, "example", &compute.DataDiskAttachmentArgs{
			ManagedDiskId:    exampleManagedDisk.ID(),
			VirtualMachineId: exampleVirtualMachine.ID(),
			Lun:              pulumi.Int(10),
			Caching:          pulumi.String("ReadWrite"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Virtual Machines Data Disk Attachments can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/dataDiskAttachment:DataDiskAttachment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1/dataDisks/disk1 ```

func GetDataDiskAttachment

func GetDataDiskAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DataDiskAttachmentState, opts ...pulumi.ResourceOption) (*DataDiskAttachment, error)

GetDataDiskAttachment gets an existing DataDiskAttachment 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 NewDataDiskAttachment

func NewDataDiskAttachment(ctx *pulumi.Context,
	name string, args *DataDiskAttachmentArgs, opts ...pulumi.ResourceOption) (*DataDiskAttachment, error)

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

func (*DataDiskAttachment) ElementType

func (*DataDiskAttachment) ElementType() reflect.Type

func (*DataDiskAttachment) ToDataDiskAttachmentOutput

func (i *DataDiskAttachment) ToDataDiskAttachmentOutput() DataDiskAttachmentOutput

func (*DataDiskAttachment) ToDataDiskAttachmentOutputWithContext

func (i *DataDiskAttachment) ToDataDiskAttachmentOutputWithContext(ctx context.Context) DataDiskAttachmentOutput

type DataDiskAttachmentArgs

type DataDiskAttachmentArgs struct {
	// Specifies the caching requirements for this Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput
	// The Create Option of the Data Disk, such as `Empty` or `Attach`. Defaults to `Attach`. Changing this forces a new resource to be created.
	CreateOption pulumi.StringPtrInput
	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	Lun pulumi.IntInput
	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringInput
	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringInput
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput
}

The set of arguments for constructing a DataDiskAttachment resource.

func (DataDiskAttachmentArgs) ElementType

func (DataDiskAttachmentArgs) ElementType() reflect.Type

type DataDiskAttachmentArray

type DataDiskAttachmentArray []DataDiskAttachmentInput

func (DataDiskAttachmentArray) ElementType

func (DataDiskAttachmentArray) ElementType() reflect.Type

func (DataDiskAttachmentArray) ToDataDiskAttachmentArrayOutput

func (i DataDiskAttachmentArray) ToDataDiskAttachmentArrayOutput() DataDiskAttachmentArrayOutput

func (DataDiskAttachmentArray) ToDataDiskAttachmentArrayOutputWithContext

func (i DataDiskAttachmentArray) ToDataDiskAttachmentArrayOutputWithContext(ctx context.Context) DataDiskAttachmentArrayOutput

type DataDiskAttachmentArrayInput

type DataDiskAttachmentArrayInput interface {
	pulumi.Input

	ToDataDiskAttachmentArrayOutput() DataDiskAttachmentArrayOutput
	ToDataDiskAttachmentArrayOutputWithContext(context.Context) DataDiskAttachmentArrayOutput
}

DataDiskAttachmentArrayInput is an input type that accepts DataDiskAttachmentArray and DataDiskAttachmentArrayOutput values. You can construct a concrete instance of `DataDiskAttachmentArrayInput` via:

DataDiskAttachmentArray{ DataDiskAttachmentArgs{...} }

type DataDiskAttachmentArrayOutput

type DataDiskAttachmentArrayOutput struct{ *pulumi.OutputState }

func (DataDiskAttachmentArrayOutput) ElementType

func (DataDiskAttachmentArrayOutput) Index

func (DataDiskAttachmentArrayOutput) ToDataDiskAttachmentArrayOutput

func (o DataDiskAttachmentArrayOutput) ToDataDiskAttachmentArrayOutput() DataDiskAttachmentArrayOutput

func (DataDiskAttachmentArrayOutput) ToDataDiskAttachmentArrayOutputWithContext

func (o DataDiskAttachmentArrayOutput) ToDataDiskAttachmentArrayOutputWithContext(ctx context.Context) DataDiskAttachmentArrayOutput

type DataDiskAttachmentInput

type DataDiskAttachmentInput interface {
	pulumi.Input

	ToDataDiskAttachmentOutput() DataDiskAttachmentOutput
	ToDataDiskAttachmentOutputWithContext(ctx context.Context) DataDiskAttachmentOutput
}

type DataDiskAttachmentMap

type DataDiskAttachmentMap map[string]DataDiskAttachmentInput

func (DataDiskAttachmentMap) ElementType

func (DataDiskAttachmentMap) ElementType() reflect.Type

func (DataDiskAttachmentMap) ToDataDiskAttachmentMapOutput

func (i DataDiskAttachmentMap) ToDataDiskAttachmentMapOutput() DataDiskAttachmentMapOutput

func (DataDiskAttachmentMap) ToDataDiskAttachmentMapOutputWithContext

func (i DataDiskAttachmentMap) ToDataDiskAttachmentMapOutputWithContext(ctx context.Context) DataDiskAttachmentMapOutput

type DataDiskAttachmentMapInput

type DataDiskAttachmentMapInput interface {
	pulumi.Input

	ToDataDiskAttachmentMapOutput() DataDiskAttachmentMapOutput
	ToDataDiskAttachmentMapOutputWithContext(context.Context) DataDiskAttachmentMapOutput
}

DataDiskAttachmentMapInput is an input type that accepts DataDiskAttachmentMap and DataDiskAttachmentMapOutput values. You can construct a concrete instance of `DataDiskAttachmentMapInput` via:

DataDiskAttachmentMap{ "key": DataDiskAttachmentArgs{...} }

type DataDiskAttachmentMapOutput

type DataDiskAttachmentMapOutput struct{ *pulumi.OutputState }

func (DataDiskAttachmentMapOutput) ElementType

func (DataDiskAttachmentMapOutput) MapIndex

func (DataDiskAttachmentMapOutput) ToDataDiskAttachmentMapOutput

func (o DataDiskAttachmentMapOutput) ToDataDiskAttachmentMapOutput() DataDiskAttachmentMapOutput

func (DataDiskAttachmentMapOutput) ToDataDiskAttachmentMapOutputWithContext

func (o DataDiskAttachmentMapOutput) ToDataDiskAttachmentMapOutputWithContext(ctx context.Context) DataDiskAttachmentMapOutput

type DataDiskAttachmentOutput

type DataDiskAttachmentOutput struct{ *pulumi.OutputState }

func (DataDiskAttachmentOutput) Caching added in v5.5.0

Specifies the caching requirements for this Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.

func (DataDiskAttachmentOutput) CreateOption added in v5.5.0

The Create Option of the Data Disk, such as `Empty` or `Attach`. Defaults to `Attach`. Changing this forces a new resource to be created.

func (DataDiskAttachmentOutput) ElementType

func (DataDiskAttachmentOutput) ElementType() reflect.Type

func (DataDiskAttachmentOutput) Lun added in v5.5.0

The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.

func (DataDiskAttachmentOutput) ManagedDiskId added in v5.5.0

func (o DataDiskAttachmentOutput) ManagedDiskId() pulumi.StringOutput

The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.

func (DataDiskAttachmentOutput) ToDataDiskAttachmentOutput

func (o DataDiskAttachmentOutput) ToDataDiskAttachmentOutput() DataDiskAttachmentOutput

func (DataDiskAttachmentOutput) ToDataDiskAttachmentOutputWithContext

func (o DataDiskAttachmentOutput) ToDataDiskAttachmentOutputWithContext(ctx context.Context) DataDiskAttachmentOutput

func (DataDiskAttachmentOutput) VirtualMachineId added in v5.5.0

func (o DataDiskAttachmentOutput) VirtualMachineId() pulumi.StringOutput

The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.

func (DataDiskAttachmentOutput) WriteAcceleratorEnabled added in v5.5.0

func (o DataDiskAttachmentOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.

type DataDiskAttachmentState

type DataDiskAttachmentState struct {
	// Specifies the caching requirements for this Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringPtrInput
	// The Create Option of the Data Disk, such as `Empty` or `Attach`. Defaults to `Attach`. Changing this forces a new resource to be created.
	CreateOption pulumi.StringPtrInput
	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	Lun pulumi.IntPtrInput
	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringPtrInput
	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringPtrInput
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput
}

func (DataDiskAttachmentState) ElementType

func (DataDiskAttachmentState) ElementType() reflect.Type

type DedicatedHost

type DedicatedHost struct {
	pulumi.CustomResourceState

	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to `true`.
	AutoReplaceOnFailure pulumi.BoolPtrOutput `pulumi:"autoReplaceOnFailure"`
	// Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
	DedicatedHostGroupId pulumi.StringOutput `pulumi:"dedicatedHostGroupId"`
	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are `None`, `Windows_Server_Hybrid` and `Windows_Server_Perpetual`. Defaults to `None`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	PlatformFaultDomain pulumi.IntOutput `pulumi:"platformFaultDomain"`
	// Specify the SKU name of the Dedicated Host. Possible values are `DADSv5-Type1`, `DASv4-Type1`, `DASv4-Type2`, `DASv5-Type1`, `DCSv2-Type1`, `DDSv4-Type1`, `DDSv4-Type2`, `DDSv5-Type1`, `DSv3-Type1`, `DSv3-Type2`, `DSv3-Type3`, `DSv3-Type4`, `DSv4-Type1`, `DSv4-Type2`, `DSv5-Type1`, `EADSv5-Type1`, `EASv4-Type1`, `EASv4-Type2`, `EASv5-Type1`, `EDSv4-Type1`, `EDSv4-Type2`, `EDSv5-Type1`, `ESv3-Type1`, `ESv3-Type2`, `ESv3-Type3`, `ESv3-Type4`, `ESv4-Type1`, `ESv4-Type2`, `ESv5-Type1`, `FSv2-Type2`, `FSv2-Type3`, `FSv2-Type4`, `FXmds-Type1`, `LSv2-Type1`, `LSv3-Type1`, `MDMSv2MedMem-Type1`, `MDSv2MedMem-Type1`, `MMSv2MedMem-Type1`, `MS-Type1`, `MSm-Type1`, `MSmv2-Type1`, `MSv2-Type1`, `MSv2MedMem-Type1`, `NVASv4-Type1` and `NVSv3-Type1`. Changing this forces a new resource to be created.
	SkuName pulumi.StringOutput `pulumi:"skuName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manage a Dedicated Host within a Dedicated Host Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		exampleDedicatedHostGroup, err := compute.NewDedicatedHostGroup(ctx, "example", &compute.DedicatedHostGroupArgs{
			Name:                     pulumi.String("example-host-group"),
			ResourceGroupName:        example.Name,
			Location:                 example.Location,
			PlatformFaultDomainCount: pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDedicatedHost(ctx, "example", &compute.DedicatedHostArgs{
			Name:                 pulumi.String("example-host"),
			Location:             example.Location,
			DedicatedHostGroupId: exampleDedicatedHostGroup.ID(),
			SkuName:              pulumi.String("DSv3-Type3"),
			PlatformFaultDomain:  pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Dedicated Hosts can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/dedicatedHost:DedicatedHost example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/hostGroups/group1/hosts/host1 ```

func GetDedicatedHost

func GetDedicatedHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DedicatedHostState, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

GetDedicatedHost gets an existing DedicatedHost 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 NewDedicatedHost

func NewDedicatedHost(ctx *pulumi.Context,
	name string, args *DedicatedHostArgs, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

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

func (*DedicatedHost) ElementType

func (*DedicatedHost) ElementType() reflect.Type

func (*DedicatedHost) ToDedicatedHostOutput

func (i *DedicatedHost) ToDedicatedHostOutput() DedicatedHostOutput

func (*DedicatedHost) ToDedicatedHostOutputWithContext

func (i *DedicatedHost) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

type DedicatedHostArgs

type DedicatedHostArgs struct {
	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to `true`.
	AutoReplaceOnFailure pulumi.BoolPtrInput
	// Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
	DedicatedHostGroupId pulumi.StringInput
	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are `None`, `Windows_Server_Hybrid` and `Windows_Server_Perpetual`. Defaults to `None`.
	LicenseType pulumi.StringPtrInput
	// Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	PlatformFaultDomain pulumi.IntInput
	// Specify the SKU name of the Dedicated Host. Possible values are `DADSv5-Type1`, `DASv4-Type1`, `DASv4-Type2`, `DASv5-Type1`, `DCSv2-Type1`, `DDSv4-Type1`, `DDSv4-Type2`, `DDSv5-Type1`, `DSv3-Type1`, `DSv3-Type2`, `DSv3-Type3`, `DSv3-Type4`, `DSv4-Type1`, `DSv4-Type2`, `DSv5-Type1`, `EADSv5-Type1`, `EASv4-Type1`, `EASv4-Type2`, `EASv5-Type1`, `EDSv4-Type1`, `EDSv4-Type2`, `EDSv5-Type1`, `ESv3-Type1`, `ESv3-Type2`, `ESv3-Type3`, `ESv3-Type4`, `ESv4-Type1`, `ESv4-Type2`, `ESv5-Type1`, `FSv2-Type2`, `FSv2-Type3`, `FSv2-Type4`, `FXmds-Type1`, `LSv2-Type1`, `LSv3-Type1`, `MDMSv2MedMem-Type1`, `MDSv2MedMem-Type1`, `MMSv2MedMem-Type1`, `MS-Type1`, `MSm-Type1`, `MSmv2-Type1`, `MSv2-Type1`, `MSv2MedMem-Type1`, `NVASv4-Type1` and `NVSv3-Type1`. Changing this forces a new resource to be created.
	SkuName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a DedicatedHost resource.

func (DedicatedHostArgs) ElementType

func (DedicatedHostArgs) ElementType() reflect.Type

type DedicatedHostArray

type DedicatedHostArray []DedicatedHostInput

func (DedicatedHostArray) ElementType

func (DedicatedHostArray) ElementType() reflect.Type

func (DedicatedHostArray) ToDedicatedHostArrayOutput

func (i DedicatedHostArray) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArray) ToDedicatedHostArrayOutputWithContext

func (i DedicatedHostArray) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostArrayInput

type DedicatedHostArrayInput interface {
	pulumi.Input

	ToDedicatedHostArrayOutput() DedicatedHostArrayOutput
	ToDedicatedHostArrayOutputWithContext(context.Context) DedicatedHostArrayOutput
}

DedicatedHostArrayInput is an input type that accepts DedicatedHostArray and DedicatedHostArrayOutput values. You can construct a concrete instance of `DedicatedHostArrayInput` via:

DedicatedHostArray{ DedicatedHostArgs{...} }

type DedicatedHostArrayOutput

type DedicatedHostArrayOutput struct{ *pulumi.OutputState }

func (DedicatedHostArrayOutput) ElementType

func (DedicatedHostArrayOutput) ElementType() reflect.Type

func (DedicatedHostArrayOutput) Index

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutput

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostGroup

type DedicatedHostGroup struct {
	pulumi.CustomResourceState

	// Would virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group? Defaults to `false`. Changing this forces a new resource to be created.
	AutomaticPlacementEnabled pulumi.BoolPtrOutput `pulumi:"automaticPlacementEnabled"`
	// The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntOutput `pulumi:"platformFaultDomainCount"`
	// Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the Availability Zone in which this Dedicated Host Group should be located. Changing this forces a new Dedicated Host Group to be created.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

Manage a Dedicated Host Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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-compute"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDedicatedHostGroup(ctx, "example", &compute.DedicatedHostGroupArgs{
			Name:                     pulumi.String("example-dedicated-host-group"),
			ResourceGroupName:        example.Name,
			Location:                 example.Location,
			PlatformFaultDomainCount: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Dedicated Host Group can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/dedicatedHostGroup:DedicatedHostGroup example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-rg/providers/Microsoft.Compute/hostGroups/group1 ```

func GetDedicatedHostGroup

func GetDedicatedHostGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DedicatedHostGroupState, opts ...pulumi.ResourceOption) (*DedicatedHostGroup, error)

GetDedicatedHostGroup gets an existing DedicatedHostGroup 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 NewDedicatedHostGroup

func NewDedicatedHostGroup(ctx *pulumi.Context,
	name string, args *DedicatedHostGroupArgs, opts ...pulumi.ResourceOption) (*DedicatedHostGroup, error)

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

func (*DedicatedHostGroup) ElementType

func (*DedicatedHostGroup) ElementType() reflect.Type

func (*DedicatedHostGroup) ToDedicatedHostGroupOutput

func (i *DedicatedHostGroup) ToDedicatedHostGroupOutput() DedicatedHostGroupOutput

func (*DedicatedHostGroup) ToDedicatedHostGroupOutputWithContext

func (i *DedicatedHostGroup) ToDedicatedHostGroupOutputWithContext(ctx context.Context) DedicatedHostGroupOutput

type DedicatedHostGroupArgs

type DedicatedHostGroupArgs struct {
	// Would virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group? Defaults to `false`. Changing this forces a new resource to be created.
	AutomaticPlacementEnabled pulumi.BoolPtrInput
	// The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntInput
	// Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the Availability Zone in which this Dedicated Host Group should be located. Changing this forces a new Dedicated Host Group to be created.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a DedicatedHostGroup resource.

func (DedicatedHostGroupArgs) ElementType

func (DedicatedHostGroupArgs) ElementType() reflect.Type

type DedicatedHostGroupArray

type DedicatedHostGroupArray []DedicatedHostGroupInput

func (DedicatedHostGroupArray) ElementType

func (DedicatedHostGroupArray) ElementType() reflect.Type

func (DedicatedHostGroupArray) ToDedicatedHostGroupArrayOutput

func (i DedicatedHostGroupArray) ToDedicatedHostGroupArrayOutput() DedicatedHostGroupArrayOutput

func (DedicatedHostGroupArray) ToDedicatedHostGroupArrayOutputWithContext

func (i DedicatedHostGroupArray) ToDedicatedHostGroupArrayOutputWithContext(ctx context.Context) DedicatedHostGroupArrayOutput

type DedicatedHostGroupArrayInput

type DedicatedHostGroupArrayInput interface {
	pulumi.Input

	ToDedicatedHostGroupArrayOutput() DedicatedHostGroupArrayOutput
	ToDedicatedHostGroupArrayOutputWithContext(context.Context) DedicatedHostGroupArrayOutput
}

DedicatedHostGroupArrayInput is an input type that accepts DedicatedHostGroupArray and DedicatedHostGroupArrayOutput values. You can construct a concrete instance of `DedicatedHostGroupArrayInput` via:

DedicatedHostGroupArray{ DedicatedHostGroupArgs{...} }

type DedicatedHostGroupArrayOutput

type DedicatedHostGroupArrayOutput struct{ *pulumi.OutputState }

func (DedicatedHostGroupArrayOutput) ElementType

func (DedicatedHostGroupArrayOutput) Index

func (DedicatedHostGroupArrayOutput) ToDedicatedHostGroupArrayOutput

func (o DedicatedHostGroupArrayOutput) ToDedicatedHostGroupArrayOutput() DedicatedHostGroupArrayOutput

func (DedicatedHostGroupArrayOutput) ToDedicatedHostGroupArrayOutputWithContext

func (o DedicatedHostGroupArrayOutput) ToDedicatedHostGroupArrayOutputWithContext(ctx context.Context) DedicatedHostGroupArrayOutput

type DedicatedHostGroupInput

type DedicatedHostGroupInput interface {
	pulumi.Input

	ToDedicatedHostGroupOutput() DedicatedHostGroupOutput
	ToDedicatedHostGroupOutputWithContext(ctx context.Context) DedicatedHostGroupOutput
}

type DedicatedHostGroupMap

type DedicatedHostGroupMap map[string]DedicatedHostGroupInput

func (DedicatedHostGroupMap) ElementType

func (DedicatedHostGroupMap) ElementType() reflect.Type

func (DedicatedHostGroupMap) ToDedicatedHostGroupMapOutput

func (i DedicatedHostGroupMap) ToDedicatedHostGroupMapOutput() DedicatedHostGroupMapOutput

func (DedicatedHostGroupMap) ToDedicatedHostGroupMapOutputWithContext

func (i DedicatedHostGroupMap) ToDedicatedHostGroupMapOutputWithContext(ctx context.Context) DedicatedHostGroupMapOutput

type DedicatedHostGroupMapInput

type DedicatedHostGroupMapInput interface {
	pulumi.Input

	ToDedicatedHostGroupMapOutput() DedicatedHostGroupMapOutput
	ToDedicatedHostGroupMapOutputWithContext(context.Context) DedicatedHostGroupMapOutput
}

DedicatedHostGroupMapInput is an input type that accepts DedicatedHostGroupMap and DedicatedHostGroupMapOutput values. You can construct a concrete instance of `DedicatedHostGroupMapInput` via:

DedicatedHostGroupMap{ "key": DedicatedHostGroupArgs{...} }

type DedicatedHostGroupMapOutput

type DedicatedHostGroupMapOutput struct{ *pulumi.OutputState }

func (DedicatedHostGroupMapOutput) ElementType

func (DedicatedHostGroupMapOutput) MapIndex

func (DedicatedHostGroupMapOutput) ToDedicatedHostGroupMapOutput

func (o DedicatedHostGroupMapOutput) ToDedicatedHostGroupMapOutput() DedicatedHostGroupMapOutput

func (DedicatedHostGroupMapOutput) ToDedicatedHostGroupMapOutputWithContext

func (o DedicatedHostGroupMapOutput) ToDedicatedHostGroupMapOutputWithContext(ctx context.Context) DedicatedHostGroupMapOutput

type DedicatedHostGroupOutput

type DedicatedHostGroupOutput struct{ *pulumi.OutputState }

func (DedicatedHostGroupOutput) AutomaticPlacementEnabled added in v5.5.0

func (o DedicatedHostGroupOutput) AutomaticPlacementEnabled() pulumi.BoolPtrOutput

Would virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group? Defaults to `false`. Changing this forces a new resource to be created.

func (DedicatedHostGroupOutput) ElementType

func (DedicatedHostGroupOutput) ElementType() reflect.Type

func (DedicatedHostGroupOutput) Location added in v5.5.0

The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.

func (DedicatedHostGroupOutput) Name added in v5.5.0

Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.

func (DedicatedHostGroupOutput) PlatformFaultDomainCount added in v5.5.0

func (o DedicatedHostGroupOutput) PlatformFaultDomainCount() pulumi.IntOutput

The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.

func (DedicatedHostGroupOutput) ResourceGroupName added in v5.5.0

func (o DedicatedHostGroupOutput) ResourceGroupName() pulumi.StringOutput

Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.

func (DedicatedHostGroupOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (DedicatedHostGroupOutput) ToDedicatedHostGroupOutput

func (o DedicatedHostGroupOutput) ToDedicatedHostGroupOutput() DedicatedHostGroupOutput

func (DedicatedHostGroupOutput) ToDedicatedHostGroupOutputWithContext

func (o DedicatedHostGroupOutput) ToDedicatedHostGroupOutputWithContext(ctx context.Context) DedicatedHostGroupOutput

func (DedicatedHostGroupOutput) Zone added in v5.5.0

Specifies the Availability Zone in which this Dedicated Host Group should be located. Changing this forces a new Dedicated Host Group to be created.

type DedicatedHostGroupState

type DedicatedHostGroupState struct {
	// Would virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group? Defaults to `false`. Changing this forces a new resource to be created.
	AutomaticPlacementEnabled pulumi.BoolPtrInput
	// The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntPtrInput
	// Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the Availability Zone in which this Dedicated Host Group should be located. Changing this forces a new Dedicated Host Group to be created.
	Zone pulumi.StringPtrInput
}

func (DedicatedHostGroupState) ElementType

func (DedicatedHostGroupState) ElementType() reflect.Type

type DedicatedHostInput

type DedicatedHostInput interface {
	pulumi.Input

	ToDedicatedHostOutput() DedicatedHostOutput
	ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput
}

type DedicatedHostMap

type DedicatedHostMap map[string]DedicatedHostInput

func (DedicatedHostMap) ElementType

func (DedicatedHostMap) ElementType() reflect.Type

func (DedicatedHostMap) ToDedicatedHostMapOutput

func (i DedicatedHostMap) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMap) ToDedicatedHostMapOutputWithContext

func (i DedicatedHostMap) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostMapInput

type DedicatedHostMapInput interface {
	pulumi.Input

	ToDedicatedHostMapOutput() DedicatedHostMapOutput
	ToDedicatedHostMapOutputWithContext(context.Context) DedicatedHostMapOutput
}

DedicatedHostMapInput is an input type that accepts DedicatedHostMap and DedicatedHostMapOutput values. You can construct a concrete instance of `DedicatedHostMapInput` via:

DedicatedHostMap{ "key": DedicatedHostArgs{...} }

type DedicatedHostMapOutput

type DedicatedHostMapOutput struct{ *pulumi.OutputState }

func (DedicatedHostMapOutput) ElementType

func (DedicatedHostMapOutput) ElementType() reflect.Type

func (DedicatedHostMapOutput) MapIndex

func (DedicatedHostMapOutput) ToDedicatedHostMapOutput

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostOutput

type DedicatedHostOutput struct{ *pulumi.OutputState }

func (DedicatedHostOutput) AutoReplaceOnFailure added in v5.5.0

func (o DedicatedHostOutput) AutoReplaceOnFailure() pulumi.BoolPtrOutput

Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to `true`.

func (DedicatedHostOutput) DedicatedHostGroupId added in v5.5.0

func (o DedicatedHostOutput) DedicatedHostGroupId() pulumi.StringOutput

Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.

func (DedicatedHostOutput) ElementType

func (DedicatedHostOutput) ElementType() reflect.Type

func (DedicatedHostOutput) LicenseType added in v5.5.0

func (o DedicatedHostOutput) LicenseType() pulumi.StringPtrOutput

Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are `None`, `Windows_Server_Hybrid` and `Windows_Server_Perpetual`. Defaults to `None`.

func (DedicatedHostOutput) Location added in v5.5.0

Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (DedicatedHostOutput) Name added in v5.5.0

Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.

func (DedicatedHostOutput) PlatformFaultDomain added in v5.5.0

func (o DedicatedHostOutput) PlatformFaultDomain() pulumi.IntOutput

Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.

func (DedicatedHostOutput) SkuName added in v5.5.0

Specify the SKU name of the Dedicated Host. Possible values are `DADSv5-Type1`, `DASv4-Type1`, `DASv4-Type2`, `DASv5-Type1`, `DCSv2-Type1`, `DDSv4-Type1`, `DDSv4-Type2`, `DDSv5-Type1`, `DSv3-Type1`, `DSv3-Type2`, `DSv3-Type3`, `DSv3-Type4`, `DSv4-Type1`, `DSv4-Type2`, `DSv5-Type1`, `EADSv5-Type1`, `EASv4-Type1`, `EASv4-Type2`, `EASv5-Type1`, `EDSv4-Type1`, `EDSv4-Type2`, `EDSv5-Type1`, `ESv3-Type1`, `ESv3-Type2`, `ESv3-Type3`, `ESv3-Type4`, `ESv4-Type1`, `ESv4-Type2`, `ESv5-Type1`, `FSv2-Type2`, `FSv2-Type3`, `FSv2-Type4`, `FXmds-Type1`, `LSv2-Type1`, `LSv3-Type1`, `MDMSv2MedMem-Type1`, `MDSv2MedMem-Type1`, `MMSv2MedMem-Type1`, `MS-Type1`, `MSm-Type1`, `MSmv2-Type1`, `MSv2-Type1`, `MSv2MedMem-Type1`, `NVASv4-Type1` and `NVSv3-Type1`. Changing this forces a new resource to be created.

func (DedicatedHostOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (DedicatedHostOutput) ToDedicatedHostOutput

func (o DedicatedHostOutput) ToDedicatedHostOutput() DedicatedHostOutput

func (DedicatedHostOutput) ToDedicatedHostOutputWithContext

func (o DedicatedHostOutput) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

type DedicatedHostState

type DedicatedHostState struct {
	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to `true`.
	AutoReplaceOnFailure pulumi.BoolPtrInput
	// Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
	DedicatedHostGroupId pulumi.StringPtrInput
	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are `None`, `Windows_Server_Hybrid` and `Windows_Server_Perpetual`. Defaults to `None`.
	LicenseType pulumi.StringPtrInput
	// Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	PlatformFaultDomain pulumi.IntPtrInput
	// Specify the SKU name of the Dedicated Host. Possible values are `DADSv5-Type1`, `DASv4-Type1`, `DASv4-Type2`, `DASv5-Type1`, `DCSv2-Type1`, `DDSv4-Type1`, `DDSv4-Type2`, `DDSv5-Type1`, `DSv3-Type1`, `DSv3-Type2`, `DSv3-Type3`, `DSv3-Type4`, `DSv4-Type1`, `DSv4-Type2`, `DSv5-Type1`, `EADSv5-Type1`, `EASv4-Type1`, `EASv4-Type2`, `EASv5-Type1`, `EDSv4-Type1`, `EDSv4-Type2`, `EDSv5-Type1`, `ESv3-Type1`, `ESv3-Type2`, `ESv3-Type3`, `ESv3-Type4`, `ESv4-Type1`, `ESv4-Type2`, `ESv5-Type1`, `FSv2-Type2`, `FSv2-Type3`, `FSv2-Type4`, `FXmds-Type1`, `LSv2-Type1`, `LSv3-Type1`, `MDMSv2MedMem-Type1`, `MDSv2MedMem-Type1`, `MMSv2MedMem-Type1`, `MS-Type1`, `MSm-Type1`, `MSmv2-Type1`, `MSv2-Type1`, `MSv2MedMem-Type1`, `NVASv4-Type1` and `NVSv3-Type1`. Changing this forces a new resource to be created.
	SkuName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (DedicatedHostState) ElementType

func (DedicatedHostState) ElementType() reflect.Type

type DiskAccess

type DiskAccess struct {
	pulumi.CustomResourceState

	// The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Disk Access. Changing this forces a new Disk Access to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the Disk Access.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Disk Access.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewDiskAccess(ctx, "example", &compute.DiskAccessArgs{
			Name:              pulumi.String("example"),
			ResourceGroupName: pulumi.String("example"),
			Location:          pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Disk Access resource can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskAccess:DiskAccess example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Compute/diskAccesses/diskAccess1 ```

func GetDiskAccess

func GetDiskAccess(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskAccessState, opts ...pulumi.ResourceOption) (*DiskAccess, error)

GetDiskAccess gets an existing DiskAccess 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 NewDiskAccess

func NewDiskAccess(ctx *pulumi.Context,
	name string, args *DiskAccessArgs, opts ...pulumi.ResourceOption) (*DiskAccess, error)

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

func (*DiskAccess) ElementType

func (*DiskAccess) ElementType() reflect.Type

func (*DiskAccess) ToDiskAccessOutput

func (i *DiskAccess) ToDiskAccessOutput() DiskAccessOutput

func (*DiskAccess) ToDiskAccessOutputWithContext

func (i *DiskAccess) ToDiskAccessOutputWithContext(ctx context.Context) DiskAccessOutput

type DiskAccessArgs

type DiskAccessArgs struct {
	// The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Disk Access. Changing this forces a new Disk Access to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags which should be assigned to the Disk Access.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a DiskAccess resource.

func (DiskAccessArgs) ElementType

func (DiskAccessArgs) ElementType() reflect.Type

type DiskAccessArray

type DiskAccessArray []DiskAccessInput

func (DiskAccessArray) ElementType

func (DiskAccessArray) ElementType() reflect.Type

func (DiskAccessArray) ToDiskAccessArrayOutput

func (i DiskAccessArray) ToDiskAccessArrayOutput() DiskAccessArrayOutput

func (DiskAccessArray) ToDiskAccessArrayOutputWithContext

func (i DiskAccessArray) ToDiskAccessArrayOutputWithContext(ctx context.Context) DiskAccessArrayOutput

type DiskAccessArrayInput

type DiskAccessArrayInput interface {
	pulumi.Input

	ToDiskAccessArrayOutput() DiskAccessArrayOutput
	ToDiskAccessArrayOutputWithContext(context.Context) DiskAccessArrayOutput
}

DiskAccessArrayInput is an input type that accepts DiskAccessArray and DiskAccessArrayOutput values. You can construct a concrete instance of `DiskAccessArrayInput` via:

DiskAccessArray{ DiskAccessArgs{...} }

type DiskAccessArrayOutput

type DiskAccessArrayOutput struct{ *pulumi.OutputState }

func (DiskAccessArrayOutput) ElementType

func (DiskAccessArrayOutput) ElementType() reflect.Type

func (DiskAccessArrayOutput) Index

func (DiskAccessArrayOutput) ToDiskAccessArrayOutput

func (o DiskAccessArrayOutput) ToDiskAccessArrayOutput() DiskAccessArrayOutput

func (DiskAccessArrayOutput) ToDiskAccessArrayOutputWithContext

func (o DiskAccessArrayOutput) ToDiskAccessArrayOutputWithContext(ctx context.Context) DiskAccessArrayOutput

type DiskAccessInput

type DiskAccessInput interface {
	pulumi.Input

	ToDiskAccessOutput() DiskAccessOutput
	ToDiskAccessOutputWithContext(ctx context.Context) DiskAccessOutput
}

type DiskAccessMap

type DiskAccessMap map[string]DiskAccessInput

func (DiskAccessMap) ElementType

func (DiskAccessMap) ElementType() reflect.Type

func (DiskAccessMap) ToDiskAccessMapOutput

func (i DiskAccessMap) ToDiskAccessMapOutput() DiskAccessMapOutput

func (DiskAccessMap) ToDiskAccessMapOutputWithContext

func (i DiskAccessMap) ToDiskAccessMapOutputWithContext(ctx context.Context) DiskAccessMapOutput

type DiskAccessMapInput

type DiskAccessMapInput interface {
	pulumi.Input

	ToDiskAccessMapOutput() DiskAccessMapOutput
	ToDiskAccessMapOutputWithContext(context.Context) DiskAccessMapOutput
}

DiskAccessMapInput is an input type that accepts DiskAccessMap and DiskAccessMapOutput values. You can construct a concrete instance of `DiskAccessMapInput` via:

DiskAccessMap{ "key": DiskAccessArgs{...} }

type DiskAccessMapOutput

type DiskAccessMapOutput struct{ *pulumi.OutputState }

func (DiskAccessMapOutput) ElementType

func (DiskAccessMapOutput) ElementType() reflect.Type

func (DiskAccessMapOutput) MapIndex

func (DiskAccessMapOutput) ToDiskAccessMapOutput

func (o DiskAccessMapOutput) ToDiskAccessMapOutput() DiskAccessMapOutput

func (DiskAccessMapOutput) ToDiskAccessMapOutputWithContext

func (o DiskAccessMapOutput) ToDiskAccessMapOutputWithContext(ctx context.Context) DiskAccessMapOutput

type DiskAccessOutput

type DiskAccessOutput struct{ *pulumi.OutputState }

func (DiskAccessOutput) ElementType

func (DiskAccessOutput) ElementType() reflect.Type

func (DiskAccessOutput) Location added in v5.5.0

func (o DiskAccessOutput) Location() pulumi.StringOutput

The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created.

func (DiskAccessOutput) Name added in v5.5.0

The name which should be used for this Disk Access. Changing this forces a new Disk Access to be created.

func (DiskAccessOutput) ResourceGroupName added in v5.5.0

func (o DiskAccessOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access to be created.

func (DiskAccessOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to the Disk Access.

func (DiskAccessOutput) ToDiskAccessOutput

func (o DiskAccessOutput) ToDiskAccessOutput() DiskAccessOutput

func (DiskAccessOutput) ToDiskAccessOutputWithContext

func (o DiskAccessOutput) ToDiskAccessOutputWithContext(ctx context.Context) DiskAccessOutput

type DiskAccessState

type DiskAccessState struct {
	// The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Disk Access. Changing this forces a new Disk Access to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Disk Access.
	Tags pulumi.StringMapInput
}

func (DiskAccessState) ElementType

func (DiskAccessState) ElementType() reflect.Type

type DiskEncryptionSet

type DiskEncryptionSet struct {
	pulumi.CustomResourceState

	AutoKeyRotationEnabled pulumi.BoolPtrOutput `pulumi:"autoKeyRotationEnabled"`
	// The type of key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerKey`, `EncryptionAtRestWithPlatformAndCustomerKeys` and `ConfidentialVmEncryptedWithCustomerKey`. Defaults to `EncryptionAtRestWithCustomerKey`. Changing this forces a new resource to be created.
	EncryptionType pulumi.StringPtrOutput `pulumi:"encryptionType"`
	// Multi-tenant application client id to access key vault in a different tenant.
	FederatedClientId pulumi.StringPtrOutput `pulumi:"federatedClientId"`
	// An `identity` block as defined below.
	Identity DiskEncryptionSetIdentityOutput `pulumi:"identity"`
	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	//
	// > **NOTE** Access to the KeyVault must be granted for this Disk Encryption Set, if you want to further use this Disk Encryption Set in a Managed Disk or Virtual Machine, or Virtual Machine Scale Set. For instructions, please refer to the doc of [Server side encryption of Azure managed disks](https://docs.microsoft.com/azure/virtual-machines/linux/disk-encryption).
	//
	// > **NOTE** A KeyVault using enableRbacAuthorization requires to use `authorization.Assignment` to assigne the role `Key Vault Crypto Service Encryption User` to this Disk Encryption Set.
	// In this case, `keyvault.AccessPolicy` is not needed.
	KeyVaultKeyId pulumi.StringOutput `pulumi:"keyVaultKeyId"`
	// The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.
	KeyVaultKeyUrl pulumi.StringOutput `pulumi:"keyVaultKeyUrl"`
	// Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Disk Encryption Set. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the Disk Encryption Set.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Disk Encryption Set.

> **NOTE:** At this time the Key Vault used to store the Active Key for this Disk Encryption Set must have both Soft Delete & Purge Protection enabled - which are not yet supported by this provider.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:                     pulumi.String("des-example-keyvault"),
			Location:                 example.Location,
			ResourceGroupName:        example.Name,
			TenantId:                 pulumi.String(current.TenantId),
			SkuName:                  pulumi.String("premium"),
			EnabledForDiskEncryption: pulumi.Bool(true),
			PurgeProtectionEnabled:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleKey, err := keyvault.NewKey(ctx, "example", &keyvault.KeyArgs{
			Name:       pulumi.String("des-example-key"),
			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"),
			},
		})
		if err != nil {
			return err
		}
		exampleDiskEncryptionSet, err := compute.NewDiskEncryptionSet(ctx, "example", &compute.DiskEncryptionSetArgs{
			Name:              pulumi.String("des"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			KeyVaultKeyId:     exampleKey.ID(),
			Identity: &compute.DiskEncryptionSetIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		_, err = keyvault.NewAccessPolicy(ctx, "example-disk", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.TenantId, nil
			}).(pulumi.StringPtrOutput),
			ObjectId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Create"),
				pulumi.String("Delete"),
				pulumi.String("Get"),
				pulumi.String("Purge"),
				pulumi.String("Recover"),
				pulumi.String("Update"),
				pulumi.String("List"),
				pulumi.String("Decrypt"),
				pulumi.String("Sign"),
			},
		})
		if err != nil {
			return err
		}
		_, err = keyvault.NewAccessPolicy(ctx, "example-user", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId:   pulumi.String(current.TenantId),
			ObjectId:   pulumi.String(current.ObjectId),
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Create"),
				pulumi.String("Delete"),
				pulumi.String("Get"),
				pulumi.String("Purge"),
				pulumi.String("Recover"),
				pulumi.String("Update"),
				pulumi.String("List"),
				pulumi.String("Decrypt"),
				pulumi.String("Sign"),
				pulumi.String("GetRotationPolicy"),
			},
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "example-disk", &authorization.AssignmentArgs{
			Scope:              exampleKeyVault.ID(),
			RoleDefinitionName: pulumi.String("Key Vault Crypto Service Encryption User"),
			PrincipalId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With Automatic Key Rotation Enabled

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:                     pulumi.String("des-example-keyvault"),
			Location:                 example.Location,
			ResourceGroupName:        example.Name,
			TenantId:                 pulumi.String(current.TenantId),
			SkuName:                  pulumi.String("premium"),
			EnabledForDiskEncryption: pulumi.Bool(true),
			PurgeProtectionEnabled:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleKey, err := keyvault.NewKey(ctx, "example", &keyvault.KeyArgs{
			Name:       pulumi.String("des-example-key"),
			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"),
			},
		})
		if err != nil {
			return err
		}
		exampleDiskEncryptionSet, err := compute.NewDiskEncryptionSet(ctx, "example", &compute.DiskEncryptionSetArgs{
			Name:                   pulumi.String("des"),
			ResourceGroupName:      example.Name,
			Location:               example.Location,
			KeyVaultKeyId:          exampleKey.VersionlessId,
			AutoKeyRotationEnabled: pulumi.Bool(true),
			Identity: &compute.DiskEncryptionSetIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		_, err = keyvault.NewAccessPolicy(ctx, "example-disk", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.TenantId, nil
			}).(pulumi.StringPtrOutput),
			ObjectId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Create"),
				pulumi.String("Delete"),
				pulumi.String("Get"),
				pulumi.String("Purge"),
				pulumi.String("Recover"),
				pulumi.String("Update"),
				pulumi.String("List"),
				pulumi.String("Decrypt"),
				pulumi.String("Sign"),
			},
		})
		if err != nil {
			return err
		}
		_, err = keyvault.NewAccessPolicy(ctx, "example-user", &keyvault.AccessPolicyArgs{
			KeyVaultId: exampleKeyVault.ID(),
			TenantId:   pulumi.String(current.TenantId),
			ObjectId:   pulumi.String(current.ObjectId),
			KeyPermissions: pulumi.StringArray{
				pulumi.String("Create"),
				pulumi.String("Delete"),
				pulumi.String("Get"),
				pulumi.String("Purge"),
				pulumi.String("Recover"),
				pulumi.String("Update"),
				pulumi.String("List"),
				pulumi.String("Decrypt"),
				pulumi.String("Sign"),
				pulumi.String("GetRotationPolicy"),
			},
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "example-disk", &authorization.AssignmentArgs{
			Scope:              exampleKeyVault.ID(),
			RoleDefinitionName: pulumi.String("Key Vault Crypto Service Encryption User"),
			PrincipalId: exampleDiskEncryptionSet.Identity.ApplyT(func(identity compute.DiskEncryptionSetIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Disk Encryption Sets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskEncryptionSet:DiskEncryptionSet example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/diskEncryptionSets/encryptionSet1 ```

func GetDiskEncryptionSet

func GetDiskEncryptionSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskEncryptionSetState, opts ...pulumi.ResourceOption) (*DiskEncryptionSet, error)

GetDiskEncryptionSet gets an existing DiskEncryptionSet 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 NewDiskEncryptionSet

func NewDiskEncryptionSet(ctx *pulumi.Context,
	name string, args *DiskEncryptionSetArgs, opts ...pulumi.ResourceOption) (*DiskEncryptionSet, error)

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

func (*DiskEncryptionSet) ElementType

func (*DiskEncryptionSet) ElementType() reflect.Type

func (*DiskEncryptionSet) ToDiskEncryptionSetOutput

func (i *DiskEncryptionSet) ToDiskEncryptionSetOutput() DiskEncryptionSetOutput

func (*DiskEncryptionSet) ToDiskEncryptionSetOutputWithContext

func (i *DiskEncryptionSet) ToDiskEncryptionSetOutputWithContext(ctx context.Context) DiskEncryptionSetOutput

type DiskEncryptionSetArgs

type DiskEncryptionSetArgs struct {
	AutoKeyRotationEnabled pulumi.BoolPtrInput
	// The type of key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerKey`, `EncryptionAtRestWithPlatformAndCustomerKeys` and `ConfidentialVmEncryptedWithCustomerKey`. Defaults to `EncryptionAtRestWithCustomerKey`. Changing this forces a new resource to be created.
	EncryptionType pulumi.StringPtrInput
	// Multi-tenant application client id to access key vault in a different tenant.
	FederatedClientId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity DiskEncryptionSetIdentityInput
	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	//
	// > **NOTE** Access to the KeyVault must be granted for this Disk Encryption Set, if you want to further use this Disk Encryption Set in a Managed Disk or Virtual Machine, or Virtual Machine Scale Set. For instructions, please refer to the doc of [Server side encryption of Azure managed disks](https://docs.microsoft.com/azure/virtual-machines/linux/disk-encryption).
	//
	// > **NOTE** A KeyVault using enableRbacAuthorization requires to use `authorization.Assignment` to assigne the role `Key Vault Crypto Service Encryption User` to this Disk Encryption Set.
	// In this case, `keyvault.AccessPolicy` is not needed.
	KeyVaultKeyId pulumi.StringInput
	// Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Disk Encryption Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the Disk Encryption Set.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a DiskEncryptionSet resource.

func (DiskEncryptionSetArgs) ElementType

func (DiskEncryptionSetArgs) ElementType() reflect.Type

type DiskEncryptionSetArray

type DiskEncryptionSetArray []DiskEncryptionSetInput

func (DiskEncryptionSetArray) ElementType

func (DiskEncryptionSetArray) ElementType() reflect.Type

func (DiskEncryptionSetArray) ToDiskEncryptionSetArrayOutput

func (i DiskEncryptionSetArray) ToDiskEncryptionSetArrayOutput() DiskEncryptionSetArrayOutput

func (DiskEncryptionSetArray) ToDiskEncryptionSetArrayOutputWithContext

func (i DiskEncryptionSetArray) ToDiskEncryptionSetArrayOutputWithContext(ctx context.Context) DiskEncryptionSetArrayOutput

type DiskEncryptionSetArrayInput

type DiskEncryptionSetArrayInput interface {
	pulumi.Input

	ToDiskEncryptionSetArrayOutput() DiskEncryptionSetArrayOutput
	ToDiskEncryptionSetArrayOutputWithContext(context.Context) DiskEncryptionSetArrayOutput
}

DiskEncryptionSetArrayInput is an input type that accepts DiskEncryptionSetArray and DiskEncryptionSetArrayOutput values. You can construct a concrete instance of `DiskEncryptionSetArrayInput` via:

DiskEncryptionSetArray{ DiskEncryptionSetArgs{...} }

type DiskEncryptionSetArrayOutput

type DiskEncryptionSetArrayOutput struct{ *pulumi.OutputState }

func (DiskEncryptionSetArrayOutput) ElementType

func (DiskEncryptionSetArrayOutput) Index

func (DiskEncryptionSetArrayOutput) ToDiskEncryptionSetArrayOutput

func (o DiskEncryptionSetArrayOutput) ToDiskEncryptionSetArrayOutput() DiskEncryptionSetArrayOutput

func (DiskEncryptionSetArrayOutput) ToDiskEncryptionSetArrayOutputWithContext

func (o DiskEncryptionSetArrayOutput) ToDiskEncryptionSetArrayOutputWithContext(ctx context.Context) DiskEncryptionSetArrayOutput

type DiskEncryptionSetIdentity

type DiskEncryptionSetIdentity struct {
	// A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The (Client) ID of the Service Principal.
	PrincipalId *string `pulumi:"principalId"`
	// The ID of the Tenant the Service Principal is assigned in.
	TenantId *string `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type DiskEncryptionSetIdentityArgs

type DiskEncryptionSetIdentityArgs struct {
	// A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The (Client) ID of the Service Principal.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The ID of the Tenant the Service Principal is assigned in.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (DiskEncryptionSetIdentityArgs) ElementType

func (DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityOutput

func (i DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityOutput() DiskEncryptionSetIdentityOutput

func (DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityOutputWithContext

func (i DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityOutputWithContext(ctx context.Context) DiskEncryptionSetIdentityOutput

func (DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityPtrOutput

func (i DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityPtrOutput() DiskEncryptionSetIdentityPtrOutput

func (DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityPtrOutputWithContext

func (i DiskEncryptionSetIdentityArgs) ToDiskEncryptionSetIdentityPtrOutputWithContext(ctx context.Context) DiskEncryptionSetIdentityPtrOutput

type DiskEncryptionSetIdentityInput

type DiskEncryptionSetIdentityInput interface {
	pulumi.Input

	ToDiskEncryptionSetIdentityOutput() DiskEncryptionSetIdentityOutput
	ToDiskEncryptionSetIdentityOutputWithContext(context.Context) DiskEncryptionSetIdentityOutput
}

DiskEncryptionSetIdentityInput is an input type that accepts DiskEncryptionSetIdentityArgs and DiskEncryptionSetIdentityOutput values. You can construct a concrete instance of `DiskEncryptionSetIdentityInput` via:

DiskEncryptionSetIdentityArgs{...}

type DiskEncryptionSetIdentityOutput

type DiskEncryptionSetIdentityOutput struct{ *pulumi.OutputState }

func (DiskEncryptionSetIdentityOutput) ElementType

func (DiskEncryptionSetIdentityOutput) IdentityIds added in v5.24.0

A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (DiskEncryptionSetIdentityOutput) PrincipalId

The (Client) ID of the Service Principal.

func (DiskEncryptionSetIdentityOutput) TenantId

The ID of the Tenant the Service Principal is assigned in.

func (DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityOutput

func (o DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityOutput() DiskEncryptionSetIdentityOutput

func (DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityOutputWithContext

func (o DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityOutputWithContext(ctx context.Context) DiskEncryptionSetIdentityOutput

func (DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityPtrOutput

func (o DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityPtrOutput() DiskEncryptionSetIdentityPtrOutput

func (DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityPtrOutputWithContext

func (o DiskEncryptionSetIdentityOutput) ToDiskEncryptionSetIdentityPtrOutputWithContext(ctx context.Context) DiskEncryptionSetIdentityPtrOutput

func (DiskEncryptionSetIdentityOutput) Type

The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type DiskEncryptionSetIdentityPtrInput

type DiskEncryptionSetIdentityPtrInput interface {
	pulumi.Input

	ToDiskEncryptionSetIdentityPtrOutput() DiskEncryptionSetIdentityPtrOutput
	ToDiskEncryptionSetIdentityPtrOutputWithContext(context.Context) DiskEncryptionSetIdentityPtrOutput
}

DiskEncryptionSetIdentityPtrInput is an input type that accepts DiskEncryptionSetIdentityArgs, DiskEncryptionSetIdentityPtr and DiskEncryptionSetIdentityPtrOutput values. You can construct a concrete instance of `DiskEncryptionSetIdentityPtrInput` via:

        DiskEncryptionSetIdentityArgs{...}

or:

        nil

type DiskEncryptionSetIdentityPtrOutput

type DiskEncryptionSetIdentityPtrOutput struct{ *pulumi.OutputState }

func (DiskEncryptionSetIdentityPtrOutput) Elem

func (DiskEncryptionSetIdentityPtrOutput) ElementType

func (DiskEncryptionSetIdentityPtrOutput) IdentityIds added in v5.24.0

A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (DiskEncryptionSetIdentityPtrOutput) PrincipalId

The (Client) ID of the Service Principal.

func (DiskEncryptionSetIdentityPtrOutput) TenantId

The ID of the Tenant the Service Principal is assigned in.

func (DiskEncryptionSetIdentityPtrOutput) ToDiskEncryptionSetIdentityPtrOutput

func (o DiskEncryptionSetIdentityPtrOutput) ToDiskEncryptionSetIdentityPtrOutput() DiskEncryptionSetIdentityPtrOutput

func (DiskEncryptionSetIdentityPtrOutput) ToDiskEncryptionSetIdentityPtrOutputWithContext

func (o DiskEncryptionSetIdentityPtrOutput) ToDiskEncryptionSetIdentityPtrOutputWithContext(ctx context.Context) DiskEncryptionSetIdentityPtrOutput

func (DiskEncryptionSetIdentityPtrOutput) Type

The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type DiskEncryptionSetInput

type DiskEncryptionSetInput interface {
	pulumi.Input

	ToDiskEncryptionSetOutput() DiskEncryptionSetOutput
	ToDiskEncryptionSetOutputWithContext(ctx context.Context) DiskEncryptionSetOutput
}

type DiskEncryptionSetMap

type DiskEncryptionSetMap map[string]DiskEncryptionSetInput

func (DiskEncryptionSetMap) ElementType

func (DiskEncryptionSetMap) ElementType() reflect.Type

func (DiskEncryptionSetMap) ToDiskEncryptionSetMapOutput

func (i DiskEncryptionSetMap) ToDiskEncryptionSetMapOutput() DiskEncryptionSetMapOutput

func (DiskEncryptionSetMap) ToDiskEncryptionSetMapOutputWithContext

func (i DiskEncryptionSetMap) ToDiskEncryptionSetMapOutputWithContext(ctx context.Context) DiskEncryptionSetMapOutput

type DiskEncryptionSetMapInput

type DiskEncryptionSetMapInput interface {
	pulumi.Input

	ToDiskEncryptionSetMapOutput() DiskEncryptionSetMapOutput
	ToDiskEncryptionSetMapOutputWithContext(context.Context) DiskEncryptionSetMapOutput
}

DiskEncryptionSetMapInput is an input type that accepts DiskEncryptionSetMap and DiskEncryptionSetMapOutput values. You can construct a concrete instance of `DiskEncryptionSetMapInput` via:

DiskEncryptionSetMap{ "key": DiskEncryptionSetArgs{...} }

type DiskEncryptionSetMapOutput

type DiskEncryptionSetMapOutput struct{ *pulumi.OutputState }

func (DiskEncryptionSetMapOutput) ElementType

func (DiskEncryptionSetMapOutput) ElementType() reflect.Type

func (DiskEncryptionSetMapOutput) MapIndex

func (DiskEncryptionSetMapOutput) ToDiskEncryptionSetMapOutput

func (o DiskEncryptionSetMapOutput) ToDiskEncryptionSetMapOutput() DiskEncryptionSetMapOutput

func (DiskEncryptionSetMapOutput) ToDiskEncryptionSetMapOutputWithContext

func (o DiskEncryptionSetMapOutput) ToDiskEncryptionSetMapOutputWithContext(ctx context.Context) DiskEncryptionSetMapOutput

type DiskEncryptionSetOutput

type DiskEncryptionSetOutput struct{ *pulumi.OutputState }

func (DiskEncryptionSetOutput) AutoKeyRotationEnabled added in v5.5.0

func (o DiskEncryptionSetOutput) AutoKeyRotationEnabled() pulumi.BoolPtrOutput

func (DiskEncryptionSetOutput) ElementType

func (DiskEncryptionSetOutput) ElementType() reflect.Type

func (DiskEncryptionSetOutput) EncryptionType added in v5.5.0

func (o DiskEncryptionSetOutput) EncryptionType() pulumi.StringPtrOutput

The type of key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerKey`, `EncryptionAtRestWithPlatformAndCustomerKeys` and `ConfidentialVmEncryptedWithCustomerKey`. Defaults to `EncryptionAtRestWithCustomerKey`. Changing this forces a new resource to be created.

func (DiskEncryptionSetOutput) FederatedClientId added in v5.25.0

func (o DiskEncryptionSetOutput) FederatedClientId() pulumi.StringPtrOutput

Multi-tenant application client id to access key vault in a different tenant.

func (DiskEncryptionSetOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (DiskEncryptionSetOutput) KeyVaultKeyId added in v5.5.0

func (o DiskEncryptionSetOutput) KeyVaultKeyId() pulumi.StringOutput

Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).

> **NOTE** Access to the KeyVault must be granted for this Disk Encryption Set, if you want to further use this Disk Encryption Set in a Managed Disk or Virtual Machine, or Virtual Machine Scale Set. For instructions, please refer to the doc of [Server side encryption of Azure managed disks](https://docs.microsoft.com/azure/virtual-machines/linux/disk-encryption).

> **NOTE** A KeyVault using enableRbacAuthorization requires to use `authorization.Assignment` to assigne the role `Key Vault Crypto Service Encryption User` to this Disk Encryption Set. In this case, `keyvault.AccessPolicy` is not needed.

func (DiskEncryptionSetOutput) KeyVaultKeyUrl added in v5.49.0

func (o DiskEncryptionSetOutput) KeyVaultKeyUrl() pulumi.StringOutput

The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.

func (DiskEncryptionSetOutput) Location added in v5.5.0

Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.

func (DiskEncryptionSetOutput) Name added in v5.5.0

The name of the Disk Encryption Set. Changing this forces a new resource to be created.

func (DiskEncryptionSetOutput) ResourceGroupName added in v5.5.0

func (o DiskEncryptionSetOutput) ResourceGroupName() pulumi.StringOutput

Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.

func (DiskEncryptionSetOutput) Tags added in v5.5.0

A mapping of tags to assign to the Disk Encryption Set.

func (DiskEncryptionSetOutput) ToDiskEncryptionSetOutput

func (o DiskEncryptionSetOutput) ToDiskEncryptionSetOutput() DiskEncryptionSetOutput

func (DiskEncryptionSetOutput) ToDiskEncryptionSetOutputWithContext

func (o DiskEncryptionSetOutput) ToDiskEncryptionSetOutputWithContext(ctx context.Context) DiskEncryptionSetOutput

type DiskEncryptionSetState

type DiskEncryptionSetState struct {
	AutoKeyRotationEnabled pulumi.BoolPtrInput
	// The type of key used to encrypt the data of the disk. Possible values are `EncryptionAtRestWithCustomerKey`, `EncryptionAtRestWithPlatformAndCustomerKeys` and `ConfidentialVmEncryptedWithCustomerKey`. Defaults to `EncryptionAtRestWithCustomerKey`. Changing this forces a new resource to be created.
	EncryptionType pulumi.StringPtrInput
	// Multi-tenant application client id to access key vault in a different tenant.
	FederatedClientId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity DiskEncryptionSetIdentityPtrInput
	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	//
	// > **NOTE** Access to the KeyVault must be granted for this Disk Encryption Set, if you want to further use this Disk Encryption Set in a Managed Disk or Virtual Machine, or Virtual Machine Scale Set. For instructions, please refer to the doc of [Server side encryption of Azure managed disks](https://docs.microsoft.com/azure/virtual-machines/linux/disk-encryption).
	//
	// > **NOTE** A KeyVault using enableRbacAuthorization requires to use `authorization.Assignment` to assigne the role `Key Vault Crypto Service Encryption User` to this Disk Encryption Set.
	// In this case, `keyvault.AccessPolicy` is not needed.
	KeyVaultKeyId pulumi.StringPtrInput
	// The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.
	KeyVaultKeyUrl pulumi.StringPtrInput
	// Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Disk Encryption Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the Disk Encryption Set.
	Tags pulumi.StringMapInput
}

func (DiskEncryptionSetState) ElementType

func (DiskEncryptionSetState) ElementType() reflect.Type

type DiskPool

type DiskPool struct {
	pulumi.CustomResourceState

	// The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The SKU of the Disk Pool. Possible values are `Basic_B1`, `Standard_S1` and `Premium_P1`. Changing this forces a new Disk Pool to be created.
	SkuName pulumi.StringOutput `pulumi:"skuName"`
	// The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A mapping of tags which should be assigned to the Disk Pool.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a Disk Pool.

!> **Note:** Azure are officially [halting](https://learn.microsoft.com/en-us/azure/azure-vmware/attach-disk-pools-to-azure-vmware-solution-hosts?tabs=azure-cli) the preview of Azure Disk Pools, and it **will not** be made generally available. New customers will not be able to register the Microsoft.StoragePool resource provider on their subscription and deploy new Disk Pools. Existing subscriptions registered with Microsoft.StoragePool may continue to deploy and manage disk pools for the time being.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  exampleVirtualNetwork.ResourceGroupName,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.0.0/24"),
			},
			Delegations: network.SubnetDelegationArray{
				&network.SubnetDelegationArgs{
					Name: pulumi.String("diskspool"),
					ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
						Actions: pulumi.StringArray{
							pulumi.String("Microsoft.Network/virtualNetworks/read"),
						},
						Name: pulumi.String("Microsoft.StoragePool/diskPools"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDiskPool(ctx, "example", &compute.DiskPoolArgs{
			Name:              pulumi.String("example-disk-pool"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			SkuName:           pulumi.String("Basic_B1"),
			SubnetId:          exampleSubnet.ID(),
			Zones: pulumi.StringArray{
				pulumi.String("1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Disk Pools can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskPool:DiskPool example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.StoragePool/diskPools/diskPool1 ```

func GetDiskPool

func GetDiskPool(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskPoolState, opts ...pulumi.ResourceOption) (*DiskPool, error)

GetDiskPool gets an existing DiskPool 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 NewDiskPool

func NewDiskPool(ctx *pulumi.Context,
	name string, args *DiskPoolArgs, opts ...pulumi.ResourceOption) (*DiskPool, error)

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

func (*DiskPool) ElementType

func (*DiskPool) ElementType() reflect.Type

func (*DiskPool) ToDiskPoolOutput

func (i *DiskPool) ToDiskPoolOutput() DiskPoolOutput

func (*DiskPool) ToDiskPoolOutputWithContext

func (i *DiskPool) ToDiskPoolOutputWithContext(ctx context.Context) DiskPoolOutput

type DiskPoolArgs

type DiskPoolArgs struct {
	// The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	Location pulumi.StringPtrInput
	// The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	ResourceGroupName pulumi.StringInput
	// The SKU of the Disk Pool. Possible values are `Basic_B1`, `Standard_S1` and `Premium_P1`. Changing this forces a new Disk Pool to be created.
	SkuName pulumi.StringInput
	// The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
	SubnetId pulumi.StringInput
	// A mapping of tags which should be assigned to the Disk Pool.
	Tags pulumi.StringMapInput
	// Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a DiskPool resource.

func (DiskPoolArgs) ElementType

func (DiskPoolArgs) ElementType() reflect.Type

type DiskPoolArray

type DiskPoolArray []DiskPoolInput

func (DiskPoolArray) ElementType

func (DiskPoolArray) ElementType() reflect.Type

func (DiskPoolArray) ToDiskPoolArrayOutput

func (i DiskPoolArray) ToDiskPoolArrayOutput() DiskPoolArrayOutput

func (DiskPoolArray) ToDiskPoolArrayOutputWithContext

func (i DiskPoolArray) ToDiskPoolArrayOutputWithContext(ctx context.Context) DiskPoolArrayOutput

type DiskPoolArrayInput

type DiskPoolArrayInput interface {
	pulumi.Input

	ToDiskPoolArrayOutput() DiskPoolArrayOutput
	ToDiskPoolArrayOutputWithContext(context.Context) DiskPoolArrayOutput
}

DiskPoolArrayInput is an input type that accepts DiskPoolArray and DiskPoolArrayOutput values. You can construct a concrete instance of `DiskPoolArrayInput` via:

DiskPoolArray{ DiskPoolArgs{...} }

type DiskPoolArrayOutput

type DiskPoolArrayOutput struct{ *pulumi.OutputState }

func (DiskPoolArrayOutput) ElementType

func (DiskPoolArrayOutput) ElementType() reflect.Type

func (DiskPoolArrayOutput) Index

func (DiskPoolArrayOutput) ToDiskPoolArrayOutput

func (o DiskPoolArrayOutput) ToDiskPoolArrayOutput() DiskPoolArrayOutput

func (DiskPoolArrayOutput) ToDiskPoolArrayOutputWithContext

func (o DiskPoolArrayOutput) ToDiskPoolArrayOutputWithContext(ctx context.Context) DiskPoolArrayOutput

type DiskPoolInput

type DiskPoolInput interface {
	pulumi.Input

	ToDiskPoolOutput() DiskPoolOutput
	ToDiskPoolOutputWithContext(ctx context.Context) DiskPoolOutput
}

type DiskPoolIscsiTarget

type DiskPoolIscsiTarget struct {
	pulumi.CustomResourceState

	// Mode for Target connectivity. The only supported value is `Dynamic` for now. Changing this forces a new iSCSI Target to be created.
	AclMode pulumi.StringOutput `pulumi:"aclMode"`
	// The ID of the Disk Pool. Changing this forces a new iSCSI Target to be created.
	DisksPoolId pulumi.StringOutput `pulumi:"disksPoolId"`
	// List of private IPv4 addresses to connect to the iSCSI Target.
	Endpoints pulumi.StringArrayOutput `pulumi:"endpoints"`
	// The name of the iSCSI Target. The name can only contain lowercase letters, numbers, periods, or hyphens, and length should between [5-223]. Changing this forces a new iSCSI Target to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The port used by iSCSI Target portal group.
	Port pulumi.IntOutput `pulumi:"port"`
	// ISCSI Target IQN (iSCSI Qualified Name); example: `iqn.2005-03.org.iscsi:server`. IQN should follow the format `iqn.yyyy-mm.<abc>.<pqr>[:xyz]`; supported characters include alphanumeric characters in lower case, hyphen, dot and colon, and the length should between `4` and `223`. Changing this forces a new iSCSI Target to be created.
	TargetIqn pulumi.StringPtrOutput `pulumi:"targetIqn"`
}

Manages an iSCSI Target.

!> **Note:** Azure are officially [halting](https://learn.microsoft.com/en-us/azure/azure-vmware/attach-disk-pools-to-azure-vmware-solution-hosts?tabs=azure-cli) the preview of Azure Disk Pools, and it **will not** be made generally available. New customers will not be able to register the Microsoft.StoragePool resource provider on their subscription and deploy new Disk Pools. Existing subscriptions registered with Microsoft.StoragePool may continue to deploy and manage disk pools for the time being.

!> **Note:** Each Disk Pool can have a maximum of 1 iSCSI Target.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.0.0/24"),
			},
			Delegations: network.SubnetDelegationArray{
				&network.SubnetDelegationArgs{
					Name: pulumi.String("diskspool"),
					ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
						Actions: pulumi.StringArray{
							pulumi.String("Microsoft.Network/virtualNetworks/read"),
						},
						Name: pulumi.String("Microsoft.StoragePool/diskPools"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleDiskPool, err := compute.NewDiskPool(ctx, "example", &compute.DiskPoolArgs{
			Name:              pulumi.String("example-pool"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			SubnetId:          exampleSubnet.ID(),
			Zones: pulumi.StringArray{
				pulumi.String("1"),
			},
			SkuName: pulumi.String("Basic_B1"),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("example-disk"),
			ResourceGroupName:  exampleResourceGroup.Name,
			Location:           exampleResourceGroup.Location,
			CreateOption:       pulumi.String("Empty"),
			StorageAccountType: pulumi.String("Premium_LRS"),
			DiskSizeGb:         pulumi.Int(4),
			MaxShares:          pulumi.Int(2),
			Zone:               pulumi.String("1"),
		})
		if err != nil {
			return err
		}
		example, err := azuread.LookupServicePrincipal(ctx, &azuread.LookupServicePrincipalArgs{
			DisplayName: pulumi.StringRef("StoragePool Resource Provider"),
		}, nil)
		if err != nil {
			return err
		}
		roles := []string{
			"Disk Pool Operator",
			"Virtual Machine Contributor",
		}
		var exampleAssignment []*authorization.Assignment
		for index := 0; index < len(roles); index++ {
			key0 := index
			val0 := index
			__res, err := authorization.NewAssignment(ctx, fmt.Sprintf("example-%v", key0), &authorization.AssignmentArgs{
				PrincipalId:        pulumi.String(example.Id),
				RoleDefinitionName: roles[val0],
				Scope:              exampleManagedDisk.ID(),
			})
			if err != nil {
				return err
			}
			exampleAssignment = append(exampleAssignment, __res)
		}
		_, err = compute.NewDiskPoolManagedDiskAttachment(ctx, "example", &compute.DiskPoolManagedDiskAttachmentArgs{
			DiskPoolId:    exampleDiskPool.ID(),
			ManagedDiskId: exampleManagedDisk.ID(),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDiskPoolIscsiTarget(ctx, "example", &compute.DiskPoolIscsiTargetArgs{
			Name:        pulumi.String("example"),
			AclMode:     pulumi.String("Dynamic"),
			DisksPoolId: exampleDiskPool.ID(),
			TargetIqn:   pulumi.String("iqn.2021-11.com.microsoft:test"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

iSCSI Targets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskPoolIscsiTarget:DiskPoolIscsiTarget example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/group1/providers/Microsoft.StoragePool/diskPools/pool1/iscsiTargets/iscsiTarget1 ```

func GetDiskPoolIscsiTarget

func GetDiskPoolIscsiTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskPoolIscsiTargetState, opts ...pulumi.ResourceOption) (*DiskPoolIscsiTarget, error)

GetDiskPoolIscsiTarget gets an existing DiskPoolIscsiTarget 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 NewDiskPoolIscsiTarget

func NewDiskPoolIscsiTarget(ctx *pulumi.Context,
	name string, args *DiskPoolIscsiTargetArgs, opts ...pulumi.ResourceOption) (*DiskPoolIscsiTarget, error)

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

func (*DiskPoolIscsiTarget) ElementType

func (*DiskPoolIscsiTarget) ElementType() reflect.Type

func (*DiskPoolIscsiTarget) ToDiskPoolIscsiTargetOutput

func (i *DiskPoolIscsiTarget) ToDiskPoolIscsiTargetOutput() DiskPoolIscsiTargetOutput

func (*DiskPoolIscsiTarget) ToDiskPoolIscsiTargetOutputWithContext

func (i *DiskPoolIscsiTarget) ToDiskPoolIscsiTargetOutputWithContext(ctx context.Context) DiskPoolIscsiTargetOutput

type DiskPoolIscsiTargetArgs

type DiskPoolIscsiTargetArgs struct {
	// Mode for Target connectivity. The only supported value is `Dynamic` for now. Changing this forces a new iSCSI Target to be created.
	AclMode pulumi.StringInput
	// The ID of the Disk Pool. Changing this forces a new iSCSI Target to be created.
	DisksPoolId pulumi.StringInput
	// The name of the iSCSI Target. The name can only contain lowercase letters, numbers, periods, or hyphens, and length should between [5-223]. Changing this forces a new iSCSI Target to be created.
	Name pulumi.StringPtrInput
	// ISCSI Target IQN (iSCSI Qualified Name); example: `iqn.2005-03.org.iscsi:server`. IQN should follow the format `iqn.yyyy-mm.<abc>.<pqr>[:xyz]`; supported characters include alphanumeric characters in lower case, hyphen, dot and colon, and the length should between `4` and `223`. Changing this forces a new iSCSI Target to be created.
	TargetIqn pulumi.StringPtrInput
}

The set of arguments for constructing a DiskPoolIscsiTarget resource.

func (DiskPoolIscsiTargetArgs) ElementType

func (DiskPoolIscsiTargetArgs) ElementType() reflect.Type

type DiskPoolIscsiTargetArray

type DiskPoolIscsiTargetArray []DiskPoolIscsiTargetInput

func (DiskPoolIscsiTargetArray) ElementType

func (DiskPoolIscsiTargetArray) ElementType() reflect.Type

func (DiskPoolIscsiTargetArray) ToDiskPoolIscsiTargetArrayOutput

func (i DiskPoolIscsiTargetArray) ToDiskPoolIscsiTargetArrayOutput() DiskPoolIscsiTargetArrayOutput

func (DiskPoolIscsiTargetArray) ToDiskPoolIscsiTargetArrayOutputWithContext

func (i DiskPoolIscsiTargetArray) ToDiskPoolIscsiTargetArrayOutputWithContext(ctx context.Context) DiskPoolIscsiTargetArrayOutput

type DiskPoolIscsiTargetArrayInput

type DiskPoolIscsiTargetArrayInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetArrayOutput() DiskPoolIscsiTargetArrayOutput
	ToDiskPoolIscsiTargetArrayOutputWithContext(context.Context) DiskPoolIscsiTargetArrayOutput
}

DiskPoolIscsiTargetArrayInput is an input type that accepts DiskPoolIscsiTargetArray and DiskPoolIscsiTargetArrayOutput values. You can construct a concrete instance of `DiskPoolIscsiTargetArrayInput` via:

DiskPoolIscsiTargetArray{ DiskPoolIscsiTargetArgs{...} }

type DiskPoolIscsiTargetArrayOutput

type DiskPoolIscsiTargetArrayOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetArrayOutput) ElementType

func (DiskPoolIscsiTargetArrayOutput) Index

func (DiskPoolIscsiTargetArrayOutput) ToDiskPoolIscsiTargetArrayOutput

func (o DiskPoolIscsiTargetArrayOutput) ToDiskPoolIscsiTargetArrayOutput() DiskPoolIscsiTargetArrayOutput

func (DiskPoolIscsiTargetArrayOutput) ToDiskPoolIscsiTargetArrayOutputWithContext

func (o DiskPoolIscsiTargetArrayOutput) ToDiskPoolIscsiTargetArrayOutputWithContext(ctx context.Context) DiskPoolIscsiTargetArrayOutput

type DiskPoolIscsiTargetInput

type DiskPoolIscsiTargetInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetOutput() DiskPoolIscsiTargetOutput
	ToDiskPoolIscsiTargetOutputWithContext(ctx context.Context) DiskPoolIscsiTargetOutput
}

type DiskPoolIscsiTargetLun

type DiskPoolIscsiTargetLun struct {
	pulumi.CustomResourceState

	// The ID of the `compute.DiskPoolManagedDiskAttachment`. Changing this forces a new iSCSI Target LUN to be created.
	DiskPoolManagedDiskAttachmentId pulumi.StringOutput `pulumi:"diskPoolManagedDiskAttachmentId"`
	// The ID of the iSCSI Target. Changing this forces a new iSCSI Target LUN to be created.
	IscsiTargetId pulumi.StringOutput `pulumi:"iscsiTargetId"`
	// The Logical Unit Number of the iSCSI Target LUN.
	Lun pulumi.IntOutput `pulumi:"lun"`
	// User defined name for iSCSI LUN. Supported characters include uppercase letters, lowercase letters, numbers, periods, underscores or hyphens. Name should end with an alphanumeric character. The length must be between `1` and `90`. Changing this forces a new iSCSI Target LUN to be created.
	Name pulumi.StringOutput `pulumi:"name"`
}

Manages an iSCSI Target lun.

!> **Note:** Azure are officially [halting](https://learn.microsoft.com/en-us/azure/azure-vmware/attach-disk-pools-to-azure-vmware-solution-hosts?tabs=azure-cli) the preview of Azure Disk Pools, and it **will not** be made generally available. New customers will not be able to register the Microsoft.StoragePool resource provider on their subscription and deploy new Disk Pools. Existing subscriptions registered with Microsoft.StoragePool may continue to deploy and manage disk pools for the time being.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.0.0/24"),
			},
			Delegations: network.SubnetDelegationArray{
				&network.SubnetDelegationArgs{
					Name: pulumi.String("diskspool"),
					ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
						Actions: pulumi.StringArray{
							pulumi.String("Microsoft.Network/virtualNetworks/read"),
						},
						Name: pulumi.String("Microsoft.StoragePool/diskPools"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleDiskPool, err := compute.NewDiskPool(ctx, "example", &compute.DiskPoolArgs{
			Name:              pulumi.String("example-pool"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			SubnetId:          exampleSubnet.ID(),
			Zones: pulumi.StringArray{
				pulumi.String("1"),
			},
			SkuName: pulumi.String("Basic_B1"),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("example-disk"),
			ResourceGroupName:  exampleResourceGroup.Name,
			Location:           exampleResourceGroup.Location,
			CreateOption:       pulumi.String("Empty"),
			StorageAccountType: pulumi.String("Premium_LRS"),
			DiskSizeGb:         pulumi.Int(4),
			MaxShares:          pulumi.Int(2),
			Zone:               pulumi.String("1"),
		})
		if err != nil {
			return err
		}
		example, err := azuread.LookupServicePrincipal(ctx, &azuread.LookupServicePrincipalArgs{
			DisplayName: pulumi.StringRef("StoragePool Resource Provider"),
		}, nil)
		if err != nil {
			return err
		}
		roles := []string{
			"Disk Pool Operator",
			"Virtual Machine Contributor",
		}
		var exampleAssignment []*authorization.Assignment
		for index := 0; index < len(roles); index++ {
			key0 := index
			val0 := index
			__res, err := authorization.NewAssignment(ctx, fmt.Sprintf("example-%v", key0), &authorization.AssignmentArgs{
				PrincipalId:        pulumi.String(example.Id),
				RoleDefinitionName: roles[val0],
				Scope:              exampleManagedDisk.ID(),
			})
			if err != nil {
				return err
			}
			exampleAssignment = append(exampleAssignment, __res)
		}
		exampleDiskPoolManagedDiskAttachment, err := compute.NewDiskPoolManagedDiskAttachment(ctx, "example", &compute.DiskPoolManagedDiskAttachmentArgs{
			DiskPoolId:    exampleDiskPool.ID(),
			ManagedDiskId: exampleManagedDisk.ID(),
		})
		if err != nil {
			return err
		}
		exampleDiskPoolIscsiTarget, err := compute.NewDiskPoolIscsiTarget(ctx, "example", &compute.DiskPoolIscsiTargetArgs{
			Name:        pulumi.String("example"),
			AclMode:     pulumi.String("Dynamic"),
			DisksPoolId: exampleDiskPool.ID(),
			TargetIqn:   pulumi.String("iqn.2021-11.com.microsoft:test"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewDiskPoolIscsiTargetLun(ctx, "example", &compute.DiskPoolIscsiTargetLunArgs{
			IscsiTargetId:                   exampleDiskPoolIscsiTarget.ID(),
			DiskPoolManagedDiskAttachmentId: exampleDiskPoolManagedDiskAttachment.ID(),
			Name:                            pulumi.String("example-disk"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

iSCSI Target Luns can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskPoolIscsiTargetLun:DiskPoolIscsiTargetLun example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/example-resource-group/providers/Microsoft.StoragePool/diskPools/diskPoolValue/iscsiTargets/iscsiTargetValue/lun|/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Compute/disks/disk1 ```

func GetDiskPoolIscsiTargetLun

func GetDiskPoolIscsiTargetLun(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskPoolIscsiTargetLunState, opts ...pulumi.ResourceOption) (*DiskPoolIscsiTargetLun, error)

GetDiskPoolIscsiTargetLun gets an existing DiskPoolIscsiTargetLun 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 NewDiskPoolIscsiTargetLun

func NewDiskPoolIscsiTargetLun(ctx *pulumi.Context,
	name string, args *DiskPoolIscsiTargetLunArgs, opts ...pulumi.ResourceOption) (*DiskPoolIscsiTargetLun, error)

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

func (*DiskPoolIscsiTargetLun) ElementType

func (*DiskPoolIscsiTargetLun) ElementType() reflect.Type

func (*DiskPoolIscsiTargetLun) ToDiskPoolIscsiTargetLunOutput

func (i *DiskPoolIscsiTargetLun) ToDiskPoolIscsiTargetLunOutput() DiskPoolIscsiTargetLunOutput

func (*DiskPoolIscsiTargetLun) ToDiskPoolIscsiTargetLunOutputWithContext

func (i *DiskPoolIscsiTargetLun) ToDiskPoolIscsiTargetLunOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunOutput

type DiskPoolIscsiTargetLunArgs

type DiskPoolIscsiTargetLunArgs struct {
	// The ID of the `compute.DiskPoolManagedDiskAttachment`. Changing this forces a new iSCSI Target LUN to be created.
	DiskPoolManagedDiskAttachmentId pulumi.StringInput
	// The ID of the iSCSI Target. Changing this forces a new iSCSI Target LUN to be created.
	IscsiTargetId pulumi.StringInput
	// User defined name for iSCSI LUN. Supported characters include uppercase letters, lowercase letters, numbers, periods, underscores or hyphens. Name should end with an alphanumeric character. The length must be between `1` and `90`. Changing this forces a new iSCSI Target LUN to be created.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a DiskPoolIscsiTargetLun resource.

func (DiskPoolIscsiTargetLunArgs) ElementType

func (DiskPoolIscsiTargetLunArgs) ElementType() reflect.Type

type DiskPoolIscsiTargetLunArray

type DiskPoolIscsiTargetLunArray []DiskPoolIscsiTargetLunInput

func (DiskPoolIscsiTargetLunArray) ElementType

func (DiskPoolIscsiTargetLunArray) ToDiskPoolIscsiTargetLunArrayOutput

func (i DiskPoolIscsiTargetLunArray) ToDiskPoolIscsiTargetLunArrayOutput() DiskPoolIscsiTargetLunArrayOutput

func (DiskPoolIscsiTargetLunArray) ToDiskPoolIscsiTargetLunArrayOutputWithContext

func (i DiskPoolIscsiTargetLunArray) ToDiskPoolIscsiTargetLunArrayOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunArrayOutput

type DiskPoolIscsiTargetLunArrayInput

type DiskPoolIscsiTargetLunArrayInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetLunArrayOutput() DiskPoolIscsiTargetLunArrayOutput
	ToDiskPoolIscsiTargetLunArrayOutputWithContext(context.Context) DiskPoolIscsiTargetLunArrayOutput
}

DiskPoolIscsiTargetLunArrayInput is an input type that accepts DiskPoolIscsiTargetLunArray and DiskPoolIscsiTargetLunArrayOutput values. You can construct a concrete instance of `DiskPoolIscsiTargetLunArrayInput` via:

DiskPoolIscsiTargetLunArray{ DiskPoolIscsiTargetLunArgs{...} }

type DiskPoolIscsiTargetLunArrayOutput

type DiskPoolIscsiTargetLunArrayOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetLunArrayOutput) ElementType

func (DiskPoolIscsiTargetLunArrayOutput) Index

func (DiskPoolIscsiTargetLunArrayOutput) ToDiskPoolIscsiTargetLunArrayOutput

func (o DiskPoolIscsiTargetLunArrayOutput) ToDiskPoolIscsiTargetLunArrayOutput() DiskPoolIscsiTargetLunArrayOutput

func (DiskPoolIscsiTargetLunArrayOutput) ToDiskPoolIscsiTargetLunArrayOutputWithContext

func (o DiskPoolIscsiTargetLunArrayOutput) ToDiskPoolIscsiTargetLunArrayOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunArrayOutput

type DiskPoolIscsiTargetLunInput

type DiskPoolIscsiTargetLunInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetLunOutput() DiskPoolIscsiTargetLunOutput
	ToDiskPoolIscsiTargetLunOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunOutput
}

type DiskPoolIscsiTargetLunMap

type DiskPoolIscsiTargetLunMap map[string]DiskPoolIscsiTargetLunInput

func (DiskPoolIscsiTargetLunMap) ElementType

func (DiskPoolIscsiTargetLunMap) ElementType() reflect.Type

func (DiskPoolIscsiTargetLunMap) ToDiskPoolIscsiTargetLunMapOutput

func (i DiskPoolIscsiTargetLunMap) ToDiskPoolIscsiTargetLunMapOutput() DiskPoolIscsiTargetLunMapOutput

func (DiskPoolIscsiTargetLunMap) ToDiskPoolIscsiTargetLunMapOutputWithContext

func (i DiskPoolIscsiTargetLunMap) ToDiskPoolIscsiTargetLunMapOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunMapOutput

type DiskPoolIscsiTargetLunMapInput

type DiskPoolIscsiTargetLunMapInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetLunMapOutput() DiskPoolIscsiTargetLunMapOutput
	ToDiskPoolIscsiTargetLunMapOutputWithContext(context.Context) DiskPoolIscsiTargetLunMapOutput
}

DiskPoolIscsiTargetLunMapInput is an input type that accepts DiskPoolIscsiTargetLunMap and DiskPoolIscsiTargetLunMapOutput values. You can construct a concrete instance of `DiskPoolIscsiTargetLunMapInput` via:

DiskPoolIscsiTargetLunMap{ "key": DiskPoolIscsiTargetLunArgs{...} }

type DiskPoolIscsiTargetLunMapOutput

type DiskPoolIscsiTargetLunMapOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetLunMapOutput) ElementType

func (DiskPoolIscsiTargetLunMapOutput) MapIndex

func (DiskPoolIscsiTargetLunMapOutput) ToDiskPoolIscsiTargetLunMapOutput

func (o DiskPoolIscsiTargetLunMapOutput) ToDiskPoolIscsiTargetLunMapOutput() DiskPoolIscsiTargetLunMapOutput

func (DiskPoolIscsiTargetLunMapOutput) ToDiskPoolIscsiTargetLunMapOutputWithContext

func (o DiskPoolIscsiTargetLunMapOutput) ToDiskPoolIscsiTargetLunMapOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunMapOutput

type DiskPoolIscsiTargetLunOutput

type DiskPoolIscsiTargetLunOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetLunOutput) DiskPoolManagedDiskAttachmentId added in v5.5.0

func (o DiskPoolIscsiTargetLunOutput) DiskPoolManagedDiskAttachmentId() pulumi.StringOutput

The ID of the `compute.DiskPoolManagedDiskAttachment`. Changing this forces a new iSCSI Target LUN to be created.

func (DiskPoolIscsiTargetLunOutput) ElementType

func (DiskPoolIscsiTargetLunOutput) IscsiTargetId added in v5.5.0

The ID of the iSCSI Target. Changing this forces a new iSCSI Target LUN to be created.

func (DiskPoolIscsiTargetLunOutput) Lun added in v5.5.0

The Logical Unit Number of the iSCSI Target LUN.

func (DiskPoolIscsiTargetLunOutput) Name added in v5.5.0

User defined name for iSCSI LUN. Supported characters include uppercase letters, lowercase letters, numbers, periods, underscores or hyphens. Name should end with an alphanumeric character. The length must be between `1` and `90`. Changing this forces a new iSCSI Target LUN to be created.

func (DiskPoolIscsiTargetLunOutput) ToDiskPoolIscsiTargetLunOutput

func (o DiskPoolIscsiTargetLunOutput) ToDiskPoolIscsiTargetLunOutput() DiskPoolIscsiTargetLunOutput

func (DiskPoolIscsiTargetLunOutput) ToDiskPoolIscsiTargetLunOutputWithContext

func (o DiskPoolIscsiTargetLunOutput) ToDiskPoolIscsiTargetLunOutputWithContext(ctx context.Context) DiskPoolIscsiTargetLunOutput

type DiskPoolIscsiTargetLunState

type DiskPoolIscsiTargetLunState struct {
	// The ID of the `compute.DiskPoolManagedDiskAttachment`. Changing this forces a new iSCSI Target LUN to be created.
	DiskPoolManagedDiskAttachmentId pulumi.StringPtrInput
	// The ID of the iSCSI Target. Changing this forces a new iSCSI Target LUN to be created.
	IscsiTargetId pulumi.StringPtrInput
	// The Logical Unit Number of the iSCSI Target LUN.
	Lun pulumi.IntPtrInput
	// User defined name for iSCSI LUN. Supported characters include uppercase letters, lowercase letters, numbers, periods, underscores or hyphens. Name should end with an alphanumeric character. The length must be between `1` and `90`. Changing this forces a new iSCSI Target LUN to be created.
	Name pulumi.StringPtrInput
}

func (DiskPoolIscsiTargetLunState) ElementType

type DiskPoolIscsiTargetMap

type DiskPoolIscsiTargetMap map[string]DiskPoolIscsiTargetInput

func (DiskPoolIscsiTargetMap) ElementType

func (DiskPoolIscsiTargetMap) ElementType() reflect.Type

func (DiskPoolIscsiTargetMap) ToDiskPoolIscsiTargetMapOutput

func (i DiskPoolIscsiTargetMap) ToDiskPoolIscsiTargetMapOutput() DiskPoolIscsiTargetMapOutput

func (DiskPoolIscsiTargetMap) ToDiskPoolIscsiTargetMapOutputWithContext

func (i DiskPoolIscsiTargetMap) ToDiskPoolIscsiTargetMapOutputWithContext(ctx context.Context) DiskPoolIscsiTargetMapOutput

type DiskPoolIscsiTargetMapInput

type DiskPoolIscsiTargetMapInput interface {
	pulumi.Input

	ToDiskPoolIscsiTargetMapOutput() DiskPoolIscsiTargetMapOutput
	ToDiskPoolIscsiTargetMapOutputWithContext(context.Context) DiskPoolIscsiTargetMapOutput
}

DiskPoolIscsiTargetMapInput is an input type that accepts DiskPoolIscsiTargetMap and DiskPoolIscsiTargetMapOutput values. You can construct a concrete instance of `DiskPoolIscsiTargetMapInput` via:

DiskPoolIscsiTargetMap{ "key": DiskPoolIscsiTargetArgs{...} }

type DiskPoolIscsiTargetMapOutput

type DiskPoolIscsiTargetMapOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetMapOutput) ElementType

func (DiskPoolIscsiTargetMapOutput) MapIndex

func (DiskPoolIscsiTargetMapOutput) ToDiskPoolIscsiTargetMapOutput

func (o DiskPoolIscsiTargetMapOutput) ToDiskPoolIscsiTargetMapOutput() DiskPoolIscsiTargetMapOutput

func (DiskPoolIscsiTargetMapOutput) ToDiskPoolIscsiTargetMapOutputWithContext

func (o DiskPoolIscsiTargetMapOutput) ToDiskPoolIscsiTargetMapOutputWithContext(ctx context.Context) DiskPoolIscsiTargetMapOutput

type DiskPoolIscsiTargetOutput

type DiskPoolIscsiTargetOutput struct{ *pulumi.OutputState }

func (DiskPoolIscsiTargetOutput) AclMode added in v5.5.0

Mode for Target connectivity. The only supported value is `Dynamic` for now. Changing this forces a new iSCSI Target to be created.

func (DiskPoolIscsiTargetOutput) DisksPoolId added in v5.5.0

The ID of the Disk Pool. Changing this forces a new iSCSI Target to be created.

func (DiskPoolIscsiTargetOutput) ElementType

func (DiskPoolIscsiTargetOutput) ElementType() reflect.Type

func (DiskPoolIscsiTargetOutput) Endpoints added in v5.5.0

List of private IPv4 addresses to connect to the iSCSI Target.

func (DiskPoolIscsiTargetOutput) Name added in v5.5.0

The name of the iSCSI Target. The name can only contain lowercase letters, numbers, periods, or hyphens, and length should between [5-223]. Changing this forces a new iSCSI Target to be created.

func (DiskPoolIscsiTargetOutput) Port added in v5.5.0

The port used by iSCSI Target portal group.

func (DiskPoolIscsiTargetOutput) TargetIqn added in v5.5.0

ISCSI Target IQN (iSCSI Qualified Name); example: `iqn.2005-03.org.iscsi:server`. IQN should follow the format `iqn.yyyy-mm.<abc>.<pqr>[:xyz]`; supported characters include alphanumeric characters in lower case, hyphen, dot and colon, and the length should between `4` and `223`. Changing this forces a new iSCSI Target to be created.

func (DiskPoolIscsiTargetOutput) ToDiskPoolIscsiTargetOutput

func (o DiskPoolIscsiTargetOutput) ToDiskPoolIscsiTargetOutput() DiskPoolIscsiTargetOutput

func (DiskPoolIscsiTargetOutput) ToDiskPoolIscsiTargetOutputWithContext

func (o DiskPoolIscsiTargetOutput) ToDiskPoolIscsiTargetOutputWithContext(ctx context.Context) DiskPoolIscsiTargetOutput

type DiskPoolIscsiTargetState

type DiskPoolIscsiTargetState struct {
	// Mode for Target connectivity. The only supported value is `Dynamic` for now. Changing this forces a new iSCSI Target to be created.
	AclMode pulumi.StringPtrInput
	// The ID of the Disk Pool. Changing this forces a new iSCSI Target to be created.
	DisksPoolId pulumi.StringPtrInput
	// List of private IPv4 addresses to connect to the iSCSI Target.
	Endpoints pulumi.StringArrayInput
	// The name of the iSCSI Target. The name can only contain lowercase letters, numbers, periods, or hyphens, and length should between [5-223]. Changing this forces a new iSCSI Target to be created.
	Name pulumi.StringPtrInput
	// The port used by iSCSI Target portal group.
	Port pulumi.IntPtrInput
	// ISCSI Target IQN (iSCSI Qualified Name); example: `iqn.2005-03.org.iscsi:server`. IQN should follow the format `iqn.yyyy-mm.<abc>.<pqr>[:xyz]`; supported characters include alphanumeric characters in lower case, hyphen, dot and colon, and the length should between `4` and `223`. Changing this forces a new iSCSI Target to be created.
	TargetIqn pulumi.StringPtrInput
}

func (DiskPoolIscsiTargetState) ElementType

func (DiskPoolIscsiTargetState) ElementType() reflect.Type

type DiskPoolManagedDiskAttachment

type DiskPoolManagedDiskAttachment struct {
	pulumi.CustomResourceState

	// The ID of the Disk Pool. Changing this forces a new Disk Pool Managed Disk Attachment to be created.
	DiskPoolId pulumi.StringOutput `pulumi:"diskPoolId"`
	// The ID of the Managed Disk. Changing this forces a new Disks Pool Managed Disk Attachment to be created.
	ManagedDiskId pulumi.StringOutput `pulumi:"managedDiskId"`
}

Manages a Disk Pool Managed Disk Attachment.

!> **Note:** Azure are officially [halting](https://learn.microsoft.com/en-us/azure/azure-vmware/attach-disk-pools-to-azure-vmware-solution-hosts?tabs=azure-cli) the preview of Azure Disk Pools, and it **will not** be made generally available. New customers will not be able to register the Microsoft.StoragePool resource provider on their subscription and deploy new Disk Pools. Existing subscriptions registered with Microsoft.StoragePool may continue to deploy and manage disk pools for the time being.

> **Note:** Must be either a premium SSD, standard SSD, or an ultra disk in the same region and availability zone as the disk pool.

> **Note:** Ultra disks must have a disk sector size of 512 bytes.

> **Note:** Must be a shared disk, with a maxShares value of two or greater.

> **Note:** You must provide the StoragePool resource provider RBAC permissions to the disks that will be added to the disk pool.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.0.0/24"),
			},
			Delegations: network.SubnetDelegationArray{
				&network.SubnetDelegationArgs{
					Name: pulumi.String("diskspool"),
					ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
						Actions: pulumi.StringArray{
							pulumi.String("Microsoft.Network/virtualNetworks/read"),
						},
						Name: pulumi.String("Microsoft.StoragePool/diskPools"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleDiskPool, err := compute.NewDiskPool(ctx, "example", &compute.DiskPoolArgs{
			Name:              pulumi.String("example-pool"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			SubnetId:          exampleSubnet.ID(),
			Zones: pulumi.StringArray{
				pulumi.String("1"),
			},
			SkuName: pulumi.String("Basic_B1"),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("example-disk"),
			ResourceGroupName:  exampleResourceGroup.Name,
			Location:           exampleResourceGroup.Location,
			CreateOption:       pulumi.String("Empty"),
			StorageAccountType: pulumi.String("Premium_LRS"),
			DiskSizeGb:         pulumi.Int(4),
			MaxShares:          pulumi.Int(2),
			Zone:               pulumi.String("1"),
		})
		if err != nil {
			return err
		}
		example, err := azuread.LookupServicePrincipal(ctx, &azuread.LookupServicePrincipalArgs{
			DisplayName: pulumi.StringRef("StoragePool Resource Provider"),
		}, nil)
		if err != nil {
			return err
		}
		roles := []string{
			"Disk Pool Operator",
			"Virtual Machine Contributor",
		}
		var exampleAssignment []*authorization.Assignment
		for index := 0; index < len(roles); index++ {
			key0 := index
			val0 := index
			__res, err := authorization.NewAssignment(ctx, fmt.Sprintf("example-%v", key0), &authorization.AssignmentArgs{
				PrincipalId:        pulumi.String(example.Id),
				RoleDefinitionName: roles[val0],
				Scope:              exampleManagedDisk.ID(),
			})
			if err != nil {
				return err
			}
			exampleAssignment = append(exampleAssignment, __res)
		}
		_, err = compute.NewDiskPoolManagedDiskAttachment(ctx, "example", &compute.DiskPoolManagedDiskAttachmentArgs{
			DiskPoolId:    exampleDiskPool.ID(),
			ManagedDiskId: exampleManagedDisk.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Disks Pool Managed Disk Attachments can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/diskPoolManagedDiskAttachment:DiskPoolManagedDiskAttachment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.StoragePool/diskPools/storagePool1/managedDisks|/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Compute/disks/disk1 ```

func GetDiskPoolManagedDiskAttachment

func GetDiskPoolManagedDiskAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskPoolManagedDiskAttachmentState, opts ...pulumi.ResourceOption) (*DiskPoolManagedDiskAttachment, error)

GetDiskPoolManagedDiskAttachment gets an existing DiskPoolManagedDiskAttachment 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 NewDiskPoolManagedDiskAttachment

func NewDiskPoolManagedDiskAttachment(ctx *pulumi.Context,
	name string, args *DiskPoolManagedDiskAttachmentArgs, opts ...pulumi.ResourceOption) (*DiskPoolManagedDiskAttachment, error)

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

func (*DiskPoolManagedDiskAttachment) ElementType

func (*DiskPoolManagedDiskAttachment) ToDiskPoolManagedDiskAttachmentOutput

func (i *DiskPoolManagedDiskAttachment) ToDiskPoolManagedDiskAttachmentOutput() DiskPoolManagedDiskAttachmentOutput

func (*DiskPoolManagedDiskAttachment) ToDiskPoolManagedDiskAttachmentOutputWithContext

func (i *DiskPoolManagedDiskAttachment) ToDiskPoolManagedDiskAttachmentOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentOutput

type DiskPoolManagedDiskAttachmentArgs

type DiskPoolManagedDiskAttachmentArgs struct {
	// The ID of the Disk Pool. Changing this forces a new Disk Pool Managed Disk Attachment to be created.
	DiskPoolId pulumi.StringInput
	// The ID of the Managed Disk. Changing this forces a new Disks Pool Managed Disk Attachment to be created.
	ManagedDiskId pulumi.StringInput
}

The set of arguments for constructing a DiskPoolManagedDiskAttachment resource.

func (DiskPoolManagedDiskAttachmentArgs) ElementType

type DiskPoolManagedDiskAttachmentArray

type DiskPoolManagedDiskAttachmentArray []DiskPoolManagedDiskAttachmentInput

func (DiskPoolManagedDiskAttachmentArray) ElementType

func (DiskPoolManagedDiskAttachmentArray) ToDiskPoolManagedDiskAttachmentArrayOutput

func (i DiskPoolManagedDiskAttachmentArray) ToDiskPoolManagedDiskAttachmentArrayOutput() DiskPoolManagedDiskAttachmentArrayOutput

func (DiskPoolManagedDiskAttachmentArray) ToDiskPoolManagedDiskAttachmentArrayOutputWithContext

func (i DiskPoolManagedDiskAttachmentArray) ToDiskPoolManagedDiskAttachmentArrayOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentArrayOutput

type DiskPoolManagedDiskAttachmentArrayInput

type DiskPoolManagedDiskAttachmentArrayInput interface {
	pulumi.Input

	ToDiskPoolManagedDiskAttachmentArrayOutput() DiskPoolManagedDiskAttachmentArrayOutput
	ToDiskPoolManagedDiskAttachmentArrayOutputWithContext(context.Context) DiskPoolManagedDiskAttachmentArrayOutput
}

DiskPoolManagedDiskAttachmentArrayInput is an input type that accepts DiskPoolManagedDiskAttachmentArray and DiskPoolManagedDiskAttachmentArrayOutput values. You can construct a concrete instance of `DiskPoolManagedDiskAttachmentArrayInput` via:

DiskPoolManagedDiskAttachmentArray{ DiskPoolManagedDiskAttachmentArgs{...} }

type DiskPoolManagedDiskAttachmentArrayOutput

type DiskPoolManagedDiskAttachmentArrayOutput struct{ *pulumi.OutputState }

func (DiskPoolManagedDiskAttachmentArrayOutput) ElementType

func (DiskPoolManagedDiskAttachmentArrayOutput) Index

func (DiskPoolManagedDiskAttachmentArrayOutput) ToDiskPoolManagedDiskAttachmentArrayOutput

func (o DiskPoolManagedDiskAttachmentArrayOutput) ToDiskPoolManagedDiskAttachmentArrayOutput() DiskPoolManagedDiskAttachmentArrayOutput

func (DiskPoolManagedDiskAttachmentArrayOutput) ToDiskPoolManagedDiskAttachmentArrayOutputWithContext

func (o DiskPoolManagedDiskAttachmentArrayOutput) ToDiskPoolManagedDiskAttachmentArrayOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentArrayOutput

type DiskPoolManagedDiskAttachmentInput

type DiskPoolManagedDiskAttachmentInput interface {
	pulumi.Input

	ToDiskPoolManagedDiskAttachmentOutput() DiskPoolManagedDiskAttachmentOutput
	ToDiskPoolManagedDiskAttachmentOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentOutput
}

type DiskPoolManagedDiskAttachmentMap

type DiskPoolManagedDiskAttachmentMap map[string]DiskPoolManagedDiskAttachmentInput

func (DiskPoolManagedDiskAttachmentMap) ElementType

func (DiskPoolManagedDiskAttachmentMap) ToDiskPoolManagedDiskAttachmentMapOutput

func (i DiskPoolManagedDiskAttachmentMap) ToDiskPoolManagedDiskAttachmentMapOutput() DiskPoolManagedDiskAttachmentMapOutput

func (DiskPoolManagedDiskAttachmentMap) ToDiskPoolManagedDiskAttachmentMapOutputWithContext

func (i DiskPoolManagedDiskAttachmentMap) ToDiskPoolManagedDiskAttachmentMapOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentMapOutput

type DiskPoolManagedDiskAttachmentMapInput

type DiskPoolManagedDiskAttachmentMapInput interface {
	pulumi.Input

	ToDiskPoolManagedDiskAttachmentMapOutput() DiskPoolManagedDiskAttachmentMapOutput
	ToDiskPoolManagedDiskAttachmentMapOutputWithContext(context.Context) DiskPoolManagedDiskAttachmentMapOutput
}

DiskPoolManagedDiskAttachmentMapInput is an input type that accepts DiskPoolManagedDiskAttachmentMap and DiskPoolManagedDiskAttachmentMapOutput values. You can construct a concrete instance of `DiskPoolManagedDiskAttachmentMapInput` via:

DiskPoolManagedDiskAttachmentMap{ "key": DiskPoolManagedDiskAttachmentArgs{...} }

type DiskPoolManagedDiskAttachmentMapOutput

type DiskPoolManagedDiskAttachmentMapOutput struct{ *pulumi.OutputState }

func (DiskPoolManagedDiskAttachmentMapOutput) ElementType

func (DiskPoolManagedDiskAttachmentMapOutput) MapIndex

func (DiskPoolManagedDiskAttachmentMapOutput) ToDiskPoolManagedDiskAttachmentMapOutput

func (o DiskPoolManagedDiskAttachmentMapOutput) ToDiskPoolManagedDiskAttachmentMapOutput() DiskPoolManagedDiskAttachmentMapOutput

func (DiskPoolManagedDiskAttachmentMapOutput) ToDiskPoolManagedDiskAttachmentMapOutputWithContext

func (o DiskPoolManagedDiskAttachmentMapOutput) ToDiskPoolManagedDiskAttachmentMapOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentMapOutput

type DiskPoolManagedDiskAttachmentOutput

type DiskPoolManagedDiskAttachmentOutput struct{ *pulumi.OutputState }

func (DiskPoolManagedDiskAttachmentOutput) DiskPoolId added in v5.5.0

The ID of the Disk Pool. Changing this forces a new Disk Pool Managed Disk Attachment to be created.

func (DiskPoolManagedDiskAttachmentOutput) ElementType

func (DiskPoolManagedDiskAttachmentOutput) ManagedDiskId added in v5.5.0

The ID of the Managed Disk. Changing this forces a new Disks Pool Managed Disk Attachment to be created.

func (DiskPoolManagedDiskAttachmentOutput) ToDiskPoolManagedDiskAttachmentOutput

func (o DiskPoolManagedDiskAttachmentOutput) ToDiskPoolManagedDiskAttachmentOutput() DiskPoolManagedDiskAttachmentOutput

func (DiskPoolManagedDiskAttachmentOutput) ToDiskPoolManagedDiskAttachmentOutputWithContext

func (o DiskPoolManagedDiskAttachmentOutput) ToDiskPoolManagedDiskAttachmentOutputWithContext(ctx context.Context) DiskPoolManagedDiskAttachmentOutput

type DiskPoolManagedDiskAttachmentState

type DiskPoolManagedDiskAttachmentState struct {
	// The ID of the Disk Pool. Changing this forces a new Disk Pool Managed Disk Attachment to be created.
	DiskPoolId pulumi.StringPtrInput
	// The ID of the Managed Disk. Changing this forces a new Disks Pool Managed Disk Attachment to be created.
	ManagedDiskId pulumi.StringPtrInput
}

func (DiskPoolManagedDiskAttachmentState) ElementType

type DiskPoolMap

type DiskPoolMap map[string]DiskPoolInput

func (DiskPoolMap) ElementType

func (DiskPoolMap) ElementType() reflect.Type

func (DiskPoolMap) ToDiskPoolMapOutput

func (i DiskPoolMap) ToDiskPoolMapOutput() DiskPoolMapOutput

func (DiskPoolMap) ToDiskPoolMapOutputWithContext

func (i DiskPoolMap) ToDiskPoolMapOutputWithContext(ctx context.Context) DiskPoolMapOutput

type DiskPoolMapInput

type DiskPoolMapInput interface {
	pulumi.Input

	ToDiskPoolMapOutput() DiskPoolMapOutput
	ToDiskPoolMapOutputWithContext(context.Context) DiskPoolMapOutput
}

DiskPoolMapInput is an input type that accepts DiskPoolMap and DiskPoolMapOutput values. You can construct a concrete instance of `DiskPoolMapInput` via:

DiskPoolMap{ "key": DiskPoolArgs{...} }

type DiskPoolMapOutput

type DiskPoolMapOutput struct{ *pulumi.OutputState }

func (DiskPoolMapOutput) ElementType

func (DiskPoolMapOutput) ElementType() reflect.Type

func (DiskPoolMapOutput) MapIndex

func (DiskPoolMapOutput) ToDiskPoolMapOutput

func (o DiskPoolMapOutput) ToDiskPoolMapOutput() DiskPoolMapOutput

func (DiskPoolMapOutput) ToDiskPoolMapOutputWithContext

func (o DiskPoolMapOutput) ToDiskPoolMapOutputWithContext(ctx context.Context) DiskPoolMapOutput

type DiskPoolOutput

type DiskPoolOutput struct{ *pulumi.OutputState }

func (DiskPoolOutput) ElementType

func (DiskPoolOutput) ElementType() reflect.Type

func (DiskPoolOutput) Location added in v5.5.0

func (o DiskPoolOutput) Location() pulumi.StringOutput

The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.

func (DiskPoolOutput) Name added in v5.5.0

The name of the Disk Pool. Changing this forces a new Disk Pool to be created.

func (DiskPoolOutput) ResourceGroupName added in v5.5.0

func (o DiskPoolOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.

func (DiskPoolOutput) SkuName added in v5.5.0

func (o DiskPoolOutput) SkuName() pulumi.StringOutput

The SKU of the Disk Pool. Possible values are `Basic_B1`, `Standard_S1` and `Premium_P1`. Changing this forces a new Disk Pool to be created.

func (DiskPoolOutput) SubnetId added in v5.5.0

func (o DiskPoolOutput) SubnetId() pulumi.StringOutput

The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.

func (DiskPoolOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to the Disk Pool.

func (DiskPoolOutput) ToDiskPoolOutput

func (o DiskPoolOutput) ToDiskPoolOutput() DiskPoolOutput

func (DiskPoolOutput) ToDiskPoolOutputWithContext

func (o DiskPoolOutput) ToDiskPoolOutputWithContext(ctx context.Context) DiskPoolOutput

func (DiskPoolOutput) Zones added in v5.5.0

Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.

type DiskPoolState

type DiskPoolState struct {
	// The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	Location pulumi.StringPtrInput
	// The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The SKU of the Disk Pool. Possible values are `Basic_B1`, `Standard_S1` and `Premium_P1`. Changing this forces a new Disk Pool to be created.
	SkuName pulumi.StringPtrInput
	// The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
	SubnetId pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Disk Pool.
	Tags pulumi.StringMapInput
	// Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
	Zones pulumi.StringArrayInput
}

func (DiskPoolState) ElementType

func (DiskPoolState) ElementType() reflect.Type

type Extension

type Extension struct {
	pulumi.CustomResourceState

	// Specifies if the platform deploys the latest minor version update to the `typeHandlerVersion` specified.
	AutoUpgradeMinorVersion pulumi.BoolPtrOutput `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrOutput `pulumi:"automaticUpgradeEnabled"`
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrOutput `pulumi:"failureSuppressionEnabled"`
	// The name of the virtual machine extension peering. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `protectedSettings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	ProtectedSettings pulumi.StringPtrOutput `pulumi:"protectedSettings"`
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault ExtensionProtectedSettingsFromKeyVaultPtrOutput `pulumi:"protectedSettingsFromKeyVault"`
	// Specifies the collection of extension names after which this extension needs to be provisioned.
	ProvisionAfterExtensions pulumi.StringArrayOutput `pulumi:"provisionAfterExtensions"`
	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	Publisher pulumi.StringOutput `pulumi:"publisher"`
	// The settings passed to the extension, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `settings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	Settings pulumi.StringPtrOutput `pulumi:"settings"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The type of extension, available types for a publisher can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Extensions can be found using the Azure CLI, via:
	Type pulumi.StringOutput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringOutput `pulumi:"typeHandlerVersion"`
	// The ID of the Virtual Machine. Changing this forces a new resource to be created
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
}

Manages a Virtual Machine Extension to provide post deployment configuration and run automated tasks.

> **NOTE:** Custom Script Extensions for Linux & Windows require that the `commandToExecute` returns a `0` exit code to be classified as successfully deployed. You can achieve this by appending `exit 0` to the end of your `commandToExecute`.

> **NOTE:** Custom Script Extensions require that the Azure Virtual Machine Guest Agent is running on the Virtual Machine.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-std/sdk/go/std"
"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
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("acctvn"),
			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("acctsub"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleNetworkInterface, err := network.NewNetworkInterface(ctx, "example", &network.NetworkInterfaceArgs{
			Name:              pulumi.String("acctni"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("testconfiguration1"),
					SubnetId:                   exampleSubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		invokeFile, err := std.File(ctx, &std.FileArgs{
			Input: "~/.ssh/id_rsa.pub",
		}, nil)
		if err != nil {
			return err
		}
		exampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, "example", &compute.LinuxVirtualMachineArgs{
			Name:              pulumi.String("example-machine"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Size:              pulumi.String("Standard_F2"),
			AdminUsername:     pulumi.String("adminuser"),
			NetworkInterfaceIds: pulumi.StringArray{
				exampleNetworkInterface.ID(),
			},
			AdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{
				&compute.LinuxVirtualMachineAdminSshKeyArgs{
					Username:  pulumi.String("adminuser"),
					PublicKey: invokeFile.Result,
				},
			},
			OsDisk: &compute.LinuxVirtualMachineOsDiskArgs{
				Caching:            pulumi.String("ReadWrite"),
				StorageAccountType: pulumi.String("Standard_LRS"),
			},
			SourceImageReference: &compute.LinuxVirtualMachineSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewExtension(ctx, "example", &compute.ExtensionArgs{
			Name:               pulumi.String("hostname"),
			VirtualMachineId:   exampleLinuxVirtualMachine.ID(),
			Publisher:          pulumi.String("Microsoft.Azure.Extensions"),
			Type:               pulumi.String("CustomScript"),
			TypeHandlerVersion: pulumi.String("2.0"),
			Settings:           pulumi.String(" {\n  \"commandToExecute\": \"hostname && uptime\"\n }\n"),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Virtual Machine Extensions can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/extension:Extension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/myVM/extensions/extensionName ```

func GetExtension

func GetExtension(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ExtensionState, opts ...pulumi.ResourceOption) (*Extension, error)

GetExtension gets an existing Extension 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 NewExtension

func NewExtension(ctx *pulumi.Context,
	name string, args *ExtensionArgs, opts ...pulumi.ResourceOption) (*Extension, error)

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

func (*Extension) ElementType

func (*Extension) ElementType() reflect.Type

func (*Extension) ToExtensionOutput

func (i *Extension) ToExtensionOutput() ExtensionOutput

func (*Extension) ToExtensionOutputWithContext

func (i *Extension) ToExtensionOutputWithContext(ctx context.Context) ExtensionOutput

type ExtensionArgs

type ExtensionArgs struct {
	// Specifies if the platform deploys the latest minor version update to the `typeHandlerVersion` specified.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrInput
	// The name of the virtual machine extension peering. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `protectedSettings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	ProtectedSettings pulumi.StringPtrInput
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault ExtensionProtectedSettingsFromKeyVaultPtrInput
	// Specifies the collection of extension names after which this extension needs to be provisioned.
	ProvisionAfterExtensions pulumi.StringArrayInput
	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput
	// The settings passed to the extension, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `settings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	Settings pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// The type of extension, available types for a publisher can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Extensions can be found using the Azure CLI, via:
	Type pulumi.StringInput
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringInput
	// The ID of the Virtual Machine. Changing this forces a new resource to be created
	VirtualMachineId pulumi.StringInput
}

The set of arguments for constructing a Extension resource.

func (ExtensionArgs) ElementType

func (ExtensionArgs) ElementType() reflect.Type

type ExtensionArray

type ExtensionArray []ExtensionInput

func (ExtensionArray) ElementType

func (ExtensionArray) ElementType() reflect.Type

func (ExtensionArray) ToExtensionArrayOutput

func (i ExtensionArray) ToExtensionArrayOutput() ExtensionArrayOutput

func (ExtensionArray) ToExtensionArrayOutputWithContext

func (i ExtensionArray) ToExtensionArrayOutputWithContext(ctx context.Context) ExtensionArrayOutput

type ExtensionArrayInput

type ExtensionArrayInput interface {
	pulumi.Input

	ToExtensionArrayOutput() ExtensionArrayOutput
	ToExtensionArrayOutputWithContext(context.Context) ExtensionArrayOutput
}

ExtensionArrayInput is an input type that accepts ExtensionArray and ExtensionArrayOutput values. You can construct a concrete instance of `ExtensionArrayInput` via:

ExtensionArray{ ExtensionArgs{...} }

type ExtensionArrayOutput

type ExtensionArrayOutput struct{ *pulumi.OutputState }

func (ExtensionArrayOutput) ElementType

func (ExtensionArrayOutput) ElementType() reflect.Type

func (ExtensionArrayOutput) Index

func (ExtensionArrayOutput) ToExtensionArrayOutput

func (o ExtensionArrayOutput) ToExtensionArrayOutput() ExtensionArrayOutput

func (ExtensionArrayOutput) ToExtensionArrayOutputWithContext

func (o ExtensionArrayOutput) ToExtensionArrayOutputWithContext(ctx context.Context) ExtensionArrayOutput

type ExtensionInput

type ExtensionInput interface {
	pulumi.Input

	ToExtensionOutput() ExtensionOutput
	ToExtensionOutputWithContext(ctx context.Context) ExtensionOutput
}

type ExtensionMap

type ExtensionMap map[string]ExtensionInput

func (ExtensionMap) ElementType

func (ExtensionMap) ElementType() reflect.Type

func (ExtensionMap) ToExtensionMapOutput

func (i ExtensionMap) ToExtensionMapOutput() ExtensionMapOutput

func (ExtensionMap) ToExtensionMapOutputWithContext

func (i ExtensionMap) ToExtensionMapOutputWithContext(ctx context.Context) ExtensionMapOutput

type ExtensionMapInput

type ExtensionMapInput interface {
	pulumi.Input

	ToExtensionMapOutput() ExtensionMapOutput
	ToExtensionMapOutputWithContext(context.Context) ExtensionMapOutput
}

ExtensionMapInput is an input type that accepts ExtensionMap and ExtensionMapOutput values. You can construct a concrete instance of `ExtensionMapInput` via:

ExtensionMap{ "key": ExtensionArgs{...} }

type ExtensionMapOutput

type ExtensionMapOutput struct{ *pulumi.OutputState }

func (ExtensionMapOutput) ElementType

func (ExtensionMapOutput) ElementType() reflect.Type

func (ExtensionMapOutput) MapIndex

func (ExtensionMapOutput) ToExtensionMapOutput

func (o ExtensionMapOutput) ToExtensionMapOutput() ExtensionMapOutput

func (ExtensionMapOutput) ToExtensionMapOutputWithContext

func (o ExtensionMapOutput) ToExtensionMapOutputWithContext(ctx context.Context) ExtensionMapOutput

type ExtensionOutput

type ExtensionOutput struct{ *pulumi.OutputState }

func (ExtensionOutput) AutoUpgradeMinorVersion added in v5.5.0

func (o ExtensionOutput) AutoUpgradeMinorVersion() pulumi.BoolPtrOutput

Specifies if the platform deploys the latest minor version update to the `typeHandlerVersion` specified.

func (ExtensionOutput) AutomaticUpgradeEnabled added in v5.5.0

func (o ExtensionOutput) AutomaticUpgradeEnabled() pulumi.BoolPtrOutput

Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?

func (ExtensionOutput) ElementType

func (ExtensionOutput) ElementType() reflect.Type

func (ExtensionOutput) FailureSuppressionEnabled added in v5.21.0

func (o ExtensionOutput) FailureSuppressionEnabled() pulumi.BoolPtrOutput

Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.

> **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.

func (ExtensionOutput) Name added in v5.5.0

The name of the virtual machine extension peering. Changing this forces a new resource to be created.

func (ExtensionOutput) ProtectedSettings added in v5.5.0

func (o ExtensionOutput) ProtectedSettings() pulumi.StringPtrOutput

The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.

> **Please Note:** Certain VM Extensions require that the keys in the `protectedSettings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)

func (ExtensionOutput) ProtectedSettingsFromKeyVault added in v5.24.0

func (o ExtensionOutput) ProtectedSettingsFromKeyVault() ExtensionProtectedSettingsFromKeyVaultPtrOutput

A `protectedSettingsFromKeyVault` block as defined below.

> **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`

func (ExtensionOutput) ProvisionAfterExtensions added in v5.52.0

func (o ExtensionOutput) ProvisionAfterExtensions() pulumi.StringArrayOutput

Specifies the collection of extension names after which this extension needs to be provisioned.

func (ExtensionOutput) Publisher added in v5.5.0

func (o ExtensionOutput) Publisher() pulumi.StringOutput

The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.

func (ExtensionOutput) Settings added in v5.5.0

func (o ExtensionOutput) Settings() pulumi.StringPtrOutput

The settings passed to the extension, these are specified as a JSON object in a string.

> **Please Note:** Certain VM Extensions require that the keys in the `settings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)

func (ExtensionOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (ExtensionOutput) ToExtensionOutput

func (o ExtensionOutput) ToExtensionOutput() ExtensionOutput

func (ExtensionOutput) ToExtensionOutputWithContext

func (o ExtensionOutput) ToExtensionOutputWithContext(ctx context.Context) ExtensionOutput

func (ExtensionOutput) Type added in v5.5.0

The type of extension, available types for a publisher can be found using the Azure CLI.

> **Note:** The `Publisher` and `Type` of Virtual Machine Extensions can be found using the Azure CLI, via:

func (ExtensionOutput) TypeHandlerVersion added in v5.5.0

func (o ExtensionOutput) TypeHandlerVersion() pulumi.StringOutput

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

func (ExtensionOutput) VirtualMachineId added in v5.5.0

func (o ExtensionOutput) VirtualMachineId() pulumi.StringOutput

The ID of the Virtual Machine. Changing this forces a new resource to be created

type ExtensionProtectedSettingsFromKeyVault added in v5.24.0

type ExtensionProtectedSettingsFromKeyVault struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type ExtensionProtectedSettingsFromKeyVaultArgs added in v5.24.0

type ExtensionProtectedSettingsFromKeyVaultArgs struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (ExtensionProtectedSettingsFromKeyVaultArgs) ElementType added in v5.24.0

func (ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (i ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultOutput() ExtensionProtectedSettingsFromKeyVaultOutput

func (ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (i ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) ExtensionProtectedSettingsFromKeyVaultOutput

func (ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (i ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultPtrOutput() ExtensionProtectedSettingsFromKeyVaultPtrOutput

func (ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (i ExtensionProtectedSettingsFromKeyVaultArgs) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) ExtensionProtectedSettingsFromKeyVaultPtrOutput

type ExtensionProtectedSettingsFromKeyVaultInput added in v5.24.0

type ExtensionProtectedSettingsFromKeyVaultInput interface {
	pulumi.Input

	ToExtensionProtectedSettingsFromKeyVaultOutput() ExtensionProtectedSettingsFromKeyVaultOutput
	ToExtensionProtectedSettingsFromKeyVaultOutputWithContext(context.Context) ExtensionProtectedSettingsFromKeyVaultOutput
}

ExtensionProtectedSettingsFromKeyVaultInput is an input type that accepts ExtensionProtectedSettingsFromKeyVaultArgs and ExtensionProtectedSettingsFromKeyVaultOutput values. You can construct a concrete instance of `ExtensionProtectedSettingsFromKeyVaultInput` via:

ExtensionProtectedSettingsFromKeyVaultArgs{...}

type ExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

type ExtensionProtectedSettingsFromKeyVaultOutput struct{ *pulumi.OutputState }

func (ExtensionProtectedSettingsFromKeyVaultOutput) ElementType added in v5.24.0

func (ExtensionProtectedSettingsFromKeyVaultOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (ExtensionProtectedSettingsFromKeyVaultOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultOutput() ExtensionProtectedSettingsFromKeyVaultOutput

func (ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) ExtensionProtectedSettingsFromKeyVaultOutput

func (ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutput() ExtensionProtectedSettingsFromKeyVaultPtrOutput

func (ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) ExtensionProtectedSettingsFromKeyVaultPtrOutput

type ExtensionProtectedSettingsFromKeyVaultPtrInput added in v5.24.0

type ExtensionProtectedSettingsFromKeyVaultPtrInput interface {
	pulumi.Input

	ToExtensionProtectedSettingsFromKeyVaultPtrOutput() ExtensionProtectedSettingsFromKeyVaultPtrOutput
	ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(context.Context) ExtensionProtectedSettingsFromKeyVaultPtrOutput
}

ExtensionProtectedSettingsFromKeyVaultPtrInput is an input type that accepts ExtensionProtectedSettingsFromKeyVaultArgs, ExtensionProtectedSettingsFromKeyVaultPtr and ExtensionProtectedSettingsFromKeyVaultPtrOutput values. You can construct a concrete instance of `ExtensionProtectedSettingsFromKeyVaultPtrInput` via:

        ExtensionProtectedSettingsFromKeyVaultArgs{...}

or:

        nil

type ExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

type ExtensionProtectedSettingsFromKeyVaultPtrOutput struct{ *pulumi.OutputState }

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) Elem added in v5.24.0

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) ElementType added in v5.24.0

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultPtrOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutput() ExtensionProtectedSettingsFromKeyVaultPtrOutput

func (ExtensionProtectedSettingsFromKeyVaultPtrOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o ExtensionProtectedSettingsFromKeyVaultPtrOutput) ToExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) ExtensionProtectedSettingsFromKeyVaultPtrOutput

type ExtensionState

type ExtensionState struct {
	// Specifies if the platform deploys the latest minor version update to the `typeHandlerVersion` specified.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrInput
	// The name of the virtual machine extension peering. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `protectedSettings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	ProtectedSettings pulumi.StringPtrInput
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault ExtensionProtectedSettingsFromKeyVaultPtrInput
	// Specifies the collection of extension names after which this extension needs to be provisioned.
	ProvisionAfterExtensions pulumi.StringArrayInput
	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	Publisher pulumi.StringPtrInput
	// The settings passed to the extension, these are specified as a JSON object in a string.
	//
	// > **Please Note:** Certain VM Extensions require that the keys in the `settings` block are case sensitive. If you're seeing unhelpful errors, please ensure the keys are consistent with how Azure is expecting them (for instance, for the `JsonADDomainExtension` extension, the keys are expected to be in `TitleCase`.)
	Settings pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// The type of extension, available types for a publisher can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Extensions can be found using the Azure CLI, via:
	Type pulumi.StringPtrInput
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringPtrInput
	// The ID of the Virtual Machine. Changing this forces a new resource to be created
	VirtualMachineId pulumi.StringPtrInput
}

func (ExtensionState) ElementType

func (ExtensionState) ElementType() reflect.Type

type GalleryApplication added in v5.13.0

type GalleryApplication struct {
	pulumi.CustomResourceState

	// A description of the Gallery Application.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The end of life date in RFC3339 format of the Gallery Application.
	EndOfLifeDate pulumi.StringPtrOutput `pulumi:"endOfLifeDate"`
	// The End User Licence Agreement of the Gallery Application.
	Eula pulumi.StringPtrOutput `pulumi:"eula"`
	// The ID of the Shared Image Gallery. Changing this forces a new resource to be created.
	GalleryId pulumi.StringOutput `pulumi:"galleryId"`
	// The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Gallery Application. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The URI containing the Privacy Statement associated with the Gallery Application.
	PrivacyStatementUri pulumi.StringPtrOutput `pulumi:"privacyStatementUri"`
	// The URI containing the Release Notes associated with the Gallery Application.
	ReleaseNoteUri pulumi.StringPtrOutput `pulumi:"releaseNoteUri"`
	// The type of the Operating System supported for the Gallery Application. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	SupportedOsType pulumi.StringOutput `pulumi:"supportedOsType"`
	// A mapping of tags to assign to the Gallery Application.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Gallery Application.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		exampleSharedImageGallery, err := compute.NewSharedImageGallery(ctx, "example", &compute.SharedImageGalleryArgs{
			Name:              pulumi.String("examplegallery"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
		})
		if err != nil {
			return err
		}
		_, err = compute.NewGalleryApplication(ctx, "example", &compute.GalleryApplicationArgs{
			Name:            pulumi.String("example-app"),
			GalleryId:       exampleSharedImageGallery.ID(),
			Location:        example.Location,
			SupportedOsType: pulumi.String("Linux"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Gallery Applications can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/galleryApplication:GalleryApplication example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/galleries/gallery1/applications/galleryApplication1 ```

func GetGalleryApplication added in v5.13.0

func GetGalleryApplication(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GalleryApplicationState, opts ...pulumi.ResourceOption) (*GalleryApplication, error)

GetGalleryApplication gets an existing GalleryApplication 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 NewGalleryApplication added in v5.13.0

func NewGalleryApplication(ctx *pulumi.Context,
	name string, args *GalleryApplicationArgs, opts ...pulumi.ResourceOption) (*GalleryApplication, error)

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

func (*GalleryApplication) ElementType added in v5.13.0

func (*GalleryApplication) ElementType() reflect.Type

func (*GalleryApplication) ToGalleryApplicationOutput added in v5.13.0

func (i *GalleryApplication) ToGalleryApplicationOutput() GalleryApplicationOutput

func (*GalleryApplication) ToGalleryApplicationOutputWithContext added in v5.13.0

func (i *GalleryApplication) ToGalleryApplicationOutputWithContext(ctx context.Context) GalleryApplicationOutput

type GalleryApplicationArgs added in v5.13.0

type GalleryApplicationArgs struct {
	// A description of the Gallery Application.
	Description pulumi.StringPtrInput
	// The end of life date in RFC3339 format of the Gallery Application.
	EndOfLifeDate pulumi.StringPtrInput
	// The End User Licence Agreement of the Gallery Application.
	Eula pulumi.StringPtrInput
	// The ID of the Shared Image Gallery. Changing this forces a new resource to be created.
	GalleryId pulumi.StringInput
	// The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Gallery Application. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The URI containing the Privacy Statement associated with the Gallery Application.
	PrivacyStatementUri pulumi.StringPtrInput
	// The URI containing the Release Notes associated with the Gallery Application.
	ReleaseNoteUri pulumi.StringPtrInput
	// The type of the Operating System supported for the Gallery Application. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	SupportedOsType pulumi.StringInput
	// A mapping of tags to assign to the Gallery Application.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a GalleryApplication resource.

func (GalleryApplicationArgs) ElementType added in v5.13.0

func (GalleryApplicationArgs) ElementType() reflect.Type

type GalleryApplicationArray added in v5.13.0

type GalleryApplicationArray []GalleryApplicationInput

func (GalleryApplicationArray) ElementType added in v5.13.0

func (GalleryApplicationArray) ElementType() reflect.Type

func (GalleryApplicationArray) ToGalleryApplicationArrayOutput added in v5.13.0

func (i GalleryApplicationArray) ToGalleryApplicationArrayOutput() GalleryApplicationArrayOutput

func (GalleryApplicationArray) ToGalleryApplicationArrayOutputWithContext added in v5.13.0

func (i GalleryApplicationArray) ToGalleryApplicationArrayOutputWithContext(ctx context.Context) GalleryApplicationArrayOutput

type GalleryApplicationArrayInput added in v5.13.0

type GalleryApplicationArrayInput interface {
	pulumi.Input

	ToGalleryApplicationArrayOutput() GalleryApplicationArrayOutput
	ToGalleryApplicationArrayOutputWithContext(context.Context) GalleryApplicationArrayOutput
}

GalleryApplicationArrayInput is an input type that accepts GalleryApplicationArray and GalleryApplicationArrayOutput values. You can construct a concrete instance of `GalleryApplicationArrayInput` via:

GalleryApplicationArray{ GalleryApplicationArgs{...} }

type GalleryApplicationArrayOutput added in v5.13.0

type GalleryApplicationArrayOutput struct{ *pulumi.OutputState }

func (GalleryApplicationArrayOutput) ElementType added in v5.13.0

func (GalleryApplicationArrayOutput) Index added in v5.13.0

func (GalleryApplicationArrayOutput) ToGalleryApplicationArrayOutput added in v5.13.0

func (o GalleryApplicationArrayOutput) ToGalleryApplicationArrayOutput() GalleryApplicationArrayOutput

func (GalleryApplicationArrayOutput) ToGalleryApplicationArrayOutputWithContext added in v5.13.0

func (o GalleryApplicationArrayOutput) ToGalleryApplicationArrayOutputWithContext(ctx context.Context) GalleryApplicationArrayOutput

type GalleryApplicationInput added in v5.13.0

type GalleryApplicationInput interface {
	pulumi.Input

	ToGalleryApplicationOutput() GalleryApplicationOutput
	ToGalleryApplicationOutputWithContext(ctx context.Context) GalleryApplicationOutput
}

type GalleryApplicationMap added in v5.13.0

type GalleryApplicationMap map[string]GalleryApplicationInput

func (GalleryApplicationMap) ElementType added in v5.13.0

func (GalleryApplicationMap) ElementType() reflect.Type

func (GalleryApplicationMap) ToGalleryApplicationMapOutput added in v5.13.0

func (i GalleryApplicationMap) ToGalleryApplicationMapOutput() GalleryApplicationMapOutput

func (GalleryApplicationMap) ToGalleryApplicationMapOutputWithContext added in v5.13.0

func (i GalleryApplicationMap) ToGalleryApplicationMapOutputWithContext(ctx context.Context) GalleryApplicationMapOutput

type GalleryApplicationMapInput added in v5.13.0

type GalleryApplicationMapInput interface {
	pulumi.Input

	ToGalleryApplicationMapOutput() GalleryApplicationMapOutput
	ToGalleryApplicationMapOutputWithContext(context.Context) GalleryApplicationMapOutput
}

GalleryApplicationMapInput is an input type that accepts GalleryApplicationMap and GalleryApplicationMapOutput values. You can construct a concrete instance of `GalleryApplicationMapInput` via:

GalleryApplicationMap{ "key": GalleryApplicationArgs{...} }

type GalleryApplicationMapOutput added in v5.13.0

type GalleryApplicationMapOutput struct{ *pulumi.OutputState }

func (GalleryApplicationMapOutput) ElementType added in v5.13.0

func (GalleryApplicationMapOutput) MapIndex added in v5.13.0

func (GalleryApplicationMapOutput) ToGalleryApplicationMapOutput added in v5.13.0

func (o GalleryApplicationMapOutput) ToGalleryApplicationMapOutput() GalleryApplicationMapOutput

func (GalleryApplicationMapOutput) ToGalleryApplicationMapOutputWithContext added in v5.13.0

func (o GalleryApplicationMapOutput) ToGalleryApplicationMapOutputWithContext(ctx context.Context) GalleryApplicationMapOutput

type GalleryApplicationOutput added in v5.13.0

type GalleryApplicationOutput struct{ *pulumi.OutputState }

func (GalleryApplicationOutput) Description added in v5.13.0

A description of the Gallery Application.

func (GalleryApplicationOutput) ElementType added in v5.13.0

func (GalleryApplicationOutput) ElementType() reflect.Type

func (GalleryApplicationOutput) EndOfLifeDate added in v5.13.0

The end of life date in RFC3339 format of the Gallery Application.

func (GalleryApplicationOutput) Eula added in v5.13.0

The End User Licence Agreement of the Gallery Application.

func (GalleryApplicationOutput) GalleryId added in v5.13.0

The ID of the Shared Image Gallery. Changing this forces a new resource to be created.

func (GalleryApplicationOutput) Location added in v5.13.0

The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created.

func (GalleryApplicationOutput) Name added in v5.13.0

The name of the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationOutput) PrivacyStatementUri added in v5.13.0

func (o GalleryApplicationOutput) PrivacyStatementUri() pulumi.StringPtrOutput

The URI containing the Privacy Statement associated with the Gallery Application.

func (GalleryApplicationOutput) ReleaseNoteUri added in v5.13.0

func (o GalleryApplicationOutput) ReleaseNoteUri() pulumi.StringPtrOutput

The URI containing the Release Notes associated with the Gallery Application.

func (GalleryApplicationOutput) SupportedOsType added in v5.13.0

func (o GalleryApplicationOutput) SupportedOsType() pulumi.StringOutput

The type of the Operating System supported for the Gallery Application. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.

func (GalleryApplicationOutput) Tags added in v5.13.0

A mapping of tags to assign to the Gallery Application.

func (GalleryApplicationOutput) ToGalleryApplicationOutput added in v5.13.0

func (o GalleryApplicationOutput) ToGalleryApplicationOutput() GalleryApplicationOutput

func (GalleryApplicationOutput) ToGalleryApplicationOutputWithContext added in v5.13.0

func (o GalleryApplicationOutput) ToGalleryApplicationOutputWithContext(ctx context.Context) GalleryApplicationOutput

type GalleryApplicationState added in v5.13.0

type GalleryApplicationState struct {
	// A description of the Gallery Application.
	Description pulumi.StringPtrInput
	// The end of life date in RFC3339 format of the Gallery Application.
	EndOfLifeDate pulumi.StringPtrInput
	// The End User Licence Agreement of the Gallery Application.
	Eula pulumi.StringPtrInput
	// The ID of the Shared Image Gallery. Changing this forces a new resource to be created.
	GalleryId pulumi.StringPtrInput
	// The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Gallery Application. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The URI containing the Privacy Statement associated with the Gallery Application.
	PrivacyStatementUri pulumi.StringPtrInput
	// The URI containing the Release Notes associated with the Gallery Application.
	ReleaseNoteUri pulumi.StringPtrInput
	// The type of the Operating System supported for the Gallery Application. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	SupportedOsType pulumi.StringPtrInput
	// A mapping of tags to assign to the Gallery Application.
	Tags pulumi.StringMapInput
}

func (GalleryApplicationState) ElementType added in v5.13.0

func (GalleryApplicationState) ElementType() reflect.Type

type GalleryApplicationVersion added in v5.13.0

type GalleryApplicationVersion struct {
	pulumi.CustomResourceState

	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	ConfigFile pulumi.StringPtrOutput `pulumi:"configFile"`
	// Should the Gallery Application reports health. Defaults to `false`.
	EnableHealthCheck pulumi.BoolPtrOutput `pulumi:"enableHealthCheck"`
	// The end of life date in RFC3339 format of the Gallery Application Version.
	EndOfLifeDate pulumi.StringPtrOutput `pulumi:"endOfLifeDate"`
	// Should the Gallery Application Version be excluded from the `latest` filter? If set to `true` this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrOutput `pulumi:"excludeFromLatest"`
	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	GalleryApplicationId pulumi.StringOutput `pulumi:"galleryApplicationId"`
	// The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// A `manageAction` block as defined below.
	ManageAction GalleryApplicationVersionManageActionOutput `pulumi:"manageAction"`
	// The version name of the Gallery Application Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	PackageFile pulumi.StringPtrOutput `pulumi:"packageFile"`
	// A `source` block as defined below.
	Source GalleryApplicationVersionSourceOutput `pulumi:"source"`
	// A mapping of tags to assign to the Gallery Application Version.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// One or more `targetRegion` blocks as defined below.
	TargetRegions GalleryApplicationVersionTargetRegionArrayOutput `pulumi:"targetRegions"`
}

Manages a Gallery Application Version.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"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
		}
		exampleSharedImageGallery, err := compute.NewSharedImageGallery(ctx, "example", &compute.SharedImageGalleryArgs{
			Name:              pulumi.String("examplegallery"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
		})
		if err != nil {
			return err
		}
		exampleGalleryApplication, err := compute.NewGalleryApplication(ctx, "example", &compute.GalleryApplicationArgs{
			Name:            pulumi.String("example-app"),
			GalleryId:       exampleSharedImageGallery.ID(),
			Location:        example.Location,
			SupportedOsType: pulumi.String("Linux"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
			Name:                   pulumi.String("examplestorage"),
			ResourceGroupName:      example.Name,
			Location:               example.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		exampleContainer, err := storage.NewContainer(ctx, "example", &storage.ContainerArgs{
			Name:                pulumi.String("example-container"),
			StorageAccountName:  exampleAccount.Name,
			ContainerAccessType: pulumi.String("blob"),
		})
		if err != nil {
			return err
		}
		exampleBlob, err := storage.NewBlob(ctx, "example", &storage.BlobArgs{
			Name:                 pulumi.String("scripts"),
			StorageAccountName:   exampleAccount.Name,
			StorageContainerName: exampleContainer.Name,
			Type:                 pulumi.String("Block"),
			SourceContent:        pulumi.String("[scripts file content]"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewGalleryApplicationVersion(ctx, "example", &compute.GalleryApplicationVersionArgs{
			Name:                 pulumi.String("0.0.1"),
			GalleryApplicationId: exampleGalleryApplication.ID(),
			Location:             exampleGalleryApplication.Location,
			ManageAction: &compute.GalleryApplicationVersionManageActionArgs{
				Install: pulumi.String("[install command]"),
				Remove:  pulumi.String("[remove command]"),
			},
			Source: &compute.GalleryApplicationVersionSourceArgs{
				MediaLink: exampleBlob.ID(),
			},
			TargetRegions: compute.GalleryApplicationVersionTargetRegionArray{
				&compute.GalleryApplicationVersionTargetRegionArgs{
					Name:                 exampleGalleryApplication.Location,
					RegionalReplicaCount: pulumi.Int(1),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Gallery Application Versions can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/galleryApplicationVersion:GalleryApplicationVersion example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/galleries/gallery1/applications/galleryApplication1/versions/galleryApplicationVersion1 ```

func GetGalleryApplicationVersion added in v5.13.0

func GetGalleryApplicationVersion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GalleryApplicationVersionState, opts ...pulumi.ResourceOption) (*GalleryApplicationVersion, error)

GetGalleryApplicationVersion gets an existing GalleryApplicationVersion 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 NewGalleryApplicationVersion added in v5.13.0

func NewGalleryApplicationVersion(ctx *pulumi.Context,
	name string, args *GalleryApplicationVersionArgs, opts ...pulumi.ResourceOption) (*GalleryApplicationVersion, error)

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

func (*GalleryApplicationVersion) ElementType added in v5.13.0

func (*GalleryApplicationVersion) ElementType() reflect.Type

func (*GalleryApplicationVersion) ToGalleryApplicationVersionOutput added in v5.13.0

func (i *GalleryApplicationVersion) ToGalleryApplicationVersionOutput() GalleryApplicationVersionOutput

func (*GalleryApplicationVersion) ToGalleryApplicationVersionOutputWithContext added in v5.13.0

func (i *GalleryApplicationVersion) ToGalleryApplicationVersionOutputWithContext(ctx context.Context) GalleryApplicationVersionOutput

type GalleryApplicationVersionArgs added in v5.13.0

type GalleryApplicationVersionArgs struct {
	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	ConfigFile pulumi.StringPtrInput
	// Should the Gallery Application reports health. Defaults to `false`.
	EnableHealthCheck pulumi.BoolPtrInput
	// The end of life date in RFC3339 format of the Gallery Application Version.
	EndOfLifeDate pulumi.StringPtrInput
	// Should the Gallery Application Version be excluded from the `latest` filter? If set to `true` this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrInput
	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	GalleryApplicationId pulumi.StringInput
	// The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// A `manageAction` block as defined below.
	ManageAction GalleryApplicationVersionManageActionInput
	// The version name of the Gallery Application Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	PackageFile pulumi.StringPtrInput
	// A `source` block as defined below.
	Source GalleryApplicationVersionSourceInput
	// A mapping of tags to assign to the Gallery Application Version.
	Tags pulumi.StringMapInput
	// One or more `targetRegion` blocks as defined below.
	TargetRegions GalleryApplicationVersionTargetRegionArrayInput
}

The set of arguments for constructing a GalleryApplicationVersion resource.

func (GalleryApplicationVersionArgs) ElementType added in v5.13.0

type GalleryApplicationVersionArray added in v5.13.0

type GalleryApplicationVersionArray []GalleryApplicationVersionInput

func (GalleryApplicationVersionArray) ElementType added in v5.13.0

func (GalleryApplicationVersionArray) ToGalleryApplicationVersionArrayOutput added in v5.13.0

func (i GalleryApplicationVersionArray) ToGalleryApplicationVersionArrayOutput() GalleryApplicationVersionArrayOutput

func (GalleryApplicationVersionArray) ToGalleryApplicationVersionArrayOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionArray) ToGalleryApplicationVersionArrayOutputWithContext(ctx context.Context) GalleryApplicationVersionArrayOutput

type GalleryApplicationVersionArrayInput added in v5.13.0

type GalleryApplicationVersionArrayInput interface {
	pulumi.Input

	ToGalleryApplicationVersionArrayOutput() GalleryApplicationVersionArrayOutput
	ToGalleryApplicationVersionArrayOutputWithContext(context.Context) GalleryApplicationVersionArrayOutput
}

GalleryApplicationVersionArrayInput is an input type that accepts GalleryApplicationVersionArray and GalleryApplicationVersionArrayOutput values. You can construct a concrete instance of `GalleryApplicationVersionArrayInput` via:

GalleryApplicationVersionArray{ GalleryApplicationVersionArgs{...} }

type GalleryApplicationVersionArrayOutput added in v5.13.0

type GalleryApplicationVersionArrayOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionArrayOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionArrayOutput) Index added in v5.13.0

func (GalleryApplicationVersionArrayOutput) ToGalleryApplicationVersionArrayOutput added in v5.13.0

func (o GalleryApplicationVersionArrayOutput) ToGalleryApplicationVersionArrayOutput() GalleryApplicationVersionArrayOutput

func (GalleryApplicationVersionArrayOutput) ToGalleryApplicationVersionArrayOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionArrayOutput) ToGalleryApplicationVersionArrayOutputWithContext(ctx context.Context) GalleryApplicationVersionArrayOutput

type GalleryApplicationVersionInput added in v5.13.0

type GalleryApplicationVersionInput interface {
	pulumi.Input

	ToGalleryApplicationVersionOutput() GalleryApplicationVersionOutput
	ToGalleryApplicationVersionOutputWithContext(ctx context.Context) GalleryApplicationVersionOutput
}

type GalleryApplicationVersionManageAction added in v5.13.0

type GalleryApplicationVersionManageAction struct {
	// The command to install the Gallery Application. Changing this forces a new resource to be created.
	Install string `pulumi:"install"`
	// The command to remove the Gallery Application. Changing this forces a new resource to be created.
	Remove string `pulumi:"remove"`
	// The command to update the Gallery Application. Changing this forces a new resource to be created.
	Update *string `pulumi:"update"`
}

type GalleryApplicationVersionManageActionArgs added in v5.13.0

type GalleryApplicationVersionManageActionArgs struct {
	// The command to install the Gallery Application. Changing this forces a new resource to be created.
	Install pulumi.StringInput `pulumi:"install"`
	// The command to remove the Gallery Application. Changing this forces a new resource to be created.
	Remove pulumi.StringInput `pulumi:"remove"`
	// The command to update the Gallery Application. Changing this forces a new resource to be created.
	Update pulumi.StringPtrInput `pulumi:"update"`
}

func (GalleryApplicationVersionManageActionArgs) ElementType added in v5.13.0

func (GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionOutput added in v5.13.0

func (i GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionOutput() GalleryApplicationVersionManageActionOutput

func (GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionOutputWithContext(ctx context.Context) GalleryApplicationVersionManageActionOutput

func (GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionPtrOutput added in v5.13.0

func (i GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionPtrOutput() GalleryApplicationVersionManageActionPtrOutput

func (GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionPtrOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionManageActionArgs) ToGalleryApplicationVersionManageActionPtrOutputWithContext(ctx context.Context) GalleryApplicationVersionManageActionPtrOutput

type GalleryApplicationVersionManageActionInput added in v5.13.0

type GalleryApplicationVersionManageActionInput interface {
	pulumi.Input

	ToGalleryApplicationVersionManageActionOutput() GalleryApplicationVersionManageActionOutput
	ToGalleryApplicationVersionManageActionOutputWithContext(context.Context) GalleryApplicationVersionManageActionOutput
}

GalleryApplicationVersionManageActionInput is an input type that accepts GalleryApplicationVersionManageActionArgs and GalleryApplicationVersionManageActionOutput values. You can construct a concrete instance of `GalleryApplicationVersionManageActionInput` via:

GalleryApplicationVersionManageActionArgs{...}

type GalleryApplicationVersionManageActionOutput added in v5.13.0

type GalleryApplicationVersionManageActionOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionManageActionOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionManageActionOutput) Install added in v5.13.0

The command to install the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationVersionManageActionOutput) Remove added in v5.13.0

The command to remove the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionOutput added in v5.13.0

func (o GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionOutput() GalleryApplicationVersionManageActionOutput

func (GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionOutputWithContext(ctx context.Context) GalleryApplicationVersionManageActionOutput

func (GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionPtrOutput added in v5.13.0

func (o GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionPtrOutput() GalleryApplicationVersionManageActionPtrOutput

func (GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionPtrOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionManageActionOutput) ToGalleryApplicationVersionManageActionPtrOutputWithContext(ctx context.Context) GalleryApplicationVersionManageActionPtrOutput

func (GalleryApplicationVersionManageActionOutput) Update added in v5.13.0

The command to update the Gallery Application. Changing this forces a new resource to be created.

type GalleryApplicationVersionManageActionPtrInput added in v5.13.0

type GalleryApplicationVersionManageActionPtrInput interface {
	pulumi.Input

	ToGalleryApplicationVersionManageActionPtrOutput() GalleryApplicationVersionManageActionPtrOutput
	ToGalleryApplicationVersionManageActionPtrOutputWithContext(context.Context) GalleryApplicationVersionManageActionPtrOutput
}

GalleryApplicationVersionManageActionPtrInput is an input type that accepts GalleryApplicationVersionManageActionArgs, GalleryApplicationVersionManageActionPtr and GalleryApplicationVersionManageActionPtrOutput values. You can construct a concrete instance of `GalleryApplicationVersionManageActionPtrInput` via:

        GalleryApplicationVersionManageActionArgs{...}

or:

        nil

type GalleryApplicationVersionManageActionPtrOutput added in v5.13.0

type GalleryApplicationVersionManageActionPtrOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionManageActionPtrOutput) Elem added in v5.13.0

func (GalleryApplicationVersionManageActionPtrOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionManageActionPtrOutput) Install added in v5.13.0

The command to install the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationVersionManageActionPtrOutput) Remove added in v5.13.0

The command to remove the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationVersionManageActionPtrOutput) ToGalleryApplicationVersionManageActionPtrOutput added in v5.13.0

func (o GalleryApplicationVersionManageActionPtrOutput) ToGalleryApplicationVersionManageActionPtrOutput() GalleryApplicationVersionManageActionPtrOutput

func (GalleryApplicationVersionManageActionPtrOutput) ToGalleryApplicationVersionManageActionPtrOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionManageActionPtrOutput) ToGalleryApplicationVersionManageActionPtrOutputWithContext(ctx context.Context) GalleryApplicationVersionManageActionPtrOutput

func (GalleryApplicationVersionManageActionPtrOutput) Update added in v5.13.0

The command to update the Gallery Application. Changing this forces a new resource to be created.

type GalleryApplicationVersionMap added in v5.13.0

type GalleryApplicationVersionMap map[string]GalleryApplicationVersionInput

func (GalleryApplicationVersionMap) ElementType added in v5.13.0

func (GalleryApplicationVersionMap) ToGalleryApplicationVersionMapOutput added in v5.13.0

func (i GalleryApplicationVersionMap) ToGalleryApplicationVersionMapOutput() GalleryApplicationVersionMapOutput

func (GalleryApplicationVersionMap) ToGalleryApplicationVersionMapOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionMap) ToGalleryApplicationVersionMapOutputWithContext(ctx context.Context) GalleryApplicationVersionMapOutput

type GalleryApplicationVersionMapInput added in v5.13.0

type GalleryApplicationVersionMapInput interface {
	pulumi.Input

	ToGalleryApplicationVersionMapOutput() GalleryApplicationVersionMapOutput
	ToGalleryApplicationVersionMapOutputWithContext(context.Context) GalleryApplicationVersionMapOutput
}

GalleryApplicationVersionMapInput is an input type that accepts GalleryApplicationVersionMap and GalleryApplicationVersionMapOutput values. You can construct a concrete instance of `GalleryApplicationVersionMapInput` via:

GalleryApplicationVersionMap{ "key": GalleryApplicationVersionArgs{...} }

type GalleryApplicationVersionMapOutput added in v5.13.0

type GalleryApplicationVersionMapOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionMapOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionMapOutput) MapIndex added in v5.13.0

func (GalleryApplicationVersionMapOutput) ToGalleryApplicationVersionMapOutput added in v5.13.0

func (o GalleryApplicationVersionMapOutput) ToGalleryApplicationVersionMapOutput() GalleryApplicationVersionMapOutput

func (GalleryApplicationVersionMapOutput) ToGalleryApplicationVersionMapOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionMapOutput) ToGalleryApplicationVersionMapOutputWithContext(ctx context.Context) GalleryApplicationVersionMapOutput

type GalleryApplicationVersionOutput added in v5.13.0

type GalleryApplicationVersionOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionOutput) ConfigFile added in v5.57.0

Specifies the name of the config file on the VM. Changing this forces a new resource to be created.

func (GalleryApplicationVersionOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionOutput) EnableHealthCheck added in v5.13.0

Should the Gallery Application reports health. Defaults to `false`.

func (GalleryApplicationVersionOutput) EndOfLifeDate added in v5.13.0

The end of life date in RFC3339 format of the Gallery Application Version.

func (GalleryApplicationVersionOutput) ExcludeFromLatest added in v5.13.0

Should the Gallery Application Version be excluded from the `latest` filter? If set to `true` this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.

func (GalleryApplicationVersionOutput) GalleryApplicationId added in v5.13.0

func (o GalleryApplicationVersionOutput) GalleryApplicationId() pulumi.StringOutput

The ID of the Gallery Application. Changing this forces a new resource to be created.

func (GalleryApplicationVersionOutput) Location added in v5.13.0

The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.

func (GalleryApplicationVersionOutput) ManageAction added in v5.13.0

A `manageAction` block as defined below.

func (GalleryApplicationVersionOutput) Name added in v5.13.0

The version name of the Gallery Application Version, such as `1.0.0`. Changing this forces a new resource to be created.

func (GalleryApplicationVersionOutput) PackageFile added in v5.57.0

Specifies the name of the package file on the VM. Changing this forces a new resource to be created.

func (GalleryApplicationVersionOutput) Source added in v5.13.0

A `source` block as defined below.

func (GalleryApplicationVersionOutput) Tags added in v5.13.0

A mapping of tags to assign to the Gallery Application Version.

func (GalleryApplicationVersionOutput) TargetRegions added in v5.13.0

One or more `targetRegion` blocks as defined below.

func (GalleryApplicationVersionOutput) ToGalleryApplicationVersionOutput added in v5.13.0

func (o GalleryApplicationVersionOutput) ToGalleryApplicationVersionOutput() GalleryApplicationVersionOutput

func (GalleryApplicationVersionOutput) ToGalleryApplicationVersionOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionOutput) ToGalleryApplicationVersionOutputWithContext(ctx context.Context) GalleryApplicationVersionOutput

type GalleryApplicationVersionSource added in v5.13.0

type GalleryApplicationVersionSource struct {
	// The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.
	DefaultConfigurationLink *string `pulumi:"defaultConfigurationLink"`
	// The Storage Blob URI of the source application package. Changing this forces a new resource to be created.
	MediaLink string `pulumi:"mediaLink"`
}

type GalleryApplicationVersionSourceArgs added in v5.13.0

type GalleryApplicationVersionSourceArgs struct {
	// The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.
	DefaultConfigurationLink pulumi.StringPtrInput `pulumi:"defaultConfigurationLink"`
	// The Storage Blob URI of the source application package. Changing this forces a new resource to be created.
	MediaLink pulumi.StringInput `pulumi:"mediaLink"`
}

func (GalleryApplicationVersionSourceArgs) ElementType added in v5.13.0

func (GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourceOutput added in v5.13.0

func (i GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourceOutput() GalleryApplicationVersionSourceOutput

func (GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourceOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourceOutputWithContext(ctx context.Context) GalleryApplicationVersionSourceOutput

func (GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourcePtrOutput added in v5.13.0

func (i GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourcePtrOutput() GalleryApplicationVersionSourcePtrOutput

func (GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourcePtrOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionSourceArgs) ToGalleryApplicationVersionSourcePtrOutputWithContext(ctx context.Context) GalleryApplicationVersionSourcePtrOutput

type GalleryApplicationVersionSourceInput added in v5.13.0

type GalleryApplicationVersionSourceInput interface {
	pulumi.Input

	ToGalleryApplicationVersionSourceOutput() GalleryApplicationVersionSourceOutput
	ToGalleryApplicationVersionSourceOutputWithContext(context.Context) GalleryApplicationVersionSourceOutput
}

GalleryApplicationVersionSourceInput is an input type that accepts GalleryApplicationVersionSourceArgs and GalleryApplicationVersionSourceOutput values. You can construct a concrete instance of `GalleryApplicationVersionSourceInput` via:

GalleryApplicationVersionSourceArgs{...}

type GalleryApplicationVersionSourceOutput added in v5.13.0

type GalleryApplicationVersionSourceOutput struct{ *pulumi.OutputState }
func (o GalleryApplicationVersionSourceOutput) DefaultConfigurationLink() pulumi.StringPtrOutput

The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.

func (GalleryApplicationVersionSourceOutput) ElementType added in v5.13.0

The Storage Blob URI of the source application package. Changing this forces a new resource to be created.

func (GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourceOutput added in v5.13.0

func (o GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourceOutput() GalleryApplicationVersionSourceOutput

func (GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourceOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourceOutputWithContext(ctx context.Context) GalleryApplicationVersionSourceOutput

func (GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourcePtrOutput added in v5.13.0

func (o GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourcePtrOutput() GalleryApplicationVersionSourcePtrOutput

func (GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourcePtrOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionSourceOutput) ToGalleryApplicationVersionSourcePtrOutputWithContext(ctx context.Context) GalleryApplicationVersionSourcePtrOutput

type GalleryApplicationVersionSourcePtrInput added in v5.13.0

type GalleryApplicationVersionSourcePtrInput interface {
	pulumi.Input

	ToGalleryApplicationVersionSourcePtrOutput() GalleryApplicationVersionSourcePtrOutput
	ToGalleryApplicationVersionSourcePtrOutputWithContext(context.Context) GalleryApplicationVersionSourcePtrOutput
}

GalleryApplicationVersionSourcePtrInput is an input type that accepts GalleryApplicationVersionSourceArgs, GalleryApplicationVersionSourcePtr and GalleryApplicationVersionSourcePtrOutput values. You can construct a concrete instance of `GalleryApplicationVersionSourcePtrInput` via:

        GalleryApplicationVersionSourceArgs{...}

or:

        nil

type GalleryApplicationVersionSourcePtrOutput added in v5.13.0

type GalleryApplicationVersionSourcePtrOutput struct{ *pulumi.OutputState }

The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.

func (GalleryApplicationVersionSourcePtrOutput) Elem added in v5.13.0

func (GalleryApplicationVersionSourcePtrOutput) ElementType added in v5.13.0

The Storage Blob URI of the source application package. Changing this forces a new resource to be created.

func (GalleryApplicationVersionSourcePtrOutput) ToGalleryApplicationVersionSourcePtrOutput added in v5.13.0

func (o GalleryApplicationVersionSourcePtrOutput) ToGalleryApplicationVersionSourcePtrOutput() GalleryApplicationVersionSourcePtrOutput

func (GalleryApplicationVersionSourcePtrOutput) ToGalleryApplicationVersionSourcePtrOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionSourcePtrOutput) ToGalleryApplicationVersionSourcePtrOutputWithContext(ctx context.Context) GalleryApplicationVersionSourcePtrOutput

type GalleryApplicationVersionState added in v5.13.0

type GalleryApplicationVersionState struct {
	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	ConfigFile pulumi.StringPtrInput
	// Should the Gallery Application reports health. Defaults to `false`.
	EnableHealthCheck pulumi.BoolPtrInput
	// The end of life date in RFC3339 format of the Gallery Application Version.
	EndOfLifeDate pulumi.StringPtrInput
	// Should the Gallery Application Version be excluded from the `latest` filter? If set to `true` this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrInput
	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	GalleryApplicationId pulumi.StringPtrInput
	// The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// A `manageAction` block as defined below.
	ManageAction GalleryApplicationVersionManageActionPtrInput
	// The version name of the Gallery Application Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	PackageFile pulumi.StringPtrInput
	// A `source` block as defined below.
	Source GalleryApplicationVersionSourcePtrInput
	// A mapping of tags to assign to the Gallery Application Version.
	Tags pulumi.StringMapInput
	// One or more `targetRegion` blocks as defined below.
	TargetRegions GalleryApplicationVersionTargetRegionArrayInput
}

func (GalleryApplicationVersionState) ElementType added in v5.13.0

type GalleryApplicationVersionTargetRegion added in v5.13.0

type GalleryApplicationVersionTargetRegion struct {
	// Specifies whether this Gallery Application Version should be excluded from the `latest` filter. If set to `true`, this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest *bool `pulumi:"excludeFromLatest"`
	// The Azure Region in which the Gallery Application Version exists.
	Name string `pulumi:"name"`
	// The number of replicas of the Gallery Application Version to be created per region. Possible values are between `1` and `10`.
	RegionalReplicaCount int `pulumi:"regionalReplicaCount"`
	// The storage account type for the Gallery Application Version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`.
	StorageAccountType *string `pulumi:"storageAccountType"`
}

type GalleryApplicationVersionTargetRegionArgs added in v5.13.0

type GalleryApplicationVersionTargetRegionArgs struct {
	// Specifies whether this Gallery Application Version should be excluded from the `latest` filter. If set to `true`, this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrInput `pulumi:"excludeFromLatest"`
	// The Azure Region in which the Gallery Application Version exists.
	Name pulumi.StringInput `pulumi:"name"`
	// The number of replicas of the Gallery Application Version to be created per region. Possible values are between `1` and `10`.
	RegionalReplicaCount pulumi.IntInput `pulumi:"regionalReplicaCount"`
	// The storage account type for the Gallery Application Version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`.
	StorageAccountType pulumi.StringPtrInput `pulumi:"storageAccountType"`
}

func (GalleryApplicationVersionTargetRegionArgs) ElementType added in v5.13.0

func (GalleryApplicationVersionTargetRegionArgs) ToGalleryApplicationVersionTargetRegionOutput added in v5.13.0

func (i GalleryApplicationVersionTargetRegionArgs) ToGalleryApplicationVersionTargetRegionOutput() GalleryApplicationVersionTargetRegionOutput

func (GalleryApplicationVersionTargetRegionArgs) ToGalleryApplicationVersionTargetRegionOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionTargetRegionArgs) ToGalleryApplicationVersionTargetRegionOutputWithContext(ctx context.Context) GalleryApplicationVersionTargetRegionOutput

type GalleryApplicationVersionTargetRegionArray added in v5.13.0

type GalleryApplicationVersionTargetRegionArray []GalleryApplicationVersionTargetRegionInput

func (GalleryApplicationVersionTargetRegionArray) ElementType added in v5.13.0

func (GalleryApplicationVersionTargetRegionArray) ToGalleryApplicationVersionTargetRegionArrayOutput added in v5.13.0

func (i GalleryApplicationVersionTargetRegionArray) ToGalleryApplicationVersionTargetRegionArrayOutput() GalleryApplicationVersionTargetRegionArrayOutput

func (GalleryApplicationVersionTargetRegionArray) ToGalleryApplicationVersionTargetRegionArrayOutputWithContext added in v5.13.0

func (i GalleryApplicationVersionTargetRegionArray) ToGalleryApplicationVersionTargetRegionArrayOutputWithContext(ctx context.Context) GalleryApplicationVersionTargetRegionArrayOutput

type GalleryApplicationVersionTargetRegionArrayInput added in v5.13.0

type GalleryApplicationVersionTargetRegionArrayInput interface {
	pulumi.Input

	ToGalleryApplicationVersionTargetRegionArrayOutput() GalleryApplicationVersionTargetRegionArrayOutput
	ToGalleryApplicationVersionTargetRegionArrayOutputWithContext(context.Context) GalleryApplicationVersionTargetRegionArrayOutput
}

GalleryApplicationVersionTargetRegionArrayInput is an input type that accepts GalleryApplicationVersionTargetRegionArray and GalleryApplicationVersionTargetRegionArrayOutput values. You can construct a concrete instance of `GalleryApplicationVersionTargetRegionArrayInput` via:

GalleryApplicationVersionTargetRegionArray{ GalleryApplicationVersionTargetRegionArgs{...} }

type GalleryApplicationVersionTargetRegionArrayOutput added in v5.13.0

type GalleryApplicationVersionTargetRegionArrayOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionTargetRegionArrayOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionTargetRegionArrayOutput) Index added in v5.13.0

func (GalleryApplicationVersionTargetRegionArrayOutput) ToGalleryApplicationVersionTargetRegionArrayOutput added in v5.13.0

func (o GalleryApplicationVersionTargetRegionArrayOutput) ToGalleryApplicationVersionTargetRegionArrayOutput() GalleryApplicationVersionTargetRegionArrayOutput

func (GalleryApplicationVersionTargetRegionArrayOutput) ToGalleryApplicationVersionTargetRegionArrayOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionTargetRegionArrayOutput) ToGalleryApplicationVersionTargetRegionArrayOutputWithContext(ctx context.Context) GalleryApplicationVersionTargetRegionArrayOutput

type GalleryApplicationVersionTargetRegionInput added in v5.13.0

type GalleryApplicationVersionTargetRegionInput interface {
	pulumi.Input

	ToGalleryApplicationVersionTargetRegionOutput() GalleryApplicationVersionTargetRegionOutput
	ToGalleryApplicationVersionTargetRegionOutputWithContext(context.Context) GalleryApplicationVersionTargetRegionOutput
}

GalleryApplicationVersionTargetRegionInput is an input type that accepts GalleryApplicationVersionTargetRegionArgs and GalleryApplicationVersionTargetRegionOutput values. You can construct a concrete instance of `GalleryApplicationVersionTargetRegionInput` via:

GalleryApplicationVersionTargetRegionArgs{...}

type GalleryApplicationVersionTargetRegionOutput added in v5.13.0

type GalleryApplicationVersionTargetRegionOutput struct{ *pulumi.OutputState }

func (GalleryApplicationVersionTargetRegionOutput) ElementType added in v5.13.0

func (GalleryApplicationVersionTargetRegionOutput) ExcludeFromLatest added in v5.57.0

Specifies whether this Gallery Application Version should be excluded from the `latest` filter. If set to `true`, this Gallery Application Version won't be returned for the `latest` version. Defaults to `false`.

func (GalleryApplicationVersionTargetRegionOutput) Name added in v5.13.0

The Azure Region in which the Gallery Application Version exists.

func (GalleryApplicationVersionTargetRegionOutput) RegionalReplicaCount added in v5.13.0

The number of replicas of the Gallery Application Version to be created per region. Possible values are between `1` and `10`.

func (GalleryApplicationVersionTargetRegionOutput) StorageAccountType added in v5.13.0

The storage account type for the Gallery Application Version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`.

func (GalleryApplicationVersionTargetRegionOutput) ToGalleryApplicationVersionTargetRegionOutput added in v5.13.0

func (o GalleryApplicationVersionTargetRegionOutput) ToGalleryApplicationVersionTargetRegionOutput() GalleryApplicationVersionTargetRegionOutput

func (GalleryApplicationVersionTargetRegionOutput) ToGalleryApplicationVersionTargetRegionOutputWithContext added in v5.13.0

func (o GalleryApplicationVersionTargetRegionOutput) ToGalleryApplicationVersionTargetRegionOutputWithContext(ctx context.Context) GalleryApplicationVersionTargetRegionOutput

type GetBastionHostIpConfiguration added in v5.32.0

type GetBastionHostIpConfiguration struct {
	// The name of the Bastion Host.
	Name string `pulumi:"name"`
	// Reference to a Public IP Address associated to this Bastion Host.
	PublicIpAddressId string `pulumi:"publicIpAddressId"`
	// Reference to the subnet in which this Bastion Host has been created.
	SubnetId string `pulumi:"subnetId"`
}

type GetBastionHostIpConfigurationArgs added in v5.32.0

type GetBastionHostIpConfigurationArgs struct {
	// The name of the Bastion Host.
	Name pulumi.StringInput `pulumi:"name"`
	// Reference to a Public IP Address associated to this Bastion Host.
	PublicIpAddressId pulumi.StringInput `pulumi:"publicIpAddressId"`
	// Reference to the subnet in which this Bastion Host has been created.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetBastionHostIpConfigurationArgs) ElementType added in v5.32.0

func (GetBastionHostIpConfigurationArgs) ToGetBastionHostIpConfigurationOutput added in v5.32.0

func (i GetBastionHostIpConfigurationArgs) ToGetBastionHostIpConfigurationOutput() GetBastionHostIpConfigurationOutput

func (GetBastionHostIpConfigurationArgs) ToGetBastionHostIpConfigurationOutputWithContext added in v5.32.0

func (i GetBastionHostIpConfigurationArgs) ToGetBastionHostIpConfigurationOutputWithContext(ctx context.Context) GetBastionHostIpConfigurationOutput

type GetBastionHostIpConfigurationArray added in v5.32.0

type GetBastionHostIpConfigurationArray []GetBastionHostIpConfigurationInput

func (GetBastionHostIpConfigurationArray) ElementType added in v5.32.0

func (GetBastionHostIpConfigurationArray) ToGetBastionHostIpConfigurationArrayOutput added in v5.32.0

func (i GetBastionHostIpConfigurationArray) ToGetBastionHostIpConfigurationArrayOutput() GetBastionHostIpConfigurationArrayOutput

func (GetBastionHostIpConfigurationArray) ToGetBastionHostIpConfigurationArrayOutputWithContext added in v5.32.0

func (i GetBastionHostIpConfigurationArray) ToGetBastionHostIpConfigurationArrayOutputWithContext(ctx context.Context) GetBastionHostIpConfigurationArrayOutput

type GetBastionHostIpConfigurationArrayInput added in v5.32.0

type GetBastionHostIpConfigurationArrayInput interface {
	pulumi.Input

	ToGetBastionHostIpConfigurationArrayOutput() GetBastionHostIpConfigurationArrayOutput
	ToGetBastionHostIpConfigurationArrayOutputWithContext(context.Context) GetBastionHostIpConfigurationArrayOutput
}

GetBastionHostIpConfigurationArrayInput is an input type that accepts GetBastionHostIpConfigurationArray and GetBastionHostIpConfigurationArrayOutput values. You can construct a concrete instance of `GetBastionHostIpConfigurationArrayInput` via:

GetBastionHostIpConfigurationArray{ GetBastionHostIpConfigurationArgs{...} }

type GetBastionHostIpConfigurationArrayOutput added in v5.32.0

type GetBastionHostIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetBastionHostIpConfigurationArrayOutput) ElementType added in v5.32.0

func (GetBastionHostIpConfigurationArrayOutput) Index added in v5.32.0

func (GetBastionHostIpConfigurationArrayOutput) ToGetBastionHostIpConfigurationArrayOutput added in v5.32.0

func (o GetBastionHostIpConfigurationArrayOutput) ToGetBastionHostIpConfigurationArrayOutput() GetBastionHostIpConfigurationArrayOutput

func (GetBastionHostIpConfigurationArrayOutput) ToGetBastionHostIpConfigurationArrayOutputWithContext added in v5.32.0

func (o GetBastionHostIpConfigurationArrayOutput) ToGetBastionHostIpConfigurationArrayOutputWithContext(ctx context.Context) GetBastionHostIpConfigurationArrayOutput

type GetBastionHostIpConfigurationInput added in v5.32.0

type GetBastionHostIpConfigurationInput interface {
	pulumi.Input

	ToGetBastionHostIpConfigurationOutput() GetBastionHostIpConfigurationOutput
	ToGetBastionHostIpConfigurationOutputWithContext(context.Context) GetBastionHostIpConfigurationOutput
}

GetBastionHostIpConfigurationInput is an input type that accepts GetBastionHostIpConfigurationArgs and GetBastionHostIpConfigurationOutput values. You can construct a concrete instance of `GetBastionHostIpConfigurationInput` via:

GetBastionHostIpConfigurationArgs{...}

type GetBastionHostIpConfigurationOutput added in v5.32.0

type GetBastionHostIpConfigurationOutput struct{ *pulumi.OutputState }

func (GetBastionHostIpConfigurationOutput) ElementType added in v5.32.0

func (GetBastionHostIpConfigurationOutput) Name added in v5.32.0

The name of the Bastion Host.

func (GetBastionHostIpConfigurationOutput) PublicIpAddressId added in v5.32.0

Reference to a Public IP Address associated to this Bastion Host.

func (GetBastionHostIpConfigurationOutput) SubnetId added in v5.32.0

Reference to the subnet in which this Bastion Host has been created.

func (GetBastionHostIpConfigurationOutput) ToGetBastionHostIpConfigurationOutput added in v5.32.0

func (o GetBastionHostIpConfigurationOutput) ToGetBastionHostIpConfigurationOutput() GetBastionHostIpConfigurationOutput

func (GetBastionHostIpConfigurationOutput) ToGetBastionHostIpConfigurationOutputWithContext added in v5.32.0

func (o GetBastionHostIpConfigurationOutput) ToGetBastionHostIpConfigurationOutputWithContext(ctx context.Context) GetBastionHostIpConfigurationOutput

type GetConfidentialLedgerArgs added in v5.6.0

type GetConfidentialLedgerArgs struct {
	// Specifies the name of this Confidential Ledger.
	Name string `pulumi:"name"`
	// Specifies the name of the Resource Group where this Confidential Ledger exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getConfidentialLedger.

type GetConfidentialLedgerAzureadBasedServicePrincipal added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipal struct {
	// The Ledger Role to grant this Certificate Security Principal.
	LedgerRoleName string `pulumi:"ledgerRoleName"`
	// The Principal ID of the AzureAD Service Principal.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID for this AzureAD Service Principal.
	TenantId string `pulumi:"tenantId"`
}

type GetConfidentialLedgerAzureadBasedServicePrincipalArgs added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalArgs struct {
	// The Ledger Role to grant this Certificate Security Principal.
	LedgerRoleName pulumi.StringInput `pulumi:"ledgerRoleName"`
	// The Principal ID of the AzureAD Service Principal.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID for this AzureAD Service Principal.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
}

func (GetConfidentialLedgerAzureadBasedServicePrincipalArgs) ElementType added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalArgs) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutput added in v5.6.0

func (i GetConfidentialLedgerAzureadBasedServicePrincipalArgs) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutput() GetConfidentialLedgerAzureadBasedServicePrincipalOutput

func (GetConfidentialLedgerAzureadBasedServicePrincipalArgs) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutputWithContext added in v5.6.0

func (i GetConfidentialLedgerAzureadBasedServicePrincipalArgs) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutputWithContext(ctx context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalOutput

type GetConfidentialLedgerAzureadBasedServicePrincipalArray added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalArray []GetConfidentialLedgerAzureadBasedServicePrincipalInput

func (GetConfidentialLedgerAzureadBasedServicePrincipalArray) ElementType added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalArray) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput added in v5.6.0

func (i GetConfidentialLedgerAzureadBasedServicePrincipalArray) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput() GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput

func (GetConfidentialLedgerAzureadBasedServicePrincipalArray) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutputWithContext added in v5.6.0

func (i GetConfidentialLedgerAzureadBasedServicePrincipalArray) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutputWithContext(ctx context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput

type GetConfidentialLedgerAzureadBasedServicePrincipalArrayInput added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalArrayInput interface {
	pulumi.Input

	ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput() GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput
	ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutputWithContext(context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput
}

GetConfidentialLedgerAzureadBasedServicePrincipalArrayInput is an input type that accepts GetConfidentialLedgerAzureadBasedServicePrincipalArray and GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput values. You can construct a concrete instance of `GetConfidentialLedgerAzureadBasedServicePrincipalArrayInput` via:

GetConfidentialLedgerAzureadBasedServicePrincipalArray{ GetConfidentialLedgerAzureadBasedServicePrincipalArgs{...} }

type GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput struct{ *pulumi.OutputState }

func (GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput) ElementType added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput) Index added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutputWithContext added in v5.6.0

func (o GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalArrayOutputWithContext(ctx context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalArrayOutput

type GetConfidentialLedgerAzureadBasedServicePrincipalInput added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalInput interface {
	pulumi.Input

	ToGetConfidentialLedgerAzureadBasedServicePrincipalOutput() GetConfidentialLedgerAzureadBasedServicePrincipalOutput
	ToGetConfidentialLedgerAzureadBasedServicePrincipalOutputWithContext(context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalOutput
}

GetConfidentialLedgerAzureadBasedServicePrincipalInput is an input type that accepts GetConfidentialLedgerAzureadBasedServicePrincipalArgs and GetConfidentialLedgerAzureadBasedServicePrincipalOutput values. You can construct a concrete instance of `GetConfidentialLedgerAzureadBasedServicePrincipalInput` via:

GetConfidentialLedgerAzureadBasedServicePrincipalArgs{...}

type GetConfidentialLedgerAzureadBasedServicePrincipalOutput added in v5.6.0

type GetConfidentialLedgerAzureadBasedServicePrincipalOutput struct{ *pulumi.OutputState }

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) ElementType added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) LedgerRoleName added in v5.6.0

The Ledger Role to grant this Certificate Security Principal.

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) PrincipalId added in v5.6.0

The Principal ID of the AzureAD Service Principal.

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) TenantId added in v5.6.0

The Tenant ID for this AzureAD Service Principal.

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutput added in v5.6.0

func (GetConfidentialLedgerAzureadBasedServicePrincipalOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutputWithContext added in v5.6.0

func (o GetConfidentialLedgerAzureadBasedServicePrincipalOutput) ToGetConfidentialLedgerAzureadBasedServicePrincipalOutputWithContext(ctx context.Context) GetConfidentialLedgerAzureadBasedServicePrincipalOutput

type GetConfidentialLedgerCertificateBasedSecurityPrincipal added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipal struct {
	// The Ledger Role to grant this Certificate Security Principal.
	LedgerRoleName string `pulumi:"ledgerRoleName"`
	// The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger.
	PemPublicKey string `pulumi:"pemPublicKey"`
}

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs struct {
	// The Ledger Role to grant this Certificate Security Principal.
	LedgerRoleName pulumi.StringInput `pulumi:"ledgerRoleName"`
	// The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger.
	PemPublicKey pulumi.StringInput `pulumi:"pemPublicKey"`
}

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs) ElementType added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutput added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutputWithContext added in v5.6.0

func (i GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutputWithContext(ctx context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArray added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArray []GetConfidentialLedgerCertificateBasedSecurityPrincipalInput

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArray) ElementType added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArray) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArray) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutputWithContext added in v5.6.0

func (i GetConfidentialLedgerCertificateBasedSecurityPrincipalArray) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutputWithContext(ctx context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayInput added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayInput interface {
	pulumi.Input

	ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput() GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput
	ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutputWithContext(context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput
}

GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayInput is an input type that accepts GetConfidentialLedgerCertificateBasedSecurityPrincipalArray and GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput values. You can construct a concrete instance of `GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayInput` via:

GetConfidentialLedgerCertificateBasedSecurityPrincipalArray{ GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs{...} }

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput struct{ *pulumi.OutputState }

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput) ElementType added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput) Index added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutputWithContext added in v5.6.0

func (o GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutputWithContext(ctx context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalArrayOutput

type GetConfidentialLedgerCertificateBasedSecurityPrincipalInput added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalInput interface {
	pulumi.Input

	ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutput() GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput
	ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutputWithContext(context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput
}

GetConfidentialLedgerCertificateBasedSecurityPrincipalInput is an input type that accepts GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs and GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput values. You can construct a concrete instance of `GetConfidentialLedgerCertificateBasedSecurityPrincipalInput` via:

GetConfidentialLedgerCertificateBasedSecurityPrincipalArgs{...}

type GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput added in v5.6.0

type GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput struct{ *pulumi.OutputState }

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) ElementType added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) LedgerRoleName added in v5.6.0

The Ledger Role to grant this Certificate Security Principal.

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) PemPublicKey added in v5.6.0

The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger.

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutput added in v5.6.0

func (GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutputWithContext added in v5.6.0

func (o GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput) ToGetConfidentialLedgerCertificateBasedSecurityPrincipalOutputWithContext(ctx context.Context) GetConfidentialLedgerCertificateBasedSecurityPrincipalOutput

type GetConfidentialLedgerOutputArgs added in v5.6.0

type GetConfidentialLedgerOutputArgs struct {
	// Specifies the name of this Confidential Ledger.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the Resource Group where this Confidential Ledger exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getConfidentialLedger.

func (GetConfidentialLedgerOutputArgs) ElementType added in v5.6.0

type GetConfidentialLedgerResult added in v5.6.0

type GetConfidentialLedgerResult struct {
	AzureadBasedServicePrincipals      []GetConfidentialLedgerAzureadBasedServicePrincipal      `pulumi:"azureadBasedServicePrincipals"`
	CertificateBasedSecurityPrincipals []GetConfidentialLedgerCertificateBasedSecurityPrincipal `pulumi:"certificateBasedSecurityPrincipals"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Identity Service Endpoint for this Confidential Ledger.
	IdentityServiceEndpoint string `pulumi:"identityServiceEndpoint"`
	// The Endpoint for this Confidential Ledger.
	LedgerEndpoint string `pulumi:"ledgerEndpoint"`
	// The type of Confidential Ledger.
	LedgerType string `pulumi:"ledgerType"`
	// The supported Azure location where the Confidential Ledger exists.
	Location          string `pulumi:"location"`
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the Confidential Ledger.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getConfidentialLedger.

func GetConfidentialLedger added in v5.6.0

func GetConfidentialLedger(ctx *pulumi.Context, args *GetConfidentialLedgerArgs, opts ...pulumi.InvokeOption) (*GetConfidentialLedgerResult, error)

Gets information about an existing Confidential Ledger.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := compute.GetConfidentialLedger(ctx, &compute.GetConfidentialLedgerArgs{
			Name:              "example-ledger",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ledgerEndpoint", current.LedgerEndpoint)
		return nil
	})
}

```

type GetConfidentialLedgerResultOutput added in v5.6.0

type GetConfidentialLedgerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getConfidentialLedger.

func GetConfidentialLedgerOutput added in v5.6.0

func (GetConfidentialLedgerResultOutput) AzureadBasedServicePrincipals added in v5.6.0

func (GetConfidentialLedgerResultOutput) CertificateBasedSecurityPrincipals added in v5.6.0

func (GetConfidentialLedgerResultOutput) ElementType added in v5.6.0

func (GetConfidentialLedgerResultOutput) Id added in v5.6.0

The provider-assigned unique ID for this managed resource.

func (GetConfidentialLedgerResultOutput) IdentityServiceEndpoint added in v5.6.0

func (o GetConfidentialLedgerResultOutput) IdentityServiceEndpoint() pulumi.StringOutput

The Identity Service Endpoint for this Confidential Ledger.

func (GetConfidentialLedgerResultOutput) LedgerEndpoint added in v5.6.0

The Endpoint for this Confidential Ledger.

func (GetConfidentialLedgerResultOutput) LedgerType added in v5.6.0

The type of Confidential Ledger.

func (GetConfidentialLedgerResultOutput) Location added in v5.6.0

The supported Azure location where the Confidential Ledger exists.

func (GetConfidentialLedgerResultOutput) Name added in v5.6.0

func (GetConfidentialLedgerResultOutput) ResourceGroupName added in v5.6.0

func (GetConfidentialLedgerResultOutput) Tags added in v5.6.0

A mapping of tags to assign to the Confidential Ledger.

func (GetConfidentialLedgerResultOutput) ToGetConfidentialLedgerResultOutput added in v5.6.0

func (o GetConfidentialLedgerResultOutput) ToGetConfidentialLedgerResultOutput() GetConfidentialLedgerResultOutput

func (GetConfidentialLedgerResultOutput) ToGetConfidentialLedgerResultOutputWithContext added in v5.6.0

func (o GetConfidentialLedgerResultOutput) ToGetConfidentialLedgerResultOutputWithContext(ctx context.Context) GetConfidentialLedgerResultOutput

type GetDiskEncryptionSetIdentity added in v5.49.0

type GetDiskEncryptionSetIdentity struct {
	// A list of User Assigned Managed Identity IDs assigned to this Disk Encryption Set.
	IdentityIds []string `pulumi:"identityIds"`
	// The (Client) ID of the Service Principal.
	PrincipalId string `pulumi:"principalId"`
	// The ID of the Tenant the Service Principal is assigned in.
	TenantId string `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Disk Encryption Set.
	Type string `pulumi:"type"`
}

type GetDiskEncryptionSetIdentityArgs added in v5.49.0

type GetDiskEncryptionSetIdentityArgs struct {
	// A list of User Assigned Managed Identity IDs assigned to this Disk Encryption Set.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The (Client) ID of the Service Principal.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The ID of the Tenant the Service Principal is assigned in.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Disk Encryption Set.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetDiskEncryptionSetIdentityArgs) ElementType added in v5.49.0

func (GetDiskEncryptionSetIdentityArgs) ToGetDiskEncryptionSetIdentityOutput added in v5.49.0

func (i GetDiskEncryptionSetIdentityArgs) ToGetDiskEncryptionSetIdentityOutput() GetDiskEncryptionSetIdentityOutput

func (GetDiskEncryptionSetIdentityArgs) ToGetDiskEncryptionSetIdentityOutputWithContext added in v5.49.0

func (i GetDiskEncryptionSetIdentityArgs) ToGetDiskEncryptionSetIdentityOutputWithContext(ctx context.Context) GetDiskEncryptionSetIdentityOutput

type GetDiskEncryptionSetIdentityArray added in v5.49.0

type GetDiskEncryptionSetIdentityArray []GetDiskEncryptionSetIdentityInput

func (GetDiskEncryptionSetIdentityArray) ElementType added in v5.49.0

func (GetDiskEncryptionSetIdentityArray) ToGetDiskEncryptionSetIdentityArrayOutput added in v5.49.0

func (i GetDiskEncryptionSetIdentityArray) ToGetDiskEncryptionSetIdentityArrayOutput() GetDiskEncryptionSetIdentityArrayOutput

func (GetDiskEncryptionSetIdentityArray) ToGetDiskEncryptionSetIdentityArrayOutputWithContext added in v5.49.0

func (i GetDiskEncryptionSetIdentityArray) ToGetDiskEncryptionSetIdentityArrayOutputWithContext(ctx context.Context) GetDiskEncryptionSetIdentityArrayOutput

type GetDiskEncryptionSetIdentityArrayInput added in v5.49.0

type GetDiskEncryptionSetIdentityArrayInput interface {
	pulumi.Input

	ToGetDiskEncryptionSetIdentityArrayOutput() GetDiskEncryptionSetIdentityArrayOutput
	ToGetDiskEncryptionSetIdentityArrayOutputWithContext(context.Context) GetDiskEncryptionSetIdentityArrayOutput
}

GetDiskEncryptionSetIdentityArrayInput is an input type that accepts GetDiskEncryptionSetIdentityArray and GetDiskEncryptionSetIdentityArrayOutput values. You can construct a concrete instance of `GetDiskEncryptionSetIdentityArrayInput` via:

GetDiskEncryptionSetIdentityArray{ GetDiskEncryptionSetIdentityArgs{...} }

type GetDiskEncryptionSetIdentityArrayOutput added in v5.49.0

type GetDiskEncryptionSetIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetDiskEncryptionSetIdentityArrayOutput) ElementType added in v5.49.0

func (GetDiskEncryptionSetIdentityArrayOutput) Index added in v5.49.0

func (GetDiskEncryptionSetIdentityArrayOutput) ToGetDiskEncryptionSetIdentityArrayOutput added in v5.49.0

func (o GetDiskEncryptionSetIdentityArrayOutput) ToGetDiskEncryptionSetIdentityArrayOutput() GetDiskEncryptionSetIdentityArrayOutput

func (GetDiskEncryptionSetIdentityArrayOutput) ToGetDiskEncryptionSetIdentityArrayOutputWithContext added in v5.49.0

func (o GetDiskEncryptionSetIdentityArrayOutput) ToGetDiskEncryptionSetIdentityArrayOutputWithContext(ctx context.Context) GetDiskEncryptionSetIdentityArrayOutput

type GetDiskEncryptionSetIdentityInput added in v5.49.0

type GetDiskEncryptionSetIdentityInput interface {
	pulumi.Input

	ToGetDiskEncryptionSetIdentityOutput() GetDiskEncryptionSetIdentityOutput
	ToGetDiskEncryptionSetIdentityOutputWithContext(context.Context) GetDiskEncryptionSetIdentityOutput
}

GetDiskEncryptionSetIdentityInput is an input type that accepts GetDiskEncryptionSetIdentityArgs and GetDiskEncryptionSetIdentityOutput values. You can construct a concrete instance of `GetDiskEncryptionSetIdentityInput` via:

GetDiskEncryptionSetIdentityArgs{...}

type GetDiskEncryptionSetIdentityOutput added in v5.49.0

type GetDiskEncryptionSetIdentityOutput struct{ *pulumi.OutputState }

func (GetDiskEncryptionSetIdentityOutput) ElementType added in v5.49.0

func (GetDiskEncryptionSetIdentityOutput) IdentityIds added in v5.49.0

A list of User Assigned Managed Identity IDs assigned to this Disk Encryption Set.

func (GetDiskEncryptionSetIdentityOutput) PrincipalId added in v5.49.0

The (Client) ID of the Service Principal.

func (GetDiskEncryptionSetIdentityOutput) TenantId added in v5.49.0

The ID of the Tenant the Service Principal is assigned in.

func (GetDiskEncryptionSetIdentityOutput) ToGetDiskEncryptionSetIdentityOutput added in v5.49.0

func (o GetDiskEncryptionSetIdentityOutput) ToGetDiskEncryptionSetIdentityOutput() GetDiskEncryptionSetIdentityOutput

func (GetDiskEncryptionSetIdentityOutput) ToGetDiskEncryptionSetIdentityOutputWithContext added in v5.49.0

func (o GetDiskEncryptionSetIdentityOutput) ToGetDiskEncryptionSetIdentityOutputWithContext(ctx context.Context) GetDiskEncryptionSetIdentityOutput

func (GetDiskEncryptionSetIdentityOutput) Type added in v5.49.0

The type of Managed Service Identity that is configured on this Disk Encryption Set.

type GetImageDataDisk

type GetImageDataDisk struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri string `pulumi:"blobUri"`
	// the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.
	Caching string `pulumi:"caching"`
	// the logical unit number of the data disk.
	Lun int `pulumi:"lun"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId string `pulumi:"managedDiskId"`
	// the size of this Data Disk in GB.
	SizeGb int `pulumi:"sizeGb"`
}

type GetImageDataDiskArgs

type GetImageDataDiskArgs struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri pulumi.StringInput `pulumi:"blobUri"`
	// the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// the logical unit number of the data disk.
	Lun pulumi.IntInput `pulumi:"lun"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId pulumi.StringInput `pulumi:"managedDiskId"`
	// the size of this Data Disk in GB.
	SizeGb pulumi.IntInput `pulumi:"sizeGb"`
}

func (GetImageDataDiskArgs) ElementType

func (GetImageDataDiskArgs) ElementType() reflect.Type

func (GetImageDataDiskArgs) ToGetImageDataDiskOutput

func (i GetImageDataDiskArgs) ToGetImageDataDiskOutput() GetImageDataDiskOutput

func (GetImageDataDiskArgs) ToGetImageDataDiskOutputWithContext

func (i GetImageDataDiskArgs) ToGetImageDataDiskOutputWithContext(ctx context.Context) GetImageDataDiskOutput

type GetImageDataDiskArray

type GetImageDataDiskArray []GetImageDataDiskInput

func (GetImageDataDiskArray) ElementType

func (GetImageDataDiskArray) ElementType() reflect.Type

func (GetImageDataDiskArray) ToGetImageDataDiskArrayOutput

func (i GetImageDataDiskArray) ToGetImageDataDiskArrayOutput() GetImageDataDiskArrayOutput

func (GetImageDataDiskArray) ToGetImageDataDiskArrayOutputWithContext

func (i GetImageDataDiskArray) ToGetImageDataDiskArrayOutputWithContext(ctx context.Context) GetImageDataDiskArrayOutput

type GetImageDataDiskArrayInput

type GetImageDataDiskArrayInput interface {
	pulumi.Input

	ToGetImageDataDiskArrayOutput() GetImageDataDiskArrayOutput
	ToGetImageDataDiskArrayOutputWithContext(context.Context) GetImageDataDiskArrayOutput
}

GetImageDataDiskArrayInput is an input type that accepts GetImageDataDiskArray and GetImageDataDiskArrayOutput values. You can construct a concrete instance of `GetImageDataDiskArrayInput` via:

GetImageDataDiskArray{ GetImageDataDiskArgs{...} }

type GetImageDataDiskArrayOutput

type GetImageDataDiskArrayOutput struct{ *pulumi.OutputState }

func (GetImageDataDiskArrayOutput) ElementType

func (GetImageDataDiskArrayOutput) Index

func (GetImageDataDiskArrayOutput) ToGetImageDataDiskArrayOutput

func (o GetImageDataDiskArrayOutput) ToGetImageDataDiskArrayOutput() GetImageDataDiskArrayOutput

func (GetImageDataDiskArrayOutput) ToGetImageDataDiskArrayOutputWithContext

func (o GetImageDataDiskArrayOutput) ToGetImageDataDiskArrayOutputWithContext(ctx context.Context) GetImageDataDiskArrayOutput

type GetImageDataDiskInput

type GetImageDataDiskInput interface {
	pulumi.Input

	ToGetImageDataDiskOutput() GetImageDataDiskOutput
	ToGetImageDataDiskOutputWithContext(context.Context) GetImageDataDiskOutput
}

GetImageDataDiskInput is an input type that accepts GetImageDataDiskArgs and GetImageDataDiskOutput values. You can construct a concrete instance of `GetImageDataDiskInput` via:

GetImageDataDiskArgs{...}

type GetImageDataDiskOutput

type GetImageDataDiskOutput struct{ *pulumi.OutputState }

func (GetImageDataDiskOutput) BlobUri

the URI in Azure storage of the blob used to create the image.

func (GetImageDataDiskOutput) Caching

the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.

func (GetImageDataDiskOutput) ElementType

func (GetImageDataDiskOutput) ElementType() reflect.Type

func (GetImageDataDiskOutput) Lun

the logical unit number of the data disk.

func (GetImageDataDiskOutput) ManagedDiskId

func (o GetImageDataDiskOutput) ManagedDiskId() pulumi.StringOutput

the ID of the Managed Disk used as the Data Disk Image.

func (GetImageDataDiskOutput) SizeGb

the size of this Data Disk in GB.

func (GetImageDataDiskOutput) ToGetImageDataDiskOutput

func (o GetImageDataDiskOutput) ToGetImageDataDiskOutput() GetImageDataDiskOutput

func (GetImageDataDiskOutput) ToGetImageDataDiskOutputWithContext

func (o GetImageDataDiskOutput) ToGetImageDataDiskOutputWithContext(ctx context.Context) GetImageDataDiskOutput

type GetImageOsDisk

type GetImageOsDisk struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri string `pulumi:"blobUri"`
	// the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.
	Caching string `pulumi:"caching"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId string `pulumi:"managedDiskId"`
	// the State of the OS used in the Image, such as `Generalized`.
	OsState string `pulumi:"osState"`
	// the type of Operating System used on the OS Disk. such as `Linux` or `Windows`.
	OsType string `pulumi:"osType"`
	// the size of this Data Disk in GB.
	SizeGb int `pulumi:"sizeGb"`
}

type GetImageOsDiskArgs

type GetImageOsDiskArgs struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri pulumi.StringInput `pulumi:"blobUri"`
	// the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId pulumi.StringInput `pulumi:"managedDiskId"`
	// the State of the OS used in the Image, such as `Generalized`.
	OsState pulumi.StringInput `pulumi:"osState"`
	// the type of Operating System used on the OS Disk. such as `Linux` or `Windows`.
	OsType pulumi.StringInput `pulumi:"osType"`
	// the size of this Data Disk in GB.
	SizeGb pulumi.IntInput `pulumi:"sizeGb"`
}

func (GetImageOsDiskArgs) ElementType

func (GetImageOsDiskArgs) ElementType() reflect.Type

func (GetImageOsDiskArgs) ToGetImageOsDiskOutput

func (i GetImageOsDiskArgs) ToGetImageOsDiskOutput() GetImageOsDiskOutput

func (GetImageOsDiskArgs) ToGetImageOsDiskOutputWithContext

func (i GetImageOsDiskArgs) ToGetImageOsDiskOutputWithContext(ctx context.Context) GetImageOsDiskOutput

type GetImageOsDiskArray

type GetImageOsDiskArray []GetImageOsDiskInput

func (GetImageOsDiskArray) ElementType

func (GetImageOsDiskArray) ElementType() reflect.Type

func (GetImageOsDiskArray) ToGetImageOsDiskArrayOutput

func (i GetImageOsDiskArray) ToGetImageOsDiskArrayOutput() GetImageOsDiskArrayOutput

func (GetImageOsDiskArray) ToGetImageOsDiskArrayOutputWithContext

func (i GetImageOsDiskArray) ToGetImageOsDiskArrayOutputWithContext(ctx context.Context) GetImageOsDiskArrayOutput

type GetImageOsDiskArrayInput

type GetImageOsDiskArrayInput interface {
	pulumi.Input

	ToGetImageOsDiskArrayOutput() GetImageOsDiskArrayOutput
	ToGetImageOsDiskArrayOutputWithContext(context.Context) GetImageOsDiskArrayOutput
}

GetImageOsDiskArrayInput is an input type that accepts GetImageOsDiskArray and GetImageOsDiskArrayOutput values. You can construct a concrete instance of `GetImageOsDiskArrayInput` via:

GetImageOsDiskArray{ GetImageOsDiskArgs{...} }

type GetImageOsDiskArrayOutput

type GetImageOsDiskArrayOutput struct{ *pulumi.OutputState }

func (GetImageOsDiskArrayOutput) ElementType

func (GetImageOsDiskArrayOutput) ElementType() reflect.Type

func (GetImageOsDiskArrayOutput) Index

func (GetImageOsDiskArrayOutput) ToGetImageOsDiskArrayOutput

func (o GetImageOsDiskArrayOutput) ToGetImageOsDiskArrayOutput() GetImageOsDiskArrayOutput

func (GetImageOsDiskArrayOutput) ToGetImageOsDiskArrayOutputWithContext

func (o GetImageOsDiskArrayOutput) ToGetImageOsDiskArrayOutputWithContext(ctx context.Context) GetImageOsDiskArrayOutput

type GetImageOsDiskInput

type GetImageOsDiskInput interface {
	pulumi.Input

	ToGetImageOsDiskOutput() GetImageOsDiskOutput
	ToGetImageOsDiskOutputWithContext(context.Context) GetImageOsDiskOutput
}

GetImageOsDiskInput is an input type that accepts GetImageOsDiskArgs and GetImageOsDiskOutput values. You can construct a concrete instance of `GetImageOsDiskInput` via:

GetImageOsDiskArgs{...}

type GetImageOsDiskOutput

type GetImageOsDiskOutput struct{ *pulumi.OutputState }

func (GetImageOsDiskOutput) BlobUri

the URI in Azure storage of the blob used to create the image.

func (GetImageOsDiskOutput) Caching

the caching mode for the Data Disk, such as `ReadWrite`, `ReadOnly`, or `None`.

func (GetImageOsDiskOutput) ElementType

func (GetImageOsDiskOutput) ElementType() reflect.Type

func (GetImageOsDiskOutput) ManagedDiskId

func (o GetImageOsDiskOutput) ManagedDiskId() pulumi.StringOutput

the ID of the Managed Disk used as the Data Disk Image.

func (GetImageOsDiskOutput) OsState

the State of the OS used in the Image, such as `Generalized`.

func (GetImageOsDiskOutput) OsType

the type of Operating System used on the OS Disk. such as `Linux` or `Windows`.

func (GetImageOsDiskOutput) SizeGb

the size of this Data Disk in GB.

func (GetImageOsDiskOutput) ToGetImageOsDiskOutput

func (o GetImageOsDiskOutput) ToGetImageOsDiskOutput() GetImageOsDiskOutput

func (GetImageOsDiskOutput) ToGetImageOsDiskOutputWithContext

func (o GetImageOsDiskOutput) ToGetImageOsDiskOutputWithContext(ctx context.Context) GetImageOsDiskOutput

type GetImagesArgs

type GetImagesArgs struct {
	// The name of the Resource Group in which the Image exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags to filter the list of images against.
	TagsFilter map[string]string `pulumi:"tagsFilter"`
}

A collection of arguments for invoking getImages.

type GetImagesImage

type GetImagesImage struct {
	// One or more `dataDisk` blocks as defined below.
	DataDisks []GetImagesImageDataDisk `pulumi:"dataDisks"`
	// The supported Azure location where the Image exists.
	Location string `pulumi:"location"`
	// The name of the Image.
	Name string `pulumi:"name"`
	// An `osDisk` block as defined below.
	OsDisks []GetImagesImageOsDisk `pulumi:"osDisks"`
	// A mapping of tags assigned to the Image.
	Tags map[string]string `pulumi:"tags"`
	// Is zone resiliency enabled?
	ZoneResilient bool `pulumi:"zoneResilient"`
}

type GetImagesImageArgs

type GetImagesImageArgs struct {
	// One or more `dataDisk` blocks as defined below.
	DataDisks GetImagesImageDataDiskArrayInput `pulumi:"dataDisks"`
	// The supported Azure location where the Image exists.
	Location pulumi.StringInput `pulumi:"location"`
	// The name of the Image.
	Name pulumi.StringInput `pulumi:"name"`
	// An `osDisk` block as defined below.
	OsDisks GetImagesImageOsDiskArrayInput `pulumi:"osDisks"`
	// A mapping of tags assigned to the Image.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Is zone resiliency enabled?
	ZoneResilient pulumi.BoolInput `pulumi:"zoneResilient"`
}

func (GetImagesImageArgs) ElementType

func (GetImagesImageArgs) ElementType() reflect.Type

func (GetImagesImageArgs) ToGetImagesImageOutput

func (i GetImagesImageArgs) ToGetImagesImageOutput() GetImagesImageOutput

func (GetImagesImageArgs) ToGetImagesImageOutputWithContext

func (i GetImagesImageArgs) ToGetImagesImageOutputWithContext(ctx context.Context) GetImagesImageOutput

type GetImagesImageArray

type GetImagesImageArray []GetImagesImageInput

func (GetImagesImageArray) ElementType

func (GetImagesImageArray) ElementType() reflect.Type

func (GetImagesImageArray) ToGetImagesImageArrayOutput

func (i GetImagesImageArray) ToGetImagesImageArrayOutput() GetImagesImageArrayOutput

func (GetImagesImageArray) ToGetImagesImageArrayOutputWithContext

func (i GetImagesImageArray) ToGetImagesImageArrayOutputWithContext(ctx context.Context) GetImagesImageArrayOutput

type GetImagesImageArrayInput

type GetImagesImageArrayInput interface {
	pulumi.Input

	ToGetImagesImageArrayOutput() GetImagesImageArrayOutput
	ToGetImagesImageArrayOutputWithContext(context.Context) GetImagesImageArrayOutput
}

GetImagesImageArrayInput is an input type that accepts GetImagesImageArray and GetImagesImageArrayOutput values. You can construct a concrete instance of `GetImagesImageArrayInput` via:

GetImagesImageArray{ GetImagesImageArgs{...} }

type GetImagesImageArrayOutput

type GetImagesImageArrayOutput struct{ *pulumi.OutputState }

func (GetImagesImageArrayOutput) ElementType

func (GetImagesImageArrayOutput) ElementType() reflect.Type

func (GetImagesImageArrayOutput) Index

func (GetImagesImageArrayOutput) ToGetImagesImageArrayOutput

func (o GetImagesImageArrayOutput) ToGetImagesImageArrayOutput() GetImagesImageArrayOutput

func (GetImagesImageArrayOutput) ToGetImagesImageArrayOutputWithContext

func (o GetImagesImageArrayOutput) ToGetImagesImageArrayOutputWithContext(ctx context.Context) GetImagesImageArrayOutput

type GetImagesImageDataDisk

type GetImagesImageDataDisk struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri string `pulumi:"blobUri"`
	// the caching mode for the Data Disk.
	Caching string `pulumi:"caching"`
	// the logical unit number of the data disk.
	Lun int `pulumi:"lun"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId string `pulumi:"managedDiskId"`
	// the size of this Data Disk in GB.
	SizeGb int `pulumi:"sizeGb"`
}

type GetImagesImageDataDiskArgs

type GetImagesImageDataDiskArgs struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri pulumi.StringInput `pulumi:"blobUri"`
	// the caching mode for the Data Disk.
	Caching pulumi.StringInput `pulumi:"caching"`
	// the logical unit number of the data disk.
	Lun pulumi.IntInput `pulumi:"lun"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId pulumi.StringInput `pulumi:"managedDiskId"`
	// the size of this Data Disk in GB.
	SizeGb pulumi.IntInput `pulumi:"sizeGb"`
}

func (GetImagesImageDataDiskArgs) ElementType

func (GetImagesImageDataDiskArgs) ElementType() reflect.Type

func (GetImagesImageDataDiskArgs) ToGetImagesImageDataDiskOutput

func (i GetImagesImageDataDiskArgs) ToGetImagesImageDataDiskOutput() GetImagesImageDataDiskOutput

func (GetImagesImageDataDiskArgs) ToGetImagesImageDataDiskOutputWithContext

func (i GetImagesImageDataDiskArgs) ToGetImagesImageDataDiskOutputWithContext(ctx context.Context) GetImagesImageDataDiskOutput

type GetImagesImageDataDiskArray

type GetImagesImageDataDiskArray []GetImagesImageDataDiskInput

func (GetImagesImageDataDiskArray) ElementType

func (GetImagesImageDataDiskArray) ToGetImagesImageDataDiskArrayOutput

func (i GetImagesImageDataDiskArray) ToGetImagesImageDataDiskArrayOutput() GetImagesImageDataDiskArrayOutput

func (GetImagesImageDataDiskArray) ToGetImagesImageDataDiskArrayOutputWithContext

func (i GetImagesImageDataDiskArray) ToGetImagesImageDataDiskArrayOutputWithContext(ctx context.Context) GetImagesImageDataDiskArrayOutput

type GetImagesImageDataDiskArrayInput

type GetImagesImageDataDiskArrayInput interface {
	pulumi.Input

	ToGetImagesImageDataDiskArrayOutput() GetImagesImageDataDiskArrayOutput
	ToGetImagesImageDataDiskArrayOutputWithContext(context.Context) GetImagesImageDataDiskArrayOutput
}

GetImagesImageDataDiskArrayInput is an input type that accepts GetImagesImageDataDiskArray and GetImagesImageDataDiskArrayOutput values. You can construct a concrete instance of `GetImagesImageDataDiskArrayInput` via:

GetImagesImageDataDiskArray{ GetImagesImageDataDiskArgs{...} }

type GetImagesImageDataDiskArrayOutput

type GetImagesImageDataDiskArrayOutput struct{ *pulumi.OutputState }

func (GetImagesImageDataDiskArrayOutput) ElementType

func (GetImagesImageDataDiskArrayOutput) Index

func (GetImagesImageDataDiskArrayOutput) ToGetImagesImageDataDiskArrayOutput

func (o GetImagesImageDataDiskArrayOutput) ToGetImagesImageDataDiskArrayOutput() GetImagesImageDataDiskArrayOutput

func (GetImagesImageDataDiskArrayOutput) ToGetImagesImageDataDiskArrayOutputWithContext

func (o GetImagesImageDataDiskArrayOutput) ToGetImagesImageDataDiskArrayOutputWithContext(ctx context.Context) GetImagesImageDataDiskArrayOutput

type GetImagesImageDataDiskInput

type GetImagesImageDataDiskInput interface {
	pulumi.Input

	ToGetImagesImageDataDiskOutput() GetImagesImageDataDiskOutput
	ToGetImagesImageDataDiskOutputWithContext(context.Context) GetImagesImageDataDiskOutput
}

GetImagesImageDataDiskInput is an input type that accepts GetImagesImageDataDiskArgs and GetImagesImageDataDiskOutput values. You can construct a concrete instance of `GetImagesImageDataDiskInput` via:

GetImagesImageDataDiskArgs{...}

type GetImagesImageDataDiskOutput

type GetImagesImageDataDiskOutput struct{ *pulumi.OutputState }

func (GetImagesImageDataDiskOutput) BlobUri

the URI in Azure storage of the blob used to create the image.

func (GetImagesImageDataDiskOutput) Caching

the caching mode for the Data Disk.

func (GetImagesImageDataDiskOutput) ElementType

func (GetImagesImageDataDiskOutput) Lun

the logical unit number of the data disk.

func (GetImagesImageDataDiskOutput) ManagedDiskId

the ID of the Managed Disk used as the Data Disk Image.

func (GetImagesImageDataDiskOutput) SizeGb

the size of this Data Disk in GB.

func (GetImagesImageDataDiskOutput) ToGetImagesImageDataDiskOutput

func (o GetImagesImageDataDiskOutput) ToGetImagesImageDataDiskOutput() GetImagesImageDataDiskOutput

func (GetImagesImageDataDiskOutput) ToGetImagesImageDataDiskOutputWithContext

func (o GetImagesImageDataDiskOutput) ToGetImagesImageDataDiskOutputWithContext(ctx context.Context) GetImagesImageDataDiskOutput

type GetImagesImageInput

type GetImagesImageInput interface {
	pulumi.Input

	ToGetImagesImageOutput() GetImagesImageOutput
	ToGetImagesImageOutputWithContext(context.Context) GetImagesImageOutput
}

GetImagesImageInput is an input type that accepts GetImagesImageArgs and GetImagesImageOutput values. You can construct a concrete instance of `GetImagesImageInput` via:

GetImagesImageArgs{...}

type GetImagesImageOsDisk

type GetImagesImageOsDisk struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri string `pulumi:"blobUri"`
	// the caching mode for the Data Disk.
	Caching string `pulumi:"caching"`
	// the ID of the Disk Encryption Set used to encrypt this image.
	DiskEncryptionSetId string `pulumi:"diskEncryptionSetId"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId string `pulumi:"managedDiskId"`
	// the State of the OS used in the Image.
	OsState string `pulumi:"osState"`
	// the type of Operating System used on the OS Disk.
	OsType string `pulumi:"osType"`
	// the size of this Data Disk in GB.
	SizeGb int `pulumi:"sizeGb"`
}

type GetImagesImageOsDiskArgs

type GetImagesImageOsDiskArgs struct {
	// the URI in Azure storage of the blob used to create the image.
	BlobUri pulumi.StringInput `pulumi:"blobUri"`
	// the caching mode for the Data Disk.
	Caching pulumi.StringInput `pulumi:"caching"`
	// the ID of the Disk Encryption Set used to encrypt this image.
	DiskEncryptionSetId pulumi.StringInput `pulumi:"diskEncryptionSetId"`
	// the ID of the Managed Disk used as the Data Disk Image.
	ManagedDiskId pulumi.StringInput `pulumi:"managedDiskId"`
	// the State of the OS used in the Image.
	OsState pulumi.StringInput `pulumi:"osState"`
	// the type of Operating System used on the OS Disk.
	OsType pulumi.StringInput `pulumi:"osType"`
	// the size of this Data Disk in GB.
	SizeGb pulumi.IntInput `pulumi:"sizeGb"`
}

func (GetImagesImageOsDiskArgs) ElementType

func (GetImagesImageOsDiskArgs) ElementType() reflect.Type

func (GetImagesImageOsDiskArgs) ToGetImagesImageOsDiskOutput

func (i GetImagesImageOsDiskArgs) ToGetImagesImageOsDiskOutput() GetImagesImageOsDiskOutput

func (GetImagesImageOsDiskArgs) ToGetImagesImageOsDiskOutputWithContext

func (i GetImagesImageOsDiskArgs) ToGetImagesImageOsDiskOutputWithContext(ctx context.Context) GetImagesImageOsDiskOutput

type GetImagesImageOsDiskArray

type GetImagesImageOsDiskArray []GetImagesImageOsDiskInput

func (GetImagesImageOsDiskArray) ElementType

func (GetImagesImageOsDiskArray) ElementType() reflect.Type

func (GetImagesImageOsDiskArray) ToGetImagesImageOsDiskArrayOutput

func (i GetImagesImageOsDiskArray) ToGetImagesImageOsDiskArrayOutput() GetImagesImageOsDiskArrayOutput

func (GetImagesImageOsDiskArray) ToGetImagesImageOsDiskArrayOutputWithContext

func (i GetImagesImageOsDiskArray) ToGetImagesImageOsDiskArrayOutputWithContext(ctx context.Context) GetImagesImageOsDiskArrayOutput

type GetImagesImageOsDiskArrayInput

type GetImagesImageOsDiskArrayInput interface {
	pulumi.Input

	ToGetImagesImageOsDiskArrayOutput() GetImagesImageOsDiskArrayOutput
	ToGetImagesImageOsDiskArrayOutputWithContext(context.Context) GetImagesImageOsDiskArrayOutput
}

GetImagesImageOsDiskArrayInput is an input type that accepts GetImagesImageOsDiskArray and GetImagesImageOsDiskArrayOutput values. You can construct a concrete instance of `GetImagesImageOsDiskArrayInput` via:

GetImagesImageOsDiskArray{ GetImagesImageOsDiskArgs{...} }

type GetImagesImageOsDiskArrayOutput

type GetImagesImageOsDiskArrayOutput struct{ *pulumi.OutputState }

func (GetImagesImageOsDiskArrayOutput) ElementType

func (GetImagesImageOsDiskArrayOutput) Index

func (GetImagesImageOsDiskArrayOutput) ToGetImagesImageOsDiskArrayOutput

func (o GetImagesImageOsDiskArrayOutput) ToGetImagesImageOsDiskArrayOutput() GetImagesImageOsDiskArrayOutput

func (GetImagesImageOsDiskArrayOutput) ToGetImagesImageOsDiskArrayOutputWithContext

func (o GetImagesImageOsDiskArrayOutput) ToGetImagesImageOsDiskArrayOutputWithContext(ctx context.Context) GetImagesImageOsDiskArrayOutput

type GetImagesImageOsDiskInput

type GetImagesImageOsDiskInput interface {
	pulumi.Input

	ToGetImagesImageOsDiskOutput() GetImagesImageOsDiskOutput
	ToGetImagesImageOsDiskOutputWithContext(context.Context) GetImagesImageOsDiskOutput
}

GetImagesImageOsDiskInput is an input type that accepts GetImagesImageOsDiskArgs and GetImagesImageOsDiskOutput values. You can construct a concrete instance of `GetImagesImageOsDiskInput` via:

GetImagesImageOsDiskArgs{...}

type GetImagesImageOsDiskOutput

type GetImagesImageOsDiskOutput struct{ *pulumi.OutputState }

func (GetImagesImageOsDiskOutput) BlobUri

the URI in Azure storage of the blob used to create the image.

func (GetImagesImageOsDiskOutput) Caching

the caching mode for the Data Disk.

func (GetImagesImageOsDiskOutput) DiskEncryptionSetId added in v5.48.0

func (o GetImagesImageOsDiskOutput) DiskEncryptionSetId() pulumi.StringOutput

the ID of the Disk Encryption Set used to encrypt this image.

func (GetImagesImageOsDiskOutput) ElementType

func (GetImagesImageOsDiskOutput) ElementType() reflect.Type

func (GetImagesImageOsDiskOutput) ManagedDiskId

the ID of the Managed Disk used as the Data Disk Image.

func (GetImagesImageOsDiskOutput) OsState

the State of the OS used in the Image.

func (GetImagesImageOsDiskOutput) OsType

the type of Operating System used on the OS Disk.

func (GetImagesImageOsDiskOutput) SizeGb

the size of this Data Disk in GB.

func (GetImagesImageOsDiskOutput) ToGetImagesImageOsDiskOutput

func (o GetImagesImageOsDiskOutput) ToGetImagesImageOsDiskOutput() GetImagesImageOsDiskOutput

func (GetImagesImageOsDiskOutput) ToGetImagesImageOsDiskOutputWithContext

func (o GetImagesImageOsDiskOutput) ToGetImagesImageOsDiskOutputWithContext(ctx context.Context) GetImagesImageOsDiskOutput

type GetImagesImageOutput

type GetImagesImageOutput struct{ *pulumi.OutputState }

func (GetImagesImageOutput) DataDisks

One or more `dataDisk` blocks as defined below.

func (GetImagesImageOutput) ElementType

func (GetImagesImageOutput) ElementType() reflect.Type

func (GetImagesImageOutput) Location

The supported Azure location where the Image exists.

func (GetImagesImageOutput) Name

The name of the Image.

func (GetImagesImageOutput) OsDisks

An `osDisk` block as defined below.

func (GetImagesImageOutput) Tags

A mapping of tags assigned to the Image.

func (GetImagesImageOutput) ToGetImagesImageOutput

func (o GetImagesImageOutput) ToGetImagesImageOutput() GetImagesImageOutput

func (GetImagesImageOutput) ToGetImagesImageOutputWithContext

func (o GetImagesImageOutput) ToGetImagesImageOutputWithContext(ctx context.Context) GetImagesImageOutput

func (GetImagesImageOutput) ZoneResilient

func (o GetImagesImageOutput) ZoneResilient() pulumi.BoolOutput

Is zone resiliency enabled?

type GetImagesOutputArgs

type GetImagesOutputArgs struct {
	// The name of the Resource Group in which the Image exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// A mapping of tags to filter the list of images against.
	TagsFilter pulumi.StringMapInput `pulumi:"tagsFilter"`
}

A collection of arguments for invoking getImages.

func (GetImagesOutputArgs) ElementType

func (GetImagesOutputArgs) ElementType() reflect.Type

type GetImagesResult

type GetImagesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// One or more `images` blocks as defined below:
	Images            []GetImagesImage  `pulumi:"images"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	TagsFilter        map[string]string `pulumi:"tagsFilter"`
}

A collection of values returned by getImages.

func GetImages

func GetImages(ctx *pulumi.Context, args *GetImagesArgs, opts ...pulumi.InvokeOption) (*GetImagesResult, error)

Use this data source to access information about existing Images within a Resource Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.GetImages(ctx, &compute.GetImagesArgs{
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetImagesResultOutput

type GetImagesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getImages.

func (GetImagesResultOutput) ElementType

func (GetImagesResultOutput) ElementType() reflect.Type

func (GetImagesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetImagesResultOutput) Images

One or more `images` blocks as defined below:

func (GetImagesResultOutput) ResourceGroupName

func (o GetImagesResultOutput) ResourceGroupName() pulumi.StringOutput

func (GetImagesResultOutput) TagsFilter

func (GetImagesResultOutput) ToGetImagesResultOutput

func (o GetImagesResultOutput) ToGetImagesResultOutput() GetImagesResultOutput

func (GetImagesResultOutput) ToGetImagesResultOutputWithContext

func (o GetImagesResultOutput) ToGetImagesResultOutputWithContext(ctx context.Context) GetImagesResultOutput

type GetIpGroupsArgs added in v5.64.0

type GetIpGroupsArgs struct {
	// A substring to match some number of IP Groups.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the IP Groups exist.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getIpGroups.

type GetIpGroupsOutputArgs added in v5.64.0

type GetIpGroupsOutputArgs struct {
	// A substring to match some number of IP Groups.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the IP Groups exist.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getIpGroups.

func (GetIpGroupsOutputArgs) ElementType added in v5.64.0

func (GetIpGroupsOutputArgs) ElementType() reflect.Type

type GetIpGroupsResult added in v5.64.0

type GetIpGroupsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of IP Group IDs.
	Ids      []string `pulumi:"ids"`
	Location string   `pulumi:"location"`
	Name     string   `pulumi:"name"`
	// A list of IP Group Names.
	Names             []string          `pulumi:"names"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	Tags              map[string]string `pulumi:"tags"`
}

A collection of values returned by getIpGroups.

func GetIpGroups deprecated added in v5.64.0

func GetIpGroups(ctx *pulumi.Context, args *GetIpGroupsArgs, opts ...pulumi.InvokeOption) (*GetIpGroupsResult, error)

Use this data source to access information about existing IP Groups.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := network.GetIpGroups(ctx, &network.GetIpGroupsArgs{
			Name:              "existing",
			ResourceGroupName: "existing",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ids", example.Ids)
		return nil
	})
}

```

Deprecated: azure.compute/getipgroups.getIpGroups has been deprecated in favor of azure.network/getipgroups.getIpGroups

type GetIpGroupsResultOutput added in v5.64.0

type GetIpGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getIpGroups.

func GetIpGroupsOutput added in v5.64.0

func GetIpGroupsOutput(ctx *pulumi.Context, args GetIpGroupsOutputArgs, opts ...pulumi.InvokeOption) GetIpGroupsResultOutput

func (GetIpGroupsResultOutput) ElementType added in v5.64.0

func (GetIpGroupsResultOutput) ElementType() reflect.Type

func (GetIpGroupsResultOutput) Id added in v5.64.0

The provider-assigned unique ID for this managed resource.

func (GetIpGroupsResultOutput) Ids added in v5.64.0

A list of IP Group IDs.

func (GetIpGroupsResultOutput) Location added in v5.64.0

func (GetIpGroupsResultOutput) Name added in v5.64.0

func (GetIpGroupsResultOutput) Names added in v5.64.0

A list of IP Group Names.

func (GetIpGroupsResultOutput) ResourceGroupName added in v5.64.0

func (o GetIpGroupsResultOutput) ResourceGroupName() pulumi.StringOutput

func (GetIpGroupsResultOutput) Tags added in v5.64.0

func (GetIpGroupsResultOutput) ToGetIpGroupsResultOutput added in v5.64.0

func (o GetIpGroupsResultOutput) ToGetIpGroupsResultOutput() GetIpGroupsResultOutput

func (GetIpGroupsResultOutput) ToGetIpGroupsResultOutputWithContext added in v5.64.0

func (o GetIpGroupsResultOutput) ToGetIpGroupsResultOutputWithContext(ctx context.Context) GetIpGroupsResultOutput

type GetManagedDiskEncryptionSetting added in v5.15.0

type GetManagedDiskEncryptionSetting struct {
	// A `diskEncryptionKey` block as defined above.
	DiskEncryptionKeys []GetManagedDiskEncryptionSettingDiskEncryptionKey `pulumi:"diskEncryptionKeys"`
	Enabled            bool                                               `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKeys []GetManagedDiskEncryptionSettingKeyEncryptionKey `pulumi:"keyEncryptionKeys"`
}

type GetManagedDiskEncryptionSettingArgs added in v5.15.0

type GetManagedDiskEncryptionSettingArgs struct {
	// A `diskEncryptionKey` block as defined above.
	DiskEncryptionKeys GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayInput `pulumi:"diskEncryptionKeys"`
	Enabled            pulumi.BoolInput                                           `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKeys GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayInput `pulumi:"keyEncryptionKeys"`
}

func (GetManagedDiskEncryptionSettingArgs) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingArgs) ToGetManagedDiskEncryptionSettingOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingArgs) ToGetManagedDiskEncryptionSettingOutput() GetManagedDiskEncryptionSettingOutput

func (GetManagedDiskEncryptionSettingArgs) ToGetManagedDiskEncryptionSettingOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingArgs) ToGetManagedDiskEncryptionSettingOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingOutput

type GetManagedDiskEncryptionSettingArray added in v5.15.0

type GetManagedDiskEncryptionSettingArray []GetManagedDiskEncryptionSettingInput

func (GetManagedDiskEncryptionSettingArray) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingArray) ToGetManagedDiskEncryptionSettingArrayOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingArray) ToGetManagedDiskEncryptionSettingArrayOutput() GetManagedDiskEncryptionSettingArrayOutput

func (GetManagedDiskEncryptionSettingArray) ToGetManagedDiskEncryptionSettingArrayOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingArray) ToGetManagedDiskEncryptionSettingArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingArrayOutput

type GetManagedDiskEncryptionSettingArrayInput added in v5.15.0

type GetManagedDiskEncryptionSettingArrayInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingArrayOutput() GetManagedDiskEncryptionSettingArrayOutput
	ToGetManagedDiskEncryptionSettingArrayOutputWithContext(context.Context) GetManagedDiskEncryptionSettingArrayOutput
}

GetManagedDiskEncryptionSettingArrayInput is an input type that accepts GetManagedDiskEncryptionSettingArray and GetManagedDiskEncryptionSettingArrayOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingArrayInput` via:

GetManagedDiskEncryptionSettingArray{ GetManagedDiskEncryptionSettingArgs{...} }

type GetManagedDiskEncryptionSettingArrayOutput added in v5.15.0

type GetManagedDiskEncryptionSettingArrayOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingArrayOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingArrayOutput) Index added in v5.15.0

func (GetManagedDiskEncryptionSettingArrayOutput) ToGetManagedDiskEncryptionSettingArrayOutput added in v5.15.0

func (o GetManagedDiskEncryptionSettingArrayOutput) ToGetManagedDiskEncryptionSettingArrayOutput() GetManagedDiskEncryptionSettingArrayOutput

func (GetManagedDiskEncryptionSettingArrayOutput) ToGetManagedDiskEncryptionSettingArrayOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingArrayOutput) ToGetManagedDiskEncryptionSettingArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingArrayOutput

type GetManagedDiskEncryptionSettingDiskEncryptionKey added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKey struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutput() GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArray added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArray []GetManagedDiskEncryptionSettingDiskEncryptionKeyInput

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArray) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArray) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingDiskEncryptionKeyArray) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput() GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArray) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingDiskEncryptionKeyArray) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayInput added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput() GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput
	ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput
}

GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayInput is an input type that accepts GetManagedDiskEncryptionSettingDiskEncryptionKeyArray and GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayInput` via:

GetManagedDiskEncryptionSettingDiskEncryptionKeyArray{ GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs{...} }

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput) Index added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyArrayOutput

type GetManagedDiskEncryptionSettingDiskEncryptionKeyInput added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutput() GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput
	ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutputWithContext(context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput
}

GetManagedDiskEncryptionSettingDiskEncryptionKeyInput is an input type that accepts GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs and GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingDiskEncryptionKeyInput` via:

GetManagedDiskEncryptionSettingDiskEncryptionKeyArgs{...}

type GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput added in v5.15.0

type GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) SecretUrl added in v5.15.0

The URL to the Key Vault Secret used as the Disk Encryption Key.

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) SourceVaultId added in v5.15.0

The ID of the source Key Vault.

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutput added in v5.15.0

func (GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingDiskEncryptionKeyOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingDiskEncryptionKeyOutput

type GetManagedDiskEncryptionSettingInput added in v5.15.0

type GetManagedDiskEncryptionSettingInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingOutput() GetManagedDiskEncryptionSettingOutput
	ToGetManagedDiskEncryptionSettingOutputWithContext(context.Context) GetManagedDiskEncryptionSettingOutput
}

GetManagedDiskEncryptionSettingInput is an input type that accepts GetManagedDiskEncryptionSettingArgs and GetManagedDiskEncryptionSettingOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingInput` via:

GetManagedDiskEncryptionSettingArgs{...}

type GetManagedDiskEncryptionSettingKeyEncryptionKey added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKey struct {
	// The URL to the Key Vault Key used as the Key Encryption Key.
	KeyUrl string `pulumi:"keyUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs struct {
	// The URL to the Key Vault Key used as the Key Encryption Key.
	KeyUrl pulumi.StringInput `pulumi:"keyUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutput() GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArray added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArray []GetManagedDiskEncryptionSettingKeyEncryptionKeyInput

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArray) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArray) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput added in v5.15.0

func (i GetManagedDiskEncryptionSettingKeyEncryptionKeyArray) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput() GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArray) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutputWithContext added in v5.15.0

func (i GetManagedDiskEncryptionSettingKeyEncryptionKeyArray) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayInput added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput() GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput
	ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput
}

GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayInput is an input type that accepts GetManagedDiskEncryptionSettingKeyEncryptionKeyArray and GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayInput` via:

GetManagedDiskEncryptionSettingKeyEncryptionKeyArray{ GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs{...} }

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput) Index added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyArrayOutput

type GetManagedDiskEncryptionSettingKeyEncryptionKeyInput added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyInput interface {
	pulumi.Input

	ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutput() GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput
	ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutputWithContext(context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput
}

GetManagedDiskEncryptionSettingKeyEncryptionKeyInput is an input type that accepts GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs and GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput values. You can construct a concrete instance of `GetManagedDiskEncryptionSettingKeyEncryptionKeyInput` via:

GetManagedDiskEncryptionSettingKeyEncryptionKeyArgs{...}

type GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput added in v5.15.0

type GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) KeyUrl added in v5.15.0

The URL to the Key Vault Key used as the Key Encryption Key.

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) SourceVaultId added in v5.15.0

The ID of the source Key Vault.

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutput added in v5.15.0

func (GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput) ToGetManagedDiskEncryptionSettingKeyEncryptionKeyOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingKeyEncryptionKeyOutput

type GetManagedDiskEncryptionSettingOutput added in v5.15.0

type GetManagedDiskEncryptionSettingOutput struct{ *pulumi.OutputState }

func (GetManagedDiskEncryptionSettingOutput) DiskEncryptionKeys added in v5.15.0

A `diskEncryptionKey` block as defined above.

func (GetManagedDiskEncryptionSettingOutput) ElementType added in v5.15.0

func (GetManagedDiskEncryptionSettingOutput) Enabled added in v5.15.0

func (GetManagedDiskEncryptionSettingOutput) KeyEncryptionKeys added in v5.15.0

A `keyEncryptionKey` block as defined below.

func (GetManagedDiskEncryptionSettingOutput) ToGetManagedDiskEncryptionSettingOutput added in v5.15.0

func (o GetManagedDiskEncryptionSettingOutput) ToGetManagedDiskEncryptionSettingOutput() GetManagedDiskEncryptionSettingOutput

func (GetManagedDiskEncryptionSettingOutput) ToGetManagedDiskEncryptionSettingOutputWithContext added in v5.15.0

func (o GetManagedDiskEncryptionSettingOutput) ToGetManagedDiskEncryptionSettingOutputWithContext(ctx context.Context) GetManagedDiskEncryptionSettingOutput

type GetOrchestratedVirtualMachineScaleSetIdentity added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentity struct {
	// The list of User Assigned Managed Identity IDs assigned to this Orchestrated Virtual Machine Scale Set.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.
	TenantId string `pulumi:"tenantId"`
	// The Type of IP Tag.
	Type string `pulumi:"type"`
}

type GetOrchestratedVirtualMachineScaleSetIdentityArgs added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityArgs struct {
	// The list of User Assigned Managed Identity IDs assigned to this Orchestrated Virtual Machine Scale Set.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The Type of IP Tag.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetOrchestratedVirtualMachineScaleSetIdentityArgs) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityArgs) ToGetOrchestratedVirtualMachineScaleSetIdentityOutput added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetIdentityArgs) ToGetOrchestratedVirtualMachineScaleSetIdentityOutput() GetOrchestratedVirtualMachineScaleSetIdentityOutput

func (GetOrchestratedVirtualMachineScaleSetIdentityArgs) ToGetOrchestratedVirtualMachineScaleSetIdentityOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetIdentityArgs) ToGetOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetIdentityOutput

type GetOrchestratedVirtualMachineScaleSetIdentityArray added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityArray []GetOrchestratedVirtualMachineScaleSetIdentityInput

func (GetOrchestratedVirtualMachineScaleSetIdentityArray) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityArray) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutput added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetIdentityArray) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutput() GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput

func (GetOrchestratedVirtualMachineScaleSetIdentityArray) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetIdentityArray) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput

type GetOrchestratedVirtualMachineScaleSetIdentityArrayInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityArrayInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutput() GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput
	ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput
}

GetOrchestratedVirtualMachineScaleSetIdentityArrayInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetIdentityArray and GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetIdentityArrayInput` via:

GetOrchestratedVirtualMachineScaleSetIdentityArray{ GetOrchestratedVirtualMachineScaleSetIdentityArgs{...} }

type GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput) Index added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutputWithContext added in v5.39.0

func (o GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityArrayOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetIdentityArrayOutput

type GetOrchestratedVirtualMachineScaleSetIdentityInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetIdentityOutput() GetOrchestratedVirtualMachineScaleSetIdentityOutput
	ToGetOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetIdentityOutput
}

GetOrchestratedVirtualMachineScaleSetIdentityInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetIdentityArgs and GetOrchestratedVirtualMachineScaleSetIdentityOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetIdentityInput` via:

GetOrchestratedVirtualMachineScaleSetIdentityArgs{...}

type GetOrchestratedVirtualMachineScaleSetIdentityOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) IdentityIds added in v5.39.0

The list of User Assigned Managed Identity IDs assigned to this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) PrincipalId added in v5.73.0

The Principal ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) TenantId added in v5.73.0

The Tenant ID of the System Assigned Managed Service Identity that is configured on this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityOutput added in v5.39.0

func (o GetOrchestratedVirtualMachineScaleSetIdentityOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityOutput() GetOrchestratedVirtualMachineScaleSetIdentityOutput

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityOutputWithContext added in v5.39.0

func (o GetOrchestratedVirtualMachineScaleSetIdentityOutput) ToGetOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetIdentityOutput

func (GetOrchestratedVirtualMachineScaleSetIdentityOutput) Type added in v5.39.0

The Type of IP Tag.

type GetOrchestratedVirtualMachineScaleSetNetworkInterface added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterface struct {
	// Is accelerated networking enabled?
	AcceleratedNetworkingEnabled bool `pulumi:"acceleratedNetworkingEnabled"`
	// An array of the DNS servers in use.
	DnsServers []string `pulumi:"dnsServers"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration `pulumi:"ipConfigurations"`
	// Is IP forwarding enabled?
	IpForwardingEnabled bool `pulumi:"ipForwardingEnabled"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The identifier for the network security group.
	NetworkSecurityGroupId string `pulumi:"networkSecurityGroupId"`
	// If this ipConfiguration is the primary one.
	Primary bool `pulumi:"primary"`
}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs struct {
	// Is accelerated networking enabled?
	AcceleratedNetworkingEnabled pulumi.BoolInput `pulumi:"acceleratedNetworkingEnabled"`
	// An array of the DNS servers in use.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// Is IP forwarding enabled?
	IpForwardingEnabled pulumi.BoolInput `pulumi:"ipForwardingEnabled"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The identifier for the network security group.
	NetworkSecurityGroupId pulumi.StringInput `pulumi:"networkSecurityGroupId"`
	// If this ipConfiguration is the primary one.
	Primary pulumi.BoolInput `pulumi:"primary"`
}

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceInput

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArray{ GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs{...} }

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) Index added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext added in v5.39.0

func (o GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceArgs{...}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration struct {
	// An array of references to backend address pools of application gateways.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// The application security group IDs to use.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// An array of references to backend address pools of load balancers.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// An array of references to inbound NAT pools for load balancers.
	LoadBalancerInboundNatRulesIds []string `pulumi:"loadBalancerInboundNatRulesIds"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// If this ipConfiguration is the primary one.
	Primary bool `pulumi:"primary"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddresses []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress `pulumi:"publicIpAddresses"`
	// The identifier of the subnet.
	SubnetId string `pulumi:"subnetId"`
	// The Internet Protocol Version of the public IP address.
	Version string `pulumi:"version"`
}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs struct {
	// An array of references to backend address pools of application gateways.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// The application security group IDs to use.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// An array of references to backend address pools of load balancers.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// An array of references to inbound NAT pools for load balancers.
	LoadBalancerInboundNatRulesIds pulumi.StringArrayInput `pulumi:"loadBalancerInboundNatRulesIds"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// If this ipConfiguration is the primary one.
	Primary pulumi.BoolInput `pulumi:"primary"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddresses GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The identifier of the subnet.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
	// The Internet Protocol Version of the public IP address.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext added in v5.39.0

func (i GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{ GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...} }

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) Index added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds added in v5.39.0

An array of references to backend address pools of application gateways.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationSecurityGroupIds added in v5.39.0

The application security group IDs to use.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerBackendAddressPoolIds added in v5.39.0

An array of references to backend address pools of load balancers.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerInboundNatRulesIds added in v5.39.0

An array of references to inbound NAT pools for load balancers.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Name added in v5.39.0

The name of this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Primary added in v5.39.0

If this ipConfiguration is the primary one.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) PublicIpAddresses added in v5.39.0

The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) SubnetId added in v5.39.0

The identifier of the subnet.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Version added in v5.39.0

The Internet Protocol Version of the public IP address.

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress struct {
	// The domain name label for the DNS settings.
	DomainNameLabel string `pulumi:"domainNameLabel"`
	// The idle timeout in minutes.
	IdleTimeoutInMinutes int `pulumi:"idleTimeoutInMinutes"`
	// A list of `ipTag` blocks as defined below.
	IpTags []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag `pulumi:"ipTags"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The ID of the public IP prefix.
	PublicIpPrefixId string `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version of the public IP address.
	Version string `pulumi:"version"`
}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs struct {
	// The domain name label for the DNS settings.
	DomainNameLabel pulumi.StringInput `pulumi:"domainNameLabel"`
	// The idle timeout in minutes.
	IdleTimeoutInMinutes pulumi.IntInput `pulumi:"idleTimeoutInMinutes"`
	// A list of `ipTag` blocks as defined below.
	IpTags GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput `pulumi:"ipTags"`
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the public IP prefix.
	PublicIpPrefixId pulumi.StringInput `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version of the public IP address.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray{ GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...} }

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) Index added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag struct {
	// The IP Tag associated with the Public IP.
	Tag string `pulumi:"tag"`
	// The Type of IP Tag.
	Type string `pulumi:"type"`
}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs struct {
	// The IP Tag associated with the Public IP.
	Tag pulumi.StringInput `pulumi:"tag"`
	// The Type of IP Tag.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray []GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray{ GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...} }

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) Index added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput interface {
	pulumi.Input

	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput() GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
	ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext(context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
}

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput is an input type that accepts GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs and GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput values. You can construct a concrete instance of `GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput` via:

GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...}

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Tag added in v5.39.0

The IP Tag associated with the Public IP.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Type added in v5.39.0

The Type of IP Tag.

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) DomainNameLabel added in v5.39.0

The domain name label for the DNS settings.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IdleTimeoutInMinutes added in v5.39.0

The idle timeout in minutes.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IpTags added in v5.39.0

A list of `ipTag` blocks as defined below.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Name added in v5.39.0

The name of this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) PublicIpPrefixId added in v5.39.0

The ID of the public IP prefix.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Version added in v5.39.0

The Internet Protocol Version of the public IP address.

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput added in v5.39.0

type GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) AcceleratedNetworkingEnabled added in v5.39.0

Is accelerated networking enabled?

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) DnsServers added in v5.39.0

An array of the DNS servers in use.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ElementType added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) IpConfigurations added in v5.39.0

An `ipConfiguration` block as documented below.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) IpForwardingEnabled added in v5.39.0

Is IP forwarding enabled?

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) Name added in v5.39.0

The name of this Orchestrated Virtual Machine Scale Set.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) NetworkSecurityGroupId added in v5.39.0

The identifier for the network security group.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) Primary added in v5.39.0

If this ipConfiguration is the primary one.

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput added in v5.39.0

func (GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext added in v5.39.0

func (o GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToGetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) GetOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

type GetPlatformImageArgs

type GetPlatformImageArgs struct {
	// Specifies the Location to pull information about this Platform Image from.
	Location string `pulumi:"location"`
	// Specifies the Offer associated with the Platform Image.
	Offer string `pulumi:"offer"`
	// Specifies the Publisher associated with the Platform Image.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the Platform Image.
	Sku string `pulumi:"sku"`
	// The version of the Platform Image.
	Version *string `pulumi:"version"`
}

A collection of arguments for invoking getPlatformImage.

type GetPlatformImageOutputArgs

type GetPlatformImageOutputArgs struct {
	// Specifies the Location to pull information about this Platform Image from.
	Location pulumi.StringInput `pulumi:"location"`
	// Specifies the Offer associated with the Platform Image.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the Publisher associated with the Platform Image.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the Platform Image.
	Sku pulumi.StringInput `pulumi:"sku"`
	// The version of the Platform Image.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

A collection of arguments for invoking getPlatformImage.

func (GetPlatformImageOutputArgs) ElementType

func (GetPlatformImageOutputArgs) ElementType() reflect.Type

type GetPlatformImageResult

type GetPlatformImageResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id        string `pulumi:"id"`
	Location  string `pulumi:"location"`
	Offer     string `pulumi:"offer"`
	Publisher string `pulumi:"publisher"`
	Sku       string `pulumi:"sku"`
	Version   string `pulumi:"version"`
}

A collection of values returned by getPlatformImage.

func GetPlatformImage

func GetPlatformImage(ctx *pulumi.Context, args *GetPlatformImageArgs, opts ...pulumi.InvokeOption) (*GetPlatformImageResult, error)

Use this data source to access information about a Platform Image.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.GetPlatformImage(ctx, &compute.GetPlatformImageArgs{
			Location:  "West Europe",
			Publisher: "Canonical",
			Offer:     "0001-com-ubuntu-server-focal",
			Sku:       "20_04-lts",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type GetPlatformImageResultOutput

type GetPlatformImageResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPlatformImage.

func (GetPlatformImageResultOutput) ElementType

func (GetPlatformImageResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetPlatformImageResultOutput) Location

func (GetPlatformImageResultOutput) Offer

func (GetPlatformImageResultOutput) Publisher

func (GetPlatformImageResultOutput) Sku

func (GetPlatformImageResultOutput) ToGetPlatformImageResultOutput

func (o GetPlatformImageResultOutput) ToGetPlatformImageResultOutput() GetPlatformImageResultOutput

func (GetPlatformImageResultOutput) ToGetPlatformImageResultOutputWithContext

func (o GetPlatformImageResultOutput) ToGetPlatformImageResultOutputWithContext(ctx context.Context) GetPlatformImageResultOutput

func (GetPlatformImageResultOutput) Version

type GetSharedImageIdentifier

type GetSharedImageIdentifier struct {
	// The Offer Name for this Shared Image.
	Offer string `pulumi:"offer"`
	// (Optional) The Purchase Plan Publisher for this Gallery Image.
	Publisher string `pulumi:"publisher"`
	// The Name of the SKU for this Gallery Image.
	Sku string `pulumi:"sku"`
}

type GetSharedImageIdentifierArgs

type GetSharedImageIdentifierArgs struct {
	// The Offer Name for this Shared Image.
	Offer pulumi.StringInput `pulumi:"offer"`
	// (Optional) The Purchase Plan Publisher for this Gallery Image.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// The Name of the SKU for this Gallery Image.
	Sku pulumi.StringInput `pulumi:"sku"`
}

func (GetSharedImageIdentifierArgs) ElementType

func (GetSharedImageIdentifierArgs) ToGetSharedImageIdentifierOutput

func (i GetSharedImageIdentifierArgs) ToGetSharedImageIdentifierOutput() GetSharedImageIdentifierOutput

func (GetSharedImageIdentifierArgs) ToGetSharedImageIdentifierOutputWithContext

func (i GetSharedImageIdentifierArgs) ToGetSharedImageIdentifierOutputWithContext(ctx context.Context) GetSharedImageIdentifierOutput

type GetSharedImageIdentifierArray

type GetSharedImageIdentifierArray []GetSharedImageIdentifierInput

func (GetSharedImageIdentifierArray) ElementType

func (GetSharedImageIdentifierArray) ToGetSharedImageIdentifierArrayOutput

func (i GetSharedImageIdentifierArray) ToGetSharedImageIdentifierArrayOutput() GetSharedImageIdentifierArrayOutput

func (GetSharedImageIdentifierArray) ToGetSharedImageIdentifierArrayOutputWithContext

func (i GetSharedImageIdentifierArray) ToGetSharedImageIdentifierArrayOutputWithContext(ctx context.Context) GetSharedImageIdentifierArrayOutput

type GetSharedImageIdentifierArrayInput

type GetSharedImageIdentifierArrayInput interface {
	pulumi.Input

	ToGetSharedImageIdentifierArrayOutput() GetSharedImageIdentifierArrayOutput
	ToGetSharedImageIdentifierArrayOutputWithContext(context.Context) GetSharedImageIdentifierArrayOutput
}

GetSharedImageIdentifierArrayInput is an input type that accepts GetSharedImageIdentifierArray and GetSharedImageIdentifierArrayOutput values. You can construct a concrete instance of `GetSharedImageIdentifierArrayInput` via:

GetSharedImageIdentifierArray{ GetSharedImageIdentifierArgs{...} }

type GetSharedImageIdentifierArrayOutput

type GetSharedImageIdentifierArrayOutput struct{ *pulumi.OutputState }

func (GetSharedImageIdentifierArrayOutput) ElementType

func (GetSharedImageIdentifierArrayOutput) Index

func (GetSharedImageIdentifierArrayOutput) ToGetSharedImageIdentifierArrayOutput

func (o GetSharedImageIdentifierArrayOutput) ToGetSharedImageIdentifierArrayOutput() GetSharedImageIdentifierArrayOutput

func (GetSharedImageIdentifierArrayOutput) ToGetSharedImageIdentifierArrayOutputWithContext

func (o GetSharedImageIdentifierArrayOutput) ToGetSharedImageIdentifierArrayOutputWithContext(ctx context.Context) GetSharedImageIdentifierArrayOutput

type GetSharedImageIdentifierInput

type GetSharedImageIdentifierInput interface {
	pulumi.Input

	ToGetSharedImageIdentifierOutput() GetSharedImageIdentifierOutput
	ToGetSharedImageIdentifierOutputWithContext(context.Context) GetSharedImageIdentifierOutput
}

GetSharedImageIdentifierInput is an input type that accepts GetSharedImageIdentifierArgs and GetSharedImageIdentifierOutput values. You can construct a concrete instance of `GetSharedImageIdentifierInput` via:

GetSharedImageIdentifierArgs{...}

type GetSharedImageIdentifierOutput

type GetSharedImageIdentifierOutput struct{ *pulumi.OutputState }

func (GetSharedImageIdentifierOutput) ElementType

func (GetSharedImageIdentifierOutput) Offer

The Offer Name for this Shared Image.

func (GetSharedImageIdentifierOutput) Publisher

(Optional) The Purchase Plan Publisher for this Gallery Image.

func (GetSharedImageIdentifierOutput) Sku

The Name of the SKU for this Gallery Image.

func (GetSharedImageIdentifierOutput) ToGetSharedImageIdentifierOutput

func (o GetSharedImageIdentifierOutput) ToGetSharedImageIdentifierOutput() GetSharedImageIdentifierOutput

func (GetSharedImageIdentifierOutput) ToGetSharedImageIdentifierOutputWithContext

func (o GetSharedImageIdentifierOutput) ToGetSharedImageIdentifierOutputWithContext(ctx context.Context) GetSharedImageIdentifierOutput

type GetSharedImagePurchasePlan added in v5.31.0

type GetSharedImagePurchasePlan struct {
	// The name of the Shared Image.
	Name string `pulumi:"name"`
	// (Optional) The Purchase Plan Product for this Gallery Image.
	Product string `pulumi:"product"`
	// (Optional) The Purchase Plan Publisher for this Gallery Image.
	Publisher string `pulumi:"publisher"`
}

type GetSharedImagePurchasePlanArgs added in v5.31.0

type GetSharedImagePurchasePlanArgs struct {
	// The name of the Shared Image.
	Name pulumi.StringInput `pulumi:"name"`
	// (Optional) The Purchase Plan Product for this Gallery Image.
	Product pulumi.StringInput `pulumi:"product"`
	// (Optional) The Purchase Plan Publisher for this Gallery Image.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (GetSharedImagePurchasePlanArgs) ElementType added in v5.31.0

func (GetSharedImagePurchasePlanArgs) ToGetSharedImagePurchasePlanOutput added in v5.31.0

func (i GetSharedImagePurchasePlanArgs) ToGetSharedImagePurchasePlanOutput() GetSharedImagePurchasePlanOutput

func (GetSharedImagePurchasePlanArgs) ToGetSharedImagePurchasePlanOutputWithContext added in v5.31.0

func (i GetSharedImagePurchasePlanArgs) ToGetSharedImagePurchasePlanOutputWithContext(ctx context.Context) GetSharedImagePurchasePlanOutput

type GetSharedImagePurchasePlanArray added in v5.31.0

type GetSharedImagePurchasePlanArray []GetSharedImagePurchasePlanInput

func (GetSharedImagePurchasePlanArray) ElementType added in v5.31.0

func (GetSharedImagePurchasePlanArray) ToGetSharedImagePurchasePlanArrayOutput added in v5.31.0

func (i GetSharedImagePurchasePlanArray) ToGetSharedImagePurchasePlanArrayOutput() GetSharedImagePurchasePlanArrayOutput

func (GetSharedImagePurchasePlanArray) ToGetSharedImagePurchasePlanArrayOutputWithContext added in v5.31.0

func (i GetSharedImagePurchasePlanArray) ToGetSharedImagePurchasePlanArrayOutputWithContext(ctx context.Context) GetSharedImagePurchasePlanArrayOutput

type GetSharedImagePurchasePlanArrayInput added in v5.31.0

type GetSharedImagePurchasePlanArrayInput interface {
	pulumi.Input

	ToGetSharedImagePurchasePlanArrayOutput() GetSharedImagePurchasePlanArrayOutput
	ToGetSharedImagePurchasePlanArrayOutputWithContext(context.Context) GetSharedImagePurchasePlanArrayOutput
}

GetSharedImagePurchasePlanArrayInput is an input type that accepts GetSharedImagePurchasePlanArray and GetSharedImagePurchasePlanArrayOutput values. You can construct a concrete instance of `GetSharedImagePurchasePlanArrayInput` via:

GetSharedImagePurchasePlanArray{ GetSharedImagePurchasePlanArgs{...} }

type GetSharedImagePurchasePlanArrayOutput added in v5.31.0

type GetSharedImagePurchasePlanArrayOutput struct{ *pulumi.OutputState }

func (GetSharedImagePurchasePlanArrayOutput) ElementType added in v5.31.0

func (GetSharedImagePurchasePlanArrayOutput) Index added in v5.31.0

func (GetSharedImagePurchasePlanArrayOutput) ToGetSharedImagePurchasePlanArrayOutput added in v5.31.0

func (o GetSharedImagePurchasePlanArrayOutput) ToGetSharedImagePurchasePlanArrayOutput() GetSharedImagePurchasePlanArrayOutput

func (GetSharedImagePurchasePlanArrayOutput) ToGetSharedImagePurchasePlanArrayOutputWithContext added in v5.31.0

func (o GetSharedImagePurchasePlanArrayOutput) ToGetSharedImagePurchasePlanArrayOutputWithContext(ctx context.Context) GetSharedImagePurchasePlanArrayOutput

type GetSharedImagePurchasePlanInput added in v5.31.0

type GetSharedImagePurchasePlanInput interface {
	pulumi.Input

	ToGetSharedImagePurchasePlanOutput() GetSharedImagePurchasePlanOutput
	ToGetSharedImagePurchasePlanOutputWithContext(context.Context) GetSharedImagePurchasePlanOutput
}

GetSharedImagePurchasePlanInput is an input type that accepts GetSharedImagePurchasePlanArgs and GetSharedImagePurchasePlanOutput values. You can construct a concrete instance of `GetSharedImagePurchasePlanInput` via:

GetSharedImagePurchasePlanArgs{...}

type GetSharedImagePurchasePlanOutput added in v5.31.0

type GetSharedImagePurchasePlanOutput struct{ *pulumi.OutputState }

func (GetSharedImagePurchasePlanOutput) ElementType added in v5.31.0

func (GetSharedImagePurchasePlanOutput) Name added in v5.31.0

The name of the Shared Image.

func (GetSharedImagePurchasePlanOutput) Product added in v5.31.0

(Optional) The Purchase Plan Product for this Gallery Image.

func (GetSharedImagePurchasePlanOutput) Publisher added in v5.31.0

(Optional) The Purchase Plan Publisher for this Gallery Image.

func (GetSharedImagePurchasePlanOutput) ToGetSharedImagePurchasePlanOutput added in v5.31.0

func (o GetSharedImagePurchasePlanOutput) ToGetSharedImagePurchasePlanOutput() GetSharedImagePurchasePlanOutput

func (GetSharedImagePurchasePlanOutput) ToGetSharedImagePurchasePlanOutputWithContext added in v5.31.0

func (o GetSharedImagePurchasePlanOutput) ToGetSharedImagePurchasePlanOutputWithContext(ctx context.Context) GetSharedImagePurchasePlanOutput

type GetSharedImageVersionTargetRegion

type GetSharedImageVersionTargetRegion struct {
	// The name of the Image Version.
	//
	// > **Note:** You may specify `latest` to obtain the latest version or `recent` to obtain the most recently updated version.
	//
	// > **Note:** In 3.0, `latest` may return an image version with `excludeFromLatest` set to `true`. Starting from 4.0 onwards `latest` will not return image versions with `exludeFromLatest` set to `true`.
	Name string `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount int `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version.
	StorageAccountType string `pulumi:"storageAccountType"`
}

type GetSharedImageVersionTargetRegionArgs

type GetSharedImageVersionTargetRegionArgs struct {
	// The name of the Image Version.
	//
	// > **Note:** You may specify `latest` to obtain the latest version or `recent` to obtain the most recently updated version.
	//
	// > **Note:** In 3.0, `latest` may return an image version with `excludeFromLatest` set to `true`. Starting from 4.0 onwards `latest` will not return image versions with `exludeFromLatest` set to `true`.
	Name pulumi.StringInput `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount pulumi.IntInput `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
}

func (GetSharedImageVersionTargetRegionArgs) ElementType

func (GetSharedImageVersionTargetRegionArgs) ToGetSharedImageVersionTargetRegionOutput

func (i GetSharedImageVersionTargetRegionArgs) ToGetSharedImageVersionTargetRegionOutput() GetSharedImageVersionTargetRegionOutput

func (GetSharedImageVersionTargetRegionArgs) ToGetSharedImageVersionTargetRegionOutputWithContext

func (i GetSharedImageVersionTargetRegionArgs) ToGetSharedImageVersionTargetRegionOutputWithContext(ctx context.Context) GetSharedImageVersionTargetRegionOutput

type GetSharedImageVersionTargetRegionArray

type GetSharedImageVersionTargetRegionArray []GetSharedImageVersionTargetRegionInput

func (GetSharedImageVersionTargetRegionArray) ElementType

func (GetSharedImageVersionTargetRegionArray) ToGetSharedImageVersionTargetRegionArrayOutput

func (i GetSharedImageVersionTargetRegionArray) ToGetSharedImageVersionTargetRegionArrayOutput() GetSharedImageVersionTargetRegionArrayOutput

func (GetSharedImageVersionTargetRegionArray) ToGetSharedImageVersionTargetRegionArrayOutputWithContext

func (i GetSharedImageVersionTargetRegionArray) ToGetSharedImageVersionTargetRegionArrayOutputWithContext(ctx context.Context) GetSharedImageVersionTargetRegionArrayOutput

type GetSharedImageVersionTargetRegionArrayInput

type GetSharedImageVersionTargetRegionArrayInput interface {
	pulumi.Input

	ToGetSharedImageVersionTargetRegionArrayOutput() GetSharedImageVersionTargetRegionArrayOutput
	ToGetSharedImageVersionTargetRegionArrayOutputWithContext(context.Context) GetSharedImageVersionTargetRegionArrayOutput
}

GetSharedImageVersionTargetRegionArrayInput is an input type that accepts GetSharedImageVersionTargetRegionArray and GetSharedImageVersionTargetRegionArrayOutput values. You can construct a concrete instance of `GetSharedImageVersionTargetRegionArrayInput` via:

GetSharedImageVersionTargetRegionArray{ GetSharedImageVersionTargetRegionArgs{...} }

type GetSharedImageVersionTargetRegionArrayOutput

type GetSharedImageVersionTargetRegionArrayOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionTargetRegionArrayOutput) ElementType

func (GetSharedImageVersionTargetRegionArrayOutput) Index

func (GetSharedImageVersionTargetRegionArrayOutput) ToGetSharedImageVersionTargetRegionArrayOutput

func (o GetSharedImageVersionTargetRegionArrayOutput) ToGetSharedImageVersionTargetRegionArrayOutput() GetSharedImageVersionTargetRegionArrayOutput

func (GetSharedImageVersionTargetRegionArrayOutput) ToGetSharedImageVersionTargetRegionArrayOutputWithContext

func (o GetSharedImageVersionTargetRegionArrayOutput) ToGetSharedImageVersionTargetRegionArrayOutputWithContext(ctx context.Context) GetSharedImageVersionTargetRegionArrayOutput

type GetSharedImageVersionTargetRegionInput

type GetSharedImageVersionTargetRegionInput interface {
	pulumi.Input

	ToGetSharedImageVersionTargetRegionOutput() GetSharedImageVersionTargetRegionOutput
	ToGetSharedImageVersionTargetRegionOutputWithContext(context.Context) GetSharedImageVersionTargetRegionOutput
}

GetSharedImageVersionTargetRegionInput is an input type that accepts GetSharedImageVersionTargetRegionArgs and GetSharedImageVersionTargetRegionOutput values. You can construct a concrete instance of `GetSharedImageVersionTargetRegionInput` via:

GetSharedImageVersionTargetRegionArgs{...}

type GetSharedImageVersionTargetRegionOutput

type GetSharedImageVersionTargetRegionOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionTargetRegionOutput) ElementType

func (GetSharedImageVersionTargetRegionOutput) Name

The name of the Image Version.

> **Note:** You may specify `latest` to obtain the latest version or `recent` to obtain the most recently updated version.

> **Note:** In 3.0, `latest` may return an image version with `excludeFromLatest` set to `true`. Starting from 4.0 onwards `latest` will not return image versions with `exludeFromLatest` set to `true`.

func (GetSharedImageVersionTargetRegionOutput) RegionalReplicaCount

func (o GetSharedImageVersionTargetRegionOutput) RegionalReplicaCount() pulumi.IntOutput

The number of replicas of the Image Version to be created per region.

func (GetSharedImageVersionTargetRegionOutput) StorageAccountType

The storage account type for the image version.

func (GetSharedImageVersionTargetRegionOutput) ToGetSharedImageVersionTargetRegionOutput

func (o GetSharedImageVersionTargetRegionOutput) ToGetSharedImageVersionTargetRegionOutput() GetSharedImageVersionTargetRegionOutput

func (GetSharedImageVersionTargetRegionOutput) ToGetSharedImageVersionTargetRegionOutputWithContext

func (o GetSharedImageVersionTargetRegionOutput) ToGetSharedImageVersionTargetRegionOutputWithContext(ctx context.Context) GetSharedImageVersionTargetRegionOutput

type GetSharedImageVersionsArgs

type GetSharedImageVersionsArgs struct {
	// The name of the Shared Image in which the Shared Image exists.
	GalleryName string `pulumi:"galleryName"`
	// The name of the Shared Image in which this Version exists.
	ImageName string `pulumi:"imageName"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags to filter the list of images against.
	TagsFilter map[string]string `pulumi:"tagsFilter"`
}

A collection of arguments for invoking getSharedImageVersions.

type GetSharedImageVersionsImage

type GetSharedImageVersionsImage struct {
	// Is this Image Version excluded from the `latest` filter?
	ExcludeFromLatest bool `pulumi:"excludeFromLatest"`
	// The ID of this Shared Image Version.
	Id string `pulumi:"id"`
	// The supported Azure location where the Shared Image Gallery exists.
	Location string `pulumi:"location"`
	// The ID of the Managed Image which was the source of this Shared Image Version.
	ManagedImageId string `pulumi:"managedImageId"`
	// The Azure Region in which this Image Version exists.
	Name string `pulumi:"name"`
	// A mapping of tags assigned to the Shared Image.
	Tags map[string]string `pulumi:"tags"`
	// One or more `targetRegion` blocks as documented below.
	TargetRegions []GetSharedImageVersionsImageTargetRegion `pulumi:"targetRegions"`
}

type GetSharedImageVersionsImageArgs

type GetSharedImageVersionsImageArgs struct {
	// Is this Image Version excluded from the `latest` filter?
	ExcludeFromLatest pulumi.BoolInput `pulumi:"excludeFromLatest"`
	// The ID of this Shared Image Version.
	Id pulumi.StringInput `pulumi:"id"`
	// The supported Azure location where the Shared Image Gallery exists.
	Location pulumi.StringInput `pulumi:"location"`
	// The ID of the Managed Image which was the source of this Shared Image Version.
	ManagedImageId pulumi.StringInput `pulumi:"managedImageId"`
	// The Azure Region in which this Image Version exists.
	Name pulumi.StringInput `pulumi:"name"`
	// A mapping of tags assigned to the Shared Image.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// One or more `targetRegion` blocks as documented below.
	TargetRegions GetSharedImageVersionsImageTargetRegionArrayInput `pulumi:"targetRegions"`
}

func (GetSharedImageVersionsImageArgs) ElementType

func (GetSharedImageVersionsImageArgs) ToGetSharedImageVersionsImageOutput

func (i GetSharedImageVersionsImageArgs) ToGetSharedImageVersionsImageOutput() GetSharedImageVersionsImageOutput

func (GetSharedImageVersionsImageArgs) ToGetSharedImageVersionsImageOutputWithContext

func (i GetSharedImageVersionsImageArgs) ToGetSharedImageVersionsImageOutputWithContext(ctx context.Context) GetSharedImageVersionsImageOutput

type GetSharedImageVersionsImageArray

type GetSharedImageVersionsImageArray []GetSharedImageVersionsImageInput

func (GetSharedImageVersionsImageArray) ElementType

func (GetSharedImageVersionsImageArray) ToGetSharedImageVersionsImageArrayOutput

func (i GetSharedImageVersionsImageArray) ToGetSharedImageVersionsImageArrayOutput() GetSharedImageVersionsImageArrayOutput

func (GetSharedImageVersionsImageArray) ToGetSharedImageVersionsImageArrayOutputWithContext

func (i GetSharedImageVersionsImageArray) ToGetSharedImageVersionsImageArrayOutputWithContext(ctx context.Context) GetSharedImageVersionsImageArrayOutput

type GetSharedImageVersionsImageArrayInput

type GetSharedImageVersionsImageArrayInput interface {
	pulumi.Input

	ToGetSharedImageVersionsImageArrayOutput() GetSharedImageVersionsImageArrayOutput
	ToGetSharedImageVersionsImageArrayOutputWithContext(context.Context) GetSharedImageVersionsImageArrayOutput
}

GetSharedImageVersionsImageArrayInput is an input type that accepts GetSharedImageVersionsImageArray and GetSharedImageVersionsImageArrayOutput values. You can construct a concrete instance of `GetSharedImageVersionsImageArrayInput` via:

GetSharedImageVersionsImageArray{ GetSharedImageVersionsImageArgs{...} }

type GetSharedImageVersionsImageArrayOutput

type GetSharedImageVersionsImageArrayOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionsImageArrayOutput) ElementType

func (GetSharedImageVersionsImageArrayOutput) Index

func (GetSharedImageVersionsImageArrayOutput) ToGetSharedImageVersionsImageArrayOutput

func (o GetSharedImageVersionsImageArrayOutput) ToGetSharedImageVersionsImageArrayOutput() GetSharedImageVersionsImageArrayOutput

func (GetSharedImageVersionsImageArrayOutput) ToGetSharedImageVersionsImageArrayOutputWithContext

func (o GetSharedImageVersionsImageArrayOutput) ToGetSharedImageVersionsImageArrayOutputWithContext(ctx context.Context) GetSharedImageVersionsImageArrayOutput

type GetSharedImageVersionsImageInput

type GetSharedImageVersionsImageInput interface {
	pulumi.Input

	ToGetSharedImageVersionsImageOutput() GetSharedImageVersionsImageOutput
	ToGetSharedImageVersionsImageOutputWithContext(context.Context) GetSharedImageVersionsImageOutput
}

GetSharedImageVersionsImageInput is an input type that accepts GetSharedImageVersionsImageArgs and GetSharedImageVersionsImageOutput values. You can construct a concrete instance of `GetSharedImageVersionsImageInput` via:

GetSharedImageVersionsImageArgs{...}

type GetSharedImageVersionsImageOutput

type GetSharedImageVersionsImageOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionsImageOutput) ElementType

func (GetSharedImageVersionsImageOutput) ExcludeFromLatest

func (o GetSharedImageVersionsImageOutput) ExcludeFromLatest() pulumi.BoolOutput

Is this Image Version excluded from the `latest` filter?

func (GetSharedImageVersionsImageOutput) Id added in v5.44.0

The ID of this Shared Image Version.

func (GetSharedImageVersionsImageOutput) Location

The supported Azure location where the Shared Image Gallery exists.

func (GetSharedImageVersionsImageOutput) ManagedImageId

The ID of the Managed Image which was the source of this Shared Image Version.

func (GetSharedImageVersionsImageOutput) Name

The Azure Region in which this Image Version exists.

func (GetSharedImageVersionsImageOutput) Tags

A mapping of tags assigned to the Shared Image.

func (GetSharedImageVersionsImageOutput) TargetRegions

One or more `targetRegion` blocks as documented below.

func (GetSharedImageVersionsImageOutput) ToGetSharedImageVersionsImageOutput

func (o GetSharedImageVersionsImageOutput) ToGetSharedImageVersionsImageOutput() GetSharedImageVersionsImageOutput

func (GetSharedImageVersionsImageOutput) ToGetSharedImageVersionsImageOutputWithContext

func (o GetSharedImageVersionsImageOutput) ToGetSharedImageVersionsImageOutputWithContext(ctx context.Context) GetSharedImageVersionsImageOutput

type GetSharedImageVersionsImageTargetRegion

type GetSharedImageVersionsImageTargetRegion struct {
	// The Azure Region in which this Image Version exists.
	Name string `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount int `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version.
	StorageAccountType string `pulumi:"storageAccountType"`
}

type GetSharedImageVersionsImageTargetRegionArgs

type GetSharedImageVersionsImageTargetRegionArgs struct {
	// The Azure Region in which this Image Version exists.
	Name pulumi.StringInput `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount pulumi.IntInput `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
}

func (GetSharedImageVersionsImageTargetRegionArgs) ElementType

func (GetSharedImageVersionsImageTargetRegionArgs) ToGetSharedImageVersionsImageTargetRegionOutput

func (i GetSharedImageVersionsImageTargetRegionArgs) ToGetSharedImageVersionsImageTargetRegionOutput() GetSharedImageVersionsImageTargetRegionOutput

func (GetSharedImageVersionsImageTargetRegionArgs) ToGetSharedImageVersionsImageTargetRegionOutputWithContext

func (i GetSharedImageVersionsImageTargetRegionArgs) ToGetSharedImageVersionsImageTargetRegionOutputWithContext(ctx context.Context) GetSharedImageVersionsImageTargetRegionOutput

type GetSharedImageVersionsImageTargetRegionArray

type GetSharedImageVersionsImageTargetRegionArray []GetSharedImageVersionsImageTargetRegionInput

func (GetSharedImageVersionsImageTargetRegionArray) ElementType

func (GetSharedImageVersionsImageTargetRegionArray) ToGetSharedImageVersionsImageTargetRegionArrayOutput

func (i GetSharedImageVersionsImageTargetRegionArray) ToGetSharedImageVersionsImageTargetRegionArrayOutput() GetSharedImageVersionsImageTargetRegionArrayOutput

func (GetSharedImageVersionsImageTargetRegionArray) ToGetSharedImageVersionsImageTargetRegionArrayOutputWithContext

func (i GetSharedImageVersionsImageTargetRegionArray) ToGetSharedImageVersionsImageTargetRegionArrayOutputWithContext(ctx context.Context) GetSharedImageVersionsImageTargetRegionArrayOutput

type GetSharedImageVersionsImageTargetRegionArrayInput

type GetSharedImageVersionsImageTargetRegionArrayInput interface {
	pulumi.Input

	ToGetSharedImageVersionsImageTargetRegionArrayOutput() GetSharedImageVersionsImageTargetRegionArrayOutput
	ToGetSharedImageVersionsImageTargetRegionArrayOutputWithContext(context.Context) GetSharedImageVersionsImageTargetRegionArrayOutput
}

GetSharedImageVersionsImageTargetRegionArrayInput is an input type that accepts GetSharedImageVersionsImageTargetRegionArray and GetSharedImageVersionsImageTargetRegionArrayOutput values. You can construct a concrete instance of `GetSharedImageVersionsImageTargetRegionArrayInput` via:

GetSharedImageVersionsImageTargetRegionArray{ GetSharedImageVersionsImageTargetRegionArgs{...} }

type GetSharedImageVersionsImageTargetRegionArrayOutput

type GetSharedImageVersionsImageTargetRegionArrayOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionsImageTargetRegionArrayOutput) ElementType

func (GetSharedImageVersionsImageTargetRegionArrayOutput) Index

func (GetSharedImageVersionsImageTargetRegionArrayOutput) ToGetSharedImageVersionsImageTargetRegionArrayOutput

func (o GetSharedImageVersionsImageTargetRegionArrayOutput) ToGetSharedImageVersionsImageTargetRegionArrayOutput() GetSharedImageVersionsImageTargetRegionArrayOutput

func (GetSharedImageVersionsImageTargetRegionArrayOutput) ToGetSharedImageVersionsImageTargetRegionArrayOutputWithContext

func (o GetSharedImageVersionsImageTargetRegionArrayOutput) ToGetSharedImageVersionsImageTargetRegionArrayOutputWithContext(ctx context.Context) GetSharedImageVersionsImageTargetRegionArrayOutput

type GetSharedImageVersionsImageTargetRegionInput

type GetSharedImageVersionsImageTargetRegionInput interface {
	pulumi.Input

	ToGetSharedImageVersionsImageTargetRegionOutput() GetSharedImageVersionsImageTargetRegionOutput
	ToGetSharedImageVersionsImageTargetRegionOutputWithContext(context.Context) GetSharedImageVersionsImageTargetRegionOutput
}

GetSharedImageVersionsImageTargetRegionInput is an input type that accepts GetSharedImageVersionsImageTargetRegionArgs and GetSharedImageVersionsImageTargetRegionOutput values. You can construct a concrete instance of `GetSharedImageVersionsImageTargetRegionInput` via:

GetSharedImageVersionsImageTargetRegionArgs{...}

type GetSharedImageVersionsImageTargetRegionOutput

type GetSharedImageVersionsImageTargetRegionOutput struct{ *pulumi.OutputState }

func (GetSharedImageVersionsImageTargetRegionOutput) ElementType

func (GetSharedImageVersionsImageTargetRegionOutput) Name

The Azure Region in which this Image Version exists.

func (GetSharedImageVersionsImageTargetRegionOutput) RegionalReplicaCount

The number of replicas of the Image Version to be created per region.

func (GetSharedImageVersionsImageTargetRegionOutput) StorageAccountType

The storage account type for the image version.

func (GetSharedImageVersionsImageTargetRegionOutput) ToGetSharedImageVersionsImageTargetRegionOutput

func (o GetSharedImageVersionsImageTargetRegionOutput) ToGetSharedImageVersionsImageTargetRegionOutput() GetSharedImageVersionsImageTargetRegionOutput

func (GetSharedImageVersionsImageTargetRegionOutput) ToGetSharedImageVersionsImageTargetRegionOutputWithContext

func (o GetSharedImageVersionsImageTargetRegionOutput) ToGetSharedImageVersionsImageTargetRegionOutputWithContext(ctx context.Context) GetSharedImageVersionsImageTargetRegionOutput

type GetSharedImageVersionsOutputArgs

type GetSharedImageVersionsOutputArgs struct {
	// The name of the Shared Image in which the Shared Image exists.
	GalleryName pulumi.StringInput `pulumi:"galleryName"`
	// The name of the Shared Image in which this Version exists.
	ImageName pulumi.StringInput `pulumi:"imageName"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// A mapping of tags to filter the list of images against.
	TagsFilter pulumi.StringMapInput `pulumi:"tagsFilter"`
}

A collection of arguments for invoking getSharedImageVersions.

func (GetSharedImageVersionsOutputArgs) ElementType

type GetSharedImageVersionsResult

type GetSharedImageVersionsResult struct {
	GalleryName string `pulumi:"galleryName"`
	// The provider-assigned unique ID for this managed resource.
	Id        string `pulumi:"id"`
	ImageName string `pulumi:"imageName"`
	// An `images` block as defined below:
	Images            []GetSharedImageVersionsImage `pulumi:"images"`
	ResourceGroupName string                        `pulumi:"resourceGroupName"`
	TagsFilter        map[string]string             `pulumi:"tagsFilter"`
}

A collection of values returned by getSharedImageVersions.

func GetSharedImageVersions

func GetSharedImageVersions(ctx *pulumi.Context, args *GetSharedImageVersionsArgs, opts ...pulumi.InvokeOption) (*GetSharedImageVersionsResult, error)

Use this data source to access information about existing Versions of a Shared Image within a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.GetSharedImageVersions(ctx, &compute.GetSharedImageVersionsArgs{
			ImageName:         "my-image",
			GalleryName:       "my-image-gallery",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSharedImageVersionsResultOutput

type GetSharedImageVersionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSharedImageVersions.

func (GetSharedImageVersionsResultOutput) ElementType

func (GetSharedImageVersionsResultOutput) GalleryName

func (GetSharedImageVersionsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSharedImageVersionsResultOutput) ImageName

func (GetSharedImageVersionsResultOutput) Images

An `images` block as defined below:

func (GetSharedImageVersionsResultOutput) ResourceGroupName

func (GetSharedImageVersionsResultOutput) TagsFilter

func (GetSharedImageVersionsResultOutput) ToGetSharedImageVersionsResultOutput

func (o GetSharedImageVersionsResultOutput) ToGetSharedImageVersionsResultOutput() GetSharedImageVersionsResultOutput

func (GetSharedImageVersionsResultOutput) ToGetSharedImageVersionsResultOutputWithContext

func (o GetSharedImageVersionsResultOutput) ToGetSharedImageVersionsResultOutputWithContext(ctx context.Context) GetSharedImageVersionsResultOutput

type GetSnapshotEncryptionSetting

type GetSnapshotEncryptionSetting struct {
	DiskEncryptionKeys []GetSnapshotEncryptionSettingDiskEncryptionKey `pulumi:"diskEncryptionKeys"`
	Enabled            bool                                            `pulumi:"enabled"`
	KeyEncryptionKeys  []GetSnapshotEncryptionSettingKeyEncryptionKey  `pulumi:"keyEncryptionKeys"`
}

type GetSnapshotEncryptionSettingArgs

type GetSnapshotEncryptionSettingArgs struct {
	DiskEncryptionKeys GetSnapshotEncryptionSettingDiskEncryptionKeyArrayInput `pulumi:"diskEncryptionKeys"`
	Enabled            pulumi.BoolInput                                        `pulumi:"enabled"`
	KeyEncryptionKeys  GetSnapshotEncryptionSettingKeyEncryptionKeyArrayInput  `pulumi:"keyEncryptionKeys"`
}

func (GetSnapshotEncryptionSettingArgs) ElementType

func (GetSnapshotEncryptionSettingArgs) ToGetSnapshotEncryptionSettingOutput

func (i GetSnapshotEncryptionSettingArgs) ToGetSnapshotEncryptionSettingOutput() GetSnapshotEncryptionSettingOutput

func (GetSnapshotEncryptionSettingArgs) ToGetSnapshotEncryptionSettingOutputWithContext

func (i GetSnapshotEncryptionSettingArgs) ToGetSnapshotEncryptionSettingOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingOutput

type GetSnapshotEncryptionSettingArray

type GetSnapshotEncryptionSettingArray []GetSnapshotEncryptionSettingInput

func (GetSnapshotEncryptionSettingArray) ElementType

func (GetSnapshotEncryptionSettingArray) ToGetSnapshotEncryptionSettingArrayOutput

func (i GetSnapshotEncryptionSettingArray) ToGetSnapshotEncryptionSettingArrayOutput() GetSnapshotEncryptionSettingArrayOutput

func (GetSnapshotEncryptionSettingArray) ToGetSnapshotEncryptionSettingArrayOutputWithContext

func (i GetSnapshotEncryptionSettingArray) ToGetSnapshotEncryptionSettingArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingArrayOutput

type GetSnapshotEncryptionSettingArrayInput

type GetSnapshotEncryptionSettingArrayInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingArrayOutput() GetSnapshotEncryptionSettingArrayOutput
	ToGetSnapshotEncryptionSettingArrayOutputWithContext(context.Context) GetSnapshotEncryptionSettingArrayOutput
}

GetSnapshotEncryptionSettingArrayInput is an input type that accepts GetSnapshotEncryptionSettingArray and GetSnapshotEncryptionSettingArrayOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingArrayInput` via:

GetSnapshotEncryptionSettingArray{ GetSnapshotEncryptionSettingArgs{...} }

type GetSnapshotEncryptionSettingArrayOutput

type GetSnapshotEncryptionSettingArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingArrayOutput) ElementType

func (GetSnapshotEncryptionSettingArrayOutput) Index

func (GetSnapshotEncryptionSettingArrayOutput) ToGetSnapshotEncryptionSettingArrayOutput

func (o GetSnapshotEncryptionSettingArrayOutput) ToGetSnapshotEncryptionSettingArrayOutput() GetSnapshotEncryptionSettingArrayOutput

func (GetSnapshotEncryptionSettingArrayOutput) ToGetSnapshotEncryptionSettingArrayOutputWithContext

func (o GetSnapshotEncryptionSettingArrayOutput) ToGetSnapshotEncryptionSettingArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingArrayOutput

type GetSnapshotEncryptionSettingDiskEncryptionKey

type GetSnapshotEncryptionSettingDiskEncryptionKey struct {
	SecretUrl     string `pulumi:"secretUrl"`
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type GetSnapshotEncryptionSettingDiskEncryptionKeyArgs

type GetSnapshotEncryptionSettingDiskEncryptionKeyArgs struct {
	SecretUrl     pulumi.StringInput `pulumi:"secretUrl"`
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArgs) ElementType

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArgs) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutput

func (i GetSnapshotEncryptionSettingDiskEncryptionKeyArgs) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutput() GetSnapshotEncryptionSettingDiskEncryptionKeyOutput

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArgs) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutputWithContext

func (i GetSnapshotEncryptionSettingDiskEncryptionKeyArgs) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyOutput

type GetSnapshotEncryptionSettingDiskEncryptionKeyArray

type GetSnapshotEncryptionSettingDiskEncryptionKeyArray []GetSnapshotEncryptionSettingDiskEncryptionKeyInput

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArray) ElementType

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArray) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

func (i GetSnapshotEncryptionSettingDiskEncryptionKeyArray) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput() GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArray) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutputWithContext

func (i GetSnapshotEncryptionSettingDiskEncryptionKeyArray) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingDiskEncryptionKeyArrayInput

type GetSnapshotEncryptionSettingDiskEncryptionKeyArrayInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput() GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput
	ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput
}

GetSnapshotEncryptionSettingDiskEncryptionKeyArrayInput is an input type that accepts GetSnapshotEncryptionSettingDiskEncryptionKeyArray and GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingDiskEncryptionKeyArrayInput` via:

GetSnapshotEncryptionSettingDiskEncryptionKeyArray{ GetSnapshotEncryptionSettingDiskEncryptionKeyArgs{...} }

type GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput) ElementType

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput) Index

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

func (GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutputWithContext

func (o GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingDiskEncryptionKeyInput

type GetSnapshotEncryptionSettingDiskEncryptionKeyInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutput() GetSnapshotEncryptionSettingDiskEncryptionKeyOutput
	ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutputWithContext(context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyOutput
}

GetSnapshotEncryptionSettingDiskEncryptionKeyInput is an input type that accepts GetSnapshotEncryptionSettingDiskEncryptionKeyArgs and GetSnapshotEncryptionSettingDiskEncryptionKeyOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingDiskEncryptionKeyInput` via:

GetSnapshotEncryptionSettingDiskEncryptionKeyArgs{...}

type GetSnapshotEncryptionSettingDiskEncryptionKeyOutput

type GetSnapshotEncryptionSettingDiskEncryptionKeyOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) ElementType

func (GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) SecretUrl

func (GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) SourceVaultId

func (GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutput

func (o GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutput() GetSnapshotEncryptionSettingDiskEncryptionKeyOutput

func (GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutputWithContext

func (o GetSnapshotEncryptionSettingDiskEncryptionKeyOutput) ToGetSnapshotEncryptionSettingDiskEncryptionKeyOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingDiskEncryptionKeyOutput

type GetSnapshotEncryptionSettingInput

type GetSnapshotEncryptionSettingInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingOutput() GetSnapshotEncryptionSettingOutput
	ToGetSnapshotEncryptionSettingOutputWithContext(context.Context) GetSnapshotEncryptionSettingOutput
}

GetSnapshotEncryptionSettingInput is an input type that accepts GetSnapshotEncryptionSettingArgs and GetSnapshotEncryptionSettingOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingInput` via:

GetSnapshotEncryptionSettingArgs{...}

type GetSnapshotEncryptionSettingKeyEncryptionKey

type GetSnapshotEncryptionSettingKeyEncryptionKey struct {
	KeyUrl        string `pulumi:"keyUrl"`
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type GetSnapshotEncryptionSettingKeyEncryptionKeyArgs

type GetSnapshotEncryptionSettingKeyEncryptionKeyArgs struct {
	KeyUrl        pulumi.StringInput `pulumi:"keyUrl"`
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArgs) ElementType

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArgs) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutput

func (i GetSnapshotEncryptionSettingKeyEncryptionKeyArgs) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutput() GetSnapshotEncryptionSettingKeyEncryptionKeyOutput

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArgs) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutputWithContext

func (i GetSnapshotEncryptionSettingKeyEncryptionKeyArgs) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyOutput

type GetSnapshotEncryptionSettingKeyEncryptionKeyArray

type GetSnapshotEncryptionSettingKeyEncryptionKeyArray []GetSnapshotEncryptionSettingKeyEncryptionKeyInput

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArray) ElementType

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArray) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

func (i GetSnapshotEncryptionSettingKeyEncryptionKeyArray) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput() GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArray) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutputWithContext

func (i GetSnapshotEncryptionSettingKeyEncryptionKeyArray) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingKeyEncryptionKeyArrayInput

type GetSnapshotEncryptionSettingKeyEncryptionKeyArrayInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput() GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput
	ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput
}

GetSnapshotEncryptionSettingKeyEncryptionKeyArrayInput is an input type that accepts GetSnapshotEncryptionSettingKeyEncryptionKeyArray and GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingKeyEncryptionKeyArrayInput` via:

GetSnapshotEncryptionSettingKeyEncryptionKeyArray{ GetSnapshotEncryptionSettingKeyEncryptionKeyArgs{...} }

type GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput) ElementType

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput) Index

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

func (GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutputWithContext

func (o GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyArrayOutput

type GetSnapshotEncryptionSettingKeyEncryptionKeyInput

type GetSnapshotEncryptionSettingKeyEncryptionKeyInput interface {
	pulumi.Input

	ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutput() GetSnapshotEncryptionSettingKeyEncryptionKeyOutput
	ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutputWithContext(context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyOutput
}

GetSnapshotEncryptionSettingKeyEncryptionKeyInput is an input type that accepts GetSnapshotEncryptionSettingKeyEncryptionKeyArgs and GetSnapshotEncryptionSettingKeyEncryptionKeyOutput values. You can construct a concrete instance of `GetSnapshotEncryptionSettingKeyEncryptionKeyInput` via:

GetSnapshotEncryptionSettingKeyEncryptionKeyArgs{...}

type GetSnapshotEncryptionSettingKeyEncryptionKeyOutput

type GetSnapshotEncryptionSettingKeyEncryptionKeyOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) ElementType

func (GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) KeyUrl

func (GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) SourceVaultId

func (GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutput

func (o GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutput() GetSnapshotEncryptionSettingKeyEncryptionKeyOutput

func (GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutputWithContext

func (o GetSnapshotEncryptionSettingKeyEncryptionKeyOutput) ToGetSnapshotEncryptionSettingKeyEncryptionKeyOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingKeyEncryptionKeyOutput

type GetSnapshotEncryptionSettingOutput

type GetSnapshotEncryptionSettingOutput struct{ *pulumi.OutputState }

func (GetSnapshotEncryptionSettingOutput) DiskEncryptionKeys

func (GetSnapshotEncryptionSettingOutput) ElementType

func (GetSnapshotEncryptionSettingOutput) Enabled

func (GetSnapshotEncryptionSettingOutput) KeyEncryptionKeys

func (GetSnapshotEncryptionSettingOutput) ToGetSnapshotEncryptionSettingOutput

func (o GetSnapshotEncryptionSettingOutput) ToGetSnapshotEncryptionSettingOutput() GetSnapshotEncryptionSettingOutput

func (GetSnapshotEncryptionSettingOutput) ToGetSnapshotEncryptionSettingOutputWithContext

func (o GetSnapshotEncryptionSettingOutput) ToGetSnapshotEncryptionSettingOutputWithContext(ctx context.Context) GetSnapshotEncryptionSettingOutput

type GetVirtualMachineIdentity

type GetVirtualMachineIdentity struct {
	// The list of User Managed Identity IDs which are assigned to the Virtual Machine.
	IdentityIds []string `pulumi:"identityIds"`
	// The ID of the System Managed Service Principal assigned to the Virtual Machine.
	PrincipalId string `pulumi:"principalId"`
	// The ID of the Tenant of the System Managed Service Principal assigned to the Virtual Machine.
	TenantId string `pulumi:"tenantId"`
	// The identity type of the Managed Identity assigned to the Virtual Machine.
	Type string `pulumi:"type"`
}

type GetVirtualMachineIdentityArgs

type GetVirtualMachineIdentityArgs struct {
	// The list of User Managed Identity IDs which are assigned to the Virtual Machine.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The ID of the System Managed Service Principal assigned to the Virtual Machine.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The ID of the Tenant of the System Managed Service Principal assigned to the Virtual Machine.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The identity type of the Managed Identity assigned to the Virtual Machine.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetVirtualMachineIdentityArgs) ElementType

func (GetVirtualMachineIdentityArgs) ToGetVirtualMachineIdentityOutput

func (i GetVirtualMachineIdentityArgs) ToGetVirtualMachineIdentityOutput() GetVirtualMachineIdentityOutput

func (GetVirtualMachineIdentityArgs) ToGetVirtualMachineIdentityOutputWithContext

func (i GetVirtualMachineIdentityArgs) ToGetVirtualMachineIdentityOutputWithContext(ctx context.Context) GetVirtualMachineIdentityOutput

type GetVirtualMachineIdentityArray

type GetVirtualMachineIdentityArray []GetVirtualMachineIdentityInput

func (GetVirtualMachineIdentityArray) ElementType

func (GetVirtualMachineIdentityArray) ToGetVirtualMachineIdentityArrayOutput

func (i GetVirtualMachineIdentityArray) ToGetVirtualMachineIdentityArrayOutput() GetVirtualMachineIdentityArrayOutput

func (GetVirtualMachineIdentityArray) ToGetVirtualMachineIdentityArrayOutputWithContext

func (i GetVirtualMachineIdentityArray) ToGetVirtualMachineIdentityArrayOutputWithContext(ctx context.Context) GetVirtualMachineIdentityArrayOutput

type GetVirtualMachineIdentityArrayInput

type GetVirtualMachineIdentityArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineIdentityArrayOutput() GetVirtualMachineIdentityArrayOutput
	ToGetVirtualMachineIdentityArrayOutputWithContext(context.Context) GetVirtualMachineIdentityArrayOutput
}

GetVirtualMachineIdentityArrayInput is an input type that accepts GetVirtualMachineIdentityArray and GetVirtualMachineIdentityArrayOutput values. You can construct a concrete instance of `GetVirtualMachineIdentityArrayInput` via:

GetVirtualMachineIdentityArray{ GetVirtualMachineIdentityArgs{...} }

type GetVirtualMachineIdentityArrayOutput

type GetVirtualMachineIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineIdentityArrayOutput) ElementType

func (GetVirtualMachineIdentityArrayOutput) Index

func (GetVirtualMachineIdentityArrayOutput) ToGetVirtualMachineIdentityArrayOutput

func (o GetVirtualMachineIdentityArrayOutput) ToGetVirtualMachineIdentityArrayOutput() GetVirtualMachineIdentityArrayOutput

func (GetVirtualMachineIdentityArrayOutput) ToGetVirtualMachineIdentityArrayOutputWithContext

func (o GetVirtualMachineIdentityArrayOutput) ToGetVirtualMachineIdentityArrayOutputWithContext(ctx context.Context) GetVirtualMachineIdentityArrayOutput

type GetVirtualMachineIdentityInput

type GetVirtualMachineIdentityInput interface {
	pulumi.Input

	ToGetVirtualMachineIdentityOutput() GetVirtualMachineIdentityOutput
	ToGetVirtualMachineIdentityOutputWithContext(context.Context) GetVirtualMachineIdentityOutput
}

GetVirtualMachineIdentityInput is an input type that accepts GetVirtualMachineIdentityArgs and GetVirtualMachineIdentityOutput values. You can construct a concrete instance of `GetVirtualMachineIdentityInput` via:

GetVirtualMachineIdentityArgs{...}

type GetVirtualMachineIdentityOutput

type GetVirtualMachineIdentityOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineIdentityOutput) ElementType

func (GetVirtualMachineIdentityOutput) IdentityIds

The list of User Managed Identity IDs which are assigned to the Virtual Machine.

func (GetVirtualMachineIdentityOutput) PrincipalId

The ID of the System Managed Service Principal assigned to the Virtual Machine.

func (GetVirtualMachineIdentityOutput) TenantId

The ID of the Tenant of the System Managed Service Principal assigned to the Virtual Machine.

func (GetVirtualMachineIdentityOutput) ToGetVirtualMachineIdentityOutput

func (o GetVirtualMachineIdentityOutput) ToGetVirtualMachineIdentityOutput() GetVirtualMachineIdentityOutput

func (GetVirtualMachineIdentityOutput) ToGetVirtualMachineIdentityOutputWithContext

func (o GetVirtualMachineIdentityOutput) ToGetVirtualMachineIdentityOutputWithContext(ctx context.Context) GetVirtualMachineIdentityOutput

func (GetVirtualMachineIdentityOutput) Type

The identity type of the Managed Identity assigned to the Virtual Machine.

type GetVirtualMachineScaleSetArgs

type GetVirtualMachineScaleSetArgs struct {
	// The name of this Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Virtual Machine Scale Set exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getVirtualMachineScaleSet.

type GetVirtualMachineScaleSetIdentity

type GetVirtualMachineScaleSetIdentity struct {
	// The list of User Assigned Managed Identity IDs assigned to this Virtual Machine Scale Set.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.
	TenantId string `pulumi:"tenantId"`
	// The Type of IP Tag.
	Type string `pulumi:"type"`
}

type GetVirtualMachineScaleSetIdentityArgs

type GetVirtualMachineScaleSetIdentityArgs struct {
	// The list of User Assigned Managed Identity IDs assigned to this Virtual Machine Scale Set.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The Type of IP Tag.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetVirtualMachineScaleSetIdentityArgs) ElementType

func (GetVirtualMachineScaleSetIdentityArgs) ToGetVirtualMachineScaleSetIdentityOutput

func (i GetVirtualMachineScaleSetIdentityArgs) ToGetVirtualMachineScaleSetIdentityOutput() GetVirtualMachineScaleSetIdentityOutput

func (GetVirtualMachineScaleSetIdentityArgs) ToGetVirtualMachineScaleSetIdentityOutputWithContext

func (i GetVirtualMachineScaleSetIdentityArgs) ToGetVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetIdentityOutput

type GetVirtualMachineScaleSetIdentityArray

type GetVirtualMachineScaleSetIdentityArray []GetVirtualMachineScaleSetIdentityInput

func (GetVirtualMachineScaleSetIdentityArray) ElementType

func (GetVirtualMachineScaleSetIdentityArray) ToGetVirtualMachineScaleSetIdentityArrayOutput

func (i GetVirtualMachineScaleSetIdentityArray) ToGetVirtualMachineScaleSetIdentityArrayOutput() GetVirtualMachineScaleSetIdentityArrayOutput

func (GetVirtualMachineScaleSetIdentityArray) ToGetVirtualMachineScaleSetIdentityArrayOutputWithContext

func (i GetVirtualMachineScaleSetIdentityArray) ToGetVirtualMachineScaleSetIdentityArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetIdentityArrayOutput

type GetVirtualMachineScaleSetIdentityArrayInput

type GetVirtualMachineScaleSetIdentityArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetIdentityArrayOutput() GetVirtualMachineScaleSetIdentityArrayOutput
	ToGetVirtualMachineScaleSetIdentityArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetIdentityArrayOutput
}

GetVirtualMachineScaleSetIdentityArrayInput is an input type that accepts GetVirtualMachineScaleSetIdentityArray and GetVirtualMachineScaleSetIdentityArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetIdentityArrayInput` via:

GetVirtualMachineScaleSetIdentityArray{ GetVirtualMachineScaleSetIdentityArgs{...} }

type GetVirtualMachineScaleSetIdentityArrayOutput

type GetVirtualMachineScaleSetIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetIdentityArrayOutput) ElementType

func (GetVirtualMachineScaleSetIdentityArrayOutput) Index

func (GetVirtualMachineScaleSetIdentityArrayOutput) ToGetVirtualMachineScaleSetIdentityArrayOutput

func (o GetVirtualMachineScaleSetIdentityArrayOutput) ToGetVirtualMachineScaleSetIdentityArrayOutput() GetVirtualMachineScaleSetIdentityArrayOutput

func (GetVirtualMachineScaleSetIdentityArrayOutput) ToGetVirtualMachineScaleSetIdentityArrayOutputWithContext

func (o GetVirtualMachineScaleSetIdentityArrayOutput) ToGetVirtualMachineScaleSetIdentityArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetIdentityArrayOutput

type GetVirtualMachineScaleSetIdentityInput

type GetVirtualMachineScaleSetIdentityInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetIdentityOutput() GetVirtualMachineScaleSetIdentityOutput
	ToGetVirtualMachineScaleSetIdentityOutputWithContext(context.Context) GetVirtualMachineScaleSetIdentityOutput
}

GetVirtualMachineScaleSetIdentityInput is an input type that accepts GetVirtualMachineScaleSetIdentityArgs and GetVirtualMachineScaleSetIdentityOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetIdentityInput` via:

GetVirtualMachineScaleSetIdentityArgs{...}

type GetVirtualMachineScaleSetIdentityOutput

type GetVirtualMachineScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetIdentityOutput) ElementType

func (GetVirtualMachineScaleSetIdentityOutput) IdentityIds

The list of User Assigned Managed Identity IDs assigned to this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetIdentityOutput) PrincipalId

The Principal ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetIdentityOutput) TenantId

The Tenant ID of the System Assigned Managed Service Identity that is configured on this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetIdentityOutput) ToGetVirtualMachineScaleSetIdentityOutput

func (o GetVirtualMachineScaleSetIdentityOutput) ToGetVirtualMachineScaleSetIdentityOutput() GetVirtualMachineScaleSetIdentityOutput

func (GetVirtualMachineScaleSetIdentityOutput) ToGetVirtualMachineScaleSetIdentityOutputWithContext

func (o GetVirtualMachineScaleSetIdentityOutput) ToGetVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetIdentityOutput

func (GetVirtualMachineScaleSetIdentityOutput) Type

The Type of IP Tag.

type GetVirtualMachineScaleSetInstance added in v5.16.0

type GetVirtualMachineScaleSetInstance struct {
	// The Hostname of this Virtual Machine.
	ComputerName string `pulumi:"computerName"`
	// The Instance ID of this Virtual Machine.
	InstanceId string `pulumi:"instanceId"`
	// Whether the latest model has been applied to this Virtual Machine.
	LatestModelApplied bool `pulumi:"latestModelApplied"`
	// The name of this Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The power state of the virtual machine.
	PowerState string `pulumi:"powerState"`
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress string `pulumi:"privateIpAddress"`
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses []string `pulumi:"privateIpAddresses"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddress string `pulumi:"publicIpAddress"`
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses []string `pulumi:"publicIpAddresses"`
	// The unique ID of the virtual machine.
	VirtualMachineId string `pulumi:"virtualMachineId"`
	// The zones of the virtual machine.
	Zone string `pulumi:"zone"`
}

type GetVirtualMachineScaleSetInstanceArgs added in v5.16.0

type GetVirtualMachineScaleSetInstanceArgs struct {
	// The Hostname of this Virtual Machine.
	ComputerName pulumi.StringInput `pulumi:"computerName"`
	// The Instance ID of this Virtual Machine.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Whether the latest model has been applied to this Virtual Machine.
	LatestModelApplied pulumi.BoolInput `pulumi:"latestModelApplied"`
	// The name of this Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The power state of the virtual machine.
	PowerState pulumi.StringInput `pulumi:"powerState"`
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress pulumi.StringInput `pulumi:"privateIpAddress"`
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses pulumi.StringArrayInput `pulumi:"privateIpAddresses"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddress pulumi.StringInput `pulumi:"publicIpAddress"`
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses pulumi.StringArrayInput `pulumi:"publicIpAddresses"`
	// The unique ID of the virtual machine.
	VirtualMachineId pulumi.StringInput `pulumi:"virtualMachineId"`
	// The zones of the virtual machine.
	Zone pulumi.StringInput `pulumi:"zone"`
}

func (GetVirtualMachineScaleSetInstanceArgs) ElementType added in v5.16.0

func (GetVirtualMachineScaleSetInstanceArgs) ToGetVirtualMachineScaleSetInstanceOutput added in v5.16.0

func (i GetVirtualMachineScaleSetInstanceArgs) ToGetVirtualMachineScaleSetInstanceOutput() GetVirtualMachineScaleSetInstanceOutput

func (GetVirtualMachineScaleSetInstanceArgs) ToGetVirtualMachineScaleSetInstanceOutputWithContext added in v5.16.0

func (i GetVirtualMachineScaleSetInstanceArgs) ToGetVirtualMachineScaleSetInstanceOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetInstanceOutput

type GetVirtualMachineScaleSetInstanceArray added in v5.16.0

type GetVirtualMachineScaleSetInstanceArray []GetVirtualMachineScaleSetInstanceInput

func (GetVirtualMachineScaleSetInstanceArray) ElementType added in v5.16.0

func (GetVirtualMachineScaleSetInstanceArray) ToGetVirtualMachineScaleSetInstanceArrayOutput added in v5.16.0

func (i GetVirtualMachineScaleSetInstanceArray) ToGetVirtualMachineScaleSetInstanceArrayOutput() GetVirtualMachineScaleSetInstanceArrayOutput

func (GetVirtualMachineScaleSetInstanceArray) ToGetVirtualMachineScaleSetInstanceArrayOutputWithContext added in v5.16.0

func (i GetVirtualMachineScaleSetInstanceArray) ToGetVirtualMachineScaleSetInstanceArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetInstanceArrayOutput

type GetVirtualMachineScaleSetInstanceArrayInput added in v5.16.0

type GetVirtualMachineScaleSetInstanceArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetInstanceArrayOutput() GetVirtualMachineScaleSetInstanceArrayOutput
	ToGetVirtualMachineScaleSetInstanceArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetInstanceArrayOutput
}

GetVirtualMachineScaleSetInstanceArrayInput is an input type that accepts GetVirtualMachineScaleSetInstanceArray and GetVirtualMachineScaleSetInstanceArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetInstanceArrayInput` via:

GetVirtualMachineScaleSetInstanceArray{ GetVirtualMachineScaleSetInstanceArgs{...} }

type GetVirtualMachineScaleSetInstanceArrayOutput added in v5.16.0

type GetVirtualMachineScaleSetInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetInstanceArrayOutput) ElementType added in v5.16.0

func (GetVirtualMachineScaleSetInstanceArrayOutput) Index added in v5.16.0

func (GetVirtualMachineScaleSetInstanceArrayOutput) ToGetVirtualMachineScaleSetInstanceArrayOutput added in v5.16.0

func (o GetVirtualMachineScaleSetInstanceArrayOutput) ToGetVirtualMachineScaleSetInstanceArrayOutput() GetVirtualMachineScaleSetInstanceArrayOutput

func (GetVirtualMachineScaleSetInstanceArrayOutput) ToGetVirtualMachineScaleSetInstanceArrayOutputWithContext added in v5.16.0

func (o GetVirtualMachineScaleSetInstanceArrayOutput) ToGetVirtualMachineScaleSetInstanceArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetInstanceArrayOutput

type GetVirtualMachineScaleSetInstanceInput added in v5.16.0

type GetVirtualMachineScaleSetInstanceInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetInstanceOutput() GetVirtualMachineScaleSetInstanceOutput
	ToGetVirtualMachineScaleSetInstanceOutputWithContext(context.Context) GetVirtualMachineScaleSetInstanceOutput
}

GetVirtualMachineScaleSetInstanceInput is an input type that accepts GetVirtualMachineScaleSetInstanceArgs and GetVirtualMachineScaleSetInstanceOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetInstanceInput` via:

GetVirtualMachineScaleSetInstanceArgs{...}

type GetVirtualMachineScaleSetInstanceOutput added in v5.16.0

type GetVirtualMachineScaleSetInstanceOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetInstanceOutput) ComputerName added in v5.16.0

The Hostname of this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) ElementType added in v5.16.0

func (GetVirtualMachineScaleSetInstanceOutput) InstanceId added in v5.16.0

The Instance ID of this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) LatestModelApplied added in v5.16.0

Whether the latest model has been applied to this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) Name added in v5.16.0

The name of this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetInstanceOutput) PowerState added in v5.44.0

The power state of the virtual machine.

func (GetVirtualMachineScaleSetInstanceOutput) PrivateIpAddress added in v5.16.0

The Primary Private IP Address assigned to this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) PrivateIpAddresses added in v5.16.0

A list of Private IP Addresses assigned to this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) PublicIpAddress added in v5.16.0

The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.

func (GetVirtualMachineScaleSetInstanceOutput) PublicIpAddresses added in v5.16.0

A list of the Public IP Addresses assigned to this Virtual Machine.

func (GetVirtualMachineScaleSetInstanceOutput) ToGetVirtualMachineScaleSetInstanceOutput added in v5.16.0

func (o GetVirtualMachineScaleSetInstanceOutput) ToGetVirtualMachineScaleSetInstanceOutput() GetVirtualMachineScaleSetInstanceOutput

func (GetVirtualMachineScaleSetInstanceOutput) ToGetVirtualMachineScaleSetInstanceOutputWithContext added in v5.16.0

func (o GetVirtualMachineScaleSetInstanceOutput) ToGetVirtualMachineScaleSetInstanceOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetInstanceOutput

func (GetVirtualMachineScaleSetInstanceOutput) VirtualMachineId added in v5.16.0

The unique ID of the virtual machine.

func (GetVirtualMachineScaleSetInstanceOutput) Zone added in v5.16.0

The zones of the virtual machine.

type GetVirtualMachineScaleSetNetworkInterface

type GetVirtualMachineScaleSetNetworkInterface struct {
	// An array of the DNS servers in use.
	DnsServers []string `pulumi:"dnsServers"`
	// Whether to enable accelerated networking or not.
	EnableAcceleratedNetworking bool `pulumi:"enableAcceleratedNetworking"`
	// Whether IP forwarding is enabled on this NIC.
	EnableIpForwarding bool `pulumi:"enableIpForwarding"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations []GetVirtualMachineScaleSetNetworkInterfaceIpConfiguration `pulumi:"ipConfigurations"`
	// The name of this Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The identifier for the network security group.
	NetworkSecurityGroupId string `pulumi:"networkSecurityGroupId"`
	// If this ipConfiguration is the primary one.
	Primary bool `pulumi:"primary"`
}

type GetVirtualMachineScaleSetNetworkInterfaceArgs

type GetVirtualMachineScaleSetNetworkInterfaceArgs struct {
	// An array of the DNS servers in use.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
	// Whether to enable accelerated networking or not.
	EnableAcceleratedNetworking pulumi.BoolInput `pulumi:"enableAcceleratedNetworking"`
	// Whether IP forwarding is enabled on this NIC.
	EnableIpForwarding pulumi.BoolInput `pulumi:"enableIpForwarding"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// The name of this Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The identifier for the network security group.
	NetworkSecurityGroupId pulumi.StringInput `pulumi:"networkSecurityGroupId"`
	// If this ipConfiguration is the primary one.
	Primary pulumi.BoolInput `pulumi:"primary"`
}

func (GetVirtualMachineScaleSetNetworkInterfaceArgs) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceArgs) ToGetVirtualMachineScaleSetNetworkInterfaceOutput

func (i GetVirtualMachineScaleSetNetworkInterfaceArgs) ToGetVirtualMachineScaleSetNetworkInterfaceOutput() GetVirtualMachineScaleSetNetworkInterfaceOutput

func (GetVirtualMachineScaleSetNetworkInterfaceArgs) ToGetVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (i GetVirtualMachineScaleSetNetworkInterfaceArgs) ToGetVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceOutput

type GetVirtualMachineScaleSetNetworkInterfaceArray

type GetVirtualMachineScaleSetNetworkInterfaceArray []GetVirtualMachineScaleSetNetworkInterfaceInput

func (GetVirtualMachineScaleSetNetworkInterfaceArray) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceArray) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (i GetVirtualMachineScaleSetNetworkInterfaceArray) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutput() GetVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceArray) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (i GetVirtualMachineScaleSetNetworkInterfaceArray) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceArrayInput

type GetVirtualMachineScaleSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutput() GetVirtualMachineScaleSetNetworkInterfaceArrayOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceArrayOutput
}

GetVirtualMachineScaleSetNetworkInterfaceArrayInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceArray and GetVirtualMachineScaleSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceArrayInput` via:

GetVirtualMachineScaleSetNetworkInterfaceArray{ GetVirtualMachineScaleSetNetworkInterfaceArgs{...} }

type GetVirtualMachineScaleSetNetworkInterfaceArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceArrayOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceArrayOutput) Index

func (GetVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (o GetVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceInput

type GetVirtualMachineScaleSetNetworkInterfaceInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceOutput() GetVirtualMachineScaleSetNetworkInterfaceOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceOutput
}

GetVirtualMachineScaleSetNetworkInterfaceInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceArgs and GetVirtualMachineScaleSetNetworkInterfaceOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceInput` via:

GetVirtualMachineScaleSetNetworkInterfaceArgs{...}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfiguration

type GetVirtualMachineScaleSetNetworkInterfaceIpConfiguration struct {
	// An array of references to backend address pools of application gateways.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// The application security group IDs to use.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// An array of references to backend address pools of load balancers.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// An array of references to inbound NAT pools for load balancers.
	LoadBalancerInboundNatRulesIds []string `pulumi:"loadBalancerInboundNatRulesIds"`
	// The name of this Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// If this ipConfiguration is the primary one.
	Primary bool `pulumi:"primary"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddresses []GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress `pulumi:"publicIpAddresses"`
	// The identifier of the subnet.
	SubnetId string `pulumi:"subnetId"`
	// The Internet Protocol Version of the public IP address.
	Version string `pulumi:"version"`
}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs struct {
	// An array of references to backend address pools of application gateways.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// The application security group IDs to use.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// An array of references to backend address pools of load balancers.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// An array of references to inbound NAT pools for load balancers.
	LoadBalancerInboundNatRulesIds pulumi.StringArrayInput `pulumi:"loadBalancerInboundNatRulesIds"`
	// The name of this Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// If this ipConfiguration is the primary one.
	Primary pulumi.BoolInput `pulumi:"primary"`
	// The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.
	PublicIpAddresses GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The identifier of the subnet.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
	// The Internet Protocol Version of the public IP address.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (i GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray []GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (i GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{ GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...} }

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) Index

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (o GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds

An array of references to backend address pools of application gateways.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationSecurityGroupIds

The application security group IDs to use.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerBackendAddressPoolIds

An array of references to backend address pools of load balancers.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerInboundNatRulesIds

An array of references to inbound NAT pools for load balancers.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Name

The name of this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Primary

If this ipConfiguration is the primary one.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) PublicIpAddresses

The virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddress` is documented below.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) SubnetId

The identifier of the subnet.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (o GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Version

The Internet Protocol Version of the public IP address.

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress struct {
	// The domain name label for the DNS settings.
	DomainNameLabel string `pulumi:"domainNameLabel"`
	// The idle timeout in minutes.
	IdleTimeoutInMinutes int `pulumi:"idleTimeoutInMinutes"`
	// A list of `ipTag` blocks as defined below.
	IpTags []GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag `pulumi:"ipTags"`
	// The name of this Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The ID of the public IP prefix.
	PublicIpPrefixId string `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version of the public IP address.
	Version string `pulumi:"version"`
}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs struct {
	// The domain name label for the DNS settings.
	DomainNameLabel pulumi.StringInput `pulumi:"domainNameLabel"`
	// The idle timeout in minutes.
	IdleTimeoutInMinutes pulumi.IntInput `pulumi:"idleTimeoutInMinutes"`
	// A list of `ipTag` blocks as defined below.
	IpTags GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput `pulumi:"ipTags"`
	// The name of this Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the public IP prefix.
	PublicIpPrefixId pulumi.StringInput `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version of the public IP address.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray []GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

func (i GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray{ GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...} }

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag struct {
	// The IP Tag associated with the Public IP.
	Tag string `pulumi:"tag"`
	// The Type of IP Tag.
	Type string `pulumi:"type"`
}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs struct {
	// The IP Tag associated with the Public IP.
	Tag pulumi.StringInput `pulumi:"tag"`
	// The Type of IP Tag.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray []GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray{ GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...} }

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput interface {
	pulumi.Input

	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput() GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
	ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext(context.Context) GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
}

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput is an input type that accepts GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs and GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput values. You can construct a concrete instance of `GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput` via:

GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...}

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Tag

The IP Tag associated with the Public IP.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Type

The Type of IP Tag.

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

type GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) DomainNameLabel

The domain name label for the DNS settings.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IdleTimeoutInMinutes

The idle timeout in minutes.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IpTags

A list of `ipTag` blocks as defined below.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Name

The name of this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) PublicIpPrefixId

The ID of the public IP prefix.

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToGetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

func (GetVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Version added in v5.22.0

The Internet Protocol Version of the public IP address.

type GetVirtualMachineScaleSetNetworkInterfaceOutput

type GetVirtualMachineScaleSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) DnsServers

An array of the DNS servers in use.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) ElementType

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) EnableAcceleratedNetworking

func (o GetVirtualMachineScaleSetNetworkInterfaceOutput) EnableAcceleratedNetworking() pulumi.BoolOutput

Whether to enable accelerated networking or not.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) EnableIpForwarding

Whether IP forwarding is enabled on this NIC.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) IpConfigurations

An `ipConfiguration` block as documented below.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) Name

The name of this Virtual Machine Scale Set.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) NetworkSecurityGroupId

The identifier for the network security group.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) Primary

If this ipConfiguration is the primary one.

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) ToGetVirtualMachineScaleSetNetworkInterfaceOutput

func (o GetVirtualMachineScaleSetNetworkInterfaceOutput) ToGetVirtualMachineScaleSetNetworkInterfaceOutput() GetVirtualMachineScaleSetNetworkInterfaceOutput

func (GetVirtualMachineScaleSetNetworkInterfaceOutput) ToGetVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (o GetVirtualMachineScaleSetNetworkInterfaceOutput) ToGetVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetNetworkInterfaceOutput

type GetVirtualMachineScaleSetOutputArgs

type GetVirtualMachineScaleSetOutputArgs struct {
	// The name of this Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Virtual Machine Scale Set exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getVirtualMachineScaleSet.

func (GetVirtualMachineScaleSetOutputArgs) ElementType

type GetVirtualMachineScaleSetResult

type GetVirtualMachineScaleSetResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `identity` block as defined below.
	Identities []GetVirtualMachineScaleSetIdentity `pulumi:"identities"`
	// A list of `instances` blocks as defined below.
	Instances []GetVirtualMachineScaleSetInstance `pulumi:"instances"`
	// The Azure Region in which this Virtual Machine Scale Set exists.
	Location string `pulumi:"location"`
	// The name of the public IP address configuration
	Name string `pulumi:"name"`
	// A list of `networkInterface` blocks as defined below.
	NetworkInterfaces []GetVirtualMachineScaleSetNetworkInterface `pulumi:"networkInterfaces"`
	ResourceGroupName string                                      `pulumi:"resourceGroupName"`
}

A collection of values returned by getVirtualMachineScaleSet.

func GetVirtualMachineScaleSet

func GetVirtualMachineScaleSet(ctx *pulumi.Context, args *GetVirtualMachineScaleSetArgs, opts ...pulumi.InvokeOption) (*GetVirtualMachineScaleSetResult, error)

Use this data source to access information about an existing Virtual Machine Scale Set.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type GetVirtualMachineScaleSetResultOutput

type GetVirtualMachineScaleSetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVirtualMachineScaleSet.

func (GetVirtualMachineScaleSetResultOutput) ElementType

func (GetVirtualMachineScaleSetResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetVirtualMachineScaleSetResultOutput) Identities

A `identity` block as defined below.

func (GetVirtualMachineScaleSetResultOutput) Instances added in v5.16.0

A list of `instances` blocks as defined below.

func (GetVirtualMachineScaleSetResultOutput) Location

The Azure Region in which this Virtual Machine Scale Set exists.

func (GetVirtualMachineScaleSetResultOutput) Name

The name of the public IP address configuration

func (GetVirtualMachineScaleSetResultOutput) NetworkInterfaces

A list of `networkInterface` blocks as defined below.

func (GetVirtualMachineScaleSetResultOutput) ResourceGroupName

func (GetVirtualMachineScaleSetResultOutput) ToGetVirtualMachineScaleSetResultOutput

func (o GetVirtualMachineScaleSetResultOutput) ToGetVirtualMachineScaleSetResultOutput() GetVirtualMachineScaleSetResultOutput

func (GetVirtualMachineScaleSetResultOutput) ToGetVirtualMachineScaleSetResultOutputWithContext

func (o GetVirtualMachineScaleSetResultOutput) ToGetVirtualMachineScaleSetResultOutputWithContext(ctx context.Context) GetVirtualMachineScaleSetResultOutput

type Image

type Image struct {
	pulumi.CustomResourceState

	// One or more `dataDisk` blocks as defined below.
	DataDisks ImageDataDiskArrayOutput `pulumi:"dataDisks"`
	// The HyperVGenerationType of the VirtualMachine created from the image as `V1`, `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	//
	// > **Note:** `zoneResilient` can only be set to `true` if the image is stored in a region that supports availability zones.
	HyperVGeneration pulumi.StringPtrOutput `pulumi:"hyperVGeneration"`
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the image. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `osDisk` blocks as defined below. Changing this forces a new resource to be created.
	OsDisk ImageOsDiskPtrOutput `pulumi:"osDisk"`
	// The name of the resource group in which to create the image. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The Virtual Machine ID from which to create the image.
	SourceVirtualMachineId pulumi.StringPtrOutput `pulumi:"sourceVirtualMachineId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Is zone resiliency enabled? Defaults to `false`. Changing this forces a new resource to be created.
	ZoneResilient pulumi.BoolPtrOutput `pulumi:"zoneResilient"`
}

Manages a custom virtual machine image that can be used to create virtual machines.

## Example Usage

> **Note:** For a more complete example, see the `examples/image` directory within the GitHub Repository.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupVirtualMachine(ctx, &compute.LookupVirtualMachineArgs{
			Name:              "examplevm",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewImage(ctx, "example", &compute.ImageArgs{
			Name:                   pulumi.String("exampleimage"),
			Location:               pulumi.String(example.Location),
			ResourceGroupName:      pulumi.String(example.Name),
			SourceVirtualMachineId: pulumi.String(example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import azure:compute/image:Image example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/images/image1 ```

func GetImage

func GetImage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageState, opts ...pulumi.ResourceOption) (*Image, error)

GetImage gets an existing Image 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 NewImage

func NewImage(ctx *pulumi.Context,
	name string, args *ImageArgs, opts ...pulumi.ResourceOption) (*Image, error)

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

func (*Image) ElementType

func (*Image) ElementType() reflect.Type

func (*Image) ToImageOutput

func (i *Image) ToImageOutput() ImageOutput

func (*Image) ToImageOutputWithContext

func (i *Image) ToImageOutputWithContext(ctx context.Context) ImageOutput

type ImageArgs

type ImageArgs struct {
	// One or more `dataDisk` blocks as defined below.
	DataDisks ImageDataDiskArrayInput
	// The HyperVGenerationType of the VirtualMachine created from the image as `V1`, `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	//
	// > **Note:** `zoneResilient` can only be set to `true` if the image is stored in a region that supports availability zones.
	HyperVGeneration pulumi.StringPtrInput
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the image. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `osDisk` blocks as defined below. Changing this forces a new resource to be created.
	OsDisk ImageOsDiskPtrInput
	// The name of the resource group in which to create the image. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The Virtual Machine ID from which to create the image.
	SourceVirtualMachineId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Is zone resiliency enabled? Defaults to `false`. Changing this forces a new resource to be created.
	ZoneResilient pulumi.BoolPtrInput
}

The set of arguments for constructing a Image resource.

func (ImageArgs) ElementType

func (ImageArgs) ElementType() reflect.Type

type ImageArray

type ImageArray []ImageInput

func (ImageArray) ElementType

func (ImageArray) ElementType() reflect.Type

func (ImageArray) ToImageArrayOutput

func (i ImageArray) ToImageArrayOutput() ImageArrayOutput

func (ImageArray) ToImageArrayOutputWithContext

func (i ImageArray) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageArrayInput

type ImageArrayInput interface {
	pulumi.Input

	ToImageArrayOutput() ImageArrayOutput
	ToImageArrayOutputWithContext(context.Context) ImageArrayOutput
}

ImageArrayInput is an input type that accepts ImageArray and ImageArrayOutput values. You can construct a concrete instance of `ImageArrayInput` via:

ImageArray{ ImageArgs{...} }

type ImageArrayOutput

type ImageArrayOutput struct{ *pulumi.OutputState }

func (ImageArrayOutput) ElementType

func (ImageArrayOutput) ElementType() reflect.Type

func (ImageArrayOutput) Index

func (ImageArrayOutput) ToImageArrayOutput

func (o ImageArrayOutput) ToImageArrayOutput() ImageArrayOutput

func (ImageArrayOutput) ToImageArrayOutputWithContext

func (o ImageArrayOutput) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageDataDisk

type ImageDataDisk struct {
	// Specifies the URI in Azure storage of the blob that you want to use to create the image.
	BlobUri *string `pulumi:"blobUri"`
	// Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. Defaults to `None`.
	Caching *string `pulumi:"caching"`
	// Specifies the logical unit number of the data disk.
	Lun *int `pulumi:"lun"`
	// Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.
	ManagedDiskId *string `pulumi:"managedDiskId"`
	// Specifies the size of the image to be created. The target size can't be smaller than the source size.
	SizeGb *int `pulumi:"sizeGb"`
}

type ImageDataDiskArgs

type ImageDataDiskArgs struct {
	// Specifies the URI in Azure storage of the blob that you want to use to create the image.
	BlobUri pulumi.StringPtrInput `pulumi:"blobUri"`
	// Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. Defaults to `None`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// Specifies the logical unit number of the data disk.
	Lun pulumi.IntPtrInput `pulumi:"lun"`
	// Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringPtrInput `pulumi:"managedDiskId"`
	// Specifies the size of the image to be created. The target size can't be smaller than the source size.
	SizeGb pulumi.IntPtrInput `pulumi:"sizeGb"`
}

func (ImageDataDiskArgs) ElementType

func (ImageDataDiskArgs) ElementType() reflect.Type

func (ImageDataDiskArgs) ToImageDataDiskOutput

func (i ImageDataDiskArgs) ToImageDataDiskOutput() ImageDataDiskOutput

func (ImageDataDiskArgs) ToImageDataDiskOutputWithContext

func (i ImageDataDiskArgs) ToImageDataDiskOutputWithContext(ctx context.Context) ImageDataDiskOutput

type ImageDataDiskArray

type ImageDataDiskArray []ImageDataDiskInput

func (ImageDataDiskArray) ElementType

func (ImageDataDiskArray) ElementType() reflect.Type

func (ImageDataDiskArray) ToImageDataDiskArrayOutput

func (i ImageDataDiskArray) ToImageDataDiskArrayOutput() ImageDataDiskArrayOutput

func (ImageDataDiskArray) ToImageDataDiskArrayOutputWithContext

func (i ImageDataDiskArray) ToImageDataDiskArrayOutputWithContext(ctx context.Context) ImageDataDiskArrayOutput

type ImageDataDiskArrayInput

type ImageDataDiskArrayInput interface {
	pulumi.Input

	ToImageDataDiskArrayOutput() ImageDataDiskArrayOutput
	ToImageDataDiskArrayOutputWithContext(context.Context) ImageDataDiskArrayOutput
}

ImageDataDiskArrayInput is an input type that accepts ImageDataDiskArray and ImageDataDiskArrayOutput values. You can construct a concrete instance of `ImageDataDiskArrayInput` via:

ImageDataDiskArray{ ImageDataDiskArgs{...} }

type ImageDataDiskArrayOutput

type ImageDataDiskArrayOutput struct{ *pulumi.OutputState }

func (ImageDataDiskArrayOutput) ElementType

func (ImageDataDiskArrayOutput) ElementType() reflect.Type

func (ImageDataDiskArrayOutput) Index

func (ImageDataDiskArrayOutput) ToImageDataDiskArrayOutput

func (o ImageDataDiskArrayOutput) ToImageDataDiskArrayOutput() ImageDataDiskArrayOutput

func (ImageDataDiskArrayOutput) ToImageDataDiskArrayOutputWithContext

func (o ImageDataDiskArrayOutput) ToImageDataDiskArrayOutputWithContext(ctx context.Context) ImageDataDiskArrayOutput

type ImageDataDiskInput

type ImageDataDiskInput interface {
	pulumi.Input

	ToImageDataDiskOutput() ImageDataDiskOutput
	ToImageDataDiskOutputWithContext(context.Context) ImageDataDiskOutput
}

ImageDataDiskInput is an input type that accepts ImageDataDiskArgs and ImageDataDiskOutput values. You can construct a concrete instance of `ImageDataDiskInput` via:

ImageDataDiskArgs{...}

type ImageDataDiskOutput

type ImageDataDiskOutput struct{ *pulumi.OutputState }

func (ImageDataDiskOutput) BlobUri

Specifies the URI in Azure storage of the blob that you want to use to create the image.

func (ImageDataDiskOutput) Caching

Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. Defaults to `None`.

func (ImageDataDiskOutput) ElementType

func (ImageDataDiskOutput) ElementType() reflect.Type

func (ImageDataDiskOutput) Lun

Specifies the logical unit number of the data disk.

func (ImageDataDiskOutput) ManagedDiskId

func (o ImageDataDiskOutput) ManagedDiskId() pulumi.StringPtrOutput

Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.

func (ImageDataDiskOutput) SizeGb

Specifies the size of the image to be created. The target size can't be smaller than the source size.

func (ImageDataDiskOutput) ToImageDataDiskOutput

func (o ImageDataDiskOutput) ToImageDataDiskOutput() ImageDataDiskOutput

func (ImageDataDiskOutput) ToImageDataDiskOutputWithContext

func (o ImageDataDiskOutput) ToImageDataDiskOutputWithContext(ctx context.Context) ImageDataDiskOutput

type ImageInput

type ImageInput interface {
	pulumi.Input

	ToImageOutput() ImageOutput
	ToImageOutputWithContext(ctx context.Context) ImageOutput
}

type ImageMap

type ImageMap map[string]ImageInput

func (ImageMap) ElementType

func (ImageMap) ElementType() reflect.Type

func (ImageMap) ToImageMapOutput

func (i ImageMap) ToImageMapOutput() ImageMapOutput

func (ImageMap) ToImageMapOutputWithContext

func (i ImageMap) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageMapInput

type ImageMapInput interface {
	pulumi.Input

	ToImageMapOutput() ImageMapOutput
	ToImageMapOutputWithContext(context.Context) ImageMapOutput
}

ImageMapInput is an input type that accepts ImageMap and ImageMapOutput values. You can construct a concrete instance of `ImageMapInput` via:

ImageMap{ "key": ImageArgs{...} }

type ImageMapOutput

type ImageMapOutput struct{ *pulumi.OutputState }

func (ImageMapOutput) ElementType

func (ImageMapOutput) ElementType() reflect.Type

func (ImageMapOutput) MapIndex

func (ImageMapOutput) ToImageMapOutput

func (o ImageMapOutput) ToImageMapOutput() ImageMapOutput

func (ImageMapOutput) ToImageMapOutputWithContext

func (o ImageMapOutput) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageOsDisk

type ImageOsDisk struct {
	// Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.
	BlobUri *string `pulumi:"blobUri"`
	// Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. The default is `None`.
	Caching *string `pulumi:"caching"`
	// The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// Specifies the ID of the managed disk resource that you want to use to create the image.
	ManagedDiskId *string `pulumi:"managedDiskId"`
	// Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are `Generalized` and `Specialized`.
	OsState *string `pulumi:"osState"`
	// Specifies the type of operating system contained in the virtual machine image. Possible values are: `Windows` or `Linux`.
	OsType *string `pulumi:"osType"`
	// Specifies the size of the image to be created. Changing this forces a new resource to be created.
	SizeGb *int `pulumi:"sizeGb"`
}

type ImageOsDiskArgs

type ImageOsDiskArgs struct {
	// Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.
	BlobUri pulumi.StringPtrInput `pulumi:"blobUri"`
	// Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. The default is `None`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// Specifies the ID of the managed disk resource that you want to use to create the image.
	ManagedDiskId pulumi.StringPtrInput `pulumi:"managedDiskId"`
	// Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are `Generalized` and `Specialized`.
	OsState pulumi.StringPtrInput `pulumi:"osState"`
	// Specifies the type of operating system contained in the virtual machine image. Possible values are: `Windows` or `Linux`.
	OsType pulumi.StringPtrInput `pulumi:"osType"`
	// Specifies the size of the image to be created. Changing this forces a new resource to be created.
	SizeGb pulumi.IntPtrInput `pulumi:"sizeGb"`
}

func (ImageOsDiskArgs) ElementType

func (ImageOsDiskArgs) ElementType() reflect.Type

func (ImageOsDiskArgs) ToImageOsDiskOutput

func (i ImageOsDiskArgs) ToImageOsDiskOutput() ImageOsDiskOutput

func (ImageOsDiskArgs) ToImageOsDiskOutputWithContext

func (i ImageOsDiskArgs) ToImageOsDiskOutputWithContext(ctx context.Context) ImageOsDiskOutput

func (ImageOsDiskArgs) ToImageOsDiskPtrOutput

func (i ImageOsDiskArgs) ToImageOsDiskPtrOutput() ImageOsDiskPtrOutput

func (ImageOsDiskArgs) ToImageOsDiskPtrOutputWithContext

func (i ImageOsDiskArgs) ToImageOsDiskPtrOutputWithContext(ctx context.Context) ImageOsDiskPtrOutput

type ImageOsDiskInput

type ImageOsDiskInput interface {
	pulumi.Input

	ToImageOsDiskOutput() ImageOsDiskOutput
	ToImageOsDiskOutputWithContext(context.Context) ImageOsDiskOutput
}

ImageOsDiskInput is an input type that accepts ImageOsDiskArgs and ImageOsDiskOutput values. You can construct a concrete instance of `ImageOsDiskInput` via:

ImageOsDiskArgs{...}

type ImageOsDiskOutput

type ImageOsDiskOutput struct{ *pulumi.OutputState }

func (ImageOsDiskOutput) BlobUri

Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.

func (ImageOsDiskOutput) Caching

Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. The default is `None`.

func (ImageOsDiskOutput) DiskEncryptionSetId added in v5.47.0

func (o ImageOsDiskOutput) DiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.

func (ImageOsDiskOutput) ElementType

func (ImageOsDiskOutput) ElementType() reflect.Type

func (ImageOsDiskOutput) ManagedDiskId

func (o ImageOsDiskOutput) ManagedDiskId() pulumi.StringPtrOutput

Specifies the ID of the managed disk resource that you want to use to create the image.

func (ImageOsDiskOutput) OsState

Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are `Generalized` and `Specialized`.

func (ImageOsDiskOutput) OsType

Specifies the type of operating system contained in the virtual machine image. Possible values are: `Windows` or `Linux`.

func (ImageOsDiskOutput) SizeGb

Specifies the size of the image to be created. Changing this forces a new resource to be created.

func (ImageOsDiskOutput) ToImageOsDiskOutput

func (o ImageOsDiskOutput) ToImageOsDiskOutput() ImageOsDiskOutput

func (ImageOsDiskOutput) ToImageOsDiskOutputWithContext

func (o ImageOsDiskOutput) ToImageOsDiskOutputWithContext(ctx context.Context) ImageOsDiskOutput

func (ImageOsDiskOutput) ToImageOsDiskPtrOutput

func (o ImageOsDiskOutput) ToImageOsDiskPtrOutput() ImageOsDiskPtrOutput

func (ImageOsDiskOutput) ToImageOsDiskPtrOutputWithContext

func (o ImageOsDiskOutput) ToImageOsDiskPtrOutputWithContext(ctx context.Context) ImageOsDiskPtrOutput

type ImageOsDiskPtrInput

type ImageOsDiskPtrInput interface {
	pulumi.Input

	ToImageOsDiskPtrOutput() ImageOsDiskPtrOutput
	ToImageOsDiskPtrOutputWithContext(context.Context) ImageOsDiskPtrOutput
}

ImageOsDiskPtrInput is an input type that accepts ImageOsDiskArgs, ImageOsDiskPtr and ImageOsDiskPtrOutput values. You can construct a concrete instance of `ImageOsDiskPtrInput` via:

        ImageOsDiskArgs{...}

or:

        nil

func ImageOsDiskPtr

func ImageOsDiskPtr(v *ImageOsDiskArgs) ImageOsDiskPtrInput

type ImageOsDiskPtrOutput

type ImageOsDiskPtrOutput struct{ *pulumi.OutputState }

func (ImageOsDiskPtrOutput) BlobUri

Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.

func (ImageOsDiskPtrOutput) Caching

Specifies the caching mode as `ReadWrite`, `ReadOnly`, or `None`. The default is `None`.

func (ImageOsDiskPtrOutput) DiskEncryptionSetId added in v5.47.0

func (o ImageOsDiskPtrOutput) DiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.

func (ImageOsDiskPtrOutput) Elem

func (ImageOsDiskPtrOutput) ElementType

func (ImageOsDiskPtrOutput) ElementType() reflect.Type

func (ImageOsDiskPtrOutput) ManagedDiskId

func (o ImageOsDiskPtrOutput) ManagedDiskId() pulumi.StringPtrOutput

Specifies the ID of the managed disk resource that you want to use to create the image.

func (ImageOsDiskPtrOutput) OsState

Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are `Generalized` and `Specialized`.

func (ImageOsDiskPtrOutput) OsType

Specifies the type of operating system contained in the virtual machine image. Possible values are: `Windows` or `Linux`.

func (ImageOsDiskPtrOutput) SizeGb

Specifies the size of the image to be created. Changing this forces a new resource to be created.

func (ImageOsDiskPtrOutput) ToImageOsDiskPtrOutput

func (o ImageOsDiskPtrOutput) ToImageOsDiskPtrOutput() ImageOsDiskPtrOutput

func (ImageOsDiskPtrOutput) ToImageOsDiskPtrOutputWithContext

func (o ImageOsDiskPtrOutput) ToImageOsDiskPtrOutputWithContext(ctx context.Context) ImageOsDiskPtrOutput

type ImageOutput

type ImageOutput struct{ *pulumi.OutputState }

func (ImageOutput) DataDisks added in v5.5.0

func (o ImageOutput) DataDisks() ImageDataDiskArrayOutput

One or more `dataDisk` blocks as defined below.

func (ImageOutput) ElementType

func (ImageOutput) ElementType() reflect.Type

func (ImageOutput) HyperVGeneration added in v5.5.0

func (o ImageOutput) HyperVGeneration() pulumi.StringPtrOutput

The HyperVGenerationType of the VirtualMachine created from the image as `V1`, `V2`. Defaults to `V1`. Changing this forces a new resource to be created.

> **Note:** `zoneResilient` can only be set to `true` if the image is stored in a region that supports availability zones.

func (ImageOutput) Location added in v5.5.0

func (o ImageOutput) Location() pulumi.StringOutput

Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (ImageOutput) Name added in v5.5.0

func (o ImageOutput) Name() pulumi.StringOutput

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

func (ImageOutput) OsDisk added in v5.5.0

func (o ImageOutput) OsDisk() ImageOsDiskPtrOutput

One or more `osDisk` blocks as defined below. Changing this forces a new resource to be created.

func (ImageOutput) ResourceGroupName added in v5.5.0

func (o ImageOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the image. Changing this forces a new resource to be created.

func (ImageOutput) SourceVirtualMachineId added in v5.5.0

func (o ImageOutput) SourceVirtualMachineId() pulumi.StringPtrOutput

The Virtual Machine ID from which to create the image.

func (ImageOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (ImageOutput) ToImageOutput

func (o ImageOutput) ToImageOutput() ImageOutput

func (ImageOutput) ToImageOutputWithContext

func (o ImageOutput) ToImageOutputWithContext(ctx context.Context) ImageOutput

func (ImageOutput) ZoneResilient added in v5.5.0

func (o ImageOutput) ZoneResilient() pulumi.BoolPtrOutput

Is zone resiliency enabled? Defaults to `false`. Changing this forces a new resource to be created.

type ImageState

type ImageState struct {
	// One or more `dataDisk` blocks as defined below.
	DataDisks ImageDataDiskArrayInput
	// The HyperVGenerationType of the VirtualMachine created from the image as `V1`, `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	//
	// > **Note:** `zoneResilient` can only be set to `true` if the image is stored in a region that supports availability zones.
	HyperVGeneration pulumi.StringPtrInput
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the image. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `osDisk` blocks as defined below. Changing this forces a new resource to be created.
	OsDisk ImageOsDiskPtrInput
	// The name of the resource group in which to create the image. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The Virtual Machine ID from which to create the image.
	SourceVirtualMachineId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Is zone resiliency enabled? Defaults to `false`. Changing this forces a new resource to be created.
	ZoneResilient pulumi.BoolPtrInput
}

func (ImageState) ElementType

func (ImageState) ElementType() reflect.Type

type LinuxVirtualMachine

type LinuxVirtualMachine struct {
	pulumi.CustomResourceState

	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	// **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrOutput `pulumi:"adminPassword"`
	// One or more `adminSshKey` blocks as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineAdminSshKeyArrayOutput `pulumi:"adminSshKeys"`
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringOutput `pulumi:"adminUsername"`
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrOutput `pulumi:"allowExtensionOperations"`
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrOutput `pulumi:"availabilitySetId"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrOutput `pulumi:"bypassPlatformSafetyChecksOnUserScheduleEnabled"`
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"capacityReservationGroupId"`
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringOutput `pulumi:"computerName"`
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrOutput `pulumi:"customData"`
	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrOutput `pulumi:"dedicatedHostGroupId"`
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrOutput `pulumi:"dedicatedHostId"`
	// Should Password Authentication be disabled on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrOutput `pulumi:"disablePasswordAuthentication"`
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringOutput `pulumi:"diskControllerType"`
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	EdgeZone pulumi.StringPtrOutput `pulumi:"edgeZone"`
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrOutput `pulumi:"encryptionAtHostEnabled"`
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrOutput `pulumi:"extensionsTimeBudget"`
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications LinuxVirtualMachineGalleryApplicationArrayOutput `pulumi:"galleryApplications"`
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineIdentityPtrOutput `pulumi:"identity"`
	// Specifies the BYOL Type for this Virtual Machine. Possible values are `RHEL_BYOS` and `SLES_BYOS`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrOutput `pulumi:"maxBidPrice"`
	// The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"`
	// A `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineOsDiskOutput `pulumi:"osDisk"`
	// A `osImageNotification` block as defined below.
	OsImageNotification LinuxVirtualMachineOsImageNotificationPtrOutput `pulumi:"osImageNotification"`
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrOutput `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are `AutomaticByPlatform` and `ImageDefault`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`.
	PatchMode pulumi.StringPtrOutput `pulumi:"patchMode"`
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan LinuxVirtualMachinePlanPtrOutput `pulumi:"plan"`
	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrOutput `pulumi:"platformFaultDomain"`
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses pulumi.StringArrayOutput `pulumi:"privateIpAddresses"`
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrOutput `pulumi:"provisionVmAgent"`
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIpAddress pulumi.StringOutput `pulumi:"publicIpAddress"`
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses pulumi.StringArrayOutput `pulumi:"publicIpAddresses"`
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrOutput `pulumi:"rebootSetting"`
	// The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineSecretArrayOutput `pulumi:"secrets"`
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrOutput `pulumi:"secureBootEnabled"`
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringOutput `pulumi:"size"`
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineSourceImageReferencePtrOutput `pulumi:"sourceImageReference"`
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineTerminationNotificationOutput `pulumi:"terminationNotification"`
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrOutput `pulumi:"virtualMachineScaleSetId"`
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrOutput `pulumi:"vmAgentPlatformUpdatesEnabled"`
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrOutput `pulumi:"vtpmEnabled"`
	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

Manages a Linux Virtual Machine.

## Disclaimers

> **Note** This provider will automatically remove the OS Disk by default - this behaviour can be configured using the `features` configuration within the Provider configuration block.

> **Note** All arguments including the administrator login and password will be stored in the raw state as plain-text.

> **Note** This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the `compute.VirtualMachine` resource instead.

> **Note** This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the `compute.VirtualMachine` resource instead.

> In this release there's a known issue where the `publicIpAddress` and `publicIpAddresses` fields may not be fully populated for Dynamic Public IP's.

## Example Usage

This example provisions a basic Linux Virtual Machine on an internal network.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-std/sdk/go/std"
"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
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-network"),
			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("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleNetworkInterface, err := network.NewNetworkInterface(ctx, "example", &network.NetworkInterfaceArgs{
			Name:              pulumi.String("example-nic"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("internal"),
					SubnetId:                   exampleSubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		invokeFile, err := std.File(ctx, &std.FileArgs{
			Input: "~/.ssh/id_rsa.pub",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewLinuxVirtualMachine(ctx, "example", &compute.LinuxVirtualMachineArgs{
			Name:              pulumi.String("example-machine"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Size:              pulumi.String("Standard_F2"),
			AdminUsername:     pulumi.String("adminuser"),
			NetworkInterfaceIds: pulumi.StringArray{
				exampleNetworkInterface.ID(),
			},
			AdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{
				&compute.LinuxVirtualMachineAdminSshKeyArgs{
					Username:  pulumi.String("adminuser"),
					PublicKey: invokeFile.Result,
				},
			},
			OsDisk: &compute.LinuxVirtualMachineOsDiskArgs{
				Caching:            pulumi.String("ReadWrite"),
				StorageAccountType: pulumi.String("Standard_LRS"),
			},
			SourceImageReference: &compute.LinuxVirtualMachineSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Linux Virtual Machines can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/linuxVirtualMachine:LinuxVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1 ```

func GetLinuxVirtualMachine

func GetLinuxVirtualMachine(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LinuxVirtualMachineState, opts ...pulumi.ResourceOption) (*LinuxVirtualMachine, error)

GetLinuxVirtualMachine gets an existing LinuxVirtualMachine 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 NewLinuxVirtualMachine

func NewLinuxVirtualMachine(ctx *pulumi.Context,
	name string, args *LinuxVirtualMachineArgs, opts ...pulumi.ResourceOption) (*LinuxVirtualMachine, error)

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

func (*LinuxVirtualMachine) ElementType

func (*LinuxVirtualMachine) ElementType() reflect.Type

func (*LinuxVirtualMachine) ToLinuxVirtualMachineOutput

func (i *LinuxVirtualMachine) ToLinuxVirtualMachineOutput() LinuxVirtualMachineOutput

func (*LinuxVirtualMachine) ToLinuxVirtualMachineOutputWithContext

func (i *LinuxVirtualMachine) ToLinuxVirtualMachineOutputWithContext(ctx context.Context) LinuxVirtualMachineOutput

type LinuxVirtualMachineAdditionalCapabilities

type LinuxVirtualMachineAdditionalCapabilities struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.
	UltraSsdEnabled *bool `pulumi:"ultraSsdEnabled"`
}

type LinuxVirtualMachineAdditionalCapabilitiesArgs

type LinuxVirtualMachineAdditionalCapabilitiesArgs struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.
	UltraSsdEnabled pulumi.BoolPtrInput `pulumi:"ultraSsdEnabled"`
}

func (LinuxVirtualMachineAdditionalCapabilitiesArgs) ElementType

func (LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesOutput

func (i LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesOutput() LinuxVirtualMachineAdditionalCapabilitiesOutput

func (LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesOutputWithContext

func (i LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) LinuxVirtualMachineAdditionalCapabilitiesOutput

func (LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (i LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (i LinuxVirtualMachineAdditionalCapabilitiesArgs) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

type LinuxVirtualMachineAdditionalCapabilitiesInput

type LinuxVirtualMachineAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToLinuxVirtualMachineAdditionalCapabilitiesOutput() LinuxVirtualMachineAdditionalCapabilitiesOutput
	ToLinuxVirtualMachineAdditionalCapabilitiesOutputWithContext(context.Context) LinuxVirtualMachineAdditionalCapabilitiesOutput
}

LinuxVirtualMachineAdditionalCapabilitiesInput is an input type that accepts LinuxVirtualMachineAdditionalCapabilitiesArgs and LinuxVirtualMachineAdditionalCapabilitiesOutput values. You can construct a concrete instance of `LinuxVirtualMachineAdditionalCapabilitiesInput` via:

LinuxVirtualMachineAdditionalCapabilitiesArgs{...}

type LinuxVirtualMachineAdditionalCapabilitiesOutput

type LinuxVirtualMachineAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) ElementType

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesOutput

func (o LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesOutput() LinuxVirtualMachineAdditionalCapabilitiesOutput

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesOutputWithContext

func (o LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) LinuxVirtualMachineAdditionalCapabilitiesOutput

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (o LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o LinuxVirtualMachineAdditionalCapabilitiesOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineAdditionalCapabilitiesOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.

type LinuxVirtualMachineAdditionalCapabilitiesPtrInput

type LinuxVirtualMachineAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineAdditionalCapabilitiesPtrOutput
	ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(context.Context) LinuxVirtualMachineAdditionalCapabilitiesPtrOutput
}

LinuxVirtualMachineAdditionalCapabilitiesPtrInput is an input type that accepts LinuxVirtualMachineAdditionalCapabilitiesArgs, LinuxVirtualMachineAdditionalCapabilitiesPtr and LinuxVirtualMachineAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineAdditionalCapabilitiesPtrInput` via:

        LinuxVirtualMachineAdditionalCapabilitiesArgs{...}

or:

        nil

type LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

type LinuxVirtualMachineAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) Elem

func (LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) ElementType

func (LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (o LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineAdditionalCapabilitiesPtrOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.

type LinuxVirtualMachineAdminSshKey

type LinuxVirtualMachineAdminSshKey struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format. Changing this forces a new resource to be created.
	PublicKey string `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.
	Username string `pulumi:"username"`
}

type LinuxVirtualMachineAdminSshKeyArgs

type LinuxVirtualMachineAdminSshKeyArgs struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format. Changing this forces a new resource to be created.
	PublicKey pulumi.StringInput `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.
	Username pulumi.StringInput `pulumi:"username"`
}

func (LinuxVirtualMachineAdminSshKeyArgs) ElementType

func (LinuxVirtualMachineAdminSshKeyArgs) ToLinuxVirtualMachineAdminSshKeyOutput

func (i LinuxVirtualMachineAdminSshKeyArgs) ToLinuxVirtualMachineAdminSshKeyOutput() LinuxVirtualMachineAdminSshKeyOutput

func (LinuxVirtualMachineAdminSshKeyArgs) ToLinuxVirtualMachineAdminSshKeyOutputWithContext

func (i LinuxVirtualMachineAdminSshKeyArgs) ToLinuxVirtualMachineAdminSshKeyOutputWithContext(ctx context.Context) LinuxVirtualMachineAdminSshKeyOutput

type LinuxVirtualMachineAdminSshKeyArray

type LinuxVirtualMachineAdminSshKeyArray []LinuxVirtualMachineAdminSshKeyInput

func (LinuxVirtualMachineAdminSshKeyArray) ElementType

func (LinuxVirtualMachineAdminSshKeyArray) ToLinuxVirtualMachineAdminSshKeyArrayOutput

func (i LinuxVirtualMachineAdminSshKeyArray) ToLinuxVirtualMachineAdminSshKeyArrayOutput() LinuxVirtualMachineAdminSshKeyArrayOutput

func (LinuxVirtualMachineAdminSshKeyArray) ToLinuxVirtualMachineAdminSshKeyArrayOutputWithContext

func (i LinuxVirtualMachineAdminSshKeyArray) ToLinuxVirtualMachineAdminSshKeyArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineAdminSshKeyArrayOutput

type LinuxVirtualMachineAdminSshKeyArrayInput

type LinuxVirtualMachineAdminSshKeyArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineAdminSshKeyArrayOutput() LinuxVirtualMachineAdminSshKeyArrayOutput
	ToLinuxVirtualMachineAdminSshKeyArrayOutputWithContext(context.Context) LinuxVirtualMachineAdminSshKeyArrayOutput
}

LinuxVirtualMachineAdminSshKeyArrayInput is an input type that accepts LinuxVirtualMachineAdminSshKeyArray and LinuxVirtualMachineAdminSshKeyArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineAdminSshKeyArrayInput` via:

LinuxVirtualMachineAdminSshKeyArray{ LinuxVirtualMachineAdminSshKeyArgs{...} }

type LinuxVirtualMachineAdminSshKeyArrayOutput

type LinuxVirtualMachineAdminSshKeyArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineAdminSshKeyArrayOutput) ElementType

func (LinuxVirtualMachineAdminSshKeyArrayOutput) Index

func (LinuxVirtualMachineAdminSshKeyArrayOutput) ToLinuxVirtualMachineAdminSshKeyArrayOutput

func (o LinuxVirtualMachineAdminSshKeyArrayOutput) ToLinuxVirtualMachineAdminSshKeyArrayOutput() LinuxVirtualMachineAdminSshKeyArrayOutput

func (LinuxVirtualMachineAdminSshKeyArrayOutput) ToLinuxVirtualMachineAdminSshKeyArrayOutputWithContext

func (o LinuxVirtualMachineAdminSshKeyArrayOutput) ToLinuxVirtualMachineAdminSshKeyArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineAdminSshKeyArrayOutput

type LinuxVirtualMachineAdminSshKeyInput

type LinuxVirtualMachineAdminSshKeyInput interface {
	pulumi.Input

	ToLinuxVirtualMachineAdminSshKeyOutput() LinuxVirtualMachineAdminSshKeyOutput
	ToLinuxVirtualMachineAdminSshKeyOutputWithContext(context.Context) LinuxVirtualMachineAdminSshKeyOutput
}

LinuxVirtualMachineAdminSshKeyInput is an input type that accepts LinuxVirtualMachineAdminSshKeyArgs and LinuxVirtualMachineAdminSshKeyOutput values. You can construct a concrete instance of `LinuxVirtualMachineAdminSshKeyInput` via:

LinuxVirtualMachineAdminSshKeyArgs{...}

type LinuxVirtualMachineAdminSshKeyOutput

type LinuxVirtualMachineAdminSshKeyOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineAdminSshKeyOutput) ElementType

func (LinuxVirtualMachineAdminSshKeyOutput) PublicKey

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format. Changing this forces a new resource to be created.

func (LinuxVirtualMachineAdminSshKeyOutput) ToLinuxVirtualMachineAdminSshKeyOutput

func (o LinuxVirtualMachineAdminSshKeyOutput) ToLinuxVirtualMachineAdminSshKeyOutput() LinuxVirtualMachineAdminSshKeyOutput

func (LinuxVirtualMachineAdminSshKeyOutput) ToLinuxVirtualMachineAdminSshKeyOutputWithContext

func (o LinuxVirtualMachineAdminSshKeyOutput) ToLinuxVirtualMachineAdminSshKeyOutputWithContext(ctx context.Context) LinuxVirtualMachineAdminSshKeyOutput

func (LinuxVirtualMachineAdminSshKeyOutput) Username

The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.

> **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.

type LinuxVirtualMachineArgs

type LinuxVirtualMachineArgs struct {
	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineAdditionalCapabilitiesPtrInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	// **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrInput
	// One or more `adminSshKey` blocks as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineAdminSshKeyArrayInput
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrInput
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineBootDiagnosticsPtrInput
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrInput
	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrInput
	// Should Password Authentication be disabled on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrInput
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	EdgeZone pulumi.StringPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications LinuxVirtualMachineGalleryApplicationArrayInput
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineIdentityPtrInput
	// Specifies the BYOL Type for this Virtual Machine. Possible values are `RHEL_BYOS` and `SLES_BYOS`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// A `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineOsDiskInput
	// A `osImageNotification` block as defined below.
	OsImageNotification LinuxVirtualMachineOsImageNotificationPtrInput
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput
	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are `AutomaticByPlatform` and `ImageDefault`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`.
	PatchMode pulumi.StringPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan LinuxVirtualMachinePlanPtrInput
	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrInput
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrInput
	// The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineSecretArrayInput
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringInput
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineTerminationNotificationPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrInput
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrInput
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a LinuxVirtualMachine resource.

func (LinuxVirtualMachineArgs) ElementType

func (LinuxVirtualMachineArgs) ElementType() reflect.Type

type LinuxVirtualMachineArray

type LinuxVirtualMachineArray []LinuxVirtualMachineInput

func (LinuxVirtualMachineArray) ElementType

func (LinuxVirtualMachineArray) ElementType() reflect.Type

func (LinuxVirtualMachineArray) ToLinuxVirtualMachineArrayOutput

func (i LinuxVirtualMachineArray) ToLinuxVirtualMachineArrayOutput() LinuxVirtualMachineArrayOutput

func (LinuxVirtualMachineArray) ToLinuxVirtualMachineArrayOutputWithContext

func (i LinuxVirtualMachineArray) ToLinuxVirtualMachineArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineArrayOutput

type LinuxVirtualMachineArrayInput

type LinuxVirtualMachineArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineArrayOutput() LinuxVirtualMachineArrayOutput
	ToLinuxVirtualMachineArrayOutputWithContext(context.Context) LinuxVirtualMachineArrayOutput
}

LinuxVirtualMachineArrayInput is an input type that accepts LinuxVirtualMachineArray and LinuxVirtualMachineArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineArrayInput` via:

LinuxVirtualMachineArray{ LinuxVirtualMachineArgs{...} }

type LinuxVirtualMachineArrayOutput

type LinuxVirtualMachineArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineArrayOutput) ElementType

func (LinuxVirtualMachineArrayOutput) Index

func (LinuxVirtualMachineArrayOutput) ToLinuxVirtualMachineArrayOutput

func (o LinuxVirtualMachineArrayOutput) ToLinuxVirtualMachineArrayOutput() LinuxVirtualMachineArrayOutput

func (LinuxVirtualMachineArrayOutput) ToLinuxVirtualMachineArrayOutputWithContext

func (o LinuxVirtualMachineArrayOutput) ToLinuxVirtualMachineArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineArrayOutput

type LinuxVirtualMachineBootDiagnostics

type LinuxVirtualMachineBootDiagnostics struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics
	StorageAccountUri *string `pulumi:"storageAccountUri"`
}

type LinuxVirtualMachineBootDiagnosticsArgs

type LinuxVirtualMachineBootDiagnosticsArgs struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics
	StorageAccountUri pulumi.StringPtrInput `pulumi:"storageAccountUri"`
}

func (LinuxVirtualMachineBootDiagnosticsArgs) ElementType

func (LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsOutput

func (i LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsOutput() LinuxVirtualMachineBootDiagnosticsOutput

func (LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsOutputWithContext

func (i LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) LinuxVirtualMachineBootDiagnosticsOutput

func (LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsPtrOutput

func (i LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsPtrOutput() LinuxVirtualMachineBootDiagnosticsPtrOutput

func (LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext

func (i LinuxVirtualMachineBootDiagnosticsArgs) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineBootDiagnosticsPtrOutput

type LinuxVirtualMachineBootDiagnosticsInput

type LinuxVirtualMachineBootDiagnosticsInput interface {
	pulumi.Input

	ToLinuxVirtualMachineBootDiagnosticsOutput() LinuxVirtualMachineBootDiagnosticsOutput
	ToLinuxVirtualMachineBootDiagnosticsOutputWithContext(context.Context) LinuxVirtualMachineBootDiagnosticsOutput
}

LinuxVirtualMachineBootDiagnosticsInput is an input type that accepts LinuxVirtualMachineBootDiagnosticsArgs and LinuxVirtualMachineBootDiagnosticsOutput values. You can construct a concrete instance of `LinuxVirtualMachineBootDiagnosticsInput` via:

LinuxVirtualMachineBootDiagnosticsArgs{...}

type LinuxVirtualMachineBootDiagnosticsOutput

type LinuxVirtualMachineBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineBootDiagnosticsOutput) ElementType

func (LinuxVirtualMachineBootDiagnosticsOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics

func (LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsOutput

func (o LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsOutput() LinuxVirtualMachineBootDiagnosticsOutput

func (LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsOutputWithContext

func (o LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) LinuxVirtualMachineBootDiagnosticsOutput

func (LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutput

func (o LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutput() LinuxVirtualMachineBootDiagnosticsPtrOutput

func (LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o LinuxVirtualMachineBootDiagnosticsOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineBootDiagnosticsPtrOutput

type LinuxVirtualMachineBootDiagnosticsPtrInput

type LinuxVirtualMachineBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineBootDiagnosticsPtrOutput() LinuxVirtualMachineBootDiagnosticsPtrOutput
	ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext(context.Context) LinuxVirtualMachineBootDiagnosticsPtrOutput
}

LinuxVirtualMachineBootDiagnosticsPtrInput is an input type that accepts LinuxVirtualMachineBootDiagnosticsArgs, LinuxVirtualMachineBootDiagnosticsPtr and LinuxVirtualMachineBootDiagnosticsPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineBootDiagnosticsPtrInput` via:

        LinuxVirtualMachineBootDiagnosticsArgs{...}

or:

        nil

type LinuxVirtualMachineBootDiagnosticsPtrOutput

type LinuxVirtualMachineBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineBootDiagnosticsPtrOutput) Elem

func (LinuxVirtualMachineBootDiagnosticsPtrOutput) ElementType

func (LinuxVirtualMachineBootDiagnosticsPtrOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics

func (LinuxVirtualMachineBootDiagnosticsPtrOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutput

func (o LinuxVirtualMachineBootDiagnosticsPtrOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutput() LinuxVirtualMachineBootDiagnosticsPtrOutput

func (LinuxVirtualMachineBootDiagnosticsPtrOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o LinuxVirtualMachineBootDiagnosticsPtrOutput) ToLinuxVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineBootDiagnosticsPtrOutput

type LinuxVirtualMachineGalleryApplication added in v5.21.0

type LinuxVirtualMachineGalleryApplication struct {
	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.
	AutomaticUpgradeEnabled *bool `pulumi:"automaticUpgradeEnabled"`
	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobUri *string `pulumi:"configurationBlobUri"`
	// Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.
	Order *int `pulumi:"order"`
	// Specifies a passthrough value for more generic context. This field can be any valid `string` value.
	Tag *string `pulumi:"tag"`
	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.
	TreatFailureAsDeploymentFailureEnabled *bool `pulumi:"treatFailureAsDeploymentFailureEnabled"`
	// Specifies the Gallery Application Version resource ID.
	VersionId string `pulumi:"versionId"`
}

type LinuxVirtualMachineGalleryApplicationArgs added in v5.21.0

type LinuxVirtualMachineGalleryApplicationArgs struct {
	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.
	AutomaticUpgradeEnabled pulumi.BoolPtrInput `pulumi:"automaticUpgradeEnabled"`
	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobUri pulumi.StringPtrInput `pulumi:"configurationBlobUri"`
	// Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.
	Order pulumi.IntPtrInput `pulumi:"order"`
	// Specifies a passthrough value for more generic context. This field can be any valid `string` value.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.
	TreatFailureAsDeploymentFailureEnabled pulumi.BoolPtrInput `pulumi:"treatFailureAsDeploymentFailureEnabled"`
	// Specifies the Gallery Application Version resource ID.
	VersionId pulumi.StringInput `pulumi:"versionId"`
}

func (LinuxVirtualMachineGalleryApplicationArgs) ElementType added in v5.21.0

func (LinuxVirtualMachineGalleryApplicationArgs) ToLinuxVirtualMachineGalleryApplicationOutput added in v5.21.0

func (i LinuxVirtualMachineGalleryApplicationArgs) ToLinuxVirtualMachineGalleryApplicationOutput() LinuxVirtualMachineGalleryApplicationOutput

func (LinuxVirtualMachineGalleryApplicationArgs) ToLinuxVirtualMachineGalleryApplicationOutputWithContext added in v5.21.0

func (i LinuxVirtualMachineGalleryApplicationArgs) ToLinuxVirtualMachineGalleryApplicationOutputWithContext(ctx context.Context) LinuxVirtualMachineGalleryApplicationOutput

type LinuxVirtualMachineGalleryApplicationArray added in v5.21.0

type LinuxVirtualMachineGalleryApplicationArray []LinuxVirtualMachineGalleryApplicationInput

func (LinuxVirtualMachineGalleryApplicationArray) ElementType added in v5.21.0

func (LinuxVirtualMachineGalleryApplicationArray) ToLinuxVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

func (i LinuxVirtualMachineGalleryApplicationArray) ToLinuxVirtualMachineGalleryApplicationArrayOutput() LinuxVirtualMachineGalleryApplicationArrayOutput

func (LinuxVirtualMachineGalleryApplicationArray) ToLinuxVirtualMachineGalleryApplicationArrayOutputWithContext added in v5.21.0

func (i LinuxVirtualMachineGalleryApplicationArray) ToLinuxVirtualMachineGalleryApplicationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineGalleryApplicationArrayOutput

type LinuxVirtualMachineGalleryApplicationArrayInput added in v5.21.0

type LinuxVirtualMachineGalleryApplicationArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineGalleryApplicationArrayOutput() LinuxVirtualMachineGalleryApplicationArrayOutput
	ToLinuxVirtualMachineGalleryApplicationArrayOutputWithContext(context.Context) LinuxVirtualMachineGalleryApplicationArrayOutput
}

LinuxVirtualMachineGalleryApplicationArrayInput is an input type that accepts LinuxVirtualMachineGalleryApplicationArray and LinuxVirtualMachineGalleryApplicationArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineGalleryApplicationArrayInput` via:

LinuxVirtualMachineGalleryApplicationArray{ LinuxVirtualMachineGalleryApplicationArgs{...} }

type LinuxVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

type LinuxVirtualMachineGalleryApplicationArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineGalleryApplicationArrayOutput) ElementType added in v5.21.0

func (LinuxVirtualMachineGalleryApplicationArrayOutput) Index added in v5.21.0

func (LinuxVirtualMachineGalleryApplicationArrayOutput) ToLinuxVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

func (o LinuxVirtualMachineGalleryApplicationArrayOutput) ToLinuxVirtualMachineGalleryApplicationArrayOutput() LinuxVirtualMachineGalleryApplicationArrayOutput

func (LinuxVirtualMachineGalleryApplicationArrayOutput) ToLinuxVirtualMachineGalleryApplicationArrayOutputWithContext added in v5.21.0

func (o LinuxVirtualMachineGalleryApplicationArrayOutput) ToLinuxVirtualMachineGalleryApplicationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineGalleryApplicationArrayOutput

type LinuxVirtualMachineGalleryApplicationInput added in v5.21.0

type LinuxVirtualMachineGalleryApplicationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineGalleryApplicationOutput() LinuxVirtualMachineGalleryApplicationOutput
	ToLinuxVirtualMachineGalleryApplicationOutputWithContext(context.Context) LinuxVirtualMachineGalleryApplicationOutput
}

LinuxVirtualMachineGalleryApplicationInput is an input type that accepts LinuxVirtualMachineGalleryApplicationArgs and LinuxVirtualMachineGalleryApplicationOutput values. You can construct a concrete instance of `LinuxVirtualMachineGalleryApplicationInput` via:

LinuxVirtualMachineGalleryApplicationArgs{...}

type LinuxVirtualMachineGalleryApplicationOutput added in v5.21.0

type LinuxVirtualMachineGalleryApplicationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineGalleryApplicationOutput) AutomaticUpgradeEnabled added in v5.68.0

Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.

func (LinuxVirtualMachineGalleryApplicationOutput) ConfigurationBlobUri added in v5.21.0

Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.

func (LinuxVirtualMachineGalleryApplicationOutput) ElementType added in v5.21.0

func (LinuxVirtualMachineGalleryApplicationOutput) Order added in v5.21.0

Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.

func (LinuxVirtualMachineGalleryApplicationOutput) Tag added in v5.21.0

Specifies a passthrough value for more generic context. This field can be any valid `string` value.

func (LinuxVirtualMachineGalleryApplicationOutput) ToLinuxVirtualMachineGalleryApplicationOutput added in v5.21.0

func (o LinuxVirtualMachineGalleryApplicationOutput) ToLinuxVirtualMachineGalleryApplicationOutput() LinuxVirtualMachineGalleryApplicationOutput

func (LinuxVirtualMachineGalleryApplicationOutput) ToLinuxVirtualMachineGalleryApplicationOutputWithContext added in v5.21.0

func (o LinuxVirtualMachineGalleryApplicationOutput) ToLinuxVirtualMachineGalleryApplicationOutputWithContext(ctx context.Context) LinuxVirtualMachineGalleryApplicationOutput

func (LinuxVirtualMachineGalleryApplicationOutput) TreatFailureAsDeploymentFailureEnabled added in v5.68.0

func (o LinuxVirtualMachineGalleryApplicationOutput) TreatFailureAsDeploymentFailureEnabled() pulumi.BoolPtrOutput

Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.

func (LinuxVirtualMachineGalleryApplicationOutput) VersionId added in v5.21.0

Specifies the Gallery Application Version resource ID.

type LinuxVirtualMachineIdentity

type LinuxVirtualMachineIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type LinuxVirtualMachineIdentityArgs

type LinuxVirtualMachineIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (LinuxVirtualMachineIdentityArgs) ElementType

func (LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityOutput

func (i LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityOutput() LinuxVirtualMachineIdentityOutput

func (LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityOutputWithContext

func (i LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityOutputWithContext(ctx context.Context) LinuxVirtualMachineIdentityOutput

func (LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityPtrOutput

func (i LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityPtrOutput() LinuxVirtualMachineIdentityPtrOutput

func (LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityPtrOutputWithContext

func (i LinuxVirtualMachineIdentityArgs) ToLinuxVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineIdentityPtrOutput

type LinuxVirtualMachineIdentityInput

type LinuxVirtualMachineIdentityInput interface {
	pulumi.Input

	ToLinuxVirtualMachineIdentityOutput() LinuxVirtualMachineIdentityOutput
	ToLinuxVirtualMachineIdentityOutputWithContext(context.Context) LinuxVirtualMachineIdentityOutput
}

LinuxVirtualMachineIdentityInput is an input type that accepts LinuxVirtualMachineIdentityArgs and LinuxVirtualMachineIdentityOutput values. You can construct a concrete instance of `LinuxVirtualMachineIdentityInput` via:

LinuxVirtualMachineIdentityArgs{...}

type LinuxVirtualMachineIdentityOutput

type LinuxVirtualMachineIdentityOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineIdentityOutput) ElementType

func (LinuxVirtualMachineIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (LinuxVirtualMachineIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (LinuxVirtualMachineIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityOutput

func (o LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityOutput() LinuxVirtualMachineIdentityOutput

func (LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityOutputWithContext

func (o LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityOutputWithContext(ctx context.Context) LinuxVirtualMachineIdentityOutput

func (LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityPtrOutput

func (o LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityPtrOutput() LinuxVirtualMachineIdentityPtrOutput

func (LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityPtrOutputWithContext

func (o LinuxVirtualMachineIdentityOutput) ToLinuxVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineIdentityPtrOutput

func (LinuxVirtualMachineIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type LinuxVirtualMachineIdentityPtrInput

type LinuxVirtualMachineIdentityPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineIdentityPtrOutput() LinuxVirtualMachineIdentityPtrOutput
	ToLinuxVirtualMachineIdentityPtrOutputWithContext(context.Context) LinuxVirtualMachineIdentityPtrOutput
}

LinuxVirtualMachineIdentityPtrInput is an input type that accepts LinuxVirtualMachineIdentityArgs, LinuxVirtualMachineIdentityPtr and LinuxVirtualMachineIdentityPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineIdentityPtrInput` via:

        LinuxVirtualMachineIdentityArgs{...}

or:

        nil

type LinuxVirtualMachineIdentityPtrOutput

type LinuxVirtualMachineIdentityPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineIdentityPtrOutput) Elem

func (LinuxVirtualMachineIdentityPtrOutput) ElementType

func (LinuxVirtualMachineIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (LinuxVirtualMachineIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (LinuxVirtualMachineIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (LinuxVirtualMachineIdentityPtrOutput) ToLinuxVirtualMachineIdentityPtrOutput

func (o LinuxVirtualMachineIdentityPtrOutput) ToLinuxVirtualMachineIdentityPtrOutput() LinuxVirtualMachineIdentityPtrOutput

func (LinuxVirtualMachineIdentityPtrOutput) ToLinuxVirtualMachineIdentityPtrOutputWithContext

func (o LinuxVirtualMachineIdentityPtrOutput) ToLinuxVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineIdentityPtrOutput

func (LinuxVirtualMachineIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type LinuxVirtualMachineInput

type LinuxVirtualMachineInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOutput() LinuxVirtualMachineOutput
	ToLinuxVirtualMachineOutputWithContext(ctx context.Context) LinuxVirtualMachineOutput
}

type LinuxVirtualMachineMap

type LinuxVirtualMachineMap map[string]LinuxVirtualMachineInput

func (LinuxVirtualMachineMap) ElementType

func (LinuxVirtualMachineMap) ElementType() reflect.Type

func (LinuxVirtualMachineMap) ToLinuxVirtualMachineMapOutput

func (i LinuxVirtualMachineMap) ToLinuxVirtualMachineMapOutput() LinuxVirtualMachineMapOutput

func (LinuxVirtualMachineMap) ToLinuxVirtualMachineMapOutputWithContext

func (i LinuxVirtualMachineMap) ToLinuxVirtualMachineMapOutputWithContext(ctx context.Context) LinuxVirtualMachineMapOutput

type LinuxVirtualMachineMapInput

type LinuxVirtualMachineMapInput interface {
	pulumi.Input

	ToLinuxVirtualMachineMapOutput() LinuxVirtualMachineMapOutput
	ToLinuxVirtualMachineMapOutputWithContext(context.Context) LinuxVirtualMachineMapOutput
}

LinuxVirtualMachineMapInput is an input type that accepts LinuxVirtualMachineMap and LinuxVirtualMachineMapOutput values. You can construct a concrete instance of `LinuxVirtualMachineMapInput` via:

LinuxVirtualMachineMap{ "key": LinuxVirtualMachineArgs{...} }

type LinuxVirtualMachineMapOutput

type LinuxVirtualMachineMapOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineMapOutput) ElementType

func (LinuxVirtualMachineMapOutput) MapIndex

func (LinuxVirtualMachineMapOutput) ToLinuxVirtualMachineMapOutput

func (o LinuxVirtualMachineMapOutput) ToLinuxVirtualMachineMapOutput() LinuxVirtualMachineMapOutput

func (LinuxVirtualMachineMapOutput) ToLinuxVirtualMachineMapOutputWithContext

func (o LinuxVirtualMachineMapOutput) ToLinuxVirtualMachineMapOutputWithContext(ctx context.Context) LinuxVirtualMachineMapOutput

type LinuxVirtualMachineOsDisk

type LinuxVirtualMachineOsDisk struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)
	DiffDiskSettings *LinuxVirtualMachineOsDiskDiffDiskSettings `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `pulumi:"name"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId *string `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType *string `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type LinuxVirtualMachineOsDiskArgs

type LinuxVirtualMachineOsDiskArgs struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)
	DiffDiskSettings LinuxVirtualMachineOsDiskDiffDiskSettingsPtrInput `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType pulumi.StringPtrInput `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (LinuxVirtualMachineOsDiskArgs) ElementType

func (LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskOutput

func (i LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskOutput() LinuxVirtualMachineOsDiskOutput

func (LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskOutputWithContext

func (i LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskOutput

func (LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskPtrOutput

func (i LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskPtrOutput() LinuxVirtualMachineOsDiskPtrOutput

func (LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskPtrOutputWithContext

func (i LinuxVirtualMachineOsDiskArgs) ToLinuxVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskPtrOutput

type LinuxVirtualMachineOsDiskDiffDiskSettings

type LinuxVirtualMachineOsDiskDiffDiskSettings struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option string `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement *string `pulumi:"placement"`
}

type LinuxVirtualMachineOsDiskDiffDiskSettingsArgs

type LinuxVirtualMachineOsDiskDiffDiskSettingsArgs struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option pulumi.StringInput `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement pulumi.StringPtrInput `pulumi:"placement"`
}

func (LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ElementType

func (LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (i LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutputWithContext

func (i LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (i LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (i LinuxVirtualMachineOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineOsDiskDiffDiskSettingsInput

type LinuxVirtualMachineOsDiskDiffDiskSettingsInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsOutput
	ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsOutput
}

LinuxVirtualMachineOsDiskDiffDiskSettingsInput is an input type that accepts LinuxVirtualMachineOsDiskDiffDiskSettingsArgs and LinuxVirtualMachineOsDiskDiffDiskSettingsOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsDiskDiffDiskSettingsInput` via:

LinuxVirtualMachineOsDiskDiffDiskSettingsArgs{...}

type LinuxVirtualMachineOsDiskDiffDiskSettingsOutput

type LinuxVirtualMachineOsDiskDiffDiskSettingsOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ElementType

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) Placement added in v5.6.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutputWithContext

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineOsDiskDiffDiskSettingsPtrInput

type LinuxVirtualMachineOsDiskDiffDiskSettingsPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput
	ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput
}

LinuxVirtualMachineOsDiskDiffDiskSettingsPtrInput is an input type that accepts LinuxVirtualMachineOsDiskDiffDiskSettingsArgs, LinuxVirtualMachineOsDiskDiffDiskSettingsPtr and LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsDiskDiffDiskSettingsPtrInput` via:

        LinuxVirtualMachineOsDiskDiffDiskSettingsArgs{...}

or:

        nil

type LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Elem

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ElementType

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Placement added in v5.6.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (o LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineOsDiskInput

type LinuxVirtualMachineOsDiskInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsDiskOutput() LinuxVirtualMachineOsDiskOutput
	ToLinuxVirtualMachineOsDiskOutputWithContext(context.Context) LinuxVirtualMachineOsDiskOutput
}

LinuxVirtualMachineOsDiskInput is an input type that accepts LinuxVirtualMachineOsDiskArgs and LinuxVirtualMachineOsDiskOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsDiskInput` via:

LinuxVirtualMachineOsDiskArgs{...}

type LinuxVirtualMachineOsDiskOutput

type LinuxVirtualMachineOsDiskOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsDiskOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (LinuxVirtualMachineOsDiskOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

> **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)

func (LinuxVirtualMachineOsDiskOutput) DiskEncryptionSetId

func (o LinuxVirtualMachineOsDiskOutput) DiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

func (LinuxVirtualMachineOsDiskOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (LinuxVirtualMachineOsDiskOutput) ElementType

func (LinuxVirtualMachineOsDiskOutput) Name

The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o LinuxVirtualMachineOsDiskOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineOsDiskOutput) SecurityEncryptionType added in v5.8.0

func (o LinuxVirtualMachineOsDiskOutput) SecurityEncryptionType() pulumi.StringPtrOutput

Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineOsDiskOutput) StorageAccountType

func (o LinuxVirtualMachineOsDiskOutput) StorageAccountType() pulumi.StringOutput

The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskOutput

func (o LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskOutput() LinuxVirtualMachineOsDiskOutput

func (LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskOutputWithContext

func (o LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskOutput

func (LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskPtrOutput

func (o LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskPtrOutput() LinuxVirtualMachineOsDiskPtrOutput

func (LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskPtrOutputWithContext

func (o LinuxVirtualMachineOsDiskOutput) ToLinuxVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskPtrOutput

func (LinuxVirtualMachineOsDiskOutput) WriteAcceleratorEnabled

func (o LinuxVirtualMachineOsDiskOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type LinuxVirtualMachineOsDiskPtrInput

type LinuxVirtualMachineOsDiskPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsDiskPtrOutput() LinuxVirtualMachineOsDiskPtrOutput
	ToLinuxVirtualMachineOsDiskPtrOutputWithContext(context.Context) LinuxVirtualMachineOsDiskPtrOutput
}

LinuxVirtualMachineOsDiskPtrInput is an input type that accepts LinuxVirtualMachineOsDiskArgs, LinuxVirtualMachineOsDiskPtr and LinuxVirtualMachineOsDiskPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsDiskPtrInput` via:

        LinuxVirtualMachineOsDiskArgs{...}

or:

        nil

type LinuxVirtualMachineOsDiskPtrOutput

type LinuxVirtualMachineOsDiskPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsDiskPtrOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (LinuxVirtualMachineOsDiskPtrOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

> **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)

func (LinuxVirtualMachineOsDiskPtrOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

func (LinuxVirtualMachineOsDiskPtrOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (LinuxVirtualMachineOsDiskPtrOutput) Elem

func (LinuxVirtualMachineOsDiskPtrOutput) ElementType

func (LinuxVirtualMachineOsDiskPtrOutput) Name

The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskPtrOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o LinuxVirtualMachineOsDiskPtrOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineOsDiskPtrOutput) SecurityEncryptionType added in v5.8.0

func (o LinuxVirtualMachineOsDiskPtrOutput) SecurityEncryptionType() pulumi.StringPtrOutput

Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineOsDiskPtrOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOsDiskPtrOutput) ToLinuxVirtualMachineOsDiskPtrOutput

func (o LinuxVirtualMachineOsDiskPtrOutput) ToLinuxVirtualMachineOsDiskPtrOutput() LinuxVirtualMachineOsDiskPtrOutput

func (LinuxVirtualMachineOsDiskPtrOutput) ToLinuxVirtualMachineOsDiskPtrOutputWithContext

func (o LinuxVirtualMachineOsDiskPtrOutput) ToLinuxVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsDiskPtrOutput

func (LinuxVirtualMachineOsDiskPtrOutput) WriteAcceleratorEnabled

func (o LinuxVirtualMachineOsDiskPtrOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type LinuxVirtualMachineOsImageNotification added in v5.68.0

type LinuxVirtualMachineOsImageNotification struct {
	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.
	Timeout *string `pulumi:"timeout"`
}

type LinuxVirtualMachineOsImageNotificationArgs added in v5.68.0

type LinuxVirtualMachineOsImageNotificationArgs struct {
	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (LinuxVirtualMachineOsImageNotificationArgs) ElementType added in v5.68.0

func (LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationOutput added in v5.68.0

func (i LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationOutput() LinuxVirtualMachineOsImageNotificationOutput

func (LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationOutputWithContext added in v5.68.0

func (i LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineOsImageNotificationOutput

func (LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (i LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationPtrOutput() LinuxVirtualMachineOsImageNotificationPtrOutput

func (LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (i LinuxVirtualMachineOsImageNotificationArgs) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsImageNotificationPtrOutput

type LinuxVirtualMachineOsImageNotificationInput added in v5.68.0

type LinuxVirtualMachineOsImageNotificationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsImageNotificationOutput() LinuxVirtualMachineOsImageNotificationOutput
	ToLinuxVirtualMachineOsImageNotificationOutputWithContext(context.Context) LinuxVirtualMachineOsImageNotificationOutput
}

LinuxVirtualMachineOsImageNotificationInput is an input type that accepts LinuxVirtualMachineOsImageNotificationArgs and LinuxVirtualMachineOsImageNotificationOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsImageNotificationInput` via:

LinuxVirtualMachineOsImageNotificationArgs{...}

type LinuxVirtualMachineOsImageNotificationOutput added in v5.68.0

type LinuxVirtualMachineOsImageNotificationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsImageNotificationOutput) ElementType added in v5.68.0

func (LinuxVirtualMachineOsImageNotificationOutput) Timeout added in v5.68.0

Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.

func (LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationOutput added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationOutput() LinuxVirtualMachineOsImageNotificationOutput

func (LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationOutputWithContext added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineOsImageNotificationOutput

func (LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutput() LinuxVirtualMachineOsImageNotificationPtrOutput

func (LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsImageNotificationPtrOutput

type LinuxVirtualMachineOsImageNotificationPtrInput added in v5.68.0

type LinuxVirtualMachineOsImageNotificationPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineOsImageNotificationPtrOutput() LinuxVirtualMachineOsImageNotificationPtrOutput
	ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext(context.Context) LinuxVirtualMachineOsImageNotificationPtrOutput
}

LinuxVirtualMachineOsImageNotificationPtrInput is an input type that accepts LinuxVirtualMachineOsImageNotificationArgs, LinuxVirtualMachineOsImageNotificationPtr and LinuxVirtualMachineOsImageNotificationPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineOsImageNotificationPtrInput` via:

        LinuxVirtualMachineOsImageNotificationArgs{...}

or:

        nil

type LinuxVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

type LinuxVirtualMachineOsImageNotificationPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOsImageNotificationPtrOutput) Elem added in v5.68.0

func (LinuxVirtualMachineOsImageNotificationPtrOutput) ElementType added in v5.68.0

func (LinuxVirtualMachineOsImageNotificationPtrOutput) Timeout added in v5.68.0

Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.

func (LinuxVirtualMachineOsImageNotificationPtrOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationPtrOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutput() LinuxVirtualMachineOsImageNotificationPtrOutput

func (LinuxVirtualMachineOsImageNotificationPtrOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (o LinuxVirtualMachineOsImageNotificationPtrOutput) ToLinuxVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineOsImageNotificationPtrOutput

type LinuxVirtualMachineOutput

type LinuxVirtualMachineOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineOutput) AdditionalCapabilities added in v5.5.0

A `additionalCapabilities` block as defined below.

func (LinuxVirtualMachineOutput) AdminPassword added in v5.5.0

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

> **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`. **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.

func (LinuxVirtualMachineOutput) AdminSshKeys added in v5.5.0

One or more `adminSshKey` blocks as defined below. Changing this forces a new resource to be created.

> **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.

func (LinuxVirtualMachineOutput) AdminUsername added in v5.5.0

func (o LinuxVirtualMachineOutput) AdminUsername() pulumi.StringOutput

The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) AllowExtensionOperations added in v5.5.0

func (o LinuxVirtualMachineOutput) AllowExtensionOperations() pulumi.BoolPtrOutput

Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.

func (LinuxVirtualMachineOutput) AvailabilitySetId added in v5.5.0

func (o LinuxVirtualMachineOutput) AvailabilitySetId() pulumi.StringPtrOutput

Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (LinuxVirtualMachineOutput) BypassPlatformSafetyChecksOnUserScheduleEnabled added in v5.47.0

func (o LinuxVirtualMachineOutput) BypassPlatformSafetyChecksOnUserScheduleEnabled() pulumi.BoolPtrOutput

Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.

> **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.

func (LinuxVirtualMachineOutput) CapacityReservationGroupId added in v5.12.0

func (o LinuxVirtualMachineOutput) CapacityReservationGroupId() pulumi.StringPtrOutput

Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.

> **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`

func (LinuxVirtualMachineOutput) ComputerName added in v5.5.0

Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) CustomData added in v5.5.0

The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) DedicatedHostGroupId added in v5.5.0

func (o LinuxVirtualMachineOutput) DedicatedHostGroupId() pulumi.StringPtrOutput

The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with `dedicatedHostId`.

func (LinuxVirtualMachineOutput) DedicatedHostId added in v5.5.0

func (o LinuxVirtualMachineOutput) DedicatedHostId() pulumi.StringPtrOutput

The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.

func (LinuxVirtualMachineOutput) DisablePasswordAuthentication added in v5.5.0

func (o LinuxVirtualMachineOutput) DisablePasswordAuthentication() pulumi.BoolPtrOutput

Should Password Authentication be disabled on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.

> In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).

> **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.

func (LinuxVirtualMachineOutput) DiskControllerType added in v5.68.0

func (o LinuxVirtualMachineOutput) DiskControllerType() pulumi.StringOutput

Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.

func (LinuxVirtualMachineOutput) EdgeZone added in v5.5.0

Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.

func (LinuxVirtualMachineOutput) ElementType

func (LinuxVirtualMachineOutput) ElementType() reflect.Type

func (LinuxVirtualMachineOutput) EncryptionAtHostEnabled added in v5.5.0

func (o LinuxVirtualMachineOutput) EncryptionAtHostEnabled() pulumi.BoolPtrOutput

Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?

func (LinuxVirtualMachineOutput) EvictionPolicy added in v5.5.0

Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (LinuxVirtualMachineOutput) ExtensionsTimeBudget added in v5.5.0

func (o LinuxVirtualMachineOutput) ExtensionsTimeBudget() pulumi.StringPtrOutput

Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.

func (LinuxVirtualMachineOutput) GalleryApplications added in v5.21.0

One or more `galleryApplication` blocks as defined below.

func (LinuxVirtualMachineOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (LinuxVirtualMachineOutput) LicenseType added in v5.5.0

Specifies the BYOL Type for this Virtual Machine. Possible values are `RHEL_BYOS` and `SLES_BYOS`.

func (LinuxVirtualMachineOutput) Location added in v5.5.0

The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) MaxBidPrice added in v5.5.0

The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (LinuxVirtualMachineOutput) Name added in v5.5.0

The name of the Linux Virtual Machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) NetworkInterfaceIds added in v5.5.0

func (o LinuxVirtualMachineOutput) NetworkInterfaceIds() pulumi.StringArrayOutput

. A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.

func (LinuxVirtualMachineOutput) OsDisk added in v5.5.0

A `osDisk` block as defined below.

func (LinuxVirtualMachineOutput) OsImageNotification added in v5.68.0

A `osImageNotification` block as defined below.

func (LinuxVirtualMachineOutput) PatchAssessmentMode added in v5.21.0

func (o LinuxVirtualMachineOutput) PatchAssessmentMode() pulumi.StringPtrOutput

Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (LinuxVirtualMachineOutput) PatchMode added in v5.5.0

Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are `AutomaticByPlatform` and `ImageDefault`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`.

func (LinuxVirtualMachineOutput) Plan added in v5.5.0

A `plan` block as defined below. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) PlatformFaultDomain added in v5.5.0

func (o LinuxVirtualMachineOutput) PlatformFaultDomain() pulumi.IntPtrOutput

Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.

func (LinuxVirtualMachineOutput) Priority added in v5.5.0

Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) PrivateIpAddress added in v5.5.0

func (o LinuxVirtualMachineOutput) PrivateIpAddress() pulumi.StringOutput

The Primary Private IP Address assigned to this Virtual Machine.

func (LinuxVirtualMachineOutput) PrivateIpAddresses added in v5.5.0

func (o LinuxVirtualMachineOutput) PrivateIpAddresses() pulumi.StringArrayOutput

A list of Private IP Addresses assigned to this Virtual Machine.

func (LinuxVirtualMachineOutput) ProvisionVmAgent added in v5.5.0

func (o LinuxVirtualMachineOutput) ProvisionVmAgent() pulumi.BoolPtrOutput

Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.

> **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.

func (LinuxVirtualMachineOutput) ProximityPlacementGroupId added in v5.5.0

func (o LinuxVirtualMachineOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.

func (LinuxVirtualMachineOutput) PublicIpAddress added in v5.5.0

func (o LinuxVirtualMachineOutput) PublicIpAddress() pulumi.StringOutput

The Primary Public IP Address assigned to this Virtual Machine.

func (LinuxVirtualMachineOutput) PublicIpAddresses added in v5.5.0

func (o LinuxVirtualMachineOutput) PublicIpAddresses() pulumi.StringArrayOutput

A list of the Public IP Addresses assigned to this Virtual Machine.

func (LinuxVirtualMachineOutput) RebootSetting added in v5.47.0

Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.

> **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.

func (LinuxVirtualMachineOutput) ResourceGroupName added in v5.5.0

func (o LinuxVirtualMachineOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) Secrets added in v5.5.0

One or more `secret` blocks as defined below.

func (LinuxVirtualMachineOutput) SecureBootEnabled added in v5.5.0

func (o LinuxVirtualMachineOutput) SecureBootEnabled() pulumi.BoolPtrOutput

Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) Size added in v5.5.0

The SKU which should be used for this Virtual Machine, such as `Standard_F2`.

func (LinuxVirtualMachineOutput) SourceImageId added in v5.5.0

The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (LinuxVirtualMachineOutput) SourceImageReference added in v5.5.0

A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (LinuxVirtualMachineOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to this Virtual Machine.

func (LinuxVirtualMachineOutput) TerminationNotification added in v5.5.0

A `terminationNotification` block as defined below.

func (LinuxVirtualMachineOutput) ToLinuxVirtualMachineOutput

func (o LinuxVirtualMachineOutput) ToLinuxVirtualMachineOutput() LinuxVirtualMachineOutput

func (LinuxVirtualMachineOutput) ToLinuxVirtualMachineOutputWithContext

func (o LinuxVirtualMachineOutput) ToLinuxVirtualMachineOutputWithContext(ctx context.Context) LinuxVirtualMachineOutput

func (LinuxVirtualMachineOutput) UserData added in v5.5.0

The Base64-Encoded User Data which should be used for this Virtual Machine.

func (LinuxVirtualMachineOutput) VirtualMachineId added in v5.5.0

func (o LinuxVirtualMachineOutput) VirtualMachineId() pulumi.StringOutput

A 128-bit identifier which uniquely identifies this Virtual Machine.

func (LinuxVirtualMachineOutput) VirtualMachineScaleSetId added in v5.5.0

func (o LinuxVirtualMachineOutput) VirtualMachineScaleSetId() pulumi.StringPtrOutput

Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.

> **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.

> **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).

func (LinuxVirtualMachineOutput) VmAgentPlatformUpdatesEnabled added in v5.68.0

func (o LinuxVirtualMachineOutput) VmAgentPlatformUpdatesEnabled() pulumi.BoolPtrOutput

Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.

func (LinuxVirtualMachineOutput) VtpmEnabled added in v5.5.0

Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineOutput) Zone added in v5.5.0

Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.

type LinuxVirtualMachinePlan

type LinuxVirtualMachinePlan struct {
	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product string `pulumi:"product"`
	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
}

type LinuxVirtualMachinePlanArgs

type LinuxVirtualMachinePlanArgs struct {
	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (LinuxVirtualMachinePlanArgs) ElementType

func (LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanOutput

func (i LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanOutput() LinuxVirtualMachinePlanOutput

func (LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanOutputWithContext

func (i LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanOutputWithContext(ctx context.Context) LinuxVirtualMachinePlanOutput

func (LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanPtrOutput

func (i LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanPtrOutput() LinuxVirtualMachinePlanPtrOutput

func (LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanPtrOutputWithContext

func (i LinuxVirtualMachinePlanArgs) ToLinuxVirtualMachinePlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachinePlanPtrOutput

type LinuxVirtualMachinePlanInput

type LinuxVirtualMachinePlanInput interface {
	pulumi.Input

	ToLinuxVirtualMachinePlanOutput() LinuxVirtualMachinePlanOutput
	ToLinuxVirtualMachinePlanOutputWithContext(context.Context) LinuxVirtualMachinePlanOutput
}

LinuxVirtualMachinePlanInput is an input type that accepts LinuxVirtualMachinePlanArgs and LinuxVirtualMachinePlanOutput values. You can construct a concrete instance of `LinuxVirtualMachinePlanInput` via:

LinuxVirtualMachinePlanArgs{...}

type LinuxVirtualMachinePlanOutput

type LinuxVirtualMachinePlanOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachinePlanOutput) ElementType

func (LinuxVirtualMachinePlanOutput) Name

Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanOutput) Product

Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanOutput) Publisher

Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanOutput

func (o LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanOutput() LinuxVirtualMachinePlanOutput

func (LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanOutputWithContext

func (o LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanOutputWithContext(ctx context.Context) LinuxVirtualMachinePlanOutput

func (LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanPtrOutput

func (o LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanPtrOutput() LinuxVirtualMachinePlanPtrOutput

func (LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanPtrOutputWithContext

func (o LinuxVirtualMachinePlanOutput) ToLinuxVirtualMachinePlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachinePlanPtrOutput

type LinuxVirtualMachinePlanPtrInput

type LinuxVirtualMachinePlanPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachinePlanPtrOutput() LinuxVirtualMachinePlanPtrOutput
	ToLinuxVirtualMachinePlanPtrOutputWithContext(context.Context) LinuxVirtualMachinePlanPtrOutput
}

LinuxVirtualMachinePlanPtrInput is an input type that accepts LinuxVirtualMachinePlanArgs, LinuxVirtualMachinePlanPtr and LinuxVirtualMachinePlanPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachinePlanPtrInput` via:

        LinuxVirtualMachinePlanArgs{...}

or:

        nil

type LinuxVirtualMachinePlanPtrOutput

type LinuxVirtualMachinePlanPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachinePlanPtrOutput) Elem

func (LinuxVirtualMachinePlanPtrOutput) ElementType

func (LinuxVirtualMachinePlanPtrOutput) Name

Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanPtrOutput) Product

Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanPtrOutput) Publisher

Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (LinuxVirtualMachinePlanPtrOutput) ToLinuxVirtualMachinePlanPtrOutput

func (o LinuxVirtualMachinePlanPtrOutput) ToLinuxVirtualMachinePlanPtrOutput() LinuxVirtualMachinePlanPtrOutput

func (LinuxVirtualMachinePlanPtrOutput) ToLinuxVirtualMachinePlanPtrOutputWithContext

func (o LinuxVirtualMachinePlanPtrOutput) ToLinuxVirtualMachinePlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachinePlanPtrOutput

type LinuxVirtualMachineScaleSet

type LinuxVirtualMachineScaleSet struct {
	pulumi.CustomResourceState

	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrOutput `pulumi:"adminPassword"`
	// One or more `adminSshKey` blocks as defined below.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput `pulumi:"adminSshKeys"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringOutput `pulumi:"adminUsername"`
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput `pulumi:"automaticInstanceRepair"`
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput `pulumi:"automaticOsUpgradePolicy"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"capacityReservationGroupId"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringOutput `pulumi:"computerNamePrefix"`
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrOutput `pulumi:"customData"`
	// One or more `dataDisk` blocks as defined below.
	DataDisks LinuxVirtualMachineScaleSetDataDiskArrayOutput `pulumi:"dataDisks"`
	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to `true`.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When a `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrOutput `pulumi:"disablePasswordAuthentication"`
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrOutput `pulumi:"doNotRunExtensionsOnOverprovisionedMachines"`
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrOutput `pulumi:"edgeZone"`
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrOutput `pulumi:"encryptionAtHostEnabled"`
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolOutput `pulumi:"extensionOperationsEnabled"`
	// One or more `extension` blocks as defined below
	Extensions LinuxVirtualMachineScaleSetExtensionArrayOutput `pulumi:"extensions"`
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrOutput `pulumi:"extensionsTimeBudget"`
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput `pulumi:"galleryApplication"`
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput `pulumi:"galleryApplications"`
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrOutput `pulumi:"healthProbeId"`
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrOutput `pulumi:"hostGroupId"`
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineScaleSetIdentityPtrOutput `pulumi:"identity"`
	// The number of Virtual Machines in the Scale Set. Defaults to `0`.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntPtrOutput `pulumi:"instances"`
	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrOutput `pulumi:"maxBidPrice"`
	// The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// An `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineScaleSetOsDiskOutput `pulumi:"osDisk"`
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrOutput `pulumi:"overprovision"`
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan LinuxVirtualMachineScaleSetPlanPtrOutput `pulumi:"plan"`
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntOutput `pulumi:"platformFaultDomainCount"`
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrOutput `pulumi:"provisionVmAgent"`
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput `pulumi:"rollingUpgradePolicy"`
	// A `scaleIn` block as defined below.
	ScaleIn LinuxVirtualMachineScaleSetScaleInOutput `pulumi:"scaleIn"`
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringOutput `pulumi:"scaleInPolicy"`
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineScaleSetSecretArrayOutput `pulumi:"secrets"`
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrOutput `pulumi:"secureBootEnabled"`
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrOutput `pulumi:"singlePlacementGroup"`
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringOutput `pulumi:"sku"`
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput `pulumi:"sourceImageReference"`
	// A `spotRestore` block as defined below.
	SpotRestore LinuxVirtualMachineScaleSetSpotRestoreOutput `pulumi:"spotRestore"`
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification LinuxVirtualMachineScaleSetTerminateNotificationOutput `pulumi:"terminateNotification"`
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineScaleSetTerminationNotificationOutput `pulumi:"terminationNotification"`
	// The Unique ID for this Linux Virtual Machine Scale Set.
	UniqueId    pulumi.StringOutput    `pulumi:"uniqueId"`
	UpgradeMode pulumi.StringPtrOutput `pulumi:"upgradeMode"`
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrOutput `pulumi:"vtpmEnabled"`
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrOutput `pulumi:"zoneBalance"`
	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a Linux Virtual Machine Scale Set.

## Disclaimers

> **NOTE:** This provider will automatically update & reimage the nodes in the Scale Set (if Required) during an Update - this behaviour can be configured using the `features` setting within the Provider block.

## Example Usage

This example provisions a basic Linux Virtual Machine Scale Set on an internal network.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		firstPublicKey := "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+wWK73dCr+jgQOAxNsHAnNNNMEMWOHYEccp6wJm2gotpr9katuF/ZAdou5AaW1C61slRkHRkpRRX9FA9CYBiitZgvCCz+3nWNN7l/Up54Zps/pHWGZLHNJZRYyAB6j5yVLMVHIHriY49d/GZTZVNB8GoJv9Gakwc/fuEZYYl4YDFiGMBP///TzlI4jhiJzjKnEvqPFki5p2ZRJqcbCiF4pJrxUQR/RXqVFQdbRLZgYfJ8xGB878RENq3yQ39d8dVOkq4edbkzwcUmwwwkYVPIoDGsYLaRHnG+To7FvMeyO7xDVQkMKzopTQV8AuKpyvpqu0a9pWOMaiCyDytO7GGN you@me.com"
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
			Name:               pulumi.String("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewLinuxVirtualMachineScaleSet(ctx, "example", &compute.LinuxVirtualMachineScaleSetArgs{
			Name:              pulumi.String("example-vmss"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Sku:               pulumi.String("Standard_F2"),
			Instances:         pulumi.Int(1),
			AdminUsername:     pulumi.String("adminuser"),
			AdminSshKeys: compute.LinuxVirtualMachineScaleSetAdminSshKeyArray{
				&compute.LinuxVirtualMachineScaleSetAdminSshKeyArgs{
					Username:  pulumi.String("adminuser"),
					PublicKey: pulumi.String(firstPublicKey),
				},
			},
			SourceImageReference: &compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			OsDisk: &compute.LinuxVirtualMachineScaleSetOsDiskArgs{
				StorageAccountType: pulumi.String("Standard_LRS"),
				Caching:            pulumi.String("ReadWrite"),
			},
			NetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{
				&compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{
					Name:    pulumi.String("example"),
					Primary: pulumi.Bool(true),
					IpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{
						&compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{
							Name:     pulumi.String("internal"),
							Primary:  pulumi.Bool(true),
							SubnetId: internal.ID(),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Linux Virtual Machine Scale Sets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/linuxVirtualMachineScaleSet:LinuxVirtualMachineScaleSet example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1 ```

func GetLinuxVirtualMachineScaleSet

func GetLinuxVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LinuxVirtualMachineScaleSetState, opts ...pulumi.ResourceOption) (*LinuxVirtualMachineScaleSet, error)

GetLinuxVirtualMachineScaleSet gets an existing LinuxVirtualMachineScaleSet 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 NewLinuxVirtualMachineScaleSet

func NewLinuxVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, args *LinuxVirtualMachineScaleSetArgs, opts ...pulumi.ResourceOption) (*LinuxVirtualMachineScaleSet, error)

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

func (*LinuxVirtualMachineScaleSet) ElementType

func (*LinuxVirtualMachineScaleSet) ElementType() reflect.Type

func (*LinuxVirtualMachineScaleSet) ToLinuxVirtualMachineScaleSetOutput

func (i *LinuxVirtualMachineScaleSet) ToLinuxVirtualMachineScaleSetOutput() LinuxVirtualMachineScaleSetOutput

func (*LinuxVirtualMachineScaleSet) ToLinuxVirtualMachineScaleSetOutputWithContext

func (i *LinuxVirtualMachineScaleSet) ToLinuxVirtualMachineScaleSetOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOutput

type LinuxVirtualMachineScaleSetAdditionalCapabilities

type LinuxVirtualMachineScaleSetAdditionalCapabilities struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `pulumi:"ultraSsdEnabled"`
}

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled pulumi.BoolPtrInput `pulumi:"ultraSsdEnabled"`
}

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ElementType

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (i LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput() LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext

func (i LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (i LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesInput

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput() LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput
	ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput
}

LinuxVirtualMachineScaleSetAdditionalCapabilitiesInput is an input type that accepts LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs and LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAdditionalCapabilitiesInput` via:

LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ElementType

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext

func (o LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput() LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
	ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
}

LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput is an input type that accepts LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs, LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtr and LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput` via:

        LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) Elem

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToLinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

type LinuxVirtualMachineScaleSetAdminSshKey

type LinuxVirtualMachineScaleSetAdminSshKey struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format.
	PublicKey string `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be added/appended to the authorized keys file.
	Username string `pulumi:"username"`
}

type LinuxVirtualMachineScaleSetAdminSshKeyArgs

type LinuxVirtualMachineScaleSetAdminSshKeyArgs struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format.
	PublicKey pulumi.StringInput `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be added/appended to the authorized keys file.
	Username pulumi.StringInput `pulumi:"username"`
}

func (LinuxVirtualMachineScaleSetAdminSshKeyArgs) ElementType

func (LinuxVirtualMachineScaleSetAdminSshKeyArgs) ToLinuxVirtualMachineScaleSetAdminSshKeyOutput

func (i LinuxVirtualMachineScaleSetAdminSshKeyArgs) ToLinuxVirtualMachineScaleSetAdminSshKeyOutput() LinuxVirtualMachineScaleSetAdminSshKeyOutput

func (LinuxVirtualMachineScaleSetAdminSshKeyArgs) ToLinuxVirtualMachineScaleSetAdminSshKeyOutputWithContext

func (i LinuxVirtualMachineScaleSetAdminSshKeyArgs) ToLinuxVirtualMachineScaleSetAdminSshKeyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdminSshKeyOutput

type LinuxVirtualMachineScaleSetAdminSshKeyArray

type LinuxVirtualMachineScaleSetAdminSshKeyArray []LinuxVirtualMachineScaleSetAdminSshKeyInput

func (LinuxVirtualMachineScaleSetAdminSshKeyArray) ElementType

func (LinuxVirtualMachineScaleSetAdminSshKeyArray) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

func (i LinuxVirtualMachineScaleSetAdminSshKeyArray) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutput() LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

func (LinuxVirtualMachineScaleSetAdminSshKeyArray) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetAdminSshKeyArray) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

type LinuxVirtualMachineScaleSetAdminSshKeyArrayInput

type LinuxVirtualMachineScaleSetAdminSshKeyArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutput() LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput
	ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput
}

LinuxVirtualMachineScaleSetAdminSshKeyArrayInput is an input type that accepts LinuxVirtualMachineScaleSetAdminSshKeyArray and LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAdminSshKeyArrayInput` via:

LinuxVirtualMachineScaleSetAdminSshKeyArray{ LinuxVirtualMachineScaleSetAdminSshKeyArgs{...} }

type LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

type LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) Index

func (LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

func (o LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutput() LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

func (LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdminSshKeyArrayOutput

type LinuxVirtualMachineScaleSetAdminSshKeyInput

type LinuxVirtualMachineScaleSetAdminSshKeyInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAdminSshKeyOutput() LinuxVirtualMachineScaleSetAdminSshKeyOutput
	ToLinuxVirtualMachineScaleSetAdminSshKeyOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAdminSshKeyOutput
}

LinuxVirtualMachineScaleSetAdminSshKeyInput is an input type that accepts LinuxVirtualMachineScaleSetAdminSshKeyArgs and LinuxVirtualMachineScaleSetAdminSshKeyOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAdminSshKeyInput` via:

LinuxVirtualMachineScaleSetAdminSshKeyArgs{...}

type LinuxVirtualMachineScaleSetAdminSshKeyOutput

type LinuxVirtualMachineScaleSetAdminSshKeyOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAdminSshKeyOutput) ElementType

func (LinuxVirtualMachineScaleSetAdminSshKeyOutput) PublicKey

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in `ssh-rsa` format.

func (LinuxVirtualMachineScaleSetAdminSshKeyOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyOutput

func (o LinuxVirtualMachineScaleSetAdminSshKeyOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyOutput() LinuxVirtualMachineScaleSetAdminSshKeyOutput

func (LinuxVirtualMachineScaleSetAdminSshKeyOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyOutputWithContext

func (o LinuxVirtualMachineScaleSetAdminSshKeyOutput) ToLinuxVirtualMachineScaleSetAdminSshKeyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAdminSshKeyOutput

func (LinuxVirtualMachineScaleSetAdminSshKeyOutput) Username

The Username for which this Public SSH Key should be configured.

> **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be added/appended to the authorized keys file.

type LinuxVirtualMachineScaleSetArgs

type LinuxVirtualMachineScaleSetArgs struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrInput
	// One or more `adminSshKey` blocks as defined below.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineScaleSetAdminSshKeyArrayInput
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrInput
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks LinuxVirtualMachineScaleSetDataDiskArrayInput
	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to `true`.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When a `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrInput
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrInput
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions LinuxVirtualMachineScaleSetExtensionArrayInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication LinuxVirtualMachineScaleSetGalleryApplicationArrayInput
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications LinuxVirtualMachineScaleSetGalleryApplicationArrayInput
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrInput
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Scale Set. Defaults to `0`.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntPtrInput
	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineScaleSetOsDiskInput
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan LinuxVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntPtrInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput
	// A `scaleIn` block as defined below.
	ScaleIn LinuxVirtualMachineScaleSetScaleInPtrInput
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineScaleSetSecretArrayInput
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineScaleSetSourceImageReferencePtrInput
	// A `spotRestore` block as defined below.
	SpotRestore LinuxVirtualMachineScaleSetSpotRestorePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification LinuxVirtualMachineScaleSetTerminateNotificationPtrInput
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineScaleSetTerminationNotificationPtrInput
	UpgradeMode             pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrInput
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a LinuxVirtualMachineScaleSet resource.

func (LinuxVirtualMachineScaleSetArgs) ElementType

type LinuxVirtualMachineScaleSetArray

type LinuxVirtualMachineScaleSetArray []LinuxVirtualMachineScaleSetInput

func (LinuxVirtualMachineScaleSetArray) ElementType

func (LinuxVirtualMachineScaleSetArray) ToLinuxVirtualMachineScaleSetArrayOutput

func (i LinuxVirtualMachineScaleSetArray) ToLinuxVirtualMachineScaleSetArrayOutput() LinuxVirtualMachineScaleSetArrayOutput

func (LinuxVirtualMachineScaleSetArray) ToLinuxVirtualMachineScaleSetArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetArray) ToLinuxVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetArrayOutput

type LinuxVirtualMachineScaleSetArrayInput

type LinuxVirtualMachineScaleSetArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetArrayOutput() LinuxVirtualMachineScaleSetArrayOutput
	ToLinuxVirtualMachineScaleSetArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetArrayOutput
}

LinuxVirtualMachineScaleSetArrayInput is an input type that accepts LinuxVirtualMachineScaleSetArray and LinuxVirtualMachineScaleSetArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetArrayInput` via:

LinuxVirtualMachineScaleSetArray{ LinuxVirtualMachineScaleSetArgs{...} }

type LinuxVirtualMachineScaleSetArrayOutput

type LinuxVirtualMachineScaleSetArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetArrayOutput) Index

func (LinuxVirtualMachineScaleSetArrayOutput) ToLinuxVirtualMachineScaleSetArrayOutput

func (o LinuxVirtualMachineScaleSetArrayOutput) ToLinuxVirtualMachineScaleSetArrayOutput() LinuxVirtualMachineScaleSetArrayOutput

func (LinuxVirtualMachineScaleSetArrayOutput) ToLinuxVirtualMachineScaleSetArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetArrayOutput) ToLinuxVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetArrayOutput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepair

type LinuxVirtualMachineScaleSetAutomaticInstanceRepair struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.
	GracePeriod *string `pulumi:"gracePeriod"`
}

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.
	GracePeriod pulumi.StringPtrInput `pulumi:"gracePeriod"`
}

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ElementType

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (i LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (i LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput() LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairInput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput() LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput
	ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput
}

LinuxVirtualMachineScaleSetAutomaticInstanceRepairInput is an input type that accepts LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs and LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAutomaticInstanceRepairInput` via:

LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ElementType

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) GracePeriod

Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput() LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
	ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
}

LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput is an input type that accepts LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs, LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtr and LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput` via:

        LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Elem

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) GracePeriod

Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy struct {
	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback bool `pulumi:"disableAutomaticRollback"`
	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade bool `pulumi:"enableAutomaticOsUpgrade"`
}

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs struct {
	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback pulumi.BoolInput `pulumi:"disableAutomaticRollback"`
	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade pulumi.BoolInput `pulumi:"enableAutomaticOsUpgrade"`
}

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ElementType

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext

func (i LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (i LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput() LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyInput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput() LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput
	ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput
}

LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyInput is an input type that accepts LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs and LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyInput` via:

LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs{...}

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) DisableAutomaticRollback

Should automatic rollbacks be disabled?

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ElementType

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) EnableAutomaticOsUpgrade

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput() LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput
	ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput
}

LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput is an input type that accepts LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs, LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtr and LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput` via:

        LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) DisableAutomaticRollback

Should automatic rollbacks be disabled?

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) Elem

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) EnableAutomaticOsUpgrade

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetBootDiagnostics

type LinuxVirtualMachineScaleSetBootDiagnostics struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.
	StorageAccountUri *string `pulumi:"storageAccountUri"`
}

type LinuxVirtualMachineScaleSetBootDiagnosticsArgs

type LinuxVirtualMachineScaleSetBootDiagnosticsArgs struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.
	StorageAccountUri pulumi.StringPtrInput `pulumi:"storageAccountUri"`
}

func (LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ElementType

func (LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (i LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutput() LinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (i LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (i LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput() LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetBootDiagnosticsArgs) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

type LinuxVirtualMachineScaleSetBootDiagnosticsInput

type LinuxVirtualMachineScaleSetBootDiagnosticsInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetBootDiagnosticsOutput() LinuxVirtualMachineScaleSetBootDiagnosticsOutput
	ToLinuxVirtualMachineScaleSetBootDiagnosticsOutputWithContext(context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsOutput
}

LinuxVirtualMachineScaleSetBootDiagnosticsInput is an input type that accepts LinuxVirtualMachineScaleSetBootDiagnosticsArgs and LinuxVirtualMachineScaleSetBootDiagnosticsOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetBootDiagnosticsInput` via:

LinuxVirtualMachineScaleSetBootDiagnosticsArgs{...}

type LinuxVirtualMachineScaleSetBootDiagnosticsOutput

type LinuxVirtualMachineScaleSetBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ElementType

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (o LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutput() LinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (o LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (o LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput() LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetBootDiagnosticsOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

type LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput

type LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput() LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput
	ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput
}

LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput is an input type that accepts LinuxVirtualMachineScaleSetBootDiagnosticsArgs, LinuxVirtualMachineScaleSetBootDiagnosticsPtr and LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput` via:

        LinuxVirtualMachineScaleSetBootDiagnosticsArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

type LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) Elem

func (LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.

func (LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (o LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput() LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToLinuxVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetBootDiagnosticsPtrOutput

type LinuxVirtualMachineScaleSetDataDisk

type LinuxVirtualMachineScaleSetDataDisk struct {
	// The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).
	CreateOption *string `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created.
	DiskSizeGb int `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun int `pulumi:"lun"`
	// The name of the Data Disk.
	Name *string `pulumi:"name"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	//
	// > **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite *int `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite *int `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type LinuxVirtualMachineScaleSetDataDiskArgs

type LinuxVirtualMachineScaleSetDataDiskArgs struct {
	// The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).
	CreateOption pulumi.StringPtrInput `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created.
	DiskSizeGb pulumi.IntInput `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun pulumi.IntInput `pulumi:"lun"`
	// The name of the Data Disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	//
	// > **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (LinuxVirtualMachineScaleSetDataDiskArgs) ElementType

func (LinuxVirtualMachineScaleSetDataDiskArgs) ToLinuxVirtualMachineScaleSetDataDiskOutput

func (i LinuxVirtualMachineScaleSetDataDiskArgs) ToLinuxVirtualMachineScaleSetDataDiskOutput() LinuxVirtualMachineScaleSetDataDiskOutput

func (LinuxVirtualMachineScaleSetDataDiskArgs) ToLinuxVirtualMachineScaleSetDataDiskOutputWithContext

func (i LinuxVirtualMachineScaleSetDataDiskArgs) ToLinuxVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetDataDiskOutput

type LinuxVirtualMachineScaleSetDataDiskArray

type LinuxVirtualMachineScaleSetDataDiskArray []LinuxVirtualMachineScaleSetDataDiskInput

func (LinuxVirtualMachineScaleSetDataDiskArray) ElementType

func (LinuxVirtualMachineScaleSetDataDiskArray) ToLinuxVirtualMachineScaleSetDataDiskArrayOutput

func (i LinuxVirtualMachineScaleSetDataDiskArray) ToLinuxVirtualMachineScaleSetDataDiskArrayOutput() LinuxVirtualMachineScaleSetDataDiskArrayOutput

func (LinuxVirtualMachineScaleSetDataDiskArray) ToLinuxVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetDataDiskArray) ToLinuxVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetDataDiskArrayOutput

type LinuxVirtualMachineScaleSetDataDiskArrayInput

type LinuxVirtualMachineScaleSetDataDiskArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetDataDiskArrayOutput() LinuxVirtualMachineScaleSetDataDiskArrayOutput
	ToLinuxVirtualMachineScaleSetDataDiskArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetDataDiskArrayOutput
}

LinuxVirtualMachineScaleSetDataDiskArrayInput is an input type that accepts LinuxVirtualMachineScaleSetDataDiskArray and LinuxVirtualMachineScaleSetDataDiskArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetDataDiskArrayInput` via:

LinuxVirtualMachineScaleSetDataDiskArray{ LinuxVirtualMachineScaleSetDataDiskArgs{...} }

type LinuxVirtualMachineScaleSetDataDiskArrayOutput

type LinuxVirtualMachineScaleSetDataDiskArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetDataDiskArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetDataDiskArrayOutput) Index

func (LinuxVirtualMachineScaleSetDataDiskArrayOutput) ToLinuxVirtualMachineScaleSetDataDiskArrayOutput

func (o LinuxVirtualMachineScaleSetDataDiskArrayOutput) ToLinuxVirtualMachineScaleSetDataDiskArrayOutput() LinuxVirtualMachineScaleSetDataDiskArrayOutput

func (LinuxVirtualMachineScaleSetDataDiskArrayOutput) ToLinuxVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetDataDiskArrayOutput) ToLinuxVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetDataDiskArrayOutput

type LinuxVirtualMachineScaleSetDataDiskInput

type LinuxVirtualMachineScaleSetDataDiskInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetDataDiskOutput() LinuxVirtualMachineScaleSetDataDiskOutput
	ToLinuxVirtualMachineScaleSetDataDiskOutputWithContext(context.Context) LinuxVirtualMachineScaleSetDataDiskOutput
}

LinuxVirtualMachineScaleSetDataDiskInput is an input type that accepts LinuxVirtualMachineScaleSetDataDiskArgs and LinuxVirtualMachineScaleSetDataDiskOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetDataDiskInput` via:

LinuxVirtualMachineScaleSetDataDiskArgs{...}

type LinuxVirtualMachineScaleSetDataDiskOutput

type LinuxVirtualMachineScaleSetDataDiskOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetDataDiskOutput) Caching

The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (LinuxVirtualMachineScaleSetDataDiskOutput) CreateOption

The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).

func (LinuxVirtualMachineScaleSetDataDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (LinuxVirtualMachineScaleSetDataDiskOutput) DiskSizeGb

The size of the Data Disk which should be created.

func (LinuxVirtualMachineScaleSetDataDiskOutput) ElementType

func (LinuxVirtualMachineScaleSetDataDiskOutput) Lun

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

func (LinuxVirtualMachineScaleSetDataDiskOutput) Name added in v5.18.0

The name of the Data Disk.

func (LinuxVirtualMachineScaleSetDataDiskOutput) StorageAccountType

The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.

> **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.

func (LinuxVirtualMachineScaleSetDataDiskOutput) ToLinuxVirtualMachineScaleSetDataDiskOutput

func (o LinuxVirtualMachineScaleSetDataDiskOutput) ToLinuxVirtualMachineScaleSetDataDiskOutput() LinuxVirtualMachineScaleSetDataDiskOutput

func (LinuxVirtualMachineScaleSetDataDiskOutput) ToLinuxVirtualMachineScaleSetDataDiskOutputWithContext

func (o LinuxVirtualMachineScaleSetDataDiskOutput) ToLinuxVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetDataDiskOutput

func (LinuxVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskIopsReadWrite

func (o LinuxVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskIopsReadWrite() pulumi.IntPtrOutput

Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (LinuxVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskMbpsReadWrite

func (o LinuxVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskMbpsReadWrite() pulumi.IntPtrOutput

Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (LinuxVirtualMachineScaleSetDataDiskOutput) WriteAcceleratorEnabled

Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type LinuxVirtualMachineScaleSetExtension

type LinuxVirtualMachineScaleSetExtension struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion *bool `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `pulumi:"automaticUpgradeEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `pulumi:"forceUpdateTag"`
	// The name for the Virtual Machine Scale Set Extension.
	Name string `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings             *string                                                            `pulumi:"protectedSettings"`
	ProtectedSettingsFromKeyVault *LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault `pulumi:"protectedSettingsFromKeyVault"`
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []string `pulumi:"provisionAfterExtensions"`
	// Specifies the Publisher of the Extension.
	Publisher string `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings *string `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type string `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion string `pulumi:"typeHandlerVersion"`
}

type LinuxVirtualMachineScaleSetExtensionArgs

type LinuxVirtualMachineScaleSetExtensionArgs struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput `pulumi:"automaticUpgradeEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag pulumi.StringPtrInput `pulumi:"forceUpdateTag"`
	// The name for the Virtual Machine Scale Set Extension.
	Name pulumi.StringInput `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings             pulumi.StringPtrInput                                                     `pulumi:"protectedSettings"`
	ProtectedSettingsFromKeyVault LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput `pulumi:"protectedSettingsFromKeyVault"`
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions pulumi.StringArrayInput `pulumi:"provisionAfterExtensions"`
	// Specifies the Publisher of the Extension.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings pulumi.StringPtrInput `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type pulumi.StringInput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringInput `pulumi:"typeHandlerVersion"`
}

func (LinuxVirtualMachineScaleSetExtensionArgs) ElementType

func (LinuxVirtualMachineScaleSetExtensionArgs) ToLinuxVirtualMachineScaleSetExtensionOutput

func (i LinuxVirtualMachineScaleSetExtensionArgs) ToLinuxVirtualMachineScaleSetExtensionOutput() LinuxVirtualMachineScaleSetExtensionOutput

func (LinuxVirtualMachineScaleSetExtensionArgs) ToLinuxVirtualMachineScaleSetExtensionOutputWithContext

func (i LinuxVirtualMachineScaleSetExtensionArgs) ToLinuxVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionOutput

type LinuxVirtualMachineScaleSetExtensionArray

type LinuxVirtualMachineScaleSetExtensionArray []LinuxVirtualMachineScaleSetExtensionInput

func (LinuxVirtualMachineScaleSetExtensionArray) ElementType

func (LinuxVirtualMachineScaleSetExtensionArray) ToLinuxVirtualMachineScaleSetExtensionArrayOutput

func (i LinuxVirtualMachineScaleSetExtensionArray) ToLinuxVirtualMachineScaleSetExtensionArrayOutput() LinuxVirtualMachineScaleSetExtensionArrayOutput

func (LinuxVirtualMachineScaleSetExtensionArray) ToLinuxVirtualMachineScaleSetExtensionArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetExtensionArray) ToLinuxVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionArrayOutput

type LinuxVirtualMachineScaleSetExtensionArrayInput

type LinuxVirtualMachineScaleSetExtensionArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetExtensionArrayOutput() LinuxVirtualMachineScaleSetExtensionArrayOutput
	ToLinuxVirtualMachineScaleSetExtensionArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetExtensionArrayOutput
}

LinuxVirtualMachineScaleSetExtensionArrayInput is an input type that accepts LinuxVirtualMachineScaleSetExtensionArray and LinuxVirtualMachineScaleSetExtensionArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetExtensionArrayInput` via:

LinuxVirtualMachineScaleSetExtensionArray{ LinuxVirtualMachineScaleSetExtensionArgs{...} }

type LinuxVirtualMachineScaleSetExtensionArrayOutput

type LinuxVirtualMachineScaleSetExtensionArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetExtensionArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetExtensionArrayOutput) Index

func (LinuxVirtualMachineScaleSetExtensionArrayOutput) ToLinuxVirtualMachineScaleSetExtensionArrayOutput

func (o LinuxVirtualMachineScaleSetExtensionArrayOutput) ToLinuxVirtualMachineScaleSetExtensionArrayOutput() LinuxVirtualMachineScaleSetExtensionArrayOutput

func (LinuxVirtualMachineScaleSetExtensionArrayOutput) ToLinuxVirtualMachineScaleSetExtensionArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetExtensionArrayOutput) ToLinuxVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionArrayOutput

type LinuxVirtualMachineScaleSetExtensionInput

type LinuxVirtualMachineScaleSetExtensionInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetExtensionOutput() LinuxVirtualMachineScaleSetExtensionOutput
	ToLinuxVirtualMachineScaleSetExtensionOutputWithContext(context.Context) LinuxVirtualMachineScaleSetExtensionOutput
}

LinuxVirtualMachineScaleSetExtensionInput is an input type that accepts LinuxVirtualMachineScaleSetExtensionArgs and LinuxVirtualMachineScaleSetExtensionOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetExtensionInput` via:

LinuxVirtualMachineScaleSetExtensionArgs{...}

type LinuxVirtualMachineScaleSetExtensionOutput

type LinuxVirtualMachineScaleSetExtensionOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersion

Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.

func (LinuxVirtualMachineScaleSetExtensionOutput) AutomaticUpgradeEnabled

Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?

func (LinuxVirtualMachineScaleSetExtensionOutput) ElementType

func (LinuxVirtualMachineScaleSetExtensionOutput) ForceUpdateTag

A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.

func (LinuxVirtualMachineScaleSetExtensionOutput) Name

The name for the Virtual Machine Scale Set Extension.

func (LinuxVirtualMachineScaleSetExtensionOutput) ProtectedSettings

A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.

> **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (LinuxVirtualMachineScaleSetExtensionOutput) ProtectedSettingsFromKeyVault added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionOutput) ProvisionAfterExtensions

An ordered list of Extension names which this should be provisioned after.

func (LinuxVirtualMachineScaleSetExtensionOutput) Publisher

Specifies the Publisher of the Extension.

func (LinuxVirtualMachineScaleSetExtensionOutput) Settings

A JSON String which specifies Settings for the Extension.

> **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (LinuxVirtualMachineScaleSetExtensionOutput) ToLinuxVirtualMachineScaleSetExtensionOutput

func (o LinuxVirtualMachineScaleSetExtensionOutput) ToLinuxVirtualMachineScaleSetExtensionOutput() LinuxVirtualMachineScaleSetExtensionOutput

func (LinuxVirtualMachineScaleSetExtensionOutput) ToLinuxVirtualMachineScaleSetExtensionOutputWithContext

func (o LinuxVirtualMachineScaleSetExtensionOutput) ToLinuxVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionOutput

func (LinuxVirtualMachineScaleSetExtensionOutput) Type

Specifies the Type of the Extension.

func (LinuxVirtualMachineScaleSetExtensionOutput) TypeHandlerVersion

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ElementType added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (i LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (i LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput() LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
	ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
}

LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput is an input type that accepts LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs and LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput` via:

LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ElementType added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (o LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput() LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
	ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
}

LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput is an input type that accepts LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs, LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtr and LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput` via:

        LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

type LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) Elem added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ElementType added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (LinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToLinuxVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

type LinuxVirtualMachineScaleSetGalleryApplication added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplication struct {
	// Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0
	ConfigurationReferenceBlobUri *string `pulumi:"configurationReferenceBlobUri"`
	Order                         *int    `pulumi:"order"`
	// Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0
	PackageReferenceId string  `pulumi:"packageReferenceId"`
	Tag                *string `pulumi:"tag"`
}

type LinuxVirtualMachineScaleSetGalleryApplicationArgs added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationArgs struct {
	// Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0
	ConfigurationReferenceBlobUri pulumi.StringPtrInput `pulumi:"configurationReferenceBlobUri"`
	Order                         pulumi.IntPtrInput    `pulumi:"order"`
	// Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0
	PackageReferenceId pulumi.StringInput    `pulumi:"packageReferenceId"`
	Tag                pulumi.StringPtrInput `pulumi:"tag"`
}

func (LinuxVirtualMachineScaleSetGalleryApplicationArgs) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationArgs) ToLinuxVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetGalleryApplicationArgs) ToLinuxVirtualMachineScaleSetGalleryApplicationOutput() LinuxVirtualMachineScaleSetGalleryApplicationOutput

func (LinuxVirtualMachineScaleSetGalleryApplicationArgs) ToLinuxVirtualMachineScaleSetGalleryApplicationOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetGalleryApplicationArgs) ToLinuxVirtualMachineScaleSetGalleryApplicationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetGalleryApplicationOutput

type LinuxVirtualMachineScaleSetGalleryApplicationArray added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationArray []LinuxVirtualMachineScaleSetGalleryApplicationInput

func (LinuxVirtualMachineScaleSetGalleryApplicationArray) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationArray) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetGalleryApplicationArray) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutput() LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput

func (LinuxVirtualMachineScaleSetGalleryApplicationArray) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetGalleryApplicationArray) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput

type LinuxVirtualMachineScaleSetGalleryApplicationArrayInput added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutput() LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput
	ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput
}

LinuxVirtualMachineScaleSetGalleryApplicationArrayInput is an input type that accepts LinuxVirtualMachineScaleSetGalleryApplicationArray and LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetGalleryApplicationArrayInput` via:

LinuxVirtualMachineScaleSetGalleryApplicationArray{ LinuxVirtualMachineScaleSetGalleryApplicationArgs{...} }

type LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput) Index added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetGalleryApplicationArrayOutput

type LinuxVirtualMachineScaleSetGalleryApplicationInput added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetGalleryApplicationOutput() LinuxVirtualMachineScaleSetGalleryApplicationOutput
	ToLinuxVirtualMachineScaleSetGalleryApplicationOutputWithContext(context.Context) LinuxVirtualMachineScaleSetGalleryApplicationOutput
}

LinuxVirtualMachineScaleSetGalleryApplicationInput is an input type that accepts LinuxVirtualMachineScaleSetGalleryApplicationArgs and LinuxVirtualMachineScaleSetGalleryApplicationOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetGalleryApplicationInput` via:

LinuxVirtualMachineScaleSetGalleryApplicationArgs{...}

type LinuxVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

type LinuxVirtualMachineScaleSetGalleryApplicationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) ConfigurationReferenceBlobUri deprecated added in v5.18.0

Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) Order added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) PackageReferenceId deprecated added in v5.18.0

Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) Tag added in v5.18.0

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetGalleryApplicationOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationOutput() LinuxVirtualMachineScaleSetGalleryApplicationOutput

func (LinuxVirtualMachineScaleSetGalleryApplicationOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetGalleryApplicationOutput) ToLinuxVirtualMachineScaleSetGalleryApplicationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetGalleryApplicationOutput

type LinuxVirtualMachineScaleSetIdentity

type LinuxVirtualMachineScaleSetIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type LinuxVirtualMachineScaleSetIdentityArgs

type LinuxVirtualMachineScaleSetIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (LinuxVirtualMachineScaleSetIdentityArgs) ElementType

func (LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityOutput

func (i LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityOutput() LinuxVirtualMachineScaleSetIdentityOutput

func (LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityOutputWithContext

func (i LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetIdentityOutput

func (LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityPtrOutput

func (i LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityPtrOutput() LinuxVirtualMachineScaleSetIdentityPtrOutput

func (LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetIdentityArgs) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetIdentityPtrOutput

type LinuxVirtualMachineScaleSetIdentityInput

type LinuxVirtualMachineScaleSetIdentityInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetIdentityOutput() LinuxVirtualMachineScaleSetIdentityOutput
	ToLinuxVirtualMachineScaleSetIdentityOutputWithContext(context.Context) LinuxVirtualMachineScaleSetIdentityOutput
}

LinuxVirtualMachineScaleSetIdentityInput is an input type that accepts LinuxVirtualMachineScaleSetIdentityArgs and LinuxVirtualMachineScaleSetIdentityOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetIdentityInput` via:

LinuxVirtualMachineScaleSetIdentityArgs{...}

type LinuxVirtualMachineScaleSetIdentityOutput

type LinuxVirtualMachineScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetIdentityOutput) ElementType

func (LinuxVirtualMachineScaleSetIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (LinuxVirtualMachineScaleSetIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (LinuxVirtualMachineScaleSetIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityOutput

func (o LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityOutput() LinuxVirtualMachineScaleSetIdentityOutput

func (LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityOutputWithContext

func (o LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetIdentityOutput

func (LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutput

func (o LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutput() LinuxVirtualMachineScaleSetIdentityPtrOutput

func (LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetIdentityOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetIdentityPtrOutput

func (LinuxVirtualMachineScaleSetIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type LinuxVirtualMachineScaleSetIdentityPtrInput

type LinuxVirtualMachineScaleSetIdentityPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetIdentityPtrOutput() LinuxVirtualMachineScaleSetIdentityPtrOutput
	ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetIdentityPtrOutput
}

LinuxVirtualMachineScaleSetIdentityPtrInput is an input type that accepts LinuxVirtualMachineScaleSetIdentityArgs, LinuxVirtualMachineScaleSetIdentityPtr and LinuxVirtualMachineScaleSetIdentityPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetIdentityPtrInput` via:

        LinuxVirtualMachineScaleSetIdentityArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetIdentityPtrOutput

type LinuxVirtualMachineScaleSetIdentityPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) Elem

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutput

func (o LinuxVirtualMachineScaleSetIdentityPtrOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutput() LinuxVirtualMachineScaleSetIdentityPtrOutput

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetIdentityPtrOutput) ToLinuxVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetIdentityPtrOutput

func (LinuxVirtualMachineScaleSetIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type LinuxVirtualMachineScaleSetInput

type LinuxVirtualMachineScaleSetInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetOutput() LinuxVirtualMachineScaleSetOutput
	ToLinuxVirtualMachineScaleSetOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOutput
}

type LinuxVirtualMachineScaleSetMap

type LinuxVirtualMachineScaleSetMap map[string]LinuxVirtualMachineScaleSetInput

func (LinuxVirtualMachineScaleSetMap) ElementType

func (LinuxVirtualMachineScaleSetMap) ToLinuxVirtualMachineScaleSetMapOutput

func (i LinuxVirtualMachineScaleSetMap) ToLinuxVirtualMachineScaleSetMapOutput() LinuxVirtualMachineScaleSetMapOutput

func (LinuxVirtualMachineScaleSetMap) ToLinuxVirtualMachineScaleSetMapOutputWithContext

func (i LinuxVirtualMachineScaleSetMap) ToLinuxVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetMapOutput

type LinuxVirtualMachineScaleSetMapInput

type LinuxVirtualMachineScaleSetMapInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetMapOutput() LinuxVirtualMachineScaleSetMapOutput
	ToLinuxVirtualMachineScaleSetMapOutputWithContext(context.Context) LinuxVirtualMachineScaleSetMapOutput
}

LinuxVirtualMachineScaleSetMapInput is an input type that accepts LinuxVirtualMachineScaleSetMap and LinuxVirtualMachineScaleSetMapOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetMapInput` via:

LinuxVirtualMachineScaleSetMap{ "key": LinuxVirtualMachineScaleSetArgs{...} }

type LinuxVirtualMachineScaleSetMapOutput

type LinuxVirtualMachineScaleSetMapOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetMapOutput) ElementType

func (LinuxVirtualMachineScaleSetMapOutput) MapIndex

func (LinuxVirtualMachineScaleSetMapOutput) ToLinuxVirtualMachineScaleSetMapOutput

func (o LinuxVirtualMachineScaleSetMapOutput) ToLinuxVirtualMachineScaleSetMapOutput() LinuxVirtualMachineScaleSetMapOutput

func (LinuxVirtualMachineScaleSetMapOutput) ToLinuxVirtualMachineScaleSetMapOutputWithContext

func (o LinuxVirtualMachineScaleSetMapOutput) ToLinuxVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetMapOutput

type LinuxVirtualMachineScaleSetNetworkInterface

type LinuxVirtualMachineScaleSetNetworkInterface struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers []string `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Defaults to `false`.
	EnableAcceleratedNetworking *bool `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Defaults to `false`.
	EnableIpForwarding *bool `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId *string `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration?
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary *bool `pulumi:"primary"`
}

type LinuxVirtualMachineScaleSetNetworkInterfaceArgs

type LinuxVirtualMachineScaleSetNetworkInterfaceArgs struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Defaults to `false`.
	EnableAcceleratedNetworking pulumi.BoolPtrInput `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Defaults to `false`.
	EnableIpForwarding pulumi.BoolPtrInput `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId pulumi.StringPtrInput `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration?
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
}

func (LinuxVirtualMachineScaleSetNetworkInterfaceArgs) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutput

func (i LinuxVirtualMachineScaleSetNetworkInterfaceArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutput() LinuxVirtualMachineScaleSetNetworkInterfaceOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (i LinuxVirtualMachineScaleSetNetworkInterfaceArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceArray

type LinuxVirtualMachineScaleSetNetworkInterfaceArray []LinuxVirtualMachineScaleSetNetworkInterfaceInput

func (LinuxVirtualMachineScaleSetNetworkInterfaceArray) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (i LinuxVirtualMachineScaleSetNetworkInterfaceArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput() LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetNetworkInterfaceArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput

type LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput() LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceArray and LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceArray{ LinuxVirtualMachineScaleSetNetworkInterfaceArgs{...} }

type LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput) Index

func (LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceInput

type LinuxVirtualMachineScaleSetNetworkInterfaceInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceOutput() LinuxVirtualMachineScaleSetNetworkInterfaceOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceArgs and LinuxVirtualMachineScaleSetNetworkInterfaceOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceArgs{...}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration struct {
	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:**  When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds []string `pulumi:"loadBalancerInboundNatRulesIds"`
	// The Name which should be used for this IP Configuration.
	Name string `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary *bool `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > `subnetId` is required if `version` is set to `IPv4`.
	SubnetId *string `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version *string `pulumi:"version"`
}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs struct {
	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:**  When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds pulumi.StringArrayInput `pulumi:"loadBalancerInboundNatRulesIds"`
	// The Name which should be used for this IP Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > `subnetId` is required if `version` is set to `IPv4`.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (i LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{ LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...} }

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds

A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationSecurityGroupIds

A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerBackendAddressPoolIds

A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.

> **NOTE:** When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerInboundNatRulesIds

A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Name

The Name which should be used for this IP Configuration.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Primary

Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.

> **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) PublicIpAddresses

A `publicIpAddress` block as defined below.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) SubnetId

The ID of the Subnet which this IP Configuration should be connected to.

> `subnetId` is required if `version` is set to `IPv4`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (o LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Version

The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name string `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.
	PublicIpPrefixId *string `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version *string `pulumi:"version"`
}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel pulumi.StringPtrInput `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.
	PublicIpPrefixId pulumi.StringPtrInput `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray{ LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...} }

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag string `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type string `pulumi:"type"`
}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag pulumi.StringInput `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type pulumi.StringInput `pulumi:"type"`
}

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray{ LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...} }

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput() LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
	ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext(context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
}

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput is an input type that accepts LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs and LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput` via:

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...}

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Tag

The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Type

The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) DomainNameLabel

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IdleTimeoutInMinutes

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IpTags

One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Name

The Name of the Public IP Address Configuration.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) PublicIpPrefixId

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

> **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

func (LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Version added in v5.18.0

The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.

type LinuxVirtualMachineScaleSetNetworkInterfaceOutput

type LinuxVirtualMachineScaleSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) DnsServers

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) ElementType

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) EnableAcceleratedNetworking

Does this Network Interface support Accelerated Networking? Defaults to `false`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) EnableIpForwarding

Does this Network Interface support IP Forwarding? Defaults to `false`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) IpConfigurations

One or more `ipConfiguration` blocks as defined above.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) Name

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) NetworkSecurityGroupId

The ID of a Network Security Group which should be assigned to this Network Interface.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) Primary

Is this the Primary IP Configuration?

> **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutput

func (o LinuxVirtualMachineScaleSetNetworkInterfaceOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutput() LinuxVirtualMachineScaleSetNetworkInterfaceOutput

func (LinuxVirtualMachineScaleSetNetworkInterfaceOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (o LinuxVirtualMachineScaleSetNetworkInterfaceOutput) ToLinuxVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetNetworkInterfaceOutput

type LinuxVirtualMachineScaleSetOsDisk

type LinuxVirtualMachineScaleSetOsDisk struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings *LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId *string `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType *string `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type LinuxVirtualMachineScaleSetOsDiskArgs

type LinuxVirtualMachineScaleSetOsDiskArgs struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType pulumi.StringPtrInput `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (LinuxVirtualMachineScaleSetOsDiskArgs) ElementType

func (LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskOutput

func (i LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskOutput() LinuxVirtualMachineScaleSetOsDiskOutput

func (LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskOutputWithContext

func (i LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskOutput

func (LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput

func (i LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput() LinuxVirtualMachineScaleSetOsDiskPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetOsDiskArgs) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskPtrOutput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option string `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement *string `pulumi:"placement"`
}

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option pulumi.StringInput `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement pulumi.StringPtrInput `pulumi:"placement"`
}

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ElementType

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (i LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput() LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (i LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (i LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsInput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput() LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
	ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
}

LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsInput is an input type that accepts LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs and LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsInput` via:

LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ElementType

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput() LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
	ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
}

LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput is an input type that accepts LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs, LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtr and LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput` via:

        LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Elem

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type LinuxVirtualMachineScaleSetOsDiskInput

type LinuxVirtualMachineScaleSetOsDiskInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetOsDiskOutput() LinuxVirtualMachineScaleSetOsDiskOutput
	ToLinuxVirtualMachineScaleSetOsDiskOutputWithContext(context.Context) LinuxVirtualMachineScaleSetOsDiskOutput
}

LinuxVirtualMachineScaleSetOsDiskInput is an input type that accepts LinuxVirtualMachineScaleSetOsDiskArgs and LinuxVirtualMachineScaleSetOsDiskOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetOsDiskInput` via:

LinuxVirtualMachineScaleSetOsDiskArgs{...}

type LinuxVirtualMachineScaleSetOsDiskOutput

type LinuxVirtualMachineScaleSetOsDiskOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetOsDiskOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (LinuxVirtualMachineScaleSetOsDiskOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (LinuxVirtualMachineScaleSetOsDiskOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (LinuxVirtualMachineScaleSetOsDiskOutput) ElementType

func (LinuxVirtualMachineScaleSetOsDiskOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o LinuxVirtualMachineScaleSetOsDiskOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineScaleSetOsDiskOutput) SecurityEncryptionType added in v5.8.0

Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineScaleSetOsDiskOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskOutput

func (o LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskOutput() LinuxVirtualMachineScaleSetOsDiskOutput

func (LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskOutput

func (LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput

func (o LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput() LinuxVirtualMachineScaleSetOsDiskPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskOutput) WriteAcceleratorEnabled

func (o LinuxVirtualMachineScaleSetOsDiskOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type LinuxVirtualMachineScaleSetOsDiskPtrInput

type LinuxVirtualMachineScaleSetOsDiskPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetOsDiskPtrOutput() LinuxVirtualMachineScaleSetOsDiskPtrOutput
	ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetOsDiskPtrOutput
}

LinuxVirtualMachineScaleSetOsDiskPtrInput is an input type that accepts LinuxVirtualMachineScaleSetOsDiskArgs, LinuxVirtualMachineScaleSetOsDiskPtr and LinuxVirtualMachineScaleSetOsDiskPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetOsDiskPtrInput` via:

        LinuxVirtualMachineScaleSetOsDiskArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetOsDiskPtrOutput

type LinuxVirtualMachineScaleSetOsDiskPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) Elem

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o LinuxVirtualMachineScaleSetOsDiskPtrOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) SecurityEncryptionType added in v5.8.0

Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput

func (o LinuxVirtualMachineScaleSetOsDiskPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutput() LinuxVirtualMachineScaleSetOsDiskPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetOsDiskPtrOutput) ToLinuxVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOsDiskPtrOutput

func (LinuxVirtualMachineScaleSetOsDiskPtrOutput) WriteAcceleratorEnabled

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type LinuxVirtualMachineScaleSetOutput

type LinuxVirtualMachineScaleSetOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetOutput) AdditionalCapabilities added in v5.5.0

An `additionalCapabilities` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) AdminPassword added in v5.5.0

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

> **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.

> **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.

func (LinuxVirtualMachineScaleSetOutput) AdminSshKeys added in v5.5.0

One or more `adminSshKey` blocks as defined below.

> **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.

func (LinuxVirtualMachineScaleSetOutput) AdminUsername added in v5.5.0

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) AutomaticInstanceRepair added in v5.5.0

An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).

> **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).

func (LinuxVirtualMachineScaleSetOutput) AutomaticOsUpgradePolicy added in v5.5.0

An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.

func (LinuxVirtualMachineScaleSetOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) CapacityReservationGroupId added in v5.13.0

func (o LinuxVirtualMachineScaleSetOutput) CapacityReservationGroupId() pulumi.StringPtrOutput

Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.

> **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`

> **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.

func (LinuxVirtualMachineScaleSetOutput) ComputerNamePrefix added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) ComputerNamePrefix() pulumi.StringOutput

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) CustomData added in v5.5.0

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

> **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.

func (LinuxVirtualMachineScaleSetOutput) DataDisks added in v5.5.0

One or more `dataDisk` blocks as defined below.

func (LinuxVirtualMachineScaleSetOutput) DisablePasswordAuthentication added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) DisablePasswordAuthentication() pulumi.BoolPtrOutput

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to `true`.

> In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).

> **NOTE:** When a `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.

func (LinuxVirtualMachineScaleSetOutput) DoNotRunExtensionsOnOverprovisionedMachines added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) DoNotRunExtensionsOnOverprovisionedMachines() pulumi.BoolPtrOutput

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.

func (LinuxVirtualMachineScaleSetOutput) EdgeZone added in v5.5.0

Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.

func (LinuxVirtualMachineScaleSetOutput) ElementType

func (LinuxVirtualMachineScaleSetOutput) EncryptionAtHostEnabled added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) EncryptionAtHostEnabled() pulumi.BoolPtrOutput

Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?

func (LinuxVirtualMachineScaleSetOutput) EvictionPolicy added in v5.5.0

Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (LinuxVirtualMachineScaleSetOutput) ExtensionOperationsEnabled added in v5.18.0

func (o LinuxVirtualMachineScaleSetOutput) ExtensionOperationsEnabled() pulumi.BoolOutput

Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Linux Virtual Machine Scale Set to be created.

> **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.

func (LinuxVirtualMachineScaleSetOutput) Extensions added in v5.5.0

One or more `extension` blocks as defined below

func (LinuxVirtualMachineScaleSetOutput) ExtensionsTimeBudget added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) ExtensionsTimeBudget() pulumi.StringPtrOutput

Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.

func (LinuxVirtualMachineScaleSetOutput) GalleryApplication added in v5.33.0

One or more `galleryApplication` blocks as defined below.

func (LinuxVirtualMachineScaleSetOutput) GalleryApplications deprecated added in v5.18.0

Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0

func (LinuxVirtualMachineScaleSetOutput) HealthProbeId added in v5.5.0

The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.

func (LinuxVirtualMachineScaleSetOutput) HostGroupId added in v5.18.0

Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) Instances added in v5.5.0

The number of Virtual Machines in the Scale Set. Defaults to `0`.

> **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.

func (LinuxVirtualMachineScaleSetOutput) Location added in v5.5.0

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) MaxBidPrice added in v5.5.0

The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (LinuxVirtualMachineScaleSetOutput) Name added in v5.5.0

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) NetworkInterfaces added in v5.5.0

One or more `networkInterface` blocks as defined below.

func (LinuxVirtualMachineScaleSetOutput) OsDisk added in v5.5.0

An `osDisk` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) Overprovision added in v5.5.0

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.

func (LinuxVirtualMachineScaleSetOutput) Plan added in v5.5.0

A `plan` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.

func (LinuxVirtualMachineScaleSetOutput) PlatformFaultDomainCount added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) PlatformFaultDomainCount() pulumi.IntOutput

Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) Priority added in v5.5.0

The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.

> **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.

func (LinuxVirtualMachineScaleSetOutput) ProvisionVmAgent added in v5.5.0

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) ProximityPlacementGroupId added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) ResourceGroupName added in v5.5.0

The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) RollingUpgradePolicy added in v5.5.0

A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) ScaleIn added in v5.18.0

A `scaleIn` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) ScaleInPolicy deprecated added in v5.5.0

Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.

func (LinuxVirtualMachineScaleSetOutput) Secrets added in v5.5.0

One or more `secret` blocks as defined below.

func (LinuxVirtualMachineScaleSetOutput) SecureBootEnabled added in v5.5.0

Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) SinglePlacementGroup added in v5.5.0

func (o LinuxVirtualMachineScaleSetOutput) SinglePlacementGroup() pulumi.BoolPtrOutput

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.

func (LinuxVirtualMachineScaleSetOutput) Sku added in v5.5.0

The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.

func (LinuxVirtualMachineScaleSetOutput) SourceImageId added in v5.5.0

The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (LinuxVirtualMachineScaleSetOutput) SourceImageReference added in v5.5.0

A `sourceImageReference` block as defined below.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (LinuxVirtualMachineScaleSetOutput) SpotRestore added in v5.18.0

A `spotRestore` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

func (LinuxVirtualMachineScaleSetOutput) TerminateNotification deprecated added in v5.5.0

A `terminateNotification` block as defined below.

> **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.

Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.

func (LinuxVirtualMachineScaleSetOutput) TerminationNotification added in v5.5.0

A `terminationNotification` block as defined below.

func (LinuxVirtualMachineScaleSetOutput) ToLinuxVirtualMachineScaleSetOutput

func (o LinuxVirtualMachineScaleSetOutput) ToLinuxVirtualMachineScaleSetOutput() LinuxVirtualMachineScaleSetOutput

func (LinuxVirtualMachineScaleSetOutput) ToLinuxVirtualMachineScaleSetOutputWithContext

func (o LinuxVirtualMachineScaleSetOutput) ToLinuxVirtualMachineScaleSetOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetOutput

func (LinuxVirtualMachineScaleSetOutput) UniqueId added in v5.5.0

The Unique ID for this Linux Virtual Machine Scale Set.

func (LinuxVirtualMachineScaleSetOutput) UpgradeMode added in v5.5.0

func (LinuxVirtualMachineScaleSetOutput) UserData added in v5.5.0

The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.

func (LinuxVirtualMachineScaleSetOutput) VtpmEnabled added in v5.5.0

Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetOutput) ZoneBalance added in v5.5.0

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.

> **NOTE:** This can only be set to `true` when one or more `zones` are configured.

func (LinuxVirtualMachineScaleSetOutput) Zones added in v5.5.0

Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.

type LinuxVirtualMachineScaleSetPlan

type LinuxVirtualMachineScaleSetPlan struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product string `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
}

type LinuxVirtualMachineScaleSetPlanArgs

type LinuxVirtualMachineScaleSetPlanArgs struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (LinuxVirtualMachineScaleSetPlanArgs) ElementType

func (LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanOutput

func (i LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanOutput() LinuxVirtualMachineScaleSetPlanOutput

func (LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanOutputWithContext

func (i LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetPlanOutput

func (LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanPtrOutput

func (i LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanPtrOutput() LinuxVirtualMachineScaleSetPlanPtrOutput

func (LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetPlanArgs) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetPlanPtrOutput

type LinuxVirtualMachineScaleSetPlanInput

type LinuxVirtualMachineScaleSetPlanInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetPlanOutput() LinuxVirtualMachineScaleSetPlanOutput
	ToLinuxVirtualMachineScaleSetPlanOutputWithContext(context.Context) LinuxVirtualMachineScaleSetPlanOutput
}

LinuxVirtualMachineScaleSetPlanInput is an input type that accepts LinuxVirtualMachineScaleSetPlanArgs and LinuxVirtualMachineScaleSetPlanOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetPlanInput` via:

LinuxVirtualMachineScaleSetPlanArgs{...}

type LinuxVirtualMachineScaleSetPlanOutput

type LinuxVirtualMachineScaleSetPlanOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetPlanOutput) ElementType

func (LinuxVirtualMachineScaleSetPlanOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanOutput

func (o LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanOutput() LinuxVirtualMachineScaleSetPlanOutput

func (LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanOutputWithContext

func (o LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetPlanOutput

func (LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutput

func (o LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutput() LinuxVirtualMachineScaleSetPlanPtrOutput

func (LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetPlanOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetPlanPtrOutput

type LinuxVirtualMachineScaleSetPlanPtrInput

type LinuxVirtualMachineScaleSetPlanPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetPlanPtrOutput() LinuxVirtualMachineScaleSetPlanPtrOutput
	ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetPlanPtrOutput
}

LinuxVirtualMachineScaleSetPlanPtrInput is an input type that accepts LinuxVirtualMachineScaleSetPlanArgs, LinuxVirtualMachineScaleSetPlanPtr and LinuxVirtualMachineScaleSetPlanPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetPlanPtrInput` via:

        LinuxVirtualMachineScaleSetPlanArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetPlanPtrOutput

type LinuxVirtualMachineScaleSetPlanPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetPlanPtrOutput) Elem

func (LinuxVirtualMachineScaleSetPlanPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetPlanPtrOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanPtrOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanPtrOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetPlanPtrOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutput

func (o LinuxVirtualMachineScaleSetPlanPtrOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutput() LinuxVirtualMachineScaleSetPlanPtrOutput

func (LinuxVirtualMachineScaleSetPlanPtrOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetPlanPtrOutput) ToLinuxVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetPlanPtrOutput

type LinuxVirtualMachineScaleSetRollingUpgradePolicy

type LinuxVirtualMachineScaleSetRollingUpgradePolicy struct {
	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.
	CrossZoneUpgradesEnabled *bool `pulumi:"crossZoneUpgradesEnabled"`
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent int `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent int `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent int `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches string `pulumi:"pauseTimeBetweenBatches"`
	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.
	PrioritizeUnhealthyInstancesEnabled *bool `pulumi:"prioritizeUnhealthyInstancesEnabled"`
}

type LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs

type LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs struct {
	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.
	CrossZoneUpgradesEnabled pulumi.BoolPtrInput `pulumi:"crossZoneUpgradesEnabled"`
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent pulumi.IntInput `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent pulumi.IntInput `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent pulumi.IntInput `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches pulumi.StringInput `pulumi:"pauseTimeBetweenBatches"`
	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.
	PrioritizeUnhealthyInstancesEnabled pulumi.BoolPtrInput `pulumi:"prioritizeUnhealthyInstancesEnabled"`
}

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ElementType

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

func (i LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutput() LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext

func (i LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (i LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput() LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyInput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutput() LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput
	ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput
}

LinuxVirtualMachineScaleSetRollingUpgradePolicyInput is an input type that accepts LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs and LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetRollingUpgradePolicyInput` via:

LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs{...}

type LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) CrossZoneUpgradesEnabled added in v5.18.0

Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ElementType

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxBatchInstancePercent

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyInstancePercent

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) PauseTimeBetweenBatches

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) PrioritizeUnhealthyInstancesEnabled added in v5.18.0

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) PrioritizeUnhealthyInstancesEnabled() pulumi.BoolPtrOutput

Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput() LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput() LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput
	ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput
}

LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput is an input type that accepts LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs, LinuxVirtualMachineScaleSetRollingUpgradePolicyPtr and LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput` via:

        LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) CrossZoneUpgradesEnabled added in v5.18.0

Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) Elem

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxBatchInstancePercent

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyInstancePercent

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntPtrOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) PauseTimeBetweenBatches

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) PrioritizeUnhealthyInstancesEnabled added in v5.18.0

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) PrioritizeUnhealthyInstancesEnabled() pulumi.BoolPtrOutput

Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToLinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type LinuxVirtualMachineScaleSetScaleIn added in v5.18.0

type LinuxVirtualMachineScaleSetScaleIn struct {
	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.
	ForceDeletionEnabled *bool `pulumi:"forceDeletionEnabled"`
	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).
	Rule *string `pulumi:"rule"`
}

type LinuxVirtualMachineScaleSetScaleInArgs added in v5.18.0

type LinuxVirtualMachineScaleSetScaleInArgs struct {
	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.
	ForceDeletionEnabled pulumi.BoolPtrInput `pulumi:"forceDeletionEnabled"`
	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).
	Rule pulumi.StringPtrInput `pulumi:"rule"`
}

func (LinuxVirtualMachineScaleSetScaleInArgs) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInOutput() LinuxVirtualMachineScaleSetScaleInOutput

func (LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetScaleInOutput

func (LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInPtrOutput() LinuxVirtualMachineScaleSetScaleInPtrOutput

func (LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetScaleInArgs) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetScaleInPtrOutput

type LinuxVirtualMachineScaleSetScaleInInput added in v5.18.0

type LinuxVirtualMachineScaleSetScaleInInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetScaleInOutput() LinuxVirtualMachineScaleSetScaleInOutput
	ToLinuxVirtualMachineScaleSetScaleInOutputWithContext(context.Context) LinuxVirtualMachineScaleSetScaleInOutput
}

LinuxVirtualMachineScaleSetScaleInInput is an input type that accepts LinuxVirtualMachineScaleSetScaleInArgs and LinuxVirtualMachineScaleSetScaleInOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetScaleInInput` via:

LinuxVirtualMachineScaleSetScaleInArgs{...}

type LinuxVirtualMachineScaleSetScaleInOutput added in v5.18.0

type LinuxVirtualMachineScaleSetScaleInOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetScaleInOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetScaleInOutput) ForceDeletionEnabled added in v5.18.0

Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.

func (LinuxVirtualMachineScaleSetScaleInOutput) Rule added in v5.18.0

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).

func (LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInOutput() LinuxVirtualMachineScaleSetScaleInOutput

func (LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetScaleInOutput

func (LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutput() LinuxVirtualMachineScaleSetScaleInPtrOutput

func (LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetScaleInPtrOutput

type LinuxVirtualMachineScaleSetScaleInPtrInput added in v5.18.0

type LinuxVirtualMachineScaleSetScaleInPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetScaleInPtrOutput() LinuxVirtualMachineScaleSetScaleInPtrOutput
	ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetScaleInPtrOutput
}

LinuxVirtualMachineScaleSetScaleInPtrInput is an input type that accepts LinuxVirtualMachineScaleSetScaleInArgs, LinuxVirtualMachineScaleSetScaleInPtr and LinuxVirtualMachineScaleSetScaleInPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetScaleInPtrInput` via:

        LinuxVirtualMachineScaleSetScaleInArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

type LinuxVirtualMachineScaleSetScaleInPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) Elem added in v5.18.0

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) ForceDeletionEnabled added in v5.18.0

Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) Rule added in v5.18.0

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInPtrOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutput() LinuxVirtualMachineScaleSetScaleInPtrOutput

func (LinuxVirtualMachineScaleSetScaleInPtrOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetScaleInPtrOutput) ToLinuxVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetScaleInPtrOutput

type LinuxVirtualMachineScaleSetSecret

type LinuxVirtualMachineScaleSetSecret struct {
	// One or more `certificate` blocks as defined above.
	Certificates []LinuxVirtualMachineScaleSetSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type LinuxVirtualMachineScaleSetSecretArgs

type LinuxVirtualMachineScaleSetSecretArgs struct {
	// One or more `certificate` blocks as defined above.
	Certificates LinuxVirtualMachineScaleSetSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (LinuxVirtualMachineScaleSetSecretArgs) ElementType

func (LinuxVirtualMachineScaleSetSecretArgs) ToLinuxVirtualMachineScaleSetSecretOutput

func (i LinuxVirtualMachineScaleSetSecretArgs) ToLinuxVirtualMachineScaleSetSecretOutput() LinuxVirtualMachineScaleSetSecretOutput

func (LinuxVirtualMachineScaleSetSecretArgs) ToLinuxVirtualMachineScaleSetSecretOutputWithContext

func (i LinuxVirtualMachineScaleSetSecretArgs) ToLinuxVirtualMachineScaleSetSecretOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretOutput

type LinuxVirtualMachineScaleSetSecretArray

type LinuxVirtualMachineScaleSetSecretArray []LinuxVirtualMachineScaleSetSecretInput

func (LinuxVirtualMachineScaleSetSecretArray) ElementType

func (LinuxVirtualMachineScaleSetSecretArray) ToLinuxVirtualMachineScaleSetSecretArrayOutput

func (i LinuxVirtualMachineScaleSetSecretArray) ToLinuxVirtualMachineScaleSetSecretArrayOutput() LinuxVirtualMachineScaleSetSecretArrayOutput

func (LinuxVirtualMachineScaleSetSecretArray) ToLinuxVirtualMachineScaleSetSecretArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetSecretArray) ToLinuxVirtualMachineScaleSetSecretArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretArrayOutput

type LinuxVirtualMachineScaleSetSecretArrayInput

type LinuxVirtualMachineScaleSetSecretArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSecretArrayOutput() LinuxVirtualMachineScaleSetSecretArrayOutput
	ToLinuxVirtualMachineScaleSetSecretArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSecretArrayOutput
}

LinuxVirtualMachineScaleSetSecretArrayInput is an input type that accepts LinuxVirtualMachineScaleSetSecretArray and LinuxVirtualMachineScaleSetSecretArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSecretArrayInput` via:

LinuxVirtualMachineScaleSetSecretArray{ LinuxVirtualMachineScaleSetSecretArgs{...} }

type LinuxVirtualMachineScaleSetSecretArrayOutput

type LinuxVirtualMachineScaleSetSecretArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSecretArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetSecretArrayOutput) Index

func (LinuxVirtualMachineScaleSetSecretArrayOutput) ToLinuxVirtualMachineScaleSetSecretArrayOutput

func (o LinuxVirtualMachineScaleSetSecretArrayOutput) ToLinuxVirtualMachineScaleSetSecretArrayOutput() LinuxVirtualMachineScaleSetSecretArrayOutput

func (LinuxVirtualMachineScaleSetSecretArrayOutput) ToLinuxVirtualMachineScaleSetSecretArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetSecretArrayOutput) ToLinuxVirtualMachineScaleSetSecretArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretArrayOutput

type LinuxVirtualMachineScaleSetSecretCertificate

type LinuxVirtualMachineScaleSetSecretCertificate struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	//
	// > **NOTE:** The certificate must have been uploaded/created in PFX format, PEM certificates are not currently supported by Azure.
	Url string `pulumi:"url"`
}

type LinuxVirtualMachineScaleSetSecretCertificateArgs

type LinuxVirtualMachineScaleSetSecretCertificateArgs struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	//
	// > **NOTE:** The certificate must have been uploaded/created in PFX format, PEM certificates are not currently supported by Azure.
	Url pulumi.StringInput `pulumi:"url"`
}

func (LinuxVirtualMachineScaleSetSecretCertificateArgs) ElementType

func (LinuxVirtualMachineScaleSetSecretCertificateArgs) ToLinuxVirtualMachineScaleSetSecretCertificateOutput

func (i LinuxVirtualMachineScaleSetSecretCertificateArgs) ToLinuxVirtualMachineScaleSetSecretCertificateOutput() LinuxVirtualMachineScaleSetSecretCertificateOutput

func (LinuxVirtualMachineScaleSetSecretCertificateArgs) ToLinuxVirtualMachineScaleSetSecretCertificateOutputWithContext

func (i LinuxVirtualMachineScaleSetSecretCertificateArgs) ToLinuxVirtualMachineScaleSetSecretCertificateOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretCertificateOutput

type LinuxVirtualMachineScaleSetSecretCertificateArray

type LinuxVirtualMachineScaleSetSecretCertificateArray []LinuxVirtualMachineScaleSetSecretCertificateInput

func (LinuxVirtualMachineScaleSetSecretCertificateArray) ElementType

func (LinuxVirtualMachineScaleSetSecretCertificateArray) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutput

func (i LinuxVirtualMachineScaleSetSecretCertificateArray) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutput() LinuxVirtualMachineScaleSetSecretCertificateArrayOutput

func (LinuxVirtualMachineScaleSetSecretCertificateArray) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutputWithContext

func (i LinuxVirtualMachineScaleSetSecretCertificateArray) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretCertificateArrayOutput

type LinuxVirtualMachineScaleSetSecretCertificateArrayInput

type LinuxVirtualMachineScaleSetSecretCertificateArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutput() LinuxVirtualMachineScaleSetSecretCertificateArrayOutput
	ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSecretCertificateArrayOutput
}

LinuxVirtualMachineScaleSetSecretCertificateArrayInput is an input type that accepts LinuxVirtualMachineScaleSetSecretCertificateArray and LinuxVirtualMachineScaleSetSecretCertificateArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSecretCertificateArrayInput` via:

LinuxVirtualMachineScaleSetSecretCertificateArray{ LinuxVirtualMachineScaleSetSecretCertificateArgs{...} }

type LinuxVirtualMachineScaleSetSecretCertificateArrayOutput

type LinuxVirtualMachineScaleSetSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSecretCertificateArrayOutput) ElementType

func (LinuxVirtualMachineScaleSetSecretCertificateArrayOutput) Index

func (LinuxVirtualMachineScaleSetSecretCertificateArrayOutput) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutput

func (LinuxVirtualMachineScaleSetSecretCertificateArrayOutput) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutputWithContext

func (o LinuxVirtualMachineScaleSetSecretCertificateArrayOutput) ToLinuxVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretCertificateArrayOutput

type LinuxVirtualMachineScaleSetSecretCertificateInput

type LinuxVirtualMachineScaleSetSecretCertificateInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSecretCertificateOutput() LinuxVirtualMachineScaleSetSecretCertificateOutput
	ToLinuxVirtualMachineScaleSetSecretCertificateOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSecretCertificateOutput
}

LinuxVirtualMachineScaleSetSecretCertificateInput is an input type that accepts LinuxVirtualMachineScaleSetSecretCertificateArgs and LinuxVirtualMachineScaleSetSecretCertificateOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSecretCertificateInput` via:

LinuxVirtualMachineScaleSetSecretCertificateArgs{...}

type LinuxVirtualMachineScaleSetSecretCertificateOutput

type LinuxVirtualMachineScaleSetSecretCertificateOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSecretCertificateOutput) ElementType

func (LinuxVirtualMachineScaleSetSecretCertificateOutput) ToLinuxVirtualMachineScaleSetSecretCertificateOutput

func (o LinuxVirtualMachineScaleSetSecretCertificateOutput) ToLinuxVirtualMachineScaleSetSecretCertificateOutput() LinuxVirtualMachineScaleSetSecretCertificateOutput

func (LinuxVirtualMachineScaleSetSecretCertificateOutput) ToLinuxVirtualMachineScaleSetSecretCertificateOutputWithContext

func (o LinuxVirtualMachineScaleSetSecretCertificateOutput) ToLinuxVirtualMachineScaleSetSecretCertificateOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretCertificateOutput

func (LinuxVirtualMachineScaleSetSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

> **NOTE:** The certificate must have been uploaded/created in PFX format, PEM certificates are not currently supported by Azure.

type LinuxVirtualMachineScaleSetSecretInput

type LinuxVirtualMachineScaleSetSecretInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSecretOutput() LinuxVirtualMachineScaleSetSecretOutput
	ToLinuxVirtualMachineScaleSetSecretOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSecretOutput
}

LinuxVirtualMachineScaleSetSecretInput is an input type that accepts LinuxVirtualMachineScaleSetSecretArgs and LinuxVirtualMachineScaleSetSecretOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSecretInput` via:

LinuxVirtualMachineScaleSetSecretArgs{...}

type LinuxVirtualMachineScaleSetSecretOutput

type LinuxVirtualMachineScaleSetSecretOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSecretOutput) Certificates

One or more `certificate` blocks as defined above.

func (LinuxVirtualMachineScaleSetSecretOutput) ElementType

func (LinuxVirtualMachineScaleSetSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (LinuxVirtualMachineScaleSetSecretOutput) ToLinuxVirtualMachineScaleSetSecretOutput

func (o LinuxVirtualMachineScaleSetSecretOutput) ToLinuxVirtualMachineScaleSetSecretOutput() LinuxVirtualMachineScaleSetSecretOutput

func (LinuxVirtualMachineScaleSetSecretOutput) ToLinuxVirtualMachineScaleSetSecretOutputWithContext

func (o LinuxVirtualMachineScaleSetSecretOutput) ToLinuxVirtualMachineScaleSetSecretOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSecretOutput

type LinuxVirtualMachineScaleSetSourceImageReference

type LinuxVirtualMachineScaleSetSourceImageReference struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version string `pulumi:"version"`
}

type LinuxVirtualMachineScaleSetSourceImageReferenceArgs

type LinuxVirtualMachineScaleSetSourceImageReferenceArgs struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku pulumi.StringInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version pulumi.StringInput `pulumi:"version"`
}

func (LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ElementType

func (LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutput

func (i LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutput() LinuxVirtualMachineScaleSetSourceImageReferenceOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (i LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSourceImageReferenceOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (i LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput() LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (i LinuxVirtualMachineScaleSetSourceImageReferenceArgs) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

type LinuxVirtualMachineScaleSetSourceImageReferenceInput

type LinuxVirtualMachineScaleSetSourceImageReferenceInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSourceImageReferenceOutput() LinuxVirtualMachineScaleSetSourceImageReferenceOutput
	ToLinuxVirtualMachineScaleSetSourceImageReferenceOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSourceImageReferenceOutput
}

LinuxVirtualMachineScaleSetSourceImageReferenceInput is an input type that accepts LinuxVirtualMachineScaleSetSourceImageReferenceArgs and LinuxVirtualMachineScaleSetSourceImageReferenceOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSourceImageReferenceInput` via:

LinuxVirtualMachineScaleSetSourceImageReferenceArgs{...}

type LinuxVirtualMachineScaleSetSourceImageReferenceOutput

type LinuxVirtualMachineScaleSetSourceImageReferenceOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ElementType

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (o LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSourceImageReferenceOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (o LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput() LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o LinuxVirtualMachineScaleSetSourceImageReferenceOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (LinuxVirtualMachineScaleSetSourceImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines.

type LinuxVirtualMachineScaleSetSourceImageReferencePtrInput

type LinuxVirtualMachineScaleSetSourceImageReferencePtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput() LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput
	ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput
}

LinuxVirtualMachineScaleSetSourceImageReferencePtrInput is an input type that accepts LinuxVirtualMachineScaleSetSourceImageReferenceArgs, LinuxVirtualMachineScaleSetSourceImageReferencePtr and LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSourceImageReferencePtrInput` via:

        LinuxVirtualMachineScaleSetSourceImageReferenceArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

type LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) Elem

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) ElementType

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) ToLinuxVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput

func (LinuxVirtualMachineScaleSetSourceImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines.

type LinuxVirtualMachineScaleSetSpotRestore added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestore struct {
	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	Enabled *bool `pulumi:"enabled"`
	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.
	Timeout *string `pulumi:"timeout"`
}

type LinuxVirtualMachineScaleSetSpotRestoreArgs added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestoreArgs struct {
	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (LinuxVirtualMachineScaleSetSpotRestoreArgs) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestoreOutput() LinuxVirtualMachineScaleSetSpotRestoreOutput

func (LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestoreOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestoreOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSpotRestoreOutput

func (LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (i LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput() LinuxVirtualMachineScaleSetSpotRestorePtrOutput

func (LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (i LinuxVirtualMachineScaleSetSpotRestoreArgs) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSpotRestorePtrOutput

type LinuxVirtualMachineScaleSetSpotRestoreInput added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestoreInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSpotRestoreOutput() LinuxVirtualMachineScaleSetSpotRestoreOutput
	ToLinuxVirtualMachineScaleSetSpotRestoreOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSpotRestoreOutput
}

LinuxVirtualMachineScaleSetSpotRestoreInput is an input type that accepts LinuxVirtualMachineScaleSetSpotRestoreArgs and LinuxVirtualMachineScaleSetSpotRestoreOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSpotRestoreInput` via:

LinuxVirtualMachineScaleSetSpotRestoreArgs{...}

type LinuxVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestoreOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) Enabled added in v5.18.0

Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) Timeout added in v5.18.0

The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestoreOutput() LinuxVirtualMachineScaleSetSpotRestoreOutput

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestoreOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestoreOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSpotRestoreOutput

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput() LinuxVirtualMachineScaleSetSpotRestorePtrOutput

func (LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestoreOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSpotRestorePtrOutput

type LinuxVirtualMachineScaleSetSpotRestorePtrInput added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestorePtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput() LinuxVirtualMachineScaleSetSpotRestorePtrOutput
	ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetSpotRestorePtrOutput
}

LinuxVirtualMachineScaleSetSpotRestorePtrInput is an input type that accepts LinuxVirtualMachineScaleSetSpotRestoreArgs, LinuxVirtualMachineScaleSetSpotRestorePtr and LinuxVirtualMachineScaleSetSpotRestorePtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetSpotRestorePtrInput` via:

        LinuxVirtualMachineScaleSetSpotRestoreArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

type LinuxVirtualMachineScaleSetSpotRestorePtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) Elem added in v5.18.0

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) ElementType added in v5.18.0

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) Enabled added in v5.18.0

Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) Timeout added in v5.18.0

The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestorePtrOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutput() LinuxVirtualMachineScaleSetSpotRestorePtrOutput

func (LinuxVirtualMachineScaleSetSpotRestorePtrOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (o LinuxVirtualMachineScaleSetSpotRestorePtrOutput) ToLinuxVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetSpotRestorePtrOutput

type LinuxVirtualMachineScaleSetState

type LinuxVirtualMachineScaleSetState struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrInput
	// One or more `adminSshKey` blocks as defined below.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineScaleSetAdminSshKeyArrayInput
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringPtrInput
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrInput
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks LinuxVirtualMachineScaleSetDataDiskArrayInput
	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to `true`.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When a `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrInput
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrInput
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions LinuxVirtualMachineScaleSetExtensionArrayInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication LinuxVirtualMachineScaleSetGalleryApplicationArrayInput
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications LinuxVirtualMachineScaleSetGalleryApplicationArrayInput
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrInput
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Scale Set. Defaults to `0`.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntPtrInput
	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces LinuxVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineScaleSetOsDiskPtrInput
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan LinuxVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntPtrInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicyPtrInput
	// A `scaleIn` block as defined below.
	ScaleIn LinuxVirtualMachineScaleSetScaleInPtrInput
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineScaleSetSecretArrayInput
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringPtrInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineScaleSetSourceImageReferencePtrInput
	// A `spotRestore` block as defined below.
	SpotRestore LinuxVirtualMachineScaleSetSpotRestorePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification LinuxVirtualMachineScaleSetTerminateNotificationPtrInput
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineScaleSetTerminationNotificationPtrInput
	// The Unique ID for this Linux Virtual Machine Scale Set.
	UniqueId    pulumi.StringPtrInput
	UpgradeMode pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrInput
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayInput
}

func (LinuxVirtualMachineScaleSetState) ElementType

type LinuxVirtualMachineScaleSetTerminateNotification

type LinuxVirtualMachineScaleSetTerminateNotification struct {
	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type LinuxVirtualMachineScaleSetTerminateNotificationArgs

type LinuxVirtualMachineScaleSetTerminateNotificationArgs struct {
	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (LinuxVirtualMachineScaleSetTerminateNotificationArgs) ElementType

func (LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationOutput

func (i LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationOutput() LinuxVirtualMachineScaleSetTerminateNotificationOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationOutputWithContext

func (i LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminateNotificationOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

func (i LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput() LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (i LinuxVirtualMachineScaleSetTerminateNotificationArgs) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminateNotificationInput

type LinuxVirtualMachineScaleSetTerminateNotificationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetTerminateNotificationOutput() LinuxVirtualMachineScaleSetTerminateNotificationOutput
	ToLinuxVirtualMachineScaleSetTerminateNotificationOutputWithContext(context.Context) LinuxVirtualMachineScaleSetTerminateNotificationOutput
}

LinuxVirtualMachineScaleSetTerminateNotificationInput is an input type that accepts LinuxVirtualMachineScaleSetTerminateNotificationArgs and LinuxVirtualMachineScaleSetTerminateNotificationOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetTerminateNotificationInput` via:

LinuxVirtualMachineScaleSetTerminateNotificationArgs{...}

type LinuxVirtualMachineScaleSetTerminateNotificationOutput

type LinuxVirtualMachineScaleSetTerminateNotificationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) ElementType

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) Enabled

Should the terminate notification be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) Timeout

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationOutputWithContext

func (o LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminateNotificationOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

func (o LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput() LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetTerminateNotificationOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminateNotificationPtrInput

type LinuxVirtualMachineScaleSetTerminateNotificationPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput() LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput
	ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput
}

LinuxVirtualMachineScaleSetTerminateNotificationPtrInput is an input type that accepts LinuxVirtualMachineScaleSetTerminateNotificationArgs, LinuxVirtualMachineScaleSetTerminateNotificationPtr and LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetTerminateNotificationPtrInput` via:

        LinuxVirtualMachineScaleSetTerminateNotificationArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) Elem

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) ElementType

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) Enabled

Should the terminate notification be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) Timeout

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

func (LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (o LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminateNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminationNotification added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotification struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type LinuxVirtualMachineScaleSetTerminationNotificationArgs added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotificationArgs struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (LinuxVirtualMachineScaleSetTerminationNotificationArgs) ElementType added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationOutputWithContext added in v5.4.0

func (i LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminationNotificationOutput

func (LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (i LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutput() LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput

func (LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (i LinuxVirtualMachineScaleSetTerminationNotificationArgs) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminationNotificationInput added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotificationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetTerminationNotificationOutput() LinuxVirtualMachineScaleSetTerminationNotificationOutput
	ToLinuxVirtualMachineScaleSetTerminationNotificationOutputWithContext(context.Context) LinuxVirtualMachineScaleSetTerminationNotificationOutput
}

LinuxVirtualMachineScaleSetTerminationNotificationInput is an input type that accepts LinuxVirtualMachineScaleSetTerminationNotificationArgs and LinuxVirtualMachineScaleSetTerminationNotificationOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetTerminationNotificationInput` via:

LinuxVirtualMachineScaleSetTerminationNotificationArgs{...}

type LinuxVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotificationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) ElementType added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) Enabled added in v5.4.0

Should the termination notification be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) Timeout added in v5.4.0

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationOutputWithContext added in v5.4.0

func (o LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminationNotificationOutput

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (o LinuxVirtualMachineScaleSetTerminationNotificationOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput

type LinuxVirtualMachineScaleSetTerminationNotificationPtrInput added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotificationPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutput() LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput
	ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(context.Context) LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput
}

LinuxVirtualMachineScaleSetTerminationNotificationPtrInput is an input type that accepts LinuxVirtualMachineScaleSetTerminationNotificationArgs, LinuxVirtualMachineScaleSetTerminationNotificationPtr and LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineScaleSetTerminationNotificationPtrInput` via:

        LinuxVirtualMachineScaleSetTerminationNotificationArgs{...}

or:

        nil

type LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

type LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) Elem added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) ElementType added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) Enabled added in v5.4.0

Should the termination notification be enabled on this Virtual Machine Scale Set?

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) Timeout added in v5.4.0

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (o LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput) ToLinuxVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineScaleSetTerminationNotificationPtrOutput

type LinuxVirtualMachineSecret

type LinuxVirtualMachineSecret struct {
	// One or more `certificate` blocks as defined above.
	Certificates []LinuxVirtualMachineSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type LinuxVirtualMachineSecretArgs

type LinuxVirtualMachineSecretArgs struct {
	// One or more `certificate` blocks as defined above.
	Certificates LinuxVirtualMachineSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (LinuxVirtualMachineSecretArgs) ElementType

func (LinuxVirtualMachineSecretArgs) ToLinuxVirtualMachineSecretOutput

func (i LinuxVirtualMachineSecretArgs) ToLinuxVirtualMachineSecretOutput() LinuxVirtualMachineSecretOutput

func (LinuxVirtualMachineSecretArgs) ToLinuxVirtualMachineSecretOutputWithContext

func (i LinuxVirtualMachineSecretArgs) ToLinuxVirtualMachineSecretOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretOutput

type LinuxVirtualMachineSecretArray

type LinuxVirtualMachineSecretArray []LinuxVirtualMachineSecretInput

func (LinuxVirtualMachineSecretArray) ElementType

func (LinuxVirtualMachineSecretArray) ToLinuxVirtualMachineSecretArrayOutput

func (i LinuxVirtualMachineSecretArray) ToLinuxVirtualMachineSecretArrayOutput() LinuxVirtualMachineSecretArrayOutput

func (LinuxVirtualMachineSecretArray) ToLinuxVirtualMachineSecretArrayOutputWithContext

func (i LinuxVirtualMachineSecretArray) ToLinuxVirtualMachineSecretArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretArrayOutput

type LinuxVirtualMachineSecretArrayInput

type LinuxVirtualMachineSecretArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSecretArrayOutput() LinuxVirtualMachineSecretArrayOutput
	ToLinuxVirtualMachineSecretArrayOutputWithContext(context.Context) LinuxVirtualMachineSecretArrayOutput
}

LinuxVirtualMachineSecretArrayInput is an input type that accepts LinuxVirtualMachineSecretArray and LinuxVirtualMachineSecretArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineSecretArrayInput` via:

LinuxVirtualMachineSecretArray{ LinuxVirtualMachineSecretArgs{...} }

type LinuxVirtualMachineSecretArrayOutput

type LinuxVirtualMachineSecretArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSecretArrayOutput) ElementType

func (LinuxVirtualMachineSecretArrayOutput) Index

func (LinuxVirtualMachineSecretArrayOutput) ToLinuxVirtualMachineSecretArrayOutput

func (o LinuxVirtualMachineSecretArrayOutput) ToLinuxVirtualMachineSecretArrayOutput() LinuxVirtualMachineSecretArrayOutput

func (LinuxVirtualMachineSecretArrayOutput) ToLinuxVirtualMachineSecretArrayOutputWithContext

func (o LinuxVirtualMachineSecretArrayOutput) ToLinuxVirtualMachineSecretArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretArrayOutput

type LinuxVirtualMachineSecretCertificate

type LinuxVirtualMachineSecretCertificate struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url string `pulumi:"url"`
}

type LinuxVirtualMachineSecretCertificateArgs

type LinuxVirtualMachineSecretCertificateArgs struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url pulumi.StringInput `pulumi:"url"`
}

func (LinuxVirtualMachineSecretCertificateArgs) ElementType

func (LinuxVirtualMachineSecretCertificateArgs) ToLinuxVirtualMachineSecretCertificateOutput

func (i LinuxVirtualMachineSecretCertificateArgs) ToLinuxVirtualMachineSecretCertificateOutput() LinuxVirtualMachineSecretCertificateOutput

func (LinuxVirtualMachineSecretCertificateArgs) ToLinuxVirtualMachineSecretCertificateOutputWithContext

func (i LinuxVirtualMachineSecretCertificateArgs) ToLinuxVirtualMachineSecretCertificateOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretCertificateOutput

type LinuxVirtualMachineSecretCertificateArray

type LinuxVirtualMachineSecretCertificateArray []LinuxVirtualMachineSecretCertificateInput

func (LinuxVirtualMachineSecretCertificateArray) ElementType

func (LinuxVirtualMachineSecretCertificateArray) ToLinuxVirtualMachineSecretCertificateArrayOutput

func (i LinuxVirtualMachineSecretCertificateArray) ToLinuxVirtualMachineSecretCertificateArrayOutput() LinuxVirtualMachineSecretCertificateArrayOutput

func (LinuxVirtualMachineSecretCertificateArray) ToLinuxVirtualMachineSecretCertificateArrayOutputWithContext

func (i LinuxVirtualMachineSecretCertificateArray) ToLinuxVirtualMachineSecretCertificateArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretCertificateArrayOutput

type LinuxVirtualMachineSecretCertificateArrayInput

type LinuxVirtualMachineSecretCertificateArrayInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSecretCertificateArrayOutput() LinuxVirtualMachineSecretCertificateArrayOutput
	ToLinuxVirtualMachineSecretCertificateArrayOutputWithContext(context.Context) LinuxVirtualMachineSecretCertificateArrayOutput
}

LinuxVirtualMachineSecretCertificateArrayInput is an input type that accepts LinuxVirtualMachineSecretCertificateArray and LinuxVirtualMachineSecretCertificateArrayOutput values. You can construct a concrete instance of `LinuxVirtualMachineSecretCertificateArrayInput` via:

LinuxVirtualMachineSecretCertificateArray{ LinuxVirtualMachineSecretCertificateArgs{...} }

type LinuxVirtualMachineSecretCertificateArrayOutput

type LinuxVirtualMachineSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSecretCertificateArrayOutput) ElementType

func (LinuxVirtualMachineSecretCertificateArrayOutput) Index

func (LinuxVirtualMachineSecretCertificateArrayOutput) ToLinuxVirtualMachineSecretCertificateArrayOutput

func (o LinuxVirtualMachineSecretCertificateArrayOutput) ToLinuxVirtualMachineSecretCertificateArrayOutput() LinuxVirtualMachineSecretCertificateArrayOutput

func (LinuxVirtualMachineSecretCertificateArrayOutput) ToLinuxVirtualMachineSecretCertificateArrayOutputWithContext

func (o LinuxVirtualMachineSecretCertificateArrayOutput) ToLinuxVirtualMachineSecretCertificateArrayOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretCertificateArrayOutput

type LinuxVirtualMachineSecretCertificateInput

type LinuxVirtualMachineSecretCertificateInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSecretCertificateOutput() LinuxVirtualMachineSecretCertificateOutput
	ToLinuxVirtualMachineSecretCertificateOutputWithContext(context.Context) LinuxVirtualMachineSecretCertificateOutput
}

LinuxVirtualMachineSecretCertificateInput is an input type that accepts LinuxVirtualMachineSecretCertificateArgs and LinuxVirtualMachineSecretCertificateOutput values. You can construct a concrete instance of `LinuxVirtualMachineSecretCertificateInput` via:

LinuxVirtualMachineSecretCertificateArgs{...}

type LinuxVirtualMachineSecretCertificateOutput

type LinuxVirtualMachineSecretCertificateOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSecretCertificateOutput) ElementType

func (LinuxVirtualMachineSecretCertificateOutput) ToLinuxVirtualMachineSecretCertificateOutput

func (o LinuxVirtualMachineSecretCertificateOutput) ToLinuxVirtualMachineSecretCertificateOutput() LinuxVirtualMachineSecretCertificateOutput

func (LinuxVirtualMachineSecretCertificateOutput) ToLinuxVirtualMachineSecretCertificateOutputWithContext

func (o LinuxVirtualMachineSecretCertificateOutput) ToLinuxVirtualMachineSecretCertificateOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretCertificateOutput

func (LinuxVirtualMachineSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

type LinuxVirtualMachineSecretInput

type LinuxVirtualMachineSecretInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSecretOutput() LinuxVirtualMachineSecretOutput
	ToLinuxVirtualMachineSecretOutputWithContext(context.Context) LinuxVirtualMachineSecretOutput
}

LinuxVirtualMachineSecretInput is an input type that accepts LinuxVirtualMachineSecretArgs and LinuxVirtualMachineSecretOutput values. You can construct a concrete instance of `LinuxVirtualMachineSecretInput` via:

LinuxVirtualMachineSecretArgs{...}

type LinuxVirtualMachineSecretOutput

type LinuxVirtualMachineSecretOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSecretOutput) Certificates

One or more `certificate` blocks as defined above.

func (LinuxVirtualMachineSecretOutput) ElementType

func (LinuxVirtualMachineSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (LinuxVirtualMachineSecretOutput) ToLinuxVirtualMachineSecretOutput

func (o LinuxVirtualMachineSecretOutput) ToLinuxVirtualMachineSecretOutput() LinuxVirtualMachineSecretOutput

func (LinuxVirtualMachineSecretOutput) ToLinuxVirtualMachineSecretOutputWithContext

func (o LinuxVirtualMachineSecretOutput) ToLinuxVirtualMachineSecretOutputWithContext(ctx context.Context) LinuxVirtualMachineSecretOutput

type LinuxVirtualMachineSourceImageReference

type LinuxVirtualMachineSourceImageReference struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version string `pulumi:"version"`
}

type LinuxVirtualMachineSourceImageReferenceArgs

type LinuxVirtualMachineSourceImageReferenceArgs struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku pulumi.StringInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version pulumi.StringInput `pulumi:"version"`
}

func (LinuxVirtualMachineSourceImageReferenceArgs) ElementType

func (LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferenceOutput

func (i LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferenceOutput() LinuxVirtualMachineSourceImageReferenceOutput

func (LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferenceOutputWithContext

func (i LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferenceOutputWithContext(ctx context.Context) LinuxVirtualMachineSourceImageReferenceOutput

func (LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferencePtrOutput

func (i LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferencePtrOutput() LinuxVirtualMachineSourceImageReferencePtrOutput

func (LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext

func (i LinuxVirtualMachineSourceImageReferenceArgs) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineSourceImageReferencePtrOutput

type LinuxVirtualMachineSourceImageReferenceInput

type LinuxVirtualMachineSourceImageReferenceInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSourceImageReferenceOutput() LinuxVirtualMachineSourceImageReferenceOutput
	ToLinuxVirtualMachineSourceImageReferenceOutputWithContext(context.Context) LinuxVirtualMachineSourceImageReferenceOutput
}

LinuxVirtualMachineSourceImageReferenceInput is an input type that accepts LinuxVirtualMachineSourceImageReferenceArgs and LinuxVirtualMachineSourceImageReferenceOutput values. You can construct a concrete instance of `LinuxVirtualMachineSourceImageReferenceInput` via:

LinuxVirtualMachineSourceImageReferenceArgs{...}

type LinuxVirtualMachineSourceImageReferenceOutput

type LinuxVirtualMachineSourceImageReferenceOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSourceImageReferenceOutput) ElementType

func (LinuxVirtualMachineSourceImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferenceOutput

func (o LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferenceOutput() LinuxVirtualMachineSourceImageReferenceOutput

func (LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferenceOutputWithContext

func (o LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferenceOutputWithContext(ctx context.Context) LinuxVirtualMachineSourceImageReferenceOutput

func (LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutput

func (o LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutput() LinuxVirtualMachineSourceImageReferencePtrOutput

func (LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext

func (o LinuxVirtualMachineSourceImageReferenceOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineSourceImageReferencePtrOutput

func (LinuxVirtualMachineSourceImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.

type LinuxVirtualMachineSourceImageReferencePtrInput

type LinuxVirtualMachineSourceImageReferencePtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineSourceImageReferencePtrOutput() LinuxVirtualMachineSourceImageReferencePtrOutput
	ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext(context.Context) LinuxVirtualMachineSourceImageReferencePtrOutput
}

LinuxVirtualMachineSourceImageReferencePtrInput is an input type that accepts LinuxVirtualMachineSourceImageReferenceArgs, LinuxVirtualMachineSourceImageReferencePtr and LinuxVirtualMachineSourceImageReferencePtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineSourceImageReferencePtrInput` via:

        LinuxVirtualMachineSourceImageReferenceArgs{...}

or:

        nil

type LinuxVirtualMachineSourceImageReferencePtrOutput

type LinuxVirtualMachineSourceImageReferencePtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineSourceImageReferencePtrOutput) Elem

func (LinuxVirtualMachineSourceImageReferencePtrOutput) ElementType

func (LinuxVirtualMachineSourceImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (LinuxVirtualMachineSourceImageReferencePtrOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutput

func (o LinuxVirtualMachineSourceImageReferencePtrOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutput() LinuxVirtualMachineSourceImageReferencePtrOutput

func (LinuxVirtualMachineSourceImageReferencePtrOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext

func (o LinuxVirtualMachineSourceImageReferencePtrOutput) ToLinuxVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) LinuxVirtualMachineSourceImageReferencePtrOutput

func (LinuxVirtualMachineSourceImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.

type LinuxVirtualMachineState

type LinuxVirtualMachineState struct {
	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities LinuxVirtualMachineAdditionalCapabilitiesPtrInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	// **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminPassword pulumi.StringPtrInput
	// One or more `adminSshKey` blocks as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `adminPassword` or `adminSshKey` must be specified.
	AdminSshKeys LinuxVirtualMachineAdminSshKeyArrayInput
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringPtrInput
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrInput
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics LinuxVirtualMachineBootDiagnosticsPtrInput
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrInput
	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrInput
	// Should Password Authentication be disabled on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > In general we'd recommend using SSH Keys for authentication rather than Passwords - but there's tradeoff's to each - please [see this thread for more information](https://security.stackexchange.com/questions/69407/why-is-using-an-ssh-key-more-secure-than-using-passwords).
	//
	// > **NOTE:** When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`.
	DisablePasswordAuthentication pulumi.BoolPtrInput
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	EdgeZone pulumi.StringPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications LinuxVirtualMachineGalleryApplicationArrayInput
	// An `identity` block as defined below.
	Identity LinuxVirtualMachineIdentityPtrInput
	// Specifies the BYOL Type for this Virtual Machine. Possible values are `RHEL_BYOS` and `SLES_BYOS`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// A `osDisk` block as defined below.
	OsDisk LinuxVirtualMachineOsDiskPtrInput
	// A `osImageNotification` block as defined below.
	OsImageNotification LinuxVirtualMachineOsImageNotificationPtrInput
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput
	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are `AutomaticByPlatform` and `ImageDefault`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`.
	PatchMode pulumi.StringPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan LinuxVirtualMachinePlanPtrInput
	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrInput
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress pulumi.StringPtrInput
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses pulumi.StringArrayInput
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIpAddress pulumi.StringPtrInput
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses pulumi.StringArrayInput
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrInput
	// The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets LinuxVirtualMachineSecretArrayInput
	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringPtrInput
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference LinuxVirtualMachineSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification LinuxVirtualMachineTerminationNotificationPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrInput
	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineId pulumi.StringPtrInput
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrInput
	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	Zone pulumi.StringPtrInput
}

func (LinuxVirtualMachineState) ElementType

func (LinuxVirtualMachineState) ElementType() reflect.Type

type LinuxVirtualMachineTerminationNotification

type LinuxVirtualMachineTerminationNotification struct {
	// Should the termination notification be enabled on this Virtual Machine?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type LinuxVirtualMachineTerminationNotificationArgs

type LinuxVirtualMachineTerminationNotificationArgs struct {
	// Should the termination notification be enabled on this Virtual Machine?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (LinuxVirtualMachineTerminationNotificationArgs) ElementType

func (LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationOutput

func (i LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationOutput() LinuxVirtualMachineTerminationNotificationOutput

func (LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationOutputWithContext

func (i LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineTerminationNotificationOutput

func (LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationPtrOutput

func (i LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationPtrOutput() LinuxVirtualMachineTerminationNotificationPtrOutput

func (LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext

func (i LinuxVirtualMachineTerminationNotificationArgs) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineTerminationNotificationPtrOutput

type LinuxVirtualMachineTerminationNotificationInput

type LinuxVirtualMachineTerminationNotificationInput interface {
	pulumi.Input

	ToLinuxVirtualMachineTerminationNotificationOutput() LinuxVirtualMachineTerminationNotificationOutput
	ToLinuxVirtualMachineTerminationNotificationOutputWithContext(context.Context) LinuxVirtualMachineTerminationNotificationOutput
}

LinuxVirtualMachineTerminationNotificationInput is an input type that accepts LinuxVirtualMachineTerminationNotificationArgs and LinuxVirtualMachineTerminationNotificationOutput values. You can construct a concrete instance of `LinuxVirtualMachineTerminationNotificationInput` via:

LinuxVirtualMachineTerminationNotificationArgs{...}

type LinuxVirtualMachineTerminationNotificationOutput

type LinuxVirtualMachineTerminationNotificationOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineTerminationNotificationOutput) ElementType

func (LinuxVirtualMachineTerminationNotificationOutput) Enabled

Should the termination notification be enabled on this Virtual Machine?

func (LinuxVirtualMachineTerminationNotificationOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationOutput

func (o LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationOutput() LinuxVirtualMachineTerminationNotificationOutput

func (LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationOutputWithContext

func (o LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationOutputWithContext(ctx context.Context) LinuxVirtualMachineTerminationNotificationOutput

func (LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutput

func (o LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutput() LinuxVirtualMachineTerminationNotificationPtrOutput

func (LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext

func (o LinuxVirtualMachineTerminationNotificationOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineTerminationNotificationPtrOutput

type LinuxVirtualMachineTerminationNotificationPtrInput

type LinuxVirtualMachineTerminationNotificationPtrInput interface {
	pulumi.Input

	ToLinuxVirtualMachineTerminationNotificationPtrOutput() LinuxVirtualMachineTerminationNotificationPtrOutput
	ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext(context.Context) LinuxVirtualMachineTerminationNotificationPtrOutput
}

LinuxVirtualMachineTerminationNotificationPtrInput is an input type that accepts LinuxVirtualMachineTerminationNotificationArgs, LinuxVirtualMachineTerminationNotificationPtr and LinuxVirtualMachineTerminationNotificationPtrOutput values. You can construct a concrete instance of `LinuxVirtualMachineTerminationNotificationPtrInput` via:

        LinuxVirtualMachineTerminationNotificationArgs{...}

or:

        nil

type LinuxVirtualMachineTerminationNotificationPtrOutput

type LinuxVirtualMachineTerminationNotificationPtrOutput struct{ *pulumi.OutputState }

func (LinuxVirtualMachineTerminationNotificationPtrOutput) Elem

func (LinuxVirtualMachineTerminationNotificationPtrOutput) ElementType

func (LinuxVirtualMachineTerminationNotificationPtrOutput) Enabled

Should the termination notification be enabled on this Virtual Machine?

func (LinuxVirtualMachineTerminationNotificationPtrOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (LinuxVirtualMachineTerminationNotificationPtrOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutput

func (o LinuxVirtualMachineTerminationNotificationPtrOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutput() LinuxVirtualMachineTerminationNotificationPtrOutput

func (LinuxVirtualMachineTerminationNotificationPtrOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext

func (o LinuxVirtualMachineTerminationNotificationPtrOutput) ToLinuxVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) LinuxVirtualMachineTerminationNotificationPtrOutput

type LookupAvailabilitySetArgs

type LookupAvailabilitySetArgs struct {
	// The name of the Availability Set.
	Name string `pulumi:"name"`
	// The name of the resource group in which the Availability Set exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getAvailabilitySet.

type LookupAvailabilitySetOutputArgs

type LookupAvailabilitySetOutputArgs struct {
	// The name of the Availability Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the resource group in which the Availability Set exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getAvailabilitySet.

func (LookupAvailabilitySetOutputArgs) ElementType

type LookupAvailabilitySetResult

type LookupAvailabilitySetResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The supported Azure location where the Availability Set exists.
	Location string `pulumi:"location"`
	// Whether the availability set is managed or not.
	Managed bool   `pulumi:"managed"`
	Name    string `pulumi:"name"`
	// The number of fault domains that are used.
	PlatformFaultDomainCount string `pulumi:"platformFaultDomainCount"`
	// The number of update domains that are used.
	PlatformUpdateDomainCount string `pulumi:"platformUpdateDomainCount"`
	ResourceGroupName         string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getAvailabilitySet.

func LookupAvailabilitySet

func LookupAvailabilitySet(ctx *pulumi.Context, args *LookupAvailabilitySetArgs, opts ...pulumi.InvokeOption) (*LookupAvailabilitySetResult, error)

Use this data source to access information about an existing Availability Set.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupAvailabilitySet(ctx, &compute.LookupAvailabilitySetArgs{
			Name:              "tf-appsecuritygroup",
			ResourceGroupName: "my-resource-group",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("availabilitySetId", example.Id)
		return nil
	})
}

```

type LookupAvailabilitySetResultOutput

type LookupAvailabilitySetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAvailabilitySet.

func (LookupAvailabilitySetResultOutput) ElementType

func (LookupAvailabilitySetResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAvailabilitySetResultOutput) Location

The supported Azure location where the Availability Set exists.

func (LookupAvailabilitySetResultOutput) Managed

Whether the availability set is managed or not.

func (LookupAvailabilitySetResultOutput) Name

func (LookupAvailabilitySetResultOutput) PlatformFaultDomainCount

func (o LookupAvailabilitySetResultOutput) PlatformFaultDomainCount() pulumi.StringOutput

The number of fault domains that are used.

func (LookupAvailabilitySetResultOutput) PlatformUpdateDomainCount

func (o LookupAvailabilitySetResultOutput) PlatformUpdateDomainCount() pulumi.StringOutput

The number of update domains that are used.

func (LookupAvailabilitySetResultOutput) ResourceGroupName

func (LookupAvailabilitySetResultOutput) Tags

A mapping of tags assigned to the resource.

func (LookupAvailabilitySetResultOutput) ToLookupAvailabilitySetResultOutput

func (o LookupAvailabilitySetResultOutput) ToLookupAvailabilitySetResultOutput() LookupAvailabilitySetResultOutput

func (LookupAvailabilitySetResultOutput) ToLookupAvailabilitySetResultOutputWithContext

func (o LookupAvailabilitySetResultOutput) ToLookupAvailabilitySetResultOutputWithContext(ctx context.Context) LookupAvailabilitySetResultOutput

type LookupBastionHostArgs added in v5.32.0

type LookupBastionHostArgs struct {
	// The name of the Bastion Host.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Bastion Host exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getBastionHost.

type LookupBastionHostOutputArgs added in v5.32.0

type LookupBastionHostOutputArgs struct {
	// The name of the Bastion Host.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Bastion Host exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getBastionHost.

func (LookupBastionHostOutputArgs) ElementType added in v5.32.0

type LookupBastionHostResult added in v5.32.0

type LookupBastionHostResult struct {
	// Is Copy/Paste feature enabled for the Bastion Host.
	CopyPasteEnabled bool `pulumi:"copyPasteEnabled"`
	// The FQDN for the Bastion Host.
	DnsName string `pulumi:"dnsName"`
	// Is File Copy feature enabled for the Bastion Host.
	FileCopyEnabled bool `pulumi:"fileCopyEnabled"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `ipConfiguration` block as defined below.
	IpConfigurations []GetBastionHostIpConfiguration `pulumi:"ipConfigurations"`
	// Is IP Connect feature enabled for the Bastion Host.
	IpConnectEnabled bool `pulumi:"ipConnectEnabled"`
	// The Azure Region where the Bastion Host exists.
	Location string `pulumi:"location"`
	// The name of the IP configuration.
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The number of scale units provisioned for the Bastion Host.
	ScaleUnits int `pulumi:"scaleUnits"`
	// Is Shareable Link feature enabled for the Bastion Host.
	ShareableLinkEnabled bool `pulumi:"shareableLinkEnabled"`
	// The SKU of the Bastion Host.
	Sku string `pulumi:"sku"`
	// A mapping of tags assigned to the Bastion Host.
	Tags map[string]string `pulumi:"tags"`
	// Is Tunneling feature enabled for the Bastion Host.
	TunnelingEnabled bool `pulumi:"tunnelingEnabled"`
}

A collection of values returned by getBastionHost.

func LookupBastionHost added in v5.32.0

func LookupBastionHost(ctx *pulumi.Context, args *LookupBastionHostArgs, opts ...pulumi.InvokeOption) (*LookupBastionHostResult, error)

Use this data source to access information about an existing Bastion Host.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupBastionHost(ctx, &compute.LookupBastionHostArgs{
			Name:              "existing-bastion",
			ResourceGroupName: "existing-resources",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type LookupBastionHostResultOutput added in v5.32.0

type LookupBastionHostResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getBastionHost.

func LookupBastionHostOutput added in v5.32.0

func (LookupBastionHostResultOutput) CopyPasteEnabled added in v5.32.0

func (o LookupBastionHostResultOutput) CopyPasteEnabled() pulumi.BoolOutput

Is Copy/Paste feature enabled for the Bastion Host.

func (LookupBastionHostResultOutput) DnsName added in v5.32.0

The FQDN for the Bastion Host.

func (LookupBastionHostResultOutput) ElementType added in v5.32.0

func (LookupBastionHostResultOutput) FileCopyEnabled added in v5.32.0

func (o LookupBastionHostResultOutput) FileCopyEnabled() pulumi.BoolOutput

Is File Copy feature enabled for the Bastion Host.

func (LookupBastionHostResultOutput) Id added in v5.32.0

The provider-assigned unique ID for this managed resource.

func (LookupBastionHostResultOutput) IpConfigurations added in v5.32.0

A `ipConfiguration` block as defined below.

func (LookupBastionHostResultOutput) IpConnectEnabled added in v5.32.0

func (o LookupBastionHostResultOutput) IpConnectEnabled() pulumi.BoolOutput

Is IP Connect feature enabled for the Bastion Host.

func (LookupBastionHostResultOutput) Location added in v5.32.0

The Azure Region where the Bastion Host exists.

func (LookupBastionHostResultOutput) Name added in v5.32.0

The name of the IP configuration.

func (LookupBastionHostResultOutput) ResourceGroupName added in v5.32.0

func (o LookupBastionHostResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupBastionHostResultOutput) ScaleUnits added in v5.32.0

The number of scale units provisioned for the Bastion Host.

func (LookupBastionHostResultOutput) ShareableLinkEnabled added in v5.32.0

func (o LookupBastionHostResultOutput) ShareableLinkEnabled() pulumi.BoolOutput

Is Shareable Link feature enabled for the Bastion Host.

func (LookupBastionHostResultOutput) Sku added in v5.32.0

The SKU of the Bastion Host.

func (LookupBastionHostResultOutput) Tags added in v5.32.0

A mapping of tags assigned to the Bastion Host.

func (LookupBastionHostResultOutput) ToLookupBastionHostResultOutput added in v5.32.0

func (o LookupBastionHostResultOutput) ToLookupBastionHostResultOutput() LookupBastionHostResultOutput

func (LookupBastionHostResultOutput) ToLookupBastionHostResultOutputWithContext added in v5.32.0

func (o LookupBastionHostResultOutput) ToLookupBastionHostResultOutputWithContext(ctx context.Context) LookupBastionHostResultOutput

func (LookupBastionHostResultOutput) TunnelingEnabled added in v5.32.0

func (o LookupBastionHostResultOutput) TunnelingEnabled() pulumi.BoolOutput

Is Tunneling feature enabled for the Bastion Host.

type LookupDedicatedHostArgs

type LookupDedicatedHostArgs struct {
	// Specifies the name of the Dedicated Host Group the Dedicated Host is located in.
	DedicatedHostGroupName string `pulumi:"dedicatedHostGroupName"`
	// Specifies the name of the Dedicated Host.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group the Dedicated Host is located in.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDedicatedHost.

type LookupDedicatedHostGroupArgs

type LookupDedicatedHostGroupArgs struct {
	// Specifies the name of the Dedicated Host Group.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group the Dedicated Host Group is located in.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDedicatedHostGroup.

type LookupDedicatedHostGroupOutputArgs

type LookupDedicatedHostGroupOutputArgs struct {
	// Specifies the name of the Dedicated Host Group.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group the Dedicated Host Group is located in.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDedicatedHostGroup.

func (LookupDedicatedHostGroupOutputArgs) ElementType

type LookupDedicatedHostGroupResult

type LookupDedicatedHostGroupResult struct {
	// Whether virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group.
	AutomaticPlacementEnabled bool `pulumi:"automaticPlacementEnabled"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure location where the Dedicated Host Group exists.
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// The number of fault domains that the Dedicated Host Group spans.
	PlatformFaultDomainCount int    `pulumi:"platformFaultDomainCount"`
	ResourceGroupName        string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// A list of Availability Zones in which this Dedicated Host Group is located.
	Zones []string `pulumi:"zones"`
}

A collection of values returned by getDedicatedHostGroup.

func LookupDedicatedHostGroup

func LookupDedicatedHostGroup(ctx *pulumi.Context, args *LookupDedicatedHostGroupArgs, opts ...pulumi.InvokeOption) (*LookupDedicatedHostGroupResult, error)

Use this data source to access information about an existing Dedicated Host Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupDedicatedHostGroup(ctx, &compute.LookupDedicatedHostGroupArgs{
			Name:              "example-dedicated-host-group",
			ResourceGroupName: "example-rg",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type LookupDedicatedHostGroupResultOutput

type LookupDedicatedHostGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDedicatedHostGroup.

func (LookupDedicatedHostGroupResultOutput) AutomaticPlacementEnabled

func (o LookupDedicatedHostGroupResultOutput) AutomaticPlacementEnabled() pulumi.BoolOutput

Whether virtual machines or virtual machine scale sets be placed automatically on this Dedicated Host Group.

func (LookupDedicatedHostGroupResultOutput) ElementType

func (LookupDedicatedHostGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDedicatedHostGroupResultOutput) Location

The Azure location where the Dedicated Host Group exists.

func (LookupDedicatedHostGroupResultOutput) Name

func (LookupDedicatedHostGroupResultOutput) PlatformFaultDomainCount

func (o LookupDedicatedHostGroupResultOutput) PlatformFaultDomainCount() pulumi.IntOutput

The number of fault domains that the Dedicated Host Group spans.

func (LookupDedicatedHostGroupResultOutput) ResourceGroupName

func (LookupDedicatedHostGroupResultOutput) Tags

A mapping of tags assigned to the resource.

func (LookupDedicatedHostGroupResultOutput) ToLookupDedicatedHostGroupResultOutput

func (o LookupDedicatedHostGroupResultOutput) ToLookupDedicatedHostGroupResultOutput() LookupDedicatedHostGroupResultOutput

func (LookupDedicatedHostGroupResultOutput) ToLookupDedicatedHostGroupResultOutputWithContext

func (o LookupDedicatedHostGroupResultOutput) ToLookupDedicatedHostGroupResultOutputWithContext(ctx context.Context) LookupDedicatedHostGroupResultOutput

func (LookupDedicatedHostGroupResultOutput) Zones

A list of Availability Zones in which this Dedicated Host Group is located.

type LookupDedicatedHostOutputArgs

type LookupDedicatedHostOutputArgs struct {
	// Specifies the name of the Dedicated Host Group the Dedicated Host is located in.
	DedicatedHostGroupName pulumi.StringInput `pulumi:"dedicatedHostGroupName"`
	// Specifies the name of the Dedicated Host.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group the Dedicated Host is located in.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDedicatedHost.

func (LookupDedicatedHostOutputArgs) ElementType

type LookupDedicatedHostResult

type LookupDedicatedHostResult struct {
	DedicatedHostGroupName string `pulumi:"dedicatedHostGroupName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The location where the Dedicated Host exists.
	Location          string `pulumi:"location"`
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the Dedicated Host.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getDedicatedHost.

func LookupDedicatedHost

func LookupDedicatedHost(ctx *pulumi.Context, args *LookupDedicatedHostArgs, opts ...pulumi.InvokeOption) (*LookupDedicatedHostResult, error)

Use this data source to access information about an existing Dedicated Host.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupDedicatedHost(ctx, &compute.LookupDedicatedHostArgs{
			Name:                   "example-host",
			DedicatedHostGroupName: "example-host-group",
			ResourceGroupName:      "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("dedicatedHostId", example.Id)
		return nil
	})
}

```

type LookupDedicatedHostResultOutput

type LookupDedicatedHostResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDedicatedHost.

func (LookupDedicatedHostResultOutput) DedicatedHostGroupName

func (o LookupDedicatedHostResultOutput) DedicatedHostGroupName() pulumi.StringOutput

func (LookupDedicatedHostResultOutput) ElementType

func (LookupDedicatedHostResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDedicatedHostResultOutput) Location

The location where the Dedicated Host exists.

func (LookupDedicatedHostResultOutput) Name

func (LookupDedicatedHostResultOutput) ResourceGroupName

func (o LookupDedicatedHostResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupDedicatedHostResultOutput) Tags

A mapping of tags assigned to the Dedicated Host.

func (LookupDedicatedHostResultOutput) ToLookupDedicatedHostResultOutput

func (o LookupDedicatedHostResultOutput) ToLookupDedicatedHostResultOutput() LookupDedicatedHostResultOutput

func (LookupDedicatedHostResultOutput) ToLookupDedicatedHostResultOutputWithContext

func (o LookupDedicatedHostResultOutput) ToLookupDedicatedHostResultOutputWithContext(ctx context.Context) LookupDedicatedHostResultOutput

type LookupDiskAccessArgs

type LookupDiskAccessArgs struct {
	// The name of this Disk Access.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Disk Access exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDiskAccess.

type LookupDiskAccessOutputArgs

type LookupDiskAccessOutputArgs struct {
	// The name of this Disk Access.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Disk Access exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDiskAccess.

func (LookupDiskAccessOutputArgs) ElementType

func (LookupDiskAccessOutputArgs) ElementType() reflect.Type

type LookupDiskAccessResult

type LookupDiskAccessResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                string            `pulumi:"id"`
	Name              string            `pulumi:"name"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	Tags              map[string]string `pulumi:"tags"`
}

A collection of values returned by getDiskAccess.

func LookupDiskAccess

func LookupDiskAccess(ctx *pulumi.Context, args *LookupDiskAccessArgs, opts ...pulumi.InvokeOption) (*LookupDiskAccessResult, error)

Use this data source to access information about an existing Disk Access.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type LookupDiskAccessResultOutput

type LookupDiskAccessResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDiskAccess.

func (LookupDiskAccessResultOutput) ElementType

func (LookupDiskAccessResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDiskAccessResultOutput) Name

func (LookupDiskAccessResultOutput) ResourceGroupName

func (o LookupDiskAccessResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupDiskAccessResultOutput) Tags

func (LookupDiskAccessResultOutput) ToLookupDiskAccessResultOutput

func (o LookupDiskAccessResultOutput) ToLookupDiskAccessResultOutput() LookupDiskAccessResultOutput

func (LookupDiskAccessResultOutput) ToLookupDiskAccessResultOutputWithContext

func (o LookupDiskAccessResultOutput) ToLookupDiskAccessResultOutputWithContext(ctx context.Context) LookupDiskAccessResultOutput

type LookupDiskEncryptionSetArgs

type LookupDiskEncryptionSetArgs struct {
	// The name of the existing Disk Encryption Set.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Disk Encryption Set exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDiskEncryptionSet.

type LookupDiskEncryptionSetOutputArgs

type LookupDiskEncryptionSetOutputArgs struct {
	// The name of the existing Disk Encryption Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Disk Encryption Set exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDiskEncryptionSet.

func (LookupDiskEncryptionSetOutputArgs) ElementType

type LookupDiskEncryptionSetResult

type LookupDiskEncryptionSetResult struct {
	// Is the Azure Disk Encryption Set Key automatically rotated to latest version?
	AutoKeyRotationEnabled bool `pulumi:"autoKeyRotationEnabled"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An `identity` block as defined below.
	Identities []GetDiskEncryptionSetIdentity `pulumi:"identities"`
	// The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.
	KeyVaultKeyUrl string `pulumi:"keyVaultKeyUrl"`
	// The location where the Disk Encryption Set exists.
	Location          string `pulumi:"location"`
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the Disk Encryption Set.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getDiskEncryptionSet.

func LookupDiskEncryptionSet

func LookupDiskEncryptionSet(ctx *pulumi.Context, args *LookupDiskEncryptionSetArgs, opts ...pulumi.InvokeOption) (*LookupDiskEncryptionSetResult, error)

Use this data source to access information about an existing Disk Encryption Set.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		existing, err := compute.LookupDiskEncryptionSet(ctx, &compute.LookupDiskEncryptionSetArgs{
			Name:              "example-des",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", existing.Id)
		return nil
	})
}

```

type LookupDiskEncryptionSetResultOutput

type LookupDiskEncryptionSetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDiskEncryptionSet.

func (LookupDiskEncryptionSetResultOutput) AutoKeyRotationEnabled

func (o LookupDiskEncryptionSetResultOutput) AutoKeyRotationEnabled() pulumi.BoolOutput

Is the Azure Disk Encryption Set Key automatically rotated to latest version?

func (LookupDiskEncryptionSetResultOutput) ElementType

func (LookupDiskEncryptionSetResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDiskEncryptionSetResultOutput) Identities added in v5.49.0

An `identity` block as defined below.

func (LookupDiskEncryptionSetResultOutput) KeyVaultKeyUrl added in v5.49.0

The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.

func (LookupDiskEncryptionSetResultOutput) Location

The location where the Disk Encryption Set exists.

func (LookupDiskEncryptionSetResultOutput) Name

func (LookupDiskEncryptionSetResultOutput) ResourceGroupName

func (LookupDiskEncryptionSetResultOutput) Tags

A mapping of tags assigned to the Disk Encryption Set.

func (LookupDiskEncryptionSetResultOutput) ToLookupDiskEncryptionSetResultOutput

func (o LookupDiskEncryptionSetResultOutput) ToLookupDiskEncryptionSetResultOutput() LookupDiskEncryptionSetResultOutput

func (LookupDiskEncryptionSetResultOutput) ToLookupDiskEncryptionSetResultOutputWithContext

func (o LookupDiskEncryptionSetResultOutput) ToLookupDiskEncryptionSetResultOutputWithContext(ctx context.Context) LookupDiskEncryptionSetResultOutput

type LookupImageArgs

type LookupImageArgs struct {
	// The name of the Image.
	Name *string `pulumi:"name"`
	// Regex pattern of the image to match.
	NameRegex *string `pulumi:"nameRegex"`
	// The Name of the Resource Group where this Image exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// By default when matching by regex, images are sorted by name in ascending order and the first match is chosen, to sort descending, set this flag.
	SortDescending *bool `pulumi:"sortDescending"`
}

A collection of arguments for invoking getImage.

type LookupImageOutputArgs

type LookupImageOutputArgs struct {
	// The name of the Image.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Regex pattern of the image to match.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The Name of the Resource Group where this Image exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// By default when matching by regex, images are sorted by name in ascending order and the first match is chosen, to sort descending, set this flag.
	SortDescending pulumi.BoolPtrInput `pulumi:"sortDescending"`
}

A collection of arguments for invoking getImage.

func (LookupImageOutputArgs) ElementType

func (LookupImageOutputArgs) ElementType() reflect.Type

type LookupImageResult

type LookupImageResult struct {
	// a collection of `dataDisk` blocks as defined below.
	DataDisks []GetImageDataDisk `pulumi:"dataDisks"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// the Azure Location where this Image exists.
	Location string `pulumi:"location"`
	// the name of the Image.
	Name      *string `pulumi:"name"`
	NameRegex *string `pulumi:"nameRegex"`
	// a `osDisk` block as defined below.
	OsDisks           []GetImageOsDisk `pulumi:"osDisks"`
	ResourceGroupName string           `pulumi:"resourceGroupName"`
	SortDescending    *bool            `pulumi:"sortDescending"`
	// a mapping of tags to assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// is zone resiliency enabled?
	ZoneResilient bool `pulumi:"zoneResilient"`
}

A collection of values returned by getImage.

func LookupImage

func LookupImage(ctx *pulumi.Context, args *LookupImageArgs, opts ...pulumi.InvokeOption) (*LookupImageResult, error)

Use this data source to access information about an existing Image.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		search, err := compute.LookupImage(ctx, &compute.LookupImageArgs{
			Name:              pulumi.StringRef("search-api"),
			ResourceGroupName: "packerimages",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("imageId", search.Id)
		return nil
	})
}

```

type LookupImageResultOutput

type LookupImageResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getImage.

func (LookupImageResultOutput) DataDisks

a collection of `dataDisk` blocks as defined below.

func (LookupImageResultOutput) ElementType

func (LookupImageResultOutput) ElementType() reflect.Type

func (LookupImageResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupImageResultOutput) Location

the Azure Location where this Image exists.

func (LookupImageResultOutput) Name

the name of the Image.

func (LookupImageResultOutput) NameRegex

func (LookupImageResultOutput) OsDisks

a `osDisk` block as defined below.

func (LookupImageResultOutput) ResourceGroupName

func (o LookupImageResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupImageResultOutput) SortDescending

func (o LookupImageResultOutput) SortDescending() pulumi.BoolPtrOutput

func (LookupImageResultOutput) Tags

a mapping of tags to assigned to the resource.

func (LookupImageResultOutput) ToLookupImageResultOutput

func (o LookupImageResultOutput) ToLookupImageResultOutput() LookupImageResultOutput

func (LookupImageResultOutput) ToLookupImageResultOutputWithContext

func (o LookupImageResultOutput) ToLookupImageResultOutputWithContext(ctx context.Context) LookupImageResultOutput

func (LookupImageResultOutput) ZoneResilient

func (o LookupImageResultOutput) ZoneResilient() pulumi.BoolOutput

is zone resiliency enabled?

type LookupManagedDiskArgs

type LookupManagedDiskArgs struct {
	// Specifies the name of the Managed Disk.
	Name string `pulumi:"name"`
	// Specifies the name of the Resource Group where this Managed Disk exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getManagedDisk.

type LookupManagedDiskOutputArgs

type LookupManagedDiskOutputArgs struct {
	// Specifies the name of the Managed Disk.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the Resource Group where this Managed Disk exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getManagedDisk.

func (LookupManagedDiskOutputArgs) ElementType

type LookupManagedDiskResult

type LookupManagedDiskResult struct {
	CreateOption string `pulumi:"createOption"`
	// The ID of the disk access resource for using private endpoints on disks.
	DiskAccessId string `pulumi:"diskAccessId"`
	// The ID of the Disk Encryption Set used to encrypt this Managed Disk.
	DiskEncryptionSetId string `pulumi:"diskEncryptionSetId"`
	// The number of IOPS allowed for this disk, where one operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite int `pulumi:"diskIopsReadWrite"`
	// The bandwidth allowed for this disk.
	DiskMbpsReadWrite int `pulumi:"diskMbpsReadWrite"`
	// The size of the Managed Disk in gigabytes.
	DiskSizeGb int `pulumi:"diskSizeGb"`
	// A `encryptionSettings` block as defined below.
	EncryptionSettings []GetManagedDiskEncryptionSetting `pulumi:"encryptionSettings"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The ID of the source image used for creating this Managed Disk.
	ImageReferenceId string `pulumi:"imageReferenceId"`
	Name             string `pulumi:"name"`
	// Policy for accessing the disk via network.
	NetworkAccessPolicy string `pulumi:"networkAccessPolicy"`
	// The operating system used for this Managed Disk.
	OsType            string `pulumi:"osType"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The ID of an existing Managed Disk which this Disk was created from.
	SourceResourceId string `pulumi:"sourceResourceId"`
	// The Source URI for this Managed Disk.
	SourceUri string `pulumi:"sourceUri"`
	// The ID of the Storage Account where the `sourceUri` is located.
	StorageAccountId string `pulumi:"storageAccountId"`
	// The storage account type for the Managed Disk.
	StorageAccountType string `pulumi:"storageAccountType"`
	// A mapping of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// A list of Availability Zones where the Managed Disk exists.
	Zones []string `pulumi:"zones"`
}

A collection of values returned by getManagedDisk.

func LookupManagedDisk

func LookupManagedDisk(ctx *pulumi.Context, args *LookupManagedDiskArgs, opts ...pulumi.InvokeOption) (*LookupManagedDiskResult, error)

Use this data source to access information about an existing Managed Disk.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		existing, err := compute.LookupManagedDisk(ctx, &compute.LookupManagedDiskArgs{
			Name:              "example-datadisk",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", existing.Id)
		return nil
	})
}

```

type LookupManagedDiskResultOutput

type LookupManagedDiskResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getManagedDisk.

func (LookupManagedDiskResultOutput) CreateOption

func (LookupManagedDiskResultOutput) DiskAccessId added in v5.11.0

The ID of the disk access resource for using private endpoints on disks.

func (LookupManagedDiskResultOutput) DiskEncryptionSetId

func (o LookupManagedDiskResultOutput) DiskEncryptionSetId() pulumi.StringOutput

The ID of the Disk Encryption Set used to encrypt this Managed Disk.

func (LookupManagedDiskResultOutput) DiskIopsReadWrite

func (o LookupManagedDiskResultOutput) DiskIopsReadWrite() pulumi.IntOutput

The number of IOPS allowed for this disk, where one operation can transfer between 4k and 256k bytes.

func (LookupManagedDiskResultOutput) DiskMbpsReadWrite

func (o LookupManagedDiskResultOutput) DiskMbpsReadWrite() pulumi.IntOutput

The bandwidth allowed for this disk.

func (LookupManagedDiskResultOutput) DiskSizeGb

The size of the Managed Disk in gigabytes.

func (LookupManagedDiskResultOutput) ElementType

func (LookupManagedDiskResultOutput) EncryptionSettings added in v5.15.0

A `encryptionSettings` block as defined below.

func (LookupManagedDiskResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupManagedDiskResultOutput) ImageReferenceId

func (o LookupManagedDiskResultOutput) ImageReferenceId() pulumi.StringOutput

The ID of the source image used for creating this Managed Disk.

func (LookupManagedDiskResultOutput) Name

func (LookupManagedDiskResultOutput) NetworkAccessPolicy added in v5.11.0

func (o LookupManagedDiskResultOutput) NetworkAccessPolicy() pulumi.StringOutput

Policy for accessing the disk via network.

func (LookupManagedDiskResultOutput) OsType

The operating system used for this Managed Disk.

func (LookupManagedDiskResultOutput) ResourceGroupName

func (o LookupManagedDiskResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupManagedDiskResultOutput) SourceResourceId

func (o LookupManagedDiskResultOutput) SourceResourceId() pulumi.StringOutput

The ID of an existing Managed Disk which this Disk was created from.

func (LookupManagedDiskResultOutput) SourceUri

The Source URI for this Managed Disk.

func (LookupManagedDiskResultOutput) StorageAccountId

func (o LookupManagedDiskResultOutput) StorageAccountId() pulumi.StringOutput

The ID of the Storage Account where the `sourceUri` is located.

func (LookupManagedDiskResultOutput) StorageAccountType

func (o LookupManagedDiskResultOutput) StorageAccountType() pulumi.StringOutput

The storage account type for the Managed Disk.

func (LookupManagedDiskResultOutput) Tags

A mapping of tags assigned to the resource.

func (LookupManagedDiskResultOutput) ToLookupManagedDiskResultOutput

func (o LookupManagedDiskResultOutput) ToLookupManagedDiskResultOutput() LookupManagedDiskResultOutput

func (LookupManagedDiskResultOutput) ToLookupManagedDiskResultOutputWithContext

func (o LookupManagedDiskResultOutput) ToLookupManagedDiskResultOutputWithContext(ctx context.Context) LookupManagedDiskResultOutput

func (LookupManagedDiskResultOutput) Zones

A list of Availability Zones where the Managed Disk exists.

type LookupOrchestratedVirtualMachineScaleSetArgs added in v5.39.0

type LookupOrchestratedVirtualMachineScaleSetArgs struct {
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Orchestrated Virtual Machine Scale Set exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getOrchestratedVirtualMachineScaleSet.

type LookupOrchestratedVirtualMachineScaleSetOutputArgs added in v5.39.0

type LookupOrchestratedVirtualMachineScaleSetOutputArgs struct {
	// The name of this Orchestrated Virtual Machine Scale Set.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Orchestrated Virtual Machine Scale Set exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getOrchestratedVirtualMachineScaleSet.

func (LookupOrchestratedVirtualMachineScaleSetOutputArgs) ElementType added in v5.39.0

type LookupOrchestratedVirtualMachineScaleSetResult added in v5.39.0

type LookupOrchestratedVirtualMachineScaleSetResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `identity` block as defined below.
	Identities []GetOrchestratedVirtualMachineScaleSetIdentity `pulumi:"identities"`
	// The Azure Region in which this Orchestrated Virtual Machine Scale Set exists.
	Location string `pulumi:"location"`
	// The name of the public IP address configuration
	Name string `pulumi:"name"`
	// A list of `networkInterface` blocks as defined below.
	NetworkInterfaces []GetOrchestratedVirtualMachineScaleSetNetworkInterface `pulumi:"networkInterfaces"`
	ResourceGroupName string                                                  `pulumi:"resourceGroupName"`
}

A collection of values returned by getOrchestratedVirtualMachineScaleSet.

func LookupOrchestratedVirtualMachineScaleSet added in v5.39.0

Use this data source to access information about an existing Orchestrated Virtual Machine Scale Set.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type LookupOrchestratedVirtualMachineScaleSetResultOutput added in v5.39.0

type LookupOrchestratedVirtualMachineScaleSetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getOrchestratedVirtualMachineScaleSet.

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) ElementType added in v5.39.0

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) Id added in v5.39.0

The provider-assigned unique ID for this managed resource.

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) Identities added in v5.39.0

A `identity` block as defined below.

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) Location added in v5.39.0

The Azure Region in which this Orchestrated Virtual Machine Scale Set exists.

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) Name added in v5.39.0

The name of the public IP address configuration

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) NetworkInterfaces added in v5.39.0

A list of `networkInterface` blocks as defined below.

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) ResourceGroupName added in v5.39.0

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) ToLookupOrchestratedVirtualMachineScaleSetResultOutput added in v5.39.0

func (LookupOrchestratedVirtualMachineScaleSetResultOutput) ToLookupOrchestratedVirtualMachineScaleSetResultOutputWithContext added in v5.39.0

func (o LookupOrchestratedVirtualMachineScaleSetResultOutput) ToLookupOrchestratedVirtualMachineScaleSetResultOutputWithContext(ctx context.Context) LookupOrchestratedVirtualMachineScaleSetResultOutput

type LookupSharedImageArgs

type LookupSharedImageArgs struct {
	// The name of the Shared Image Gallery in which the Shared Image exists.
	GalleryName string `pulumi:"galleryName"`
	// The name of the Shared Image.
	Name string `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSharedImage.

type LookupSharedImageGalleryArgs

type LookupSharedImageGalleryArgs struct {
	// The name of the Shared Image Gallery.
	Name string `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSharedImageGallery.

type LookupSharedImageGalleryOutputArgs

type LookupSharedImageGalleryOutputArgs struct {
	// The name of the Shared Image Gallery.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSharedImageGallery.

func (LookupSharedImageGalleryOutputArgs) ElementType

type LookupSharedImageGalleryResult

type LookupSharedImageGalleryResult struct {
	// A description for the Shared Image Gallery.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Shared Image names within this Shared Image Gallery.
	ImageNames        []string `pulumi:"imageNames"`
	Location          string   `pulumi:"location"`
	Name              string   `pulumi:"name"`
	ResourceGroupName string   `pulumi:"resourceGroupName"`
	// A mapping of tags which are assigned to the Shared Image Gallery.
	Tags map[string]string `pulumi:"tags"`
	// The unique name assigned to the Shared Image Gallery.
	UniqueName string `pulumi:"uniqueName"`
}

A collection of values returned by getSharedImageGallery.

func LookupSharedImageGallery

func LookupSharedImageGallery(ctx *pulumi.Context, args *LookupSharedImageGalleryArgs, opts ...pulumi.InvokeOption) (*LookupSharedImageGalleryResult, error)

Use this data source to access information about an existing Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.LookupSharedImageGallery(ctx, &compute.LookupSharedImageGalleryArgs{
			Name:              "my-image-gallery",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSharedImageGalleryResultOutput

type LookupSharedImageGalleryResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSharedImageGallery.

func (LookupSharedImageGalleryResultOutput) Description

A description for the Shared Image Gallery.

func (LookupSharedImageGalleryResultOutput) ElementType

func (LookupSharedImageGalleryResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSharedImageGalleryResultOutput) ImageNames added in v5.60.0

A list of Shared Image names within this Shared Image Gallery.

func (LookupSharedImageGalleryResultOutput) Location

func (LookupSharedImageGalleryResultOutput) Name

func (LookupSharedImageGalleryResultOutput) ResourceGroupName

func (LookupSharedImageGalleryResultOutput) Tags

A mapping of tags which are assigned to the Shared Image Gallery.

func (LookupSharedImageGalleryResultOutput) ToLookupSharedImageGalleryResultOutput

func (o LookupSharedImageGalleryResultOutput) ToLookupSharedImageGalleryResultOutput() LookupSharedImageGalleryResultOutput

func (LookupSharedImageGalleryResultOutput) ToLookupSharedImageGalleryResultOutputWithContext

func (o LookupSharedImageGalleryResultOutput) ToLookupSharedImageGalleryResultOutputWithContext(ctx context.Context) LookupSharedImageGalleryResultOutput

func (LookupSharedImageGalleryResultOutput) UniqueName

The unique name assigned to the Shared Image Gallery.

type LookupSharedImageOutputArgs

type LookupSharedImageOutputArgs struct {
	// The name of the Shared Image Gallery in which the Shared Image exists.
	GalleryName pulumi.StringInput `pulumi:"galleryName"`
	// The name of the Shared Image.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSharedImage.

func (LookupSharedImageOutputArgs) ElementType

type LookupSharedImageResult

type LookupSharedImageResult struct {
	Architecture string `pulumi:"architecture"`
	// The description of this Shared Image.
	Description string `pulumi:"description"`
	// The End User Licence Agreement for the Shared Image.
	Eula        string `pulumi:"eula"`
	GalleryName string `pulumi:"galleryName"`
	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on.
	HyperVGeneration string `pulumi:"hyperVGeneration"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An `identifier` block as defined below.
	Identifiers []GetSharedImageIdentifier `pulumi:"identifiers"`
	// The supported Azure location where the Shared Image Gallery exists.
	Location string `pulumi:"location"`
	// (Required) The Purchase Plan Name for this Shared Image.
	Name string `pulumi:"name"`
	// The type of Operating System present in this Shared Image.
	OsType string `pulumi:"osType"`
	// The URI containing the Privacy Statement for this Shared Image.
	PrivacyStatementUri string `pulumi:"privacyStatementUri"`
	// (Optional) A `purchasePlan` block as defined below.
	PurchasePlans []GetSharedImagePurchasePlan `pulumi:"purchasePlans"`
	// The URI containing the Release Notes for this Shared Image.
	ReleaseNoteUri    string `pulumi:"releaseNoteUri"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run).
	Specialized bool `pulumi:"specialized"`
	// A mapping of tags assigned to the Shared Image.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getSharedImage.

func LookupSharedImage

func LookupSharedImage(ctx *pulumi.Context, args *LookupSharedImageArgs, opts ...pulumi.InvokeOption) (*LookupSharedImageResult, error)

Use this data source to access information about an existing Shared Image within a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.LookupSharedImage(ctx, &compute.LookupSharedImageArgs{
			Name:              "my-image",
			GalleryName:       "my-image-gallery",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSharedImageResultOutput

type LookupSharedImageResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSharedImage.

func (LookupSharedImageResultOutput) Architecture added in v5.16.0

func (LookupSharedImageResultOutput) Description

The description of this Shared Image.

func (LookupSharedImageResultOutput) ElementType

func (LookupSharedImageResultOutput) Eula

The End User Licence Agreement for the Shared Image.

func (LookupSharedImageResultOutput) GalleryName

func (LookupSharedImageResultOutput) HyperVGeneration

func (o LookupSharedImageResultOutput) HyperVGeneration() pulumi.StringOutput

The generation of HyperV that the Virtual Machine used to create the Shared Image is based on.

func (LookupSharedImageResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSharedImageResultOutput) Identifiers

An `identifier` block as defined below.

func (LookupSharedImageResultOutput) Location

The supported Azure location where the Shared Image Gallery exists.

func (LookupSharedImageResultOutput) Name

(Required) The Purchase Plan Name for this Shared Image.

func (LookupSharedImageResultOutput) OsType

The type of Operating System present in this Shared Image.

func (LookupSharedImageResultOutput) PrivacyStatementUri

func (o LookupSharedImageResultOutput) PrivacyStatementUri() pulumi.StringOutput

The URI containing the Privacy Statement for this Shared Image.

func (LookupSharedImageResultOutput) PurchasePlans added in v5.31.0

(Optional) A `purchasePlan` block as defined below.

func (LookupSharedImageResultOutput) ReleaseNoteUri

The URI containing the Release Notes for this Shared Image.

func (LookupSharedImageResultOutput) ResourceGroupName

func (o LookupSharedImageResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupSharedImageResultOutput) Specialized

Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run).

func (LookupSharedImageResultOutput) Tags

A mapping of tags assigned to the Shared Image.

func (LookupSharedImageResultOutput) ToLookupSharedImageResultOutput

func (o LookupSharedImageResultOutput) ToLookupSharedImageResultOutput() LookupSharedImageResultOutput

func (LookupSharedImageResultOutput) ToLookupSharedImageResultOutputWithContext

func (o LookupSharedImageResultOutput) ToLookupSharedImageResultOutputWithContext(ctx context.Context) LookupSharedImageResultOutput

type LookupSharedImageVersionArgs

type LookupSharedImageVersionArgs struct {
	// The name of the Shared Image Gallery in which the Shared Image exists.
	GalleryName string `pulumi:"galleryName"`
	// The name of the Shared Image in which this Version exists.
	ImageName string `pulumi:"imageName"`
	// The name of the Image Version.
	//
	// > **Note:** You may specify `latest` to obtain the latest version or `recent` to obtain the most recently updated version.
	//
	// > **Note:** In 3.0, `latest` may return an image version with `excludeFromLatest` set to `true`. Starting from 4.0 onwards `latest` will not return image versions with `exludeFromLatest` set to `true`.
	Name string `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// Sort available versions taking SemVer versioning scheme into account. Defaults to `false`.
	SortVersionsBySemver *bool `pulumi:"sortVersionsBySemver"`
	// A mapping of tags assigned to the Shared Image.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSharedImageVersion.

type LookupSharedImageVersionOutputArgs

type LookupSharedImageVersionOutputArgs struct {
	// The name of the Shared Image Gallery in which the Shared Image exists.
	GalleryName pulumi.StringInput `pulumi:"galleryName"`
	// The name of the Shared Image in which this Version exists.
	ImageName pulumi.StringInput `pulumi:"imageName"`
	// The name of the Image Version.
	//
	// > **Note:** You may specify `latest` to obtain the latest version or `recent` to obtain the most recently updated version.
	//
	// > **Note:** In 3.0, `latest` may return an image version with `excludeFromLatest` set to `true`. Starting from 4.0 onwards `latest` will not return image versions with `exludeFromLatest` set to `true`.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group in which the Shared Image Gallery exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// Sort available versions taking SemVer versioning scheme into account. Defaults to `false`.
	SortVersionsBySemver pulumi.BoolPtrInput `pulumi:"sortVersionsBySemver"`
	// A mapping of tags assigned to the Shared Image.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSharedImageVersion.

func (LookupSharedImageVersionOutputArgs) ElementType

type LookupSharedImageVersionResult

type LookupSharedImageVersionResult struct {
	// Is this Image Version excluded from the `latest` filter?
	ExcludeFromLatest bool   `pulumi:"excludeFromLatest"`
	GalleryName       string `pulumi:"galleryName"`
	// The provider-assigned unique ID for this managed resource.
	Id        string `pulumi:"id"`
	ImageName string `pulumi:"imageName"`
	// The supported Azure location where the Shared Image Gallery exists.
	Location string `pulumi:"location"`
	// The ID of the Managed Image which was the source of this Shared Image Version.
	ManagedImageId string `pulumi:"managedImageId"`
	// The Azure Region in which this Image Version exists.
	Name string `pulumi:"name"`
	// The size of the OS disk snapshot (in Gigabytes) which was the source of this Shared Image Version.
	OsDiskImageSizeGb int `pulumi:"osDiskImageSizeGb"`
	// The ID of the OS disk snapshot which was the source of this Shared Image Version.
	OsDiskSnapshotId     string `pulumi:"osDiskSnapshotId"`
	ResourceGroupName    string `pulumi:"resourceGroupName"`
	SortVersionsBySemver *bool  `pulumi:"sortVersionsBySemver"`
	// A mapping of tags assigned to the Shared Image.
	Tags map[string]string `pulumi:"tags"`
	// One or more `targetRegion` blocks as documented below.
	TargetRegions []GetSharedImageVersionTargetRegion `pulumi:"targetRegions"`
}

A collection of values returned by getSharedImageVersion.

func LookupSharedImageVersion

func LookupSharedImageVersion(ctx *pulumi.Context, args *LookupSharedImageVersionArgs, opts ...pulumi.InvokeOption) (*LookupSharedImageVersionResult, error)

Use this data source to access information about an existing Version of a Shared Image within a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.LookupSharedImageVersion(ctx, &compute.LookupSharedImageVersionArgs{
			Name:              "1.0.0",
			ImageName:         "my-image",
			GalleryName:       "my-image-gallery",
			ResourceGroupName: "example-resources",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSharedImageVersionResultOutput

type LookupSharedImageVersionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSharedImageVersion.

func (LookupSharedImageVersionResultOutput) ElementType

func (LookupSharedImageVersionResultOutput) ExcludeFromLatest

Is this Image Version excluded from the `latest` filter?

func (LookupSharedImageVersionResultOutput) GalleryName

func (LookupSharedImageVersionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSharedImageVersionResultOutput) ImageName

func (LookupSharedImageVersionResultOutput) Location

The supported Azure location where the Shared Image Gallery exists.

func (LookupSharedImageVersionResultOutput) ManagedImageId

The ID of the Managed Image which was the source of this Shared Image Version.

func (LookupSharedImageVersionResultOutput) Name

The Azure Region in which this Image Version exists.

func (LookupSharedImageVersionResultOutput) OsDiskImageSizeGb

The size of the OS disk snapshot (in Gigabytes) which was the source of this Shared Image Version.

func (LookupSharedImageVersionResultOutput) OsDiskSnapshotId

The ID of the OS disk snapshot which was the source of this Shared Image Version.

func (LookupSharedImageVersionResultOutput) ResourceGroupName

func (LookupSharedImageVersionResultOutput) SortVersionsBySemver

func (LookupSharedImageVersionResultOutput) Tags

A mapping of tags assigned to the Shared Image.

func (LookupSharedImageVersionResultOutput) TargetRegions

One or more `targetRegion` blocks as documented below.

func (LookupSharedImageVersionResultOutput) ToLookupSharedImageVersionResultOutput

func (o LookupSharedImageVersionResultOutput) ToLookupSharedImageVersionResultOutput() LookupSharedImageVersionResultOutput

func (LookupSharedImageVersionResultOutput) ToLookupSharedImageVersionResultOutputWithContext

func (o LookupSharedImageVersionResultOutput) ToLookupSharedImageVersionResultOutputWithContext(ctx context.Context) LookupSharedImageVersionResultOutput

type LookupSnapshotArgs

type LookupSnapshotArgs struct {
	// Specifies the name of the Snapshot.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group the Snapshot is located in.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSnapshot.

type LookupSnapshotOutputArgs

type LookupSnapshotOutputArgs struct {
	// Specifies the name of the Snapshot.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group the Snapshot is located in.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getSnapshot.

func (LookupSnapshotOutputArgs) ElementType

func (LookupSnapshotOutputArgs) ElementType() reflect.Type

type LookupSnapshotResult

type LookupSnapshotResult struct {
	CreationOption string `pulumi:"creationOption"`
	// The size of the Snapshotted Disk in GB.
	DiskSizeGb         int                            `pulumi:"diskSizeGb"`
	EncryptionSettings []GetSnapshotEncryptionSetting `pulumi:"encryptionSettings"`
	// The provider-assigned unique ID for this managed resource.
	Id                string `pulumi:"id"`
	Name              string `pulumi:"name"`
	OsType            string `pulumi:"osType"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The reference to an existing snapshot.
	SourceResourceId string `pulumi:"sourceResourceId"`
	// The URI to a Managed or Unmanaged Disk.
	SourceUri string `pulumi:"sourceUri"`
	// The ID of an storage account.
	StorageAccountId string `pulumi:"storageAccountId"`
	TimeCreated      string `pulumi:"timeCreated"`
	// Whether Trusted Launch is enabled for the Snapshot.
	TrustedLaunchEnabled bool `pulumi:"trustedLaunchEnabled"`
}

A collection of values returned by getSnapshot.

func LookupSnapshot

func LookupSnapshot(ctx *pulumi.Context, args *LookupSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotResult, error)

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.LookupSnapshot(ctx, &compute.LookupSnapshotArgs{
			Name:              "my-snapshot",
			ResourceGroupName: "my-resource-group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSnapshotResultOutput

type LookupSnapshotResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSnapshot.

func (LookupSnapshotResultOutput) CreationOption

func (o LookupSnapshotResultOutput) CreationOption() pulumi.StringOutput

func (LookupSnapshotResultOutput) DiskSizeGb

The size of the Snapshotted Disk in GB.

func (LookupSnapshotResultOutput) ElementType

func (LookupSnapshotResultOutput) ElementType() reflect.Type

func (LookupSnapshotResultOutput) EncryptionSettings

func (LookupSnapshotResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSnapshotResultOutput) Name

func (LookupSnapshotResultOutput) OsType

func (LookupSnapshotResultOutput) ResourceGroupName

func (o LookupSnapshotResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupSnapshotResultOutput) SourceResourceId

func (o LookupSnapshotResultOutput) SourceResourceId() pulumi.StringOutput

The reference to an existing snapshot.

func (LookupSnapshotResultOutput) SourceUri

The URI to a Managed or Unmanaged Disk.

func (LookupSnapshotResultOutput) StorageAccountId

func (o LookupSnapshotResultOutput) StorageAccountId() pulumi.StringOutput

The ID of an storage account.

func (LookupSnapshotResultOutput) TimeCreated

func (LookupSnapshotResultOutput) ToLookupSnapshotResultOutput

func (o LookupSnapshotResultOutput) ToLookupSnapshotResultOutput() LookupSnapshotResultOutput

func (LookupSnapshotResultOutput) ToLookupSnapshotResultOutputWithContext

func (o LookupSnapshotResultOutput) ToLookupSnapshotResultOutputWithContext(ctx context.Context) LookupSnapshotResultOutput

func (LookupSnapshotResultOutput) TrustedLaunchEnabled added in v5.6.0

func (o LookupSnapshotResultOutput) TrustedLaunchEnabled() pulumi.BoolOutput

Whether Trusted Launch is enabled for the Snapshot.

type LookupSshPublicKeyArgs

type LookupSshPublicKeyArgs struct {
	// The name of this SSH Public Key.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the SSH Public Key exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the SSH Public Key.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSshPublicKey.

type LookupSshPublicKeyOutputArgs

type LookupSshPublicKeyOutputArgs struct {
	// The name of this SSH Public Key.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the SSH Public Key exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the SSH Public Key.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSshPublicKey.

func (LookupSshPublicKeyOutputArgs) ElementType

type LookupSshPublicKeyResult

type LookupSshPublicKeyResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The SSH public key used to authenticate to a virtual machine through ssh.
	PublicKey         string            `pulumi:"publicKey"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	Tags              map[string]string `pulumi:"tags"`
}

A collection of values returned by getSshPublicKey.

func LookupSshPublicKey

func LookupSshPublicKey(ctx *pulumi.Context, args *LookupSshPublicKeyArgs, opts ...pulumi.InvokeOption) (*LookupSshPublicKeyResult, error)

Use this data source to access information about an existing SSH Public Key.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type LookupSshPublicKeyResultOutput

type LookupSshPublicKeyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSshPublicKey.

func (LookupSshPublicKeyResultOutput) ElementType

func (LookupSshPublicKeyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSshPublicKeyResultOutput) Name

func (LookupSshPublicKeyResultOutput) PublicKey

The SSH public key used to authenticate to a virtual machine through ssh.

func (LookupSshPublicKeyResultOutput) ResourceGroupName

func (o LookupSshPublicKeyResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupSshPublicKeyResultOutput) Tags

func (LookupSshPublicKeyResultOutput) ToLookupSshPublicKeyResultOutput

func (o LookupSshPublicKeyResultOutput) ToLookupSshPublicKeyResultOutput() LookupSshPublicKeyResultOutput

func (LookupSshPublicKeyResultOutput) ToLookupSshPublicKeyResultOutputWithContext

func (o LookupSshPublicKeyResultOutput) ToLookupSshPublicKeyResultOutputWithContext(ctx context.Context) LookupSshPublicKeyResultOutput

type LookupVirtualMachineArgs

type LookupVirtualMachineArgs struct {
	// Specifies the name of the Virtual Machine.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group the Virtual Machine is located in.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getVirtualMachine.

type LookupVirtualMachineOutputArgs

type LookupVirtualMachineOutputArgs struct {
	// Specifies the name of the Virtual Machine.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group the Virtual Machine is located in.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getVirtualMachine.

func (LookupVirtualMachineOutputArgs) ElementType

type LookupVirtualMachineResult

type LookupVirtualMachineResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `identity` block as defined below.
	Identities []GetVirtualMachineIdentity `pulumi:"identities"`
	Location   string                      `pulumi:"location"`
	Name       string                      `pulumi:"name"`
	// The power state of the virtual machine.
	PowerState string `pulumi:"powerState"`
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress string `pulumi:"privateIpAddress"`
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses []string `pulumi:"privateIpAddresses"`
	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIpAddress string `pulumi:"publicIpAddress"`
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses []string `pulumi:"publicIpAddresses"`
	ResourceGroupName string   `pulumi:"resourceGroupName"`
}

A collection of values returned by getVirtualMachine.

func LookupVirtualMachine

func LookupVirtualMachine(ctx *pulumi.Context, args *LookupVirtualMachineArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineResult, error)

Use this data source to access information about an existing Virtual Machine.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.LookupVirtualMachine(ctx, &compute.LookupVirtualMachineArgs{
			Name:              "production",
			ResourceGroupName: "networking",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("virtualMachineId", example.Id)
		return nil
	})
}

```

type LookupVirtualMachineResultOutput

type LookupVirtualMachineResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVirtualMachine.

func (LookupVirtualMachineResultOutput) ElementType

func (LookupVirtualMachineResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupVirtualMachineResultOutput) Identities

A `identity` block as defined below.

func (LookupVirtualMachineResultOutput) Location

func (LookupVirtualMachineResultOutput) Name

func (LookupVirtualMachineResultOutput) PowerState added in v5.44.0

The power state of the virtual machine.

func (LookupVirtualMachineResultOutput) PrivateIpAddress

The Primary Private IP Address assigned to this Virtual Machine.

func (LookupVirtualMachineResultOutput) PrivateIpAddresses

A list of Private IP Addresses assigned to this Virtual Machine.

func (LookupVirtualMachineResultOutput) PublicIpAddress

The Primary Public IP Address assigned to this Virtual Machine.

func (LookupVirtualMachineResultOutput) PublicIpAddresses

A list of the Public IP Addresses assigned to this Virtual Machine.

func (LookupVirtualMachineResultOutput) ResourceGroupName

func (LookupVirtualMachineResultOutput) ToLookupVirtualMachineResultOutput

func (o LookupVirtualMachineResultOutput) ToLookupVirtualMachineResultOutput() LookupVirtualMachineResultOutput

func (LookupVirtualMachineResultOutput) ToLookupVirtualMachineResultOutputWithContext

func (o LookupVirtualMachineResultOutput) ToLookupVirtualMachineResultOutputWithContext(ctx context.Context) LookupVirtualMachineResultOutput

type ManagedDisk

type ManagedDisk struct {
	pulumi.CustomResourceState

	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
	CreateOption pulumi.StringOutput `pulumi:"createOption"`
	// The ID of the disk access resource for using private endpoints on disks.
	//
	// > **Note:** `diskAccessId` is only supported when `networkAccessPolicy` is set to `AllowPrivate`.
	DiskAccessId pulumi.StringPtrOutput `pulumi:"diskAccessId"`
	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrOutput `pulumi:"diskEncryptionSetId"`
	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadOnly pulumi.IntOutput `pulumi:"diskIopsReadOnly"`
	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite pulumi.IntOutput `pulumi:"diskIopsReadWrite"`
	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	DiskMbpsReadOnly pulumi.IntOutput `pulumi:"diskMbpsReadOnly"`
	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	DiskMbpsReadWrite pulumi.IntOutput `pulumi:"diskMbpsReadWrite"`
	DiskSizeGb        pulumi.IntOutput `pulumi:"diskSizeGb"`
	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	EdgeZone pulumi.StringPtrOutput `pulumi:"edgeZone"`
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings ManagedDiskEncryptionSettingsPtrOutput `pulumi:"encryptionSettings"`
	// ID of a Gallery Image Version to copy when `createOption` is `FromImage`. This field cannot be specified if imageReferenceId is specified. Changing this forces a new resource to be created.
	GalleryImageReferenceId pulumi.StringPtrOutput `pulumi:"galleryImageReferenceId"`
	// The HyperV Generation of the Disk when the source of an `Import` or `Copy` operation targets a source that contains an operating system. Possible values are `V1` and `V2`. For `ImportSecure` it must be set to `V2`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrOutput `pulumi:"hyperVGeneration"`
	// ID of an existing platform/marketplace disk image to copy when `createOption` is `FromImage`. This field cannot be specified if galleryImageReferenceId is specified. Changing this forces a new resource to be created.
	ImageReferenceId pulumi.StringPtrOutput `pulumi:"imageReferenceId"`
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Logical Sector Size. Possible values are: `512` and `4096`. Defaults to `4096`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Setting logical sector size is supported only with `UltraSSD_LRS` disks and `PremiumV2_LRS` disks.
	LogicalSectorSize pulumi.IntOutput `pulumi:"logicalSectorSize"`
	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	//
	// > **Note:** Premium SSD maxShares limit: `P15` and `P20` disks: 2. `P30`,`P40`,`P50` disks: 5. `P60`,`P70`,`P80` disks: 10. For ultra disks the `maxShares` minimum value is 1 and the maximum is 5.
	MaxShares pulumi.IntOutput `pulumi:"maxShares"`
	// Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Policy for accessing the disk via network. Allowed values are `AllowAll`, `AllowPrivate`, and `DenyAll`.
	NetworkAccessPolicy pulumi.StringPtrOutput `pulumi:"networkAccessPolicy"`
	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	//
	// > **Note:** Credit-Based Bursting is enabled by default on all eligible disks. More information on [Credit-Based and On-Demand Bursting can be found in the documentation](https://docs.microsoft.com/azure/virtual-machines/disk-bursting#disk-level-bursting).
	OnDemandBurstingEnabled pulumi.BoolPtrOutput `pulumi:"onDemandBurstingEnabled"`
	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to `false`.
	//
	// > **Note:** Setting `optimizedFrequentAttachEnabled` to `true` causes the disks to not align with the fault domain of the Virtual Machine, which can have operational implications.
	OptimizedFrequentAttachEnabled pulumi.BoolPtrOutput `pulumi:"optimizedFrequentAttachEnabled"`
	// Specify a value when the source of an `Import`, `ImportSecure` or `Copy` operation targets a source that contains an operating system. Valid values are `Linux` or `Windows`.
	OsType pulumi.StringPtrOutput `pulumi:"osType"`
	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **Note:** `performancePlusEnabled` can only be set to `true` when using a Managed Disk with an Ultra SSD.
	PerformancePlusEnabled pulumi.BoolPtrOutput `pulumi:"performancePlusEnabled"`
	// Whether it is allowed to access the disk via public network. Defaults to `true`.
	//
	// For more information on managed disks, such as sizing options and pricing, please check out the [Azure Documentation](https://docs.microsoft.com/azure/storage/storage-managed-disks-overview).
	PublicNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"publicNetworkAccessEnabled"`
	// The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrOutput `pulumi:"secureVmDiskEncryptionSetId"`
	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are `ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey`, `ConfidentialVM_DiskEncryptedWithPlatformKey` and `ConfidentialVM_DiskEncryptedWithCustomerKey`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey` the value of `createOption` must be one of `FromImage` or `ImportSecure`.
	//
	// > **NOTE:** `securityType` cannot be specified when `trustedLaunchEnabled` is set to true.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` must be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecurityType pulumi.StringPtrOutput `pulumi:"securityType"`
	// The ID of an existing Managed Disk or Snapshot to copy when `createOption` is `Copy` or the recovery point to restore when `createOption` is `Restore`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrOutput `pulumi:"sourceResourceId"`
	// URI to a valid VHD file to be used when `createOption` is `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	SourceUri pulumi.StringOutput `pulumi:"sourceUri"`
	// The ID of the Storage Account where the `sourceUri` is located. Required when `createOption` is set to `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrOutput `pulumi:"storageAccountId"`
	// The type of storage to use for the managed disk. Possible values are `Standard_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS`, `StandardSSD_LRS` or `UltraSSD_LRS`.
	//
	// > **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).
	StorageAccountType pulumi.StringOutput `pulumi:"storageAccountType"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Tier pulumi.StringOutput    `pulumi:"tier"`
	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	//
	// > **Note:** Trusted Launch can only be enabled when `createOption` is `FromImage` or `Import`.
	TrustedLaunchEnabled pulumi.BoolPtrOutput `pulumi:"trustedLaunchEnabled"`
	// Specifies the size of the managed disk to create in bytes. Required when `createOption` is `Upload`. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with `ls -l` or `wc -c`. More information can be found at [Copy a managed disk](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disks-upload-vhd-to-managed-disk-cli#copy-a-managed-disk). Changing this forces a new resource to be created.
	UploadSizeBytes pulumi.IntPtrOutput `pulumi:"uploadSizeBytes"`
	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	//
	// > **Note:** Availability Zones are [only supported in select regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

Manages a managed disk.

## Example Usage

### With Create Empty

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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 = compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("acctestmd"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(1),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With Create Copy

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		source, err := compute.NewManagedDisk(ctx, "source", &compute.ManagedDiskArgs{
			Name:               pulumi.String("acctestmd1"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(1),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewManagedDisk(ctx, "copy", &compute.ManagedDiskArgs{
			Name:               pulumi.String("acctestmd2"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Copy"),
			SourceResourceId:   source.ID(),
			DiskSizeGb:         pulumi.Int(1),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Managed Disks can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/managedDisk:ManagedDisk example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/disks/manageddisk1 ```

func GetManagedDisk

func GetManagedDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ManagedDiskState, opts ...pulumi.ResourceOption) (*ManagedDisk, error)

GetManagedDisk gets an existing ManagedDisk 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 NewManagedDisk

func NewManagedDisk(ctx *pulumi.Context,
	name string, args *ManagedDiskArgs, opts ...pulumi.ResourceOption) (*ManagedDisk, error)

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

func (*ManagedDisk) ElementType

func (*ManagedDisk) ElementType() reflect.Type

func (*ManagedDisk) ToManagedDiskOutput

func (i *ManagedDisk) ToManagedDiskOutput() ManagedDiskOutput

func (*ManagedDisk) ToManagedDiskOutputWithContext

func (i *ManagedDisk) ToManagedDiskOutputWithContext(ctx context.Context) ManagedDiskOutput

type ManagedDiskArgs

type ManagedDiskArgs struct {
	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
	CreateOption pulumi.StringInput
	// The ID of the disk access resource for using private endpoints on disks.
	//
	// > **Note:** `diskAccessId` is only supported when `networkAccessPolicy` is set to `AllowPrivate`.
	DiskAccessId pulumi.StringPtrInput
	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput
	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadOnly pulumi.IntPtrInput
	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite pulumi.IntPtrInput
	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	DiskMbpsReadOnly pulumi.IntPtrInput
	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	DiskMbpsReadWrite pulumi.IntPtrInput
	DiskSizeGb        pulumi.IntPtrInput
	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	EdgeZone pulumi.StringPtrInput
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings ManagedDiskEncryptionSettingsPtrInput
	// ID of a Gallery Image Version to copy when `createOption` is `FromImage`. This field cannot be specified if imageReferenceId is specified. Changing this forces a new resource to be created.
	GalleryImageReferenceId pulumi.StringPtrInput
	// The HyperV Generation of the Disk when the source of an `Import` or `Copy` operation targets a source that contains an operating system. Possible values are `V1` and `V2`. For `ImportSecure` it must be set to `V2`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrInput
	// ID of an existing platform/marketplace disk image to copy when `createOption` is `FromImage`. This field cannot be specified if galleryImageReferenceId is specified. Changing this forces a new resource to be created.
	ImageReferenceId pulumi.StringPtrInput
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Logical Sector Size. Possible values are: `512` and `4096`. Defaults to `4096`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Setting logical sector size is supported only with `UltraSSD_LRS` disks and `PremiumV2_LRS` disks.
	LogicalSectorSize pulumi.IntPtrInput
	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	//
	// > **Note:** Premium SSD maxShares limit: `P15` and `P20` disks: 2. `P30`,`P40`,`P50` disks: 5. `P60`,`P70`,`P80` disks: 10. For ultra disks the `maxShares` minimum value is 1 and the maximum is 5.
	MaxShares pulumi.IntPtrInput
	// Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Policy for accessing the disk via network. Allowed values are `AllowAll`, `AllowPrivate`, and `DenyAll`.
	NetworkAccessPolicy pulumi.StringPtrInput
	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	//
	// > **Note:** Credit-Based Bursting is enabled by default on all eligible disks. More information on [Credit-Based and On-Demand Bursting can be found in the documentation](https://docs.microsoft.com/azure/virtual-machines/disk-bursting#disk-level-bursting).
	OnDemandBurstingEnabled pulumi.BoolPtrInput
	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to `false`.
	//
	// > **Note:** Setting `optimizedFrequentAttachEnabled` to `true` causes the disks to not align with the fault domain of the Virtual Machine, which can have operational implications.
	OptimizedFrequentAttachEnabled pulumi.BoolPtrInput
	// Specify a value when the source of an `Import`, `ImportSecure` or `Copy` operation targets a source that contains an operating system. Valid values are `Linux` or `Windows`.
	OsType pulumi.StringPtrInput
	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **Note:** `performancePlusEnabled` can only be set to `true` when using a Managed Disk with an Ultra SSD.
	PerformancePlusEnabled pulumi.BoolPtrInput
	// Whether it is allowed to access the disk via public network. Defaults to `true`.
	//
	// For more information on managed disks, such as sizing options and pricing, please check out the [Azure Documentation](https://docs.microsoft.com/azure/storage/storage-managed-disks-overview).
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput
	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are `ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey`, `ConfidentialVM_DiskEncryptedWithPlatformKey` and `ConfidentialVM_DiskEncryptedWithCustomerKey`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey` the value of `createOption` must be one of `FromImage` or `ImportSecure`.
	//
	// > **NOTE:** `securityType` cannot be specified when `trustedLaunchEnabled` is set to true.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` must be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecurityType pulumi.StringPtrInput
	// The ID of an existing Managed Disk or Snapshot to copy when `createOption` is `Copy` or the recovery point to restore when `createOption` is `Restore`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrInput
	// URI to a valid VHD file to be used when `createOption` is `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	SourceUri pulumi.StringPtrInput
	// The ID of the Storage Account where the `sourceUri` is located. Required when `createOption` is set to `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrInput
	// The type of storage to use for the managed disk. Possible values are `Standard_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS`, `StandardSSD_LRS` or `UltraSSD_LRS`.
	//
	// > **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).
	StorageAccountType pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Tier pulumi.StringPtrInput
	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	//
	// > **Note:** Trusted Launch can only be enabled when `createOption` is `FromImage` or `Import`.
	TrustedLaunchEnabled pulumi.BoolPtrInput
	// Specifies the size of the managed disk to create in bytes. Required when `createOption` is `Upload`. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with `ls -l` or `wc -c`. More information can be found at [Copy a managed disk](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disks-upload-vhd-to-managed-disk-cli#copy-a-managed-disk). Changing this forces a new resource to be created.
	UploadSizeBytes pulumi.IntPtrInput
	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	//
	// > **Note:** Availability Zones are [only supported in select regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a ManagedDisk resource.

func (ManagedDiskArgs) ElementType

func (ManagedDiskArgs) ElementType() reflect.Type

type ManagedDiskArray

type ManagedDiskArray []ManagedDiskInput

func (ManagedDiskArray) ElementType

func (ManagedDiskArray) ElementType() reflect.Type

func (ManagedDiskArray) ToManagedDiskArrayOutput

func (i ManagedDiskArray) ToManagedDiskArrayOutput() ManagedDiskArrayOutput

func (ManagedDiskArray) ToManagedDiskArrayOutputWithContext

func (i ManagedDiskArray) ToManagedDiskArrayOutputWithContext(ctx context.Context) ManagedDiskArrayOutput

type ManagedDiskArrayInput

type ManagedDiskArrayInput interface {
	pulumi.Input

	ToManagedDiskArrayOutput() ManagedDiskArrayOutput
	ToManagedDiskArrayOutputWithContext(context.Context) ManagedDiskArrayOutput
}

ManagedDiskArrayInput is an input type that accepts ManagedDiskArray and ManagedDiskArrayOutput values. You can construct a concrete instance of `ManagedDiskArrayInput` via:

ManagedDiskArray{ ManagedDiskArgs{...} }

type ManagedDiskArrayOutput

type ManagedDiskArrayOutput struct{ *pulumi.OutputState }

func (ManagedDiskArrayOutput) ElementType

func (ManagedDiskArrayOutput) ElementType() reflect.Type

func (ManagedDiskArrayOutput) Index

func (ManagedDiskArrayOutput) ToManagedDiskArrayOutput

func (o ManagedDiskArrayOutput) ToManagedDiskArrayOutput() ManagedDiskArrayOutput

func (ManagedDiskArrayOutput) ToManagedDiskArrayOutputWithContext

func (o ManagedDiskArrayOutput) ToManagedDiskArrayOutputWithContext(ctx context.Context) ManagedDiskArrayOutput

type ManagedDiskEncryptionSettings

type ManagedDiskEncryptionSettings struct {
	// A `diskEncryptionKey` block as defined above.
	DiskEncryptionKey *ManagedDiskEncryptionSettingsDiskEncryptionKey `pulumi:"diskEncryptionKey"`
	// Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`
	Enabled *bool `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey *ManagedDiskEncryptionSettingsKeyEncryptionKey `pulumi:"keyEncryptionKey"`
}

type ManagedDiskEncryptionSettingsArgs

type ManagedDiskEncryptionSettingsArgs struct {
	// A `diskEncryptionKey` block as defined above.
	DiskEncryptionKey ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrInput `pulumi:"diskEncryptionKey"`
	// Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrInput `pulumi:"keyEncryptionKey"`
}

func (ManagedDiskEncryptionSettingsArgs) ElementType

func (ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsOutput

func (i ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsOutput() ManagedDiskEncryptionSettingsOutput

func (ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsOutputWithContext

func (i ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsOutput

func (ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsPtrOutput

func (i ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsPtrOutput() ManagedDiskEncryptionSettingsPtrOutput

func (ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsPtrOutputWithContext

func (i ManagedDiskEncryptionSettingsArgs) ToManagedDiskEncryptionSettingsPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsPtrOutput

type ManagedDiskEncryptionSettingsDiskEncryptionKey

type ManagedDiskEncryptionSettingsDiskEncryptionKey struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs

type ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ElementType

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

func (i ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutput() ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutputWithContext

func (i ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

func (i ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (i ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyInput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutput() ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput
	ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutputWithContext(context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput
}

ManagedDiskEncryptionSettingsDiskEncryptionKeyInput is an input type that accepts ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs and ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsDiskEncryptionKeyInput` via:

ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs{...}

type ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ElementType

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) SecretUrl

The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutputWithContext

func (o ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

func (o ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsDiskEncryptionKeyOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrInput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput
	ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput
}

ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrInput is an input type that accepts ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs, ManagedDiskEncryptionSettingsDiskEncryptionKeyPtr and ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrInput` via:

        ManagedDiskEncryptionSettingsDiskEncryptionKeyArgs{...}

or:

        nil

type ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) Elem

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) ElementType

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) SecretUrl

The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsDiskEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsInput

type ManagedDiskEncryptionSettingsInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsOutput() ManagedDiskEncryptionSettingsOutput
	ToManagedDiskEncryptionSettingsOutputWithContext(context.Context) ManagedDiskEncryptionSettingsOutput
}

ManagedDiskEncryptionSettingsInput is an input type that accepts ManagedDiskEncryptionSettingsArgs and ManagedDiskEncryptionSettingsOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsInput` via:

ManagedDiskEncryptionSettingsArgs{...}

type ManagedDiskEncryptionSettingsKeyEncryptionKey

type ManagedDiskEncryptionSettingsKeyEncryptionKey struct {
	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.
	KeyUrl string `pulumi:"keyUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs

type ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs struct {
	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.
	KeyUrl pulumi.StringInput `pulumi:"keyUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ElementType

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (i ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutputWithContext

func (i ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

func (i ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (i ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyInput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput
	ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutputWithContext(context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput
}

ManagedDiskEncryptionSettingsKeyEncryptionKeyInput is an input type that accepts ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs and ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsKeyEncryptionKeyInput` via:

ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs{...}

type ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ElementType

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) KeyUrl

The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (o ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutputWithContext

func (o ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

func (o ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsKeyEncryptionKeyOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrInput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput() ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput
	ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput
}

ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrInput is an input type that accepts ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs, ManagedDiskEncryptionSettingsKeyEncryptionKeyPtr and ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrInput` via:

        ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs{...}

or:

        nil

type ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) Elem

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) ElementType

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) KeyUrl

The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

func (ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput) ToManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsKeyEncryptionKeyPtrOutput

type ManagedDiskEncryptionSettingsOutput

type ManagedDiskEncryptionSettingsOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsOutput) DiskEncryptionKey

A `diskEncryptionKey` block as defined above.

func (ManagedDiskEncryptionSettingsOutput) ElementType

func (ManagedDiskEncryptionSettingsOutput) Enabled deprecated

Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`

func (ManagedDiskEncryptionSettingsOutput) KeyEncryptionKey

A `keyEncryptionKey` block as defined below.

func (ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsOutput

func (o ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsOutput() ManagedDiskEncryptionSettingsOutput

func (ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsOutputWithContext

func (o ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsOutput

func (ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsPtrOutput

func (o ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsPtrOutput() ManagedDiskEncryptionSettingsPtrOutput

func (ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsOutput) ToManagedDiskEncryptionSettingsPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsPtrOutput

type ManagedDiskEncryptionSettingsPtrInput

type ManagedDiskEncryptionSettingsPtrInput interface {
	pulumi.Input

	ToManagedDiskEncryptionSettingsPtrOutput() ManagedDiskEncryptionSettingsPtrOutput
	ToManagedDiskEncryptionSettingsPtrOutputWithContext(context.Context) ManagedDiskEncryptionSettingsPtrOutput
}

ManagedDiskEncryptionSettingsPtrInput is an input type that accepts ManagedDiskEncryptionSettingsArgs, ManagedDiskEncryptionSettingsPtr and ManagedDiskEncryptionSettingsPtrOutput values. You can construct a concrete instance of `ManagedDiskEncryptionSettingsPtrInput` via:

        ManagedDiskEncryptionSettingsArgs{...}

or:

        nil

type ManagedDiskEncryptionSettingsPtrOutput

type ManagedDiskEncryptionSettingsPtrOutput struct{ *pulumi.OutputState }

func (ManagedDiskEncryptionSettingsPtrOutput) DiskEncryptionKey

A `diskEncryptionKey` block as defined above.

func (ManagedDiskEncryptionSettingsPtrOutput) Elem

func (ManagedDiskEncryptionSettingsPtrOutput) ElementType

func (ManagedDiskEncryptionSettingsPtrOutput) Enabled deprecated

Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`

func (ManagedDiskEncryptionSettingsPtrOutput) KeyEncryptionKey

A `keyEncryptionKey` block as defined below.

func (ManagedDiskEncryptionSettingsPtrOutput) ToManagedDiskEncryptionSettingsPtrOutput

func (o ManagedDiskEncryptionSettingsPtrOutput) ToManagedDiskEncryptionSettingsPtrOutput() ManagedDiskEncryptionSettingsPtrOutput

func (ManagedDiskEncryptionSettingsPtrOutput) ToManagedDiskEncryptionSettingsPtrOutputWithContext

func (o ManagedDiskEncryptionSettingsPtrOutput) ToManagedDiskEncryptionSettingsPtrOutputWithContext(ctx context.Context) ManagedDiskEncryptionSettingsPtrOutput

type ManagedDiskInput

type ManagedDiskInput interface {
	pulumi.Input

	ToManagedDiskOutput() ManagedDiskOutput
	ToManagedDiskOutputWithContext(ctx context.Context) ManagedDiskOutput
}

type ManagedDiskMap

type ManagedDiskMap map[string]ManagedDiskInput

func (ManagedDiskMap) ElementType

func (ManagedDiskMap) ElementType() reflect.Type

func (ManagedDiskMap) ToManagedDiskMapOutput

func (i ManagedDiskMap) ToManagedDiskMapOutput() ManagedDiskMapOutput

func (ManagedDiskMap) ToManagedDiskMapOutputWithContext

func (i ManagedDiskMap) ToManagedDiskMapOutputWithContext(ctx context.Context) ManagedDiskMapOutput

type ManagedDiskMapInput

type ManagedDiskMapInput interface {
	pulumi.Input

	ToManagedDiskMapOutput() ManagedDiskMapOutput
	ToManagedDiskMapOutputWithContext(context.Context) ManagedDiskMapOutput
}

ManagedDiskMapInput is an input type that accepts ManagedDiskMap and ManagedDiskMapOutput values. You can construct a concrete instance of `ManagedDiskMapInput` via:

ManagedDiskMap{ "key": ManagedDiskArgs{...} }

type ManagedDiskMapOutput

type ManagedDiskMapOutput struct{ *pulumi.OutputState }

func (ManagedDiskMapOutput) ElementType

func (ManagedDiskMapOutput) ElementType() reflect.Type

func (ManagedDiskMapOutput) MapIndex

func (ManagedDiskMapOutput) ToManagedDiskMapOutput

func (o ManagedDiskMapOutput) ToManagedDiskMapOutput() ManagedDiskMapOutput

func (ManagedDiskMapOutput) ToManagedDiskMapOutputWithContext

func (o ManagedDiskMapOutput) ToManagedDiskMapOutputWithContext(ctx context.Context) ManagedDiskMapOutput

type ManagedDiskOutput

type ManagedDiskOutput struct{ *pulumi.OutputState }

func (ManagedDiskOutput) CreateOption added in v5.5.0

func (o ManagedDiskOutput) CreateOption() pulumi.StringOutput

The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:

func (ManagedDiskOutput) DiskAccessId added in v5.5.0

func (o ManagedDiskOutput) DiskAccessId() pulumi.StringPtrOutput

The ID of the disk access resource for using private endpoints on disks.

> **Note:** `diskAccessId` is only supported when `networkAccessPolicy` is set to `AllowPrivate`.

func (ManagedDiskOutput) DiskEncryptionSetId added in v5.5.0

func (o ManagedDiskOutput) DiskEncryptionSetId() pulumi.StringPtrOutput

The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with `secureVmDiskEncryptionSetId`.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (ManagedDiskOutput) DiskIopsReadOnly added in v5.5.0

func (o ManagedDiskOutput) DiskIopsReadOnly() pulumi.IntOutput

The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.

func (ManagedDiskOutput) DiskIopsReadWrite added in v5.5.0

func (o ManagedDiskOutput) DiskIopsReadWrite() pulumi.IntOutput

The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.

func (ManagedDiskOutput) DiskMbpsReadOnly added in v5.5.0

func (o ManagedDiskOutput) DiskMbpsReadOnly() pulumi.IntOutput

The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.

func (ManagedDiskOutput) DiskMbpsReadWrite added in v5.5.0

func (o ManagedDiskOutput) DiskMbpsReadWrite() pulumi.IntOutput

The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.

func (ManagedDiskOutput) DiskSizeGb added in v5.5.0

func (o ManagedDiskOutput) DiskSizeGb() pulumi.IntOutput

func (ManagedDiskOutput) EdgeZone added in v5.5.0

Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.

func (ManagedDiskOutput) ElementType

func (ManagedDiskOutput) ElementType() reflect.Type

func (ManagedDiskOutput) EncryptionSettings added in v5.5.0

A `encryptionSettings` block as defined below.

> **NOTE:** Removing `encryptionSettings` forces a new resource to be created.

func (ManagedDiskOutput) GalleryImageReferenceId added in v5.5.0

func (o ManagedDiskOutput) GalleryImageReferenceId() pulumi.StringPtrOutput

ID of a Gallery Image Version to copy when `createOption` is `FromImage`. This field cannot be specified if imageReferenceId is specified. Changing this forces a new resource to be created.

func (ManagedDiskOutput) HyperVGeneration added in v5.5.0

func (o ManagedDiskOutput) HyperVGeneration() pulumi.StringPtrOutput

The HyperV Generation of the Disk when the source of an `Import` or `Copy` operation targets a source that contains an operating system. Possible values are `V1` and `V2`. For `ImportSecure` it must be set to `V2`. Changing this forces a new resource to be created.

func (ManagedDiskOutput) ImageReferenceId added in v5.5.0

func (o ManagedDiskOutput) ImageReferenceId() pulumi.StringPtrOutput

ID of an existing platform/marketplace disk image to copy when `createOption` is `FromImage`. This field cannot be specified if galleryImageReferenceId is specified. Changing this forces a new resource to be created.

func (ManagedDiskOutput) Location added in v5.5.0

func (o ManagedDiskOutput) Location() pulumi.StringOutput

Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (ManagedDiskOutput) LogicalSectorSize added in v5.5.0

func (o ManagedDiskOutput) LogicalSectorSize() pulumi.IntOutput

Logical Sector Size. Possible values are: `512` and `4096`. Defaults to `4096`. Changing this forces a new resource to be created.

> **NOTE:** Setting logical sector size is supported only with `UltraSSD_LRS` disks and `PremiumV2_LRS` disks.

func (ManagedDiskOutput) MaxShares added in v5.5.0

func (o ManagedDiskOutput) MaxShares() pulumi.IntOutput

The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.

> **Note:** Premium SSD maxShares limit: `P15` and `P20` disks: 2. `P30`,`P40`,`P50` disks: 5. `P60`,`P70`,`P80` disks: 10. For ultra disks the `maxShares` minimum value is 1 and the maximum is 5.

func (ManagedDiskOutput) Name added in v5.5.0

Specifies the name of the Managed Disk. Changing this forces a new resource to be created.

func (ManagedDiskOutput) NetworkAccessPolicy added in v5.5.0

func (o ManagedDiskOutput) NetworkAccessPolicy() pulumi.StringPtrOutput

Policy for accessing the disk via network. Allowed values are `AllowAll`, `AllowPrivate`, and `DenyAll`.

func (ManagedDiskOutput) OnDemandBurstingEnabled added in v5.5.0

func (o ManagedDiskOutput) OnDemandBurstingEnabled() pulumi.BoolPtrOutput

Specifies if On-Demand Bursting is enabled for the Managed Disk.

> **Note:** Credit-Based Bursting is enabled by default on all eligible disks. More information on [Credit-Based and On-Demand Bursting can be found in the documentation](https://docs.microsoft.com/azure/virtual-machines/disk-bursting#disk-level-bursting).

func (ManagedDiskOutput) OptimizedFrequentAttachEnabled added in v5.52.0

func (o ManagedDiskOutput) OptimizedFrequentAttachEnabled() pulumi.BoolPtrOutput

Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to `false`.

> **Note:** Setting `optimizedFrequentAttachEnabled` to `true` causes the disks to not align with the fault domain of the Virtual Machine, which can have operational implications.

func (ManagedDiskOutput) OsType added in v5.5.0

Specify a value when the source of an `Import`, `ImportSecure` or `Copy` operation targets a source that contains an operating system. Valid values are `Linux` or `Windows`.

func (ManagedDiskOutput) PerformancePlusEnabled added in v5.52.0

func (o ManagedDiskOutput) PerformancePlusEnabled() pulumi.BoolPtrOutput

Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to `false`. Changing this forces a new resource to be created.

> **Note:** `performancePlusEnabled` can only be set to `true` when using a Managed Disk with an Ultra SSD.

func (ManagedDiskOutput) PublicNetworkAccessEnabled added in v5.5.0

func (o ManagedDiskOutput) PublicNetworkAccessEnabled() pulumi.BoolPtrOutput

Whether it is allowed to access the disk via public network. Defaults to `true`.

For more information on managed disks, such as sizing options and pricing, please check out the [Azure Documentation](https://docs.microsoft.com/azure/storage/storage-managed-disks-overview).

func (ManagedDiskOutput) ResourceGroupName added in v5.5.0

func (o ManagedDiskOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created.

func (ManagedDiskOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o ManagedDiskOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.

func (ManagedDiskOutput) SecurityType added in v5.8.0

func (o ManagedDiskOutput) SecurityType() pulumi.StringPtrOutput

Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are `ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey`, `ConfidentialVM_DiskEncryptedWithPlatformKey` and `ConfidentialVM_DiskEncryptedWithCustomerKey`. Changing this forces a new resource to be created.

> **NOTE:** When `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey` the value of `createOption` must be one of `FromImage` or `ImportSecure`.

> **NOTE:** `securityType` cannot be specified when `trustedLaunchEnabled` is set to true.

> **NOTE:** `secureVmDiskEncryptionSetId` must be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.

func (ManagedDiskOutput) SourceResourceId added in v5.5.0

func (o ManagedDiskOutput) SourceResourceId() pulumi.StringPtrOutput

The ID of an existing Managed Disk or Snapshot to copy when `createOption` is `Copy` or the recovery point to restore when `createOption` is `Restore`. Changing this forces a new resource to be created.

func (ManagedDiskOutput) SourceUri added in v5.5.0

func (o ManagedDiskOutput) SourceUri() pulumi.StringOutput

URI to a valid VHD file to be used when `createOption` is `Import` or `ImportSecure`. Changing this forces a new resource to be created.

func (ManagedDiskOutput) StorageAccountId added in v5.5.0

func (o ManagedDiskOutput) StorageAccountId() pulumi.StringPtrOutput

The ID of the Storage Account where the `sourceUri` is located. Required when `createOption` is set to `Import` or `ImportSecure`. Changing this forces a new resource to be created.

func (ManagedDiskOutput) StorageAccountType added in v5.5.0

func (o ManagedDiskOutput) StorageAccountType() pulumi.StringOutput

The type of storage to use for the managed disk. Possible values are `Standard_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS`, `StandardSSD_LRS` or `UltraSSD_LRS`.

> **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).

func (ManagedDiskOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (ManagedDiskOutput) Tier added in v5.5.0

func (ManagedDiskOutput) ToManagedDiskOutput

func (o ManagedDiskOutput) ToManagedDiskOutput() ManagedDiskOutput

func (ManagedDiskOutput) ToManagedDiskOutputWithContext

func (o ManagedDiskOutput) ToManagedDiskOutputWithContext(ctx context.Context) ManagedDiskOutput

func (ManagedDiskOutput) TrustedLaunchEnabled added in v5.5.0

func (o ManagedDiskOutput) TrustedLaunchEnabled() pulumi.BoolPtrOutput

Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.

> **Note:** Trusted Launch can only be enabled when `createOption` is `FromImage` or `Import`.

func (ManagedDiskOutput) UploadSizeBytes added in v5.26.1

func (o ManagedDiskOutput) UploadSizeBytes() pulumi.IntPtrOutput

Specifies the size of the managed disk to create in bytes. Required when `createOption` is `Upload`. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with `ls -l` or `wc -c`. More information can be found at [Copy a managed disk](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disks-upload-vhd-to-managed-disk-cli#copy-a-managed-disk). Changing this forces a new resource to be created.

func (ManagedDiskOutput) Zone added in v5.5.0

Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.

> **Note:** Availability Zones are [only supported in select regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).

type ManagedDiskSasToken added in v5.6.0

type ManagedDiskSasToken struct {
	pulumi.CustomResourceState

	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	//
	// Refer to the [SAS creation reference from Azure](https://docs.microsoft.com/rest/api/compute/disks/grant-access)
	// for additional details on the fields above.
	AccessLevel pulumi.StringOutput `pulumi:"accessLevel"`
	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	DurationInSeconds pulumi.IntOutput `pulumi:"durationInSeconds"`
	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringOutput `pulumi:"managedDiskId"`
	// The computed Shared Access Signature (SAS) of the Managed Disk.
	SasUrl pulumi.StringOutput `pulumi:"sasUrl"`
}

Manages a Disk SAS Token.

Use this resource to obtain a Shared Access Signature (SAS Token) for an existing Managed Disk.

Shared access signatures allow fine-grained, ephemeral access control to various aspects of Managed Disk similar to blob/storage account container.

With the help of this resource, data from the disk can be copied from managed disk to a storage blob or to some other system without the need of azcopy.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := core.NewResourceGroup(ctx, "test", &core.ResourceGroupArgs{
			Name:     pulumi.String("testrg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		testManagedDisk, err := compute.NewManagedDisk(ctx, "test", &compute.ManagedDiskArgs{
			Name:               pulumi.String("tst-disk-export"),
			Location:           test.Location,
			ResourceGroupName:  test.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewManagedDiskSasToken(ctx, "test", &compute.ManagedDiskSasTokenArgs{
			ManagedDiskId:     testManagedDisk.ID(),
			DurationInSeconds: pulumi.Int(300),
			AccessLevel:       pulumi.String("Read"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Disk SAS Token can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/managedDiskSasToken:ManagedDiskSasToken example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/disks/manageddisk1 ```

func GetManagedDiskSasToken added in v5.6.0

func GetManagedDiskSasToken(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ManagedDiskSasTokenState, opts ...pulumi.ResourceOption) (*ManagedDiskSasToken, error)

GetManagedDiskSasToken gets an existing ManagedDiskSasToken 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 NewManagedDiskSasToken added in v5.6.0

func NewManagedDiskSasToken(ctx *pulumi.Context,
	name string, args *ManagedDiskSasTokenArgs, opts ...pulumi.ResourceOption) (*ManagedDiskSasToken, error)

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

func (*ManagedDiskSasToken) ElementType added in v5.6.0

func (*ManagedDiskSasToken) ElementType() reflect.Type

func (*ManagedDiskSasToken) ToManagedDiskSasTokenOutput added in v5.6.0

func (i *ManagedDiskSasToken) ToManagedDiskSasTokenOutput() ManagedDiskSasTokenOutput

func (*ManagedDiskSasToken) ToManagedDiskSasTokenOutputWithContext added in v5.6.0

func (i *ManagedDiskSasToken) ToManagedDiskSasTokenOutputWithContext(ctx context.Context) ManagedDiskSasTokenOutput

type ManagedDiskSasTokenArgs added in v5.6.0

type ManagedDiskSasTokenArgs struct {
	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	//
	// Refer to the [SAS creation reference from Azure](https://docs.microsoft.com/rest/api/compute/disks/grant-access)
	// for additional details on the fields above.
	AccessLevel pulumi.StringInput
	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	DurationInSeconds pulumi.IntInput
	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringInput
}

The set of arguments for constructing a ManagedDiskSasToken resource.

func (ManagedDiskSasTokenArgs) ElementType added in v5.6.0

func (ManagedDiskSasTokenArgs) ElementType() reflect.Type

type ManagedDiskSasTokenArray added in v5.6.0

type ManagedDiskSasTokenArray []ManagedDiskSasTokenInput

func (ManagedDiskSasTokenArray) ElementType added in v5.6.0

func (ManagedDiskSasTokenArray) ElementType() reflect.Type

func (ManagedDiskSasTokenArray) ToManagedDiskSasTokenArrayOutput added in v5.6.0

func (i ManagedDiskSasTokenArray) ToManagedDiskSasTokenArrayOutput() ManagedDiskSasTokenArrayOutput

func (ManagedDiskSasTokenArray) ToManagedDiskSasTokenArrayOutputWithContext added in v5.6.0

func (i ManagedDiskSasTokenArray) ToManagedDiskSasTokenArrayOutputWithContext(ctx context.Context) ManagedDiskSasTokenArrayOutput

type ManagedDiskSasTokenArrayInput added in v5.6.0

type ManagedDiskSasTokenArrayInput interface {
	pulumi.Input

	ToManagedDiskSasTokenArrayOutput() ManagedDiskSasTokenArrayOutput
	ToManagedDiskSasTokenArrayOutputWithContext(context.Context) ManagedDiskSasTokenArrayOutput
}

ManagedDiskSasTokenArrayInput is an input type that accepts ManagedDiskSasTokenArray and ManagedDiskSasTokenArrayOutput values. You can construct a concrete instance of `ManagedDiskSasTokenArrayInput` via:

ManagedDiskSasTokenArray{ ManagedDiskSasTokenArgs{...} }

type ManagedDiskSasTokenArrayOutput added in v5.6.0

type ManagedDiskSasTokenArrayOutput struct{ *pulumi.OutputState }

func (ManagedDiskSasTokenArrayOutput) ElementType added in v5.6.0

func (ManagedDiskSasTokenArrayOutput) Index added in v5.6.0

func (ManagedDiskSasTokenArrayOutput) ToManagedDiskSasTokenArrayOutput added in v5.6.0

func (o ManagedDiskSasTokenArrayOutput) ToManagedDiskSasTokenArrayOutput() ManagedDiskSasTokenArrayOutput

func (ManagedDiskSasTokenArrayOutput) ToManagedDiskSasTokenArrayOutputWithContext added in v5.6.0

func (o ManagedDiskSasTokenArrayOutput) ToManagedDiskSasTokenArrayOutputWithContext(ctx context.Context) ManagedDiskSasTokenArrayOutput

type ManagedDiskSasTokenInput added in v5.6.0

type ManagedDiskSasTokenInput interface {
	pulumi.Input

	ToManagedDiskSasTokenOutput() ManagedDiskSasTokenOutput
	ToManagedDiskSasTokenOutputWithContext(ctx context.Context) ManagedDiskSasTokenOutput
}

type ManagedDiskSasTokenMap added in v5.6.0

type ManagedDiskSasTokenMap map[string]ManagedDiskSasTokenInput

func (ManagedDiskSasTokenMap) ElementType added in v5.6.0

func (ManagedDiskSasTokenMap) ElementType() reflect.Type

func (ManagedDiskSasTokenMap) ToManagedDiskSasTokenMapOutput added in v5.6.0

func (i ManagedDiskSasTokenMap) ToManagedDiskSasTokenMapOutput() ManagedDiskSasTokenMapOutput

func (ManagedDiskSasTokenMap) ToManagedDiskSasTokenMapOutputWithContext added in v5.6.0

func (i ManagedDiskSasTokenMap) ToManagedDiskSasTokenMapOutputWithContext(ctx context.Context) ManagedDiskSasTokenMapOutput

type ManagedDiskSasTokenMapInput added in v5.6.0

type ManagedDiskSasTokenMapInput interface {
	pulumi.Input

	ToManagedDiskSasTokenMapOutput() ManagedDiskSasTokenMapOutput
	ToManagedDiskSasTokenMapOutputWithContext(context.Context) ManagedDiskSasTokenMapOutput
}

ManagedDiskSasTokenMapInput is an input type that accepts ManagedDiskSasTokenMap and ManagedDiskSasTokenMapOutput values. You can construct a concrete instance of `ManagedDiskSasTokenMapInput` via:

ManagedDiskSasTokenMap{ "key": ManagedDiskSasTokenArgs{...} }

type ManagedDiskSasTokenMapOutput added in v5.6.0

type ManagedDiskSasTokenMapOutput struct{ *pulumi.OutputState }

func (ManagedDiskSasTokenMapOutput) ElementType added in v5.6.0

func (ManagedDiskSasTokenMapOutput) MapIndex added in v5.6.0

func (ManagedDiskSasTokenMapOutput) ToManagedDiskSasTokenMapOutput added in v5.6.0

func (o ManagedDiskSasTokenMapOutput) ToManagedDiskSasTokenMapOutput() ManagedDiskSasTokenMapOutput

func (ManagedDiskSasTokenMapOutput) ToManagedDiskSasTokenMapOutputWithContext added in v5.6.0

func (o ManagedDiskSasTokenMapOutput) ToManagedDiskSasTokenMapOutputWithContext(ctx context.Context) ManagedDiskSasTokenMapOutput

type ManagedDiskSasTokenOutput added in v5.6.0

type ManagedDiskSasTokenOutput struct{ *pulumi.OutputState }

func (ManagedDiskSasTokenOutput) AccessLevel added in v5.6.0

The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.

Refer to the [SAS creation reference from Azure](https://docs.microsoft.com/rest/api/compute/disks/grant-access) for additional details on the fields above.

func (ManagedDiskSasTokenOutput) DurationInSeconds added in v5.6.0

func (o ManagedDiskSasTokenOutput) DurationInSeconds() pulumi.IntOutput

The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.

func (ManagedDiskSasTokenOutput) ElementType added in v5.6.0

func (ManagedDiskSasTokenOutput) ElementType() reflect.Type

func (ManagedDiskSasTokenOutput) ManagedDiskId added in v5.6.0

func (o ManagedDiskSasTokenOutput) ManagedDiskId() pulumi.StringOutput

The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.

func (ManagedDiskSasTokenOutput) SasUrl added in v5.6.0

The computed Shared Access Signature (SAS) of the Managed Disk.

func (ManagedDiskSasTokenOutput) ToManagedDiskSasTokenOutput added in v5.6.0

func (o ManagedDiskSasTokenOutput) ToManagedDiskSasTokenOutput() ManagedDiskSasTokenOutput

func (ManagedDiskSasTokenOutput) ToManagedDiskSasTokenOutputWithContext added in v5.6.0

func (o ManagedDiskSasTokenOutput) ToManagedDiskSasTokenOutputWithContext(ctx context.Context) ManagedDiskSasTokenOutput

type ManagedDiskSasTokenState added in v5.6.0

type ManagedDiskSasTokenState struct {
	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	//
	// Refer to the [SAS creation reference from Azure](https://docs.microsoft.com/rest/api/compute/disks/grant-access)
	// for additional details on the fields above.
	AccessLevel pulumi.StringPtrInput
	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	DurationInSeconds pulumi.IntPtrInput
	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringPtrInput
	// The computed Shared Access Signature (SAS) of the Managed Disk.
	SasUrl pulumi.StringPtrInput
}

func (ManagedDiskSasTokenState) ElementType added in v5.6.0

func (ManagedDiskSasTokenState) ElementType() reflect.Type

type ManagedDiskState

type ManagedDiskState struct {
	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
	CreateOption pulumi.StringPtrInput
	// The ID of the disk access resource for using private endpoints on disks.
	//
	// > **Note:** `diskAccessId` is only supported when `networkAccessPolicy` is set to `AllowPrivate`.
	DiskAccessId pulumi.StringPtrInput
	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput
	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadOnly pulumi.IntPtrInput
	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite pulumi.IntPtrInput
	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	DiskMbpsReadOnly pulumi.IntPtrInput
	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	DiskMbpsReadWrite pulumi.IntPtrInput
	DiskSizeGb        pulumi.IntPtrInput
	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	EdgeZone pulumi.StringPtrInput
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings ManagedDiskEncryptionSettingsPtrInput
	// ID of a Gallery Image Version to copy when `createOption` is `FromImage`. This field cannot be specified if imageReferenceId is specified. Changing this forces a new resource to be created.
	GalleryImageReferenceId pulumi.StringPtrInput
	// The HyperV Generation of the Disk when the source of an `Import` or `Copy` operation targets a source that contains an operating system. Possible values are `V1` and `V2`. For `ImportSecure` it must be set to `V2`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrInput
	// ID of an existing platform/marketplace disk image to copy when `createOption` is `FromImage`. This field cannot be specified if galleryImageReferenceId is specified. Changing this forces a new resource to be created.
	ImageReferenceId pulumi.StringPtrInput
	// Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Logical Sector Size. Possible values are: `512` and `4096`. Defaults to `4096`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Setting logical sector size is supported only with `UltraSSD_LRS` disks and `PremiumV2_LRS` disks.
	LogicalSectorSize pulumi.IntPtrInput
	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	//
	// > **Note:** Premium SSD maxShares limit: `P15` and `P20` disks: 2. `P30`,`P40`,`P50` disks: 5. `P60`,`P70`,`P80` disks: 10. For ultra disks the `maxShares` minimum value is 1 and the maximum is 5.
	MaxShares pulumi.IntPtrInput
	// Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Policy for accessing the disk via network. Allowed values are `AllowAll`, `AllowPrivate`, and `DenyAll`.
	NetworkAccessPolicy pulumi.StringPtrInput
	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	//
	// > **Note:** Credit-Based Bursting is enabled by default on all eligible disks. More information on [Credit-Based and On-Demand Bursting can be found in the documentation](https://docs.microsoft.com/azure/virtual-machines/disk-bursting#disk-level-bursting).
	OnDemandBurstingEnabled pulumi.BoolPtrInput
	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to `false`.
	//
	// > **Note:** Setting `optimizedFrequentAttachEnabled` to `true` causes the disks to not align with the fault domain of the Virtual Machine, which can have operational implications.
	OptimizedFrequentAttachEnabled pulumi.BoolPtrInput
	// Specify a value when the source of an `Import`, `ImportSecure` or `Copy` operation targets a source that contains an operating system. Valid values are `Linux` or `Windows`.
	OsType pulumi.StringPtrInput
	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **Note:** `performancePlusEnabled` can only be set to `true` when using a Managed Disk with an Ultra SSD.
	PerformancePlusEnabled pulumi.BoolPtrInput
	// Whether it is allowed to access the disk via public network. Defaults to `true`.
	//
	// For more information on managed disks, such as sizing options and pricing, please check out the [Azure Documentation](https://docs.microsoft.com/azure/storage/storage-managed-disks-overview).
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput
	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are `ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey`, `ConfidentialVM_DiskEncryptedWithPlatformKey` and `ConfidentialVM_DiskEncryptedWithCustomerKey`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey` the value of `createOption` must be one of `FromImage` or `ImportSecure`.
	//
	// > **NOTE:** `securityType` cannot be specified when `trustedLaunchEnabled` is set to true.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` must be specified when `securityType` is set to `ConfidentialVM_DiskEncryptedWithCustomerKey`.
	SecurityType pulumi.StringPtrInput
	// The ID of an existing Managed Disk or Snapshot to copy when `createOption` is `Copy` or the recovery point to restore when `createOption` is `Restore`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrInput
	// URI to a valid VHD file to be used when `createOption` is `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	SourceUri pulumi.StringPtrInput
	// The ID of the Storage Account where the `sourceUri` is located. Required when `createOption` is set to `Import` or `ImportSecure`. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrInput
	// The type of storage to use for the managed disk. Possible values are `Standard_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS`, `StandardSSD_LRS` or `UltraSSD_LRS`.
	//
	// > **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).
	StorageAccountType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Tier pulumi.StringPtrInput
	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	//
	// > **Note:** Trusted Launch can only be enabled when `createOption` is `FromImage` or `Import`.
	TrustedLaunchEnabled pulumi.BoolPtrInput
	// Specifies the size of the managed disk to create in bytes. Required when `createOption` is `Upload`. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with `ls -l` or `wc -c`. More information can be found at [Copy a managed disk](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/disks-upload-vhd-to-managed-disk-cli#copy-a-managed-disk). Changing this forces a new resource to be created.
	UploadSizeBytes pulumi.IntPtrInput
	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	//
	// > **Note:** Availability Zones are [only supported in select regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zone pulumi.StringPtrInput
}

func (ManagedDiskState) ElementType

func (ManagedDiskState) ElementType() reflect.Type

type OrchestratedVirtualMachineScaleSet

type OrchestratedVirtualMachineScaleSet struct {
	pulumi.CustomResourceState

	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// An `automaticInstanceRepair` block as defined below.
	//
	// > **NOTE:** To enable the `automaticInstanceRepair`, the Virtual Machine Scale Set must have an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	AutomaticInstanceRepair OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput `pulumi:"automaticInstanceRepair"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be specified with `proximityPlacementGroupId`
	//
	// > **NOTE:** If `capacityReservationGroupId` is specified the `singlePlacementGroup` must be set to `false`.
	CapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"capacityReservationGroupId"`
	// One or more `dataDisk` blocks as defined below.
	DataDisks OrchestratedVirtualMachineScaleSetDataDiskArrayOutput `pulumi:"dataDisks"`
	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrOutput `pulumi:"encryptionAtHostEnabled"`
	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolOutput `pulumi:"extensionOperationsEnabled"`
	// One or more `extension` blocks as defined below
	Extensions OrchestratedVirtualMachineScaleSetExtensionArrayOutput `pulumi:"extensions"`
	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrOutput `pulumi:"extensionsTimeBudget"`
	// An `identity` block as defined below.
	Identity OrchestratedVirtualMachineScaleSetIdentityPtrOutput `pulumi:"identity"`
	// The number of Virtual Machines in the Virtual Machine Scale Set.
	Instances pulumi.IntOutput `pulumi:"instances"`
	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice pulumi.Float64PtrOutput `pulumi:"maxBidPrice"`
	// The name of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// An `osDisk` block as defined below.
	OsDisk OrchestratedVirtualMachineScaleSetOsDiskPtrOutput `pulumi:"osDisk"`
	// An `osProfile` block as defined below.
	OsProfile OrchestratedVirtualMachineScaleSetOsProfilePtrOutput `pulumi:"osProfile"`
	// A `plan` block as documented below. Changing this forces a new resource to be created.
	Plan OrchestratedVirtualMachineScaleSetPlanPtrOutput `pulumi:"plan"`
	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntOutput `pulumi:"platformFaultDomainCount"`
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// a `priorityMix` block as defined below
	PriorityMix OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput `pulumi:"priorityMix"`
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The name of the Resource Group in which the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are `true` or `false`.
	//
	// > **NOTE:** `singlePlacementGroup` behaves differently for Flexible orchestration Virtual Machine Scale Sets than it does for Uniform orchestration Virtual Machine Scale Sets. It is recommended that you do not define the `singlePlacementGroup` field in your configuration file as the service will determine what this value should be based off of the value contained within the `skuName` field of your configuration file. You may set the `singlePlacementGroup` field to `true`, however once you set it to `false` you will not be able to revert it back to `true`.
	SinglePlacementGroup pulumi.BoolOutput `pulumi:"singlePlacementGroup"`
	// The `name` of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the [General purpose](https://docs.microsoft.com/azure/virtual-machines/sizes-general), [Compute optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-compute), [Memory optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-memory), [Storage optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-storage), [GPU optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-gpu), [FPGA optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-field-programmable-gate-arrays), [High performance](https://docs.microsoft.com/azure/virtual-machines/sizes-hpc), or [Previous generation](https://docs.microsoft.com/azure/virtual-machines/sizes-previous-gen) virtual machine SKUs.
	SkuName pulumi.StringPtrOutput `pulumi:"skuName"`
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// A `sourceImageReference` block as defined below.
	SourceImageReference OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput `pulumi:"sourceImageReference"`
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A `terminationNotification` block as defined below.
	TerminationNotification OrchestratedVirtualMachineScaleSetTerminationNotificationOutput `pulumi:"terminationNotification"`
	// The Unique ID for the Virtual Machine Scale Set.
	UniqueId pulumi.StringOutput `pulumi:"uniqueId"`
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserDataBase64 pulumi.StringPtrOutput `pulumi:"userDataBase64"`
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrOutput `pulumi:"zoneBalance"`
	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages an Virtual Machine Scale Set in Flexible Orchestration Mode.

## Disclaimers

> **NOTE:** As of the **v2.86.0** (November 19, 2021) release of the provider this resource will only create Virtual Machine Scale Sets with the **Flexible** Orchestration Mode.

> **NOTE:** All arguments including the administrator login and password will be stored in the raw state as plain-text. [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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 = compute.NewOrchestratedVirtualMachineScaleSet(ctx, "example", &compute.OrchestratedVirtualMachineScaleSetArgs{
			Name:                     pulumi.String("example-VMSS"),
			Location:                 example.Location,
			ResourceGroupName:        example.Name,
			PlatformFaultDomainCount: pulumi.Int(1),
			Zones: pulumi.StringArray{
				pulumi.String("1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An Virtual Machine Scale Set can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/orchestratedVirtualMachineScaleSet:OrchestratedVirtualMachineScaleSet example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1 ```

func GetOrchestratedVirtualMachineScaleSet

func GetOrchestratedVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrchestratedVirtualMachineScaleSetState, opts ...pulumi.ResourceOption) (*OrchestratedVirtualMachineScaleSet, error)

GetOrchestratedVirtualMachineScaleSet gets an existing OrchestratedVirtualMachineScaleSet 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 NewOrchestratedVirtualMachineScaleSet

func NewOrchestratedVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, args *OrchestratedVirtualMachineScaleSetArgs, opts ...pulumi.ResourceOption) (*OrchestratedVirtualMachineScaleSet, error)

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

func (*OrchestratedVirtualMachineScaleSet) ElementType

func (*OrchestratedVirtualMachineScaleSet) ToOrchestratedVirtualMachineScaleSetOutput

func (i *OrchestratedVirtualMachineScaleSet) ToOrchestratedVirtualMachineScaleSetOutput() OrchestratedVirtualMachineScaleSetOutput

func (*OrchestratedVirtualMachineScaleSet) ToOrchestratedVirtualMachineScaleSetOutputWithContext

func (i *OrchestratedVirtualMachineScaleSet) ToOrchestratedVirtualMachineScaleSetOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOutput

type OrchestratedVirtualMachineScaleSetAdditionalCapabilities added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilities struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `pulumi:"ultraSsdEnabled"`
}

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled pulumi.BoolPtrInput `pulumi:"ultraSsdEnabled"`
}

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ElementType added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext added in v5.18.0

func (i OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext added in v5.18.0

func (i OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInput added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput() OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput
	ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput
}

OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInput is an input type that accepts OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs and OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInput` via:

OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ElementType added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext added in v5.18.0

func (o OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext added in v5.18.0

func (o OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesOutput) UltraSsdEnabled added in v5.18.0

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Defaults to `false`. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput() OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
	ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
}

OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs, OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtr and OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput` via:

        OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput added in v5.18.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) Elem added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ElementType added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput added in v5.18.0

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext added in v5.18.0

func (o OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToOrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) UltraSsdEnabled added in v5.18.0

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Defaults to `false`. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetArgs

type OrchestratedVirtualMachineScaleSetArgs struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// An `automaticInstanceRepair` block as defined below.
	//
	// > **NOTE:** To enable the `automaticInstanceRepair`, the Virtual Machine Scale Set must have an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	AutomaticInstanceRepair OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be specified with `proximityPlacementGroupId`
	//
	// > **NOTE:** If `capacityReservationGroupId` is specified the `singlePlacementGroup` must be set to `false`.
	CapacityReservationGroupId pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks OrchestratedVirtualMachineScaleSetDataDiskArrayInput
	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions OrchestratedVirtualMachineScaleSetExtensionArrayInput
	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity OrchestratedVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Virtual Machine Scale Set.
	Instances pulumi.IntPtrInput
	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk OrchestratedVirtualMachineScaleSetOsDiskPtrInput
	// An `osProfile` block as defined below.
	OsProfile OrchestratedVirtualMachineScaleSetOsProfilePtrInput
	// A `plan` block as documented below. Changing this forces a new resource to be created.
	Plan OrchestratedVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	Priority pulumi.StringPtrInput
	// a `priorityMix` block as defined below
	PriorityMix OrchestratedVirtualMachineScaleSetPriorityMixPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are `true` or `false`.
	//
	// > **NOTE:** `singlePlacementGroup` behaves differently for Flexible orchestration Virtual Machine Scale Sets than it does for Uniform orchestration Virtual Machine Scale Sets. It is recommended that you do not define the `singlePlacementGroup` field in your configuration file as the service will determine what this value should be based off of the value contained within the `skuName` field of your configuration file. You may set the `singlePlacementGroup` field to `true`, however once you set it to `false` you will not be able to revert it back to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The `name` of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the [General purpose](https://docs.microsoft.com/azure/virtual-machines/sizes-general), [Compute optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-compute), [Memory optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-memory), [Storage optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-storage), [GPU optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-gpu), [FPGA optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-field-programmable-gate-arrays), [High performance](https://docs.microsoft.com/azure/virtual-machines/sizes-hpc), or [Previous generation](https://docs.microsoft.com/azure/virtual-machines/sizes-previous-gen) virtual machine SKUs.
	SkuName pulumi.StringPtrInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	SourceImageReference OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserDataBase64 pulumi.StringPtrInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a OrchestratedVirtualMachineScaleSet resource.

func (OrchestratedVirtualMachineScaleSetArgs) ElementType

type OrchestratedVirtualMachineScaleSetArray

type OrchestratedVirtualMachineScaleSetArray []OrchestratedVirtualMachineScaleSetInput

func (OrchestratedVirtualMachineScaleSetArray) ElementType

func (OrchestratedVirtualMachineScaleSetArray) ToOrchestratedVirtualMachineScaleSetArrayOutput

func (i OrchestratedVirtualMachineScaleSetArray) ToOrchestratedVirtualMachineScaleSetArrayOutput() OrchestratedVirtualMachineScaleSetArrayOutput

func (OrchestratedVirtualMachineScaleSetArray) ToOrchestratedVirtualMachineScaleSetArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetArray) ToOrchestratedVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetArrayOutput

type OrchestratedVirtualMachineScaleSetArrayInput

type OrchestratedVirtualMachineScaleSetArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetArrayOutput() OrchestratedVirtualMachineScaleSetArrayOutput
	ToOrchestratedVirtualMachineScaleSetArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetArrayOutput
}

OrchestratedVirtualMachineScaleSetArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetArray and OrchestratedVirtualMachineScaleSetArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetArrayInput` via:

OrchestratedVirtualMachineScaleSetArray{ OrchestratedVirtualMachineScaleSetArgs{...} }

type OrchestratedVirtualMachineScaleSetArrayOutput

type OrchestratedVirtualMachineScaleSetArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetArrayOutput) Index

func (OrchestratedVirtualMachineScaleSetArrayOutput) ToOrchestratedVirtualMachineScaleSetArrayOutput

func (o OrchestratedVirtualMachineScaleSetArrayOutput) ToOrchestratedVirtualMachineScaleSetArrayOutput() OrchestratedVirtualMachineScaleSetArrayOutput

func (OrchestratedVirtualMachineScaleSetArrayOutput) ToOrchestratedVirtualMachineScaleSetArrayOutputWithContext

func (o OrchestratedVirtualMachineScaleSetArrayOutput) ToOrchestratedVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetArrayOutput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepair

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepair struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are `true` and `false`.
	Enabled bool `pulumi:"enabled"`
	// Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between `30` and `90` minutes. The time duration should be specified in `ISO 8601` format (e.g. `PT30M` to `PT90M`). Defaults to `PT30M`.
	GracePeriod *string `pulumi:"gracePeriod"`
}

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are `true` and `false`.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between `30` and `90` minutes. The time duration should be specified in `ISO 8601` format (e.g. `PT30M` to `PT90M`). Defaults to `PT30M`.
	GracePeriod pulumi.StringPtrInput `pulumi:"gracePeriod"`
}

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ElementType

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (i OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput() OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput
	ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput
}

OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInput is an input type that accepts OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs and OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInput` via:

OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ElementType

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are `true` and `false`.

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) GracePeriod

Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between `30` and `90` minutes. The time duration should be specified in `ISO 8601` format (e.g. `PT30M` to `PT90M`). Defaults to `PT30M`.

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (o OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput() OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
	ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
}

OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs, OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtr and OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput` via:

        OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are `true` and `false`.

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) GracePeriod

Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between `30` and `90` minutes. The time duration should be specified in `ISO 8601` format (e.g. `PT30M` to `PT90M`). Defaults to `PT30M`.

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToOrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type OrchestratedVirtualMachineScaleSetBootDiagnostics

type OrchestratedVirtualMachineScaleSetBootDiagnostics struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a `bootDiagnostics` block without passing the `storageAccountUri` field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.
	StorageAccountUri *string `pulumi:"storageAccountUri"`
}

type OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs

type OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a `bootDiagnostics` block without passing the `storageAccountUri` field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.
	StorageAccountUri pulumi.StringPtrInput `pulumi:"storageAccountUri"`
}

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ElementType

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

func (i OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutput() OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (i OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (i OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput() OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsInput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutput() OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput
	ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput
}

OrchestratedVirtualMachineScaleSetBootDiagnosticsInput is an input type that accepts OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs and OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetBootDiagnosticsInput` via:

OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs{...}

type OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ElementType

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a `bootDiagnostics` block without passing the `storageAccountUri` field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (o OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetBootDiagnosticsOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput() OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput
	ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput
}

OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs, OrchestratedVirtualMachineScaleSetBootDiagnosticsPtr and OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput` via:

        OrchestratedVirtualMachineScaleSetBootDiagnosticsArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

type OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a `bootDiagnostics` block without passing the `storageAccountUri` field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToOrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrOutput

type OrchestratedVirtualMachineScaleSetDataDisk

type OrchestratedVirtualMachineScaleSetDataDisk struct {
	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching string `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to `Empty`. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created. Required if `createOption` is specified as `Empty`.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if `createOption` is specified as `Empty`.
	Lun *int `pulumi:"lun"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite *int `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite *int `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Specifies if Write Accelerator is enabled on the Data Disk. Defaults to `false`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type OrchestratedVirtualMachineScaleSetDataDiskArgs

type OrchestratedVirtualMachineScaleSetDataDiskArgs struct {
	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching pulumi.StringInput `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to `Empty`. (FromImage should only be used if the source image includes data disks).
	CreateOption pulumi.StringPtrInput `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created. Required if `createOption` is specified as `Empty`.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if `createOption` is specified as `Empty`.
	Lun pulumi.IntPtrInput `pulumi:"lun"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Specifies if Write Accelerator is enabled on the Data Disk. Defaults to `false`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (OrchestratedVirtualMachineScaleSetDataDiskArgs) ElementType

func (OrchestratedVirtualMachineScaleSetDataDiskArgs) ToOrchestratedVirtualMachineScaleSetDataDiskOutput

func (i OrchestratedVirtualMachineScaleSetDataDiskArgs) ToOrchestratedVirtualMachineScaleSetDataDiskOutput() OrchestratedVirtualMachineScaleSetDataDiskOutput

func (OrchestratedVirtualMachineScaleSetDataDiskArgs) ToOrchestratedVirtualMachineScaleSetDataDiskOutputWithContext

func (i OrchestratedVirtualMachineScaleSetDataDiskArgs) ToOrchestratedVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetDataDiskOutput

type OrchestratedVirtualMachineScaleSetDataDiskArray

type OrchestratedVirtualMachineScaleSetDataDiskArray []OrchestratedVirtualMachineScaleSetDataDiskInput

func (OrchestratedVirtualMachineScaleSetDataDiskArray) ElementType

func (OrchestratedVirtualMachineScaleSetDataDiskArray) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutput

func (i OrchestratedVirtualMachineScaleSetDataDiskArray) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutput() OrchestratedVirtualMachineScaleSetDataDiskArrayOutput

func (OrchestratedVirtualMachineScaleSetDataDiskArray) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetDataDiskArray) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetDataDiskArrayOutput

type OrchestratedVirtualMachineScaleSetDataDiskArrayInput

type OrchestratedVirtualMachineScaleSetDataDiskArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutput() OrchestratedVirtualMachineScaleSetDataDiskArrayOutput
	ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetDataDiskArrayOutput
}

OrchestratedVirtualMachineScaleSetDataDiskArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetDataDiskArray and OrchestratedVirtualMachineScaleSetDataDiskArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetDataDiskArrayInput` via:

OrchestratedVirtualMachineScaleSetDataDiskArray{ OrchestratedVirtualMachineScaleSetDataDiskArgs{...} }

type OrchestratedVirtualMachineScaleSetDataDiskArrayOutput

type OrchestratedVirtualMachineScaleSetDataDiskArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetDataDiskArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetDataDiskArrayOutput) Index

func (OrchestratedVirtualMachineScaleSetDataDiskArrayOutput) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutput

func (OrchestratedVirtualMachineScaleSetDataDiskArrayOutput) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (o OrchestratedVirtualMachineScaleSetDataDiskArrayOutput) ToOrchestratedVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetDataDiskArrayOutput

type OrchestratedVirtualMachineScaleSetDataDiskInput

type OrchestratedVirtualMachineScaleSetDataDiskInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetDataDiskOutput() OrchestratedVirtualMachineScaleSetDataDiskOutput
	ToOrchestratedVirtualMachineScaleSetDataDiskOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetDataDiskOutput
}

OrchestratedVirtualMachineScaleSetDataDiskInput is an input type that accepts OrchestratedVirtualMachineScaleSetDataDiskArgs and OrchestratedVirtualMachineScaleSetDataDiskOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetDataDiskInput` via:

OrchestratedVirtualMachineScaleSetDataDiskArgs{...}

type OrchestratedVirtualMachineScaleSetDataDiskOutput

type OrchestratedVirtualMachineScaleSetDataDiskOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) Caching

The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) CreateOption

The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to `Empty`. (FromImage should only be used if the source image includes data disks).

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) DiskSizeGb

The size of the Data Disk which should be created. Required if `createOption` is specified as `Empty`.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) ElementType

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) Lun

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if `createOption` is specified as `Empty`.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) StorageAccountType

The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) ToOrchestratedVirtualMachineScaleSetDataDiskOutput

func (o OrchestratedVirtualMachineScaleSetDataDiskOutput) ToOrchestratedVirtualMachineScaleSetDataDiskOutput() OrchestratedVirtualMachineScaleSetDataDiskOutput

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) ToOrchestratedVirtualMachineScaleSetDataDiskOutputWithContext

func (o OrchestratedVirtualMachineScaleSetDataDiskOutput) ToOrchestratedVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetDataDiskOutput

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskIopsReadWrite

Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskMbpsReadWrite

Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (OrchestratedVirtualMachineScaleSetDataDiskOutput) WriteAcceleratorEnabled

Specifies if Write Accelerator is enabled on the Data Disk. Defaults to `false`.

type OrchestratedVirtualMachineScaleSetExtension

type OrchestratedVirtualMachineScaleSetExtension struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersionEnabled *bool `pulumi:"autoUpgradeMinorVersionEnabled"`
	// An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
	ExtensionsToProvisionAfterVmCreations []string `pulumi:"extensionsToProvisionAfterVmCreations"`
	// Should failures from the extension be suppressed? Possible values are `true` or `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled *bool `pulumi:"failureSuppressionEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceExtensionExecutionOnChange *string `pulumi:"forceExtensionExecutionOnChange"`
	// The name for the Virtual Machine Scale Set Extension.
	Name string `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. `TitleCase` vs `snakeCase`) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings *string `pulumi:"protectedSettings"`
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault *OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault `pulumi:"protectedSettingsFromKeyVault"`
	// Specifies the Publisher of the Extension.
	Publisher string `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	Settings *string `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type string `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion string `pulumi:"typeHandlerVersion"`
}

type OrchestratedVirtualMachineScaleSetExtensionArgs

type OrchestratedVirtualMachineScaleSetExtensionArgs struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersionEnabled pulumi.BoolPtrInput `pulumi:"autoUpgradeMinorVersionEnabled"`
	// An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
	ExtensionsToProvisionAfterVmCreations pulumi.StringArrayInput `pulumi:"extensionsToProvisionAfterVmCreations"`
	// Should failures from the extension be suppressed? Possible values are `true` or `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrInput `pulumi:"failureSuppressionEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceExtensionExecutionOnChange pulumi.StringPtrInput `pulumi:"forceExtensionExecutionOnChange"`
	// The name for the Virtual Machine Scale Set Extension.
	Name pulumi.StringInput `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. `TitleCase` vs `snakeCase`) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings pulumi.StringPtrInput `pulumi:"protectedSettings"`
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput `pulumi:"protectedSettingsFromKeyVault"`
	// Specifies the Publisher of the Extension.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	Settings pulumi.StringPtrInput `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type pulumi.StringInput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringInput `pulumi:"typeHandlerVersion"`
}

func (OrchestratedVirtualMachineScaleSetExtensionArgs) ElementType

func (OrchestratedVirtualMachineScaleSetExtensionArgs) ToOrchestratedVirtualMachineScaleSetExtensionOutput

func (i OrchestratedVirtualMachineScaleSetExtensionArgs) ToOrchestratedVirtualMachineScaleSetExtensionOutput() OrchestratedVirtualMachineScaleSetExtensionOutput

func (OrchestratedVirtualMachineScaleSetExtensionArgs) ToOrchestratedVirtualMachineScaleSetExtensionOutputWithContext

func (i OrchestratedVirtualMachineScaleSetExtensionArgs) ToOrchestratedVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetExtensionOutput

type OrchestratedVirtualMachineScaleSetExtensionArray

type OrchestratedVirtualMachineScaleSetExtensionArray []OrchestratedVirtualMachineScaleSetExtensionInput

func (OrchestratedVirtualMachineScaleSetExtensionArray) ElementType

func (OrchestratedVirtualMachineScaleSetExtensionArray) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutput

func (i OrchestratedVirtualMachineScaleSetExtensionArray) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutput() OrchestratedVirtualMachineScaleSetExtensionArrayOutput

func (OrchestratedVirtualMachineScaleSetExtensionArray) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetExtensionArray) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetExtensionArrayOutput

type OrchestratedVirtualMachineScaleSetExtensionArrayInput

type OrchestratedVirtualMachineScaleSetExtensionArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetExtensionArrayOutput() OrchestratedVirtualMachineScaleSetExtensionArrayOutput
	ToOrchestratedVirtualMachineScaleSetExtensionArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetExtensionArrayOutput
}

OrchestratedVirtualMachineScaleSetExtensionArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetExtensionArray and OrchestratedVirtualMachineScaleSetExtensionArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetExtensionArrayInput` via:

OrchestratedVirtualMachineScaleSetExtensionArray{ OrchestratedVirtualMachineScaleSetExtensionArgs{...} }

type OrchestratedVirtualMachineScaleSetExtensionArrayOutput

type OrchestratedVirtualMachineScaleSetExtensionArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetExtensionArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetExtensionArrayOutput) Index

func (OrchestratedVirtualMachineScaleSetExtensionArrayOutput) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutput

func (OrchestratedVirtualMachineScaleSetExtensionArrayOutput) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutputWithContext

func (o OrchestratedVirtualMachineScaleSetExtensionArrayOutput) ToOrchestratedVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetExtensionArrayOutput

type OrchestratedVirtualMachineScaleSetExtensionInput

type OrchestratedVirtualMachineScaleSetExtensionInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetExtensionOutput() OrchestratedVirtualMachineScaleSetExtensionOutput
	ToOrchestratedVirtualMachineScaleSetExtensionOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetExtensionOutput
}

OrchestratedVirtualMachineScaleSetExtensionInput is an input type that accepts OrchestratedVirtualMachineScaleSetExtensionArgs and OrchestratedVirtualMachineScaleSetExtensionOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetExtensionInput` via:

OrchestratedVirtualMachineScaleSetExtensionArgs{...}

type OrchestratedVirtualMachineScaleSetExtensionOutput

type OrchestratedVirtualMachineScaleSetExtensionOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersionEnabled

func (o OrchestratedVirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersionEnabled() pulumi.BoolPtrOutput

Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ElementType

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ExtensionsToProvisionAfterVmCreations

func (o OrchestratedVirtualMachineScaleSetExtensionOutput) ExtensionsToProvisionAfterVmCreations() pulumi.StringArrayOutput

An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) FailureSuppressionEnabled added in v5.18.0

Should failures from the extension be suppressed? Possible values are `true` or `false`.

> **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ForceExtensionExecutionOnChange

func (o OrchestratedVirtualMachineScaleSetExtensionOutput) ForceExtensionExecutionOnChange() pulumi.StringPtrOutput

A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) Name

The name for the Virtual Machine Scale Set Extension.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ProtectedSettings

A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.

> **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. `TitleCase` vs `snakeCase`) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ProtectedSettingsFromKeyVault added in v5.24.0

A `protectedSettingsFromKeyVault` block as defined below.

> **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`

func (OrchestratedVirtualMachineScaleSetExtensionOutput) Publisher

Specifies the Publisher of the Extension.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) Settings

A JSON String which specifies Settings for the Extension.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ToOrchestratedVirtualMachineScaleSetExtensionOutput

func (o OrchestratedVirtualMachineScaleSetExtensionOutput) ToOrchestratedVirtualMachineScaleSetExtensionOutput() OrchestratedVirtualMachineScaleSetExtensionOutput

func (OrchestratedVirtualMachineScaleSetExtensionOutput) ToOrchestratedVirtualMachineScaleSetExtensionOutputWithContext

func (o OrchestratedVirtualMachineScaleSetExtensionOutput) ToOrchestratedVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetExtensionOutput

func (OrchestratedVirtualMachineScaleSetExtensionOutput) Type

Specifies the Type of the Extension.

func (OrchestratedVirtualMachineScaleSetExtensionOutput) TypeHandlerVersion

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ElementType added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (i OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput() OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
	ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
}

OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput is an input type that accepts OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs and OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput` via:

OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ElementType added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput() OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
	ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
}

OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs, OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtr and OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput` via:

        OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

type OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) Elem added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ElementType added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToOrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

type OrchestratedVirtualMachineScaleSetIdentity

type OrchestratedVirtualMachineScaleSetIdentity struct {
	// Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	IdentityIds []string `pulumi:"identityIds"`
	// The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is `UserAssigned`.
	Type string `pulumi:"type"`
}

type OrchestratedVirtualMachineScaleSetIdentityArgs

type OrchestratedVirtualMachineScaleSetIdentityArgs struct {
	// Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is `UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (OrchestratedVirtualMachineScaleSetIdentityArgs) ElementType

func (OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityOutput

func (i OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityOutput() OrchestratedVirtualMachineScaleSetIdentityOutput

func (OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityOutputWithContext

func (i OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetIdentityOutput

func (OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (i OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput() OrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetIdentityArgs) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetIdentityPtrOutput

type OrchestratedVirtualMachineScaleSetIdentityInput

type OrchestratedVirtualMachineScaleSetIdentityInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetIdentityOutput() OrchestratedVirtualMachineScaleSetIdentityOutput
	ToOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetIdentityOutput
}

OrchestratedVirtualMachineScaleSetIdentityInput is an input type that accepts OrchestratedVirtualMachineScaleSetIdentityArgs and OrchestratedVirtualMachineScaleSetIdentityOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetIdentityInput` via:

OrchestratedVirtualMachineScaleSetIdentityArgs{...}

type OrchestratedVirtualMachineScaleSetIdentityOutput

type OrchestratedVirtualMachineScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetIdentityOutput) ElementType

func (OrchestratedVirtualMachineScaleSetIdentityOutput) IdentityIds

Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityOutput

func (o OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityOutput() OrchestratedVirtualMachineScaleSetIdentityOutput

func (OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityOutputWithContext

func (o OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetIdentityOutput

func (OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (o OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput() OrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetIdentityOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (OrchestratedVirtualMachineScaleSetIdentityOutput) Type

The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is `UserAssigned`.

type OrchestratedVirtualMachineScaleSetIdentityPtrInput

type OrchestratedVirtualMachineScaleSetIdentityPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput() OrchestratedVirtualMachineScaleSetIdentityPtrOutput
	ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetIdentityPtrOutput
}

OrchestratedVirtualMachineScaleSetIdentityPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetIdentityArgs, OrchestratedVirtualMachineScaleSetIdentityPtr and OrchestratedVirtualMachineScaleSetIdentityPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetIdentityPtrInput` via:

        OrchestratedVirtualMachineScaleSetIdentityArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetIdentityPtrOutput

type OrchestratedVirtualMachineScaleSetIdentityPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) IdentityIds

Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (o OrchestratedVirtualMachineScaleSetIdentityPtrOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutput() OrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetIdentityPtrOutput) ToOrchestratedVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetIdentityPtrOutput

func (OrchestratedVirtualMachineScaleSetIdentityPtrOutput) Type

The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is `UserAssigned`.

type OrchestratedVirtualMachineScaleSetInput

type OrchestratedVirtualMachineScaleSetInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOutput() OrchestratedVirtualMachineScaleSetOutput
	ToOrchestratedVirtualMachineScaleSetOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOutput
}

type OrchestratedVirtualMachineScaleSetMap

type OrchestratedVirtualMachineScaleSetMap map[string]OrchestratedVirtualMachineScaleSetInput

func (OrchestratedVirtualMachineScaleSetMap) ElementType

func (OrchestratedVirtualMachineScaleSetMap) ToOrchestratedVirtualMachineScaleSetMapOutput

func (i OrchestratedVirtualMachineScaleSetMap) ToOrchestratedVirtualMachineScaleSetMapOutput() OrchestratedVirtualMachineScaleSetMapOutput

func (OrchestratedVirtualMachineScaleSetMap) ToOrchestratedVirtualMachineScaleSetMapOutputWithContext

func (i OrchestratedVirtualMachineScaleSetMap) ToOrchestratedVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetMapOutput

type OrchestratedVirtualMachineScaleSetMapInput

type OrchestratedVirtualMachineScaleSetMapInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetMapOutput() OrchestratedVirtualMachineScaleSetMapOutput
	ToOrchestratedVirtualMachineScaleSetMapOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetMapOutput
}

OrchestratedVirtualMachineScaleSetMapInput is an input type that accepts OrchestratedVirtualMachineScaleSetMap and OrchestratedVirtualMachineScaleSetMapOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetMapInput` via:

OrchestratedVirtualMachineScaleSetMap{ "key": OrchestratedVirtualMachineScaleSetArgs{...} }

type OrchestratedVirtualMachineScaleSetMapOutput

type OrchestratedVirtualMachineScaleSetMapOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetMapOutput) ElementType

func (OrchestratedVirtualMachineScaleSetMapOutput) MapIndex

func (OrchestratedVirtualMachineScaleSetMapOutput) ToOrchestratedVirtualMachineScaleSetMapOutput

func (o OrchestratedVirtualMachineScaleSetMapOutput) ToOrchestratedVirtualMachineScaleSetMapOutput() OrchestratedVirtualMachineScaleSetMapOutput

func (OrchestratedVirtualMachineScaleSetMapOutput) ToOrchestratedVirtualMachineScaleSetMapOutputWithContext

func (o OrchestratedVirtualMachineScaleSetMapOutput) ToOrchestratedVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetMapOutput

type OrchestratedVirtualMachineScaleSetNetworkInterface

type OrchestratedVirtualMachineScaleSetNetworkInterface struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers []string `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Possible values are `true` and `false`. Defaults to `false`.
	EnableAcceleratedNetworking *bool `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Possible values are `true` and `false`. Defaults to `false`.
	EnableIpForwarding *bool `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId *string `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration? Possible values are `true` and `false`. Defaults to `false`.
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary *bool `pulumi:"primary"`
}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Possible values are `true` and `false`. Defaults to `false`.
	EnableAcceleratedNetworking pulumi.BoolPtrInput `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Possible values are `true` and `false`. Defaults to `false`.
	EnableIpForwarding pulumi.BoolPtrInput `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId pulumi.StringPtrInput `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration? Possible values are `true` and `false`. Defaults to `false`.
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
}

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (i OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArray

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArray []OrchestratedVirtualMachineScaleSetNetworkInterfaceInput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (i OrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetNetworkInterfaceArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceArray and OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceArray{ OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs{...} }

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) Index

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (o OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs and OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceArgs{...}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfiguration struct {
	// A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a dependsOn between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// The Name which should be used for this IP Configuration.
	Name string `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Possible values are `true` and `false`. Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary *bool `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > **NOTE:** `subnetId` is required if version is set to `IPv4`.
	SubnetId *string `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version *string `pulumi:"version"`
}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs struct {
	// A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a dependsOn between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// The Name which should be used for this IP Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Possible values are `true` and `false`. Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > **NOTE:** `subnetId` is required if version is set to `IPv4`.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (i OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{ OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...} }

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds

A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationSecurityGroupIds

A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerBackendAddressPoolIds

A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a dependsOn between this resource and the Load Balancer Rule.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Name

The Name which should be used for this IP Configuration.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Primary

Is this the Primary IP Configuration for this Network Interface? Possible values are `true` and `false`. Defaults to `false`.

> **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) PublicIpAddresses

A `publicIpAddress` block as defined below.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) SubnetId

The ID of the Subnet which this IP Configuration should be connected to.

> **NOTE:** `subnetId` is required if version is set to `IPv4`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (o OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Version

The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between `1` and `26` characters long, start with a lower case letter, end with a lower case letter or number and contains only `a-z`, `0-9` and `hyphens`.
	DomainNameLabel *string `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name string `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIpPrefixId *string `pulumi:"publicIpPrefixId"`
	// Specifies what Public IP Address SKU the Public IP Address should be provisioned as. Possible vaules include `Basic_Regional`, `Basic_Global`, `Standard_Regional` or `Standard_Global`. For more information about Public IP Address SKU's and their capabilities, please see the [product documentation](https://docs.microsoft.com/azure/virtual-network/ip-services/public-ip-addresses#sku). Changing this forces a new resource to be created.
	SkuName *string `pulumi:"skuName"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version *string `pulumi:"version"`
}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between `1` and `26` characters long, start with a lower case letter, end with a lower case letter or number and contains only `a-z`, `0-9` and `hyphens`.
	DomainNameLabel pulumi.StringPtrInput `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIpPrefixId pulumi.StringPtrInput `pulumi:"publicIpPrefixId"`
	// Specifies what Public IP Address SKU the Public IP Address should be provisioned as. Possible vaules include `Basic_Regional`, `Basic_Global`, `Standard_Regional` or `Standard_Global`. For more information about Public IP Address SKU's and their capabilities, please see the [product documentation](https://docs.microsoft.com/azure/virtual-network/ip-services/public-ip-addresses#sku). Changing this forces a new resource to be created.
	SkuName pulumi.StringPtrInput `pulumi:"skuName"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray{ OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...} }

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag string `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type string `pulumi:"type"`
}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag pulumi.StringInput `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type pulumi.StringInput `pulumi:"type"`
}

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray []OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray{ OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...} }

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput() OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
	ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
}

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput is an input type that accepts OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs and OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput` via:

OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...}

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Tag

The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Type

The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) DomainNameLabel

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between `1` and `26` characters long, start with a lower case letter, end with a lower case letter or number and contains only `a-z`, `0-9` and `hyphens`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IdleTimeoutInMinutes

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IpTags

One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Name

The Name of the Public IP Address Configuration.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) PublicIpPrefixId

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) SkuName added in v5.18.0

Specifies what Public IP Address SKU the Public IP Address should be provisioned as. Possible vaules include `Basic_Regional`, `Basic_Global`, `Standard_Regional` or `Standard_Global`. For more information about Public IP Address SKU's and their capabilities, please see the [product documentation](https://docs.microsoft.com/azure/virtual-network/ip-services/public-ip-addresses#sku). Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Version added in v5.18.0

The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

type OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) DnsServers

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ElementType

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) EnableAcceleratedNetworking

Does this Network Interface support Accelerated Networking? Possible values are `true` and `false`. Defaults to `false`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) EnableIpForwarding

Does this Network Interface support IP Forwarding? Possible values are `true` and `false`. Defaults to `false`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) IpConfigurations

One or more `ipConfiguration` blocks as defined above.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) Name

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) NetworkSecurityGroupId

The ID of a Network Security Group which should be assigned to this Network Interface.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) Primary

Is this the Primary IP Configuration? Possible values are `true` and `false`. Defaults to `false`.

> **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

func (OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (o OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput) ToOrchestratedVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetNetworkInterfaceOutput

type OrchestratedVirtualMachineScaleSetOsDisk

type OrchestratedVirtualMachineScaleSetOsDisk struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettings `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Specifies if Write Accelerator is enabled on the OS Disk. Defaults to `false`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type OrchestratedVirtualMachineScaleSetOsDiskArgs

type OrchestratedVirtualMachineScaleSetOsDiskArgs struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Specifies if Write Accelerator is enabled on the OS Disk. Defaults to `false`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (OrchestratedVirtualMachineScaleSetOsDiskArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskOutput

func (i OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskOutput() OrchestratedVirtualMachineScaleSetOsDiskOutput

func (OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskOutput

func (OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (i OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput() OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsDiskArgs) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettings

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettings struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option string `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement *string `pulumi:"placement"`
}

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option pulumi.StringInput `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement pulumi.StringPtrInput `pulumi:"placement"`
}

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput() OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
	ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
}

OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs and OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInput` via:

OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput() OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
	ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
}

OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs, OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtr and OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput` via:

        OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskInput

type OrchestratedVirtualMachineScaleSetOsDiskInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsDiskOutput() OrchestratedVirtualMachineScaleSetOsDiskOutput
	ToOrchestratedVirtualMachineScaleSetOsDiskOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsDiskOutput
}

OrchestratedVirtualMachineScaleSetOsDiskInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsDiskArgs and OrchestratedVirtualMachineScaleSetOsDiskOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsDiskInput` via:

OrchestratedVirtualMachineScaleSetOsDiskArgs{...}

type OrchestratedVirtualMachineScaleSetOsDiskOutput

type OrchestratedVirtualMachineScaleSetOsDiskOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskOutput

func (o OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskOutput() OrchestratedVirtualMachineScaleSetOsDiskOutput

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskOutput

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (o OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput() OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskOutput) WriteAcceleratorEnabled

Specifies if Write Accelerator is enabled on the OS Disk. Defaults to `false`.

type OrchestratedVirtualMachineScaleSetOsDiskPtrInput

type OrchestratedVirtualMachineScaleSetOsDiskPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput() OrchestratedVirtualMachineScaleSetOsDiskPtrOutput
	ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsDiskPtrOutput
}

OrchestratedVirtualMachineScaleSetOsDiskPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsDiskArgs, OrchestratedVirtualMachineScaleSetOsDiskPtr and OrchestratedVirtualMachineScaleSetOsDiskPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsDiskPtrInput` via:

        OrchestratedVirtualMachineScaleSetOsDiskArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

type OrchestratedVirtualMachineScaleSetOsDiskPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (o OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutput() OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) ToOrchestratedVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsDiskPtrOutput

func (OrchestratedVirtualMachineScaleSetOsDiskPtrOutput) WriteAcceleratorEnabled

Specifies if Write Accelerator is enabled on the OS Disk. Defaults to `false`.

type OrchestratedVirtualMachineScaleSetOsProfile

type OrchestratedVirtualMachineScaleSetOsProfile struct {
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData *string `pulumi:"customData"`
	// A `linuxConfiguration` block as documented below.
	LinuxConfiguration *OrchestratedVirtualMachineScaleSetOsProfileLinuxConfiguration `pulumi:"linuxConfiguration"`
	// A `windowsConfiguration` block as documented below.
	WindowsConfiguration *OrchestratedVirtualMachineScaleSetOsProfileWindowsConfiguration `pulumi:"windowsConfiguration"`
}

type OrchestratedVirtualMachineScaleSetOsProfileArgs

type OrchestratedVirtualMachineScaleSetOsProfileArgs struct {
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrInput `pulumi:"customData"`
	// A `linuxConfiguration` block as documented below.
	LinuxConfiguration OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrInput `pulumi:"linuxConfiguration"`
	// A `windowsConfiguration` block as documented below.
	WindowsConfiguration OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrInput `pulumi:"windowsConfiguration"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfileOutput

func (i OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfileOutput() OrchestratedVirtualMachineScaleSetOsProfileOutput

func (OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfileOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfileOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileOutput

func (OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (i OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput() OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileArgs) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileInput

type OrchestratedVirtualMachineScaleSetOsProfileInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileOutput() OrchestratedVirtualMachineScaleSetOsProfileOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileOutput
}

OrchestratedVirtualMachineScaleSetOsProfileInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileArgs and OrchestratedVirtualMachineScaleSetOsProfileOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileInput` via:

OrchestratedVirtualMachineScaleSetOsProfileArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfiguration

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfiguration struct {
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword *string `pulumi:"adminPassword"`
	// A `adminSshKey` block as documented below.
	AdminSshKeys []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKey `pulumi:"adminSshKeys"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername string `pulumi:"adminUsername"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `pulumi:"computerNamePrefix"`
	// When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`. Defaults to `true`.
	//
	// > **NOTE:** Either `adminPassword` or `adminSshKey` must be specified.
	DisablePasswordAuthentication *bool `pulumi:"disablePasswordAuthentication"`
	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode *string `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `ImageDefault` or `AutomaticByPlatform`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.  An example of how to correctly configure a Virtual Machine Scale Set to provision a Linux Virtual Machine with Automatic VM Guest Patching enabled can be found in the `./examples/orchestrated-vm-scale-set/automatic-vm-guest-patching` directory within the GitHub Repository.
	PatchMode *string `pulumi:"patchMode"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent *bool `pulumi:"provisionVmAgent"`
	// One or more `secret` blocks as defined below.
	Secrets []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecret `pulumi:"secrets"`
}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKey

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKey struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey string `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.
	Username string `pulumi:"username"`
}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs struct {
	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey pulumi.StringInput `pulumi:"publicKey"`
	// The Username for which this Public SSH Key should be configured.
	//
	// > **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.
	Username pulumi.StringInput `pulumi:"username"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyInput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArray{ OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput) PublicKey

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutputWithContext

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyOutput) Username

The Username for which this Public SSH Key should be configured.

> **NOTE:** The Azure VM Agent only allows creating SSH Keys at the path `/home/{username}/.ssh/authorized_keys` - as such this public key will be written to the authorized keys file.

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs struct {
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringPtrInput `pulumi:"adminPassword"`
	// A `adminSshKey` block as documented below.
	AdminSshKeys OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationAdminSshKeyArrayInput `pulumi:"adminSshKeys"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput `pulumi:"adminUsername"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput `pulumi:"computerNamePrefix"`
	// When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`. Defaults to `true`.
	//
	// > **NOTE:** Either `adminPassword` or `adminSshKey` must be specified.
	DisablePasswordAuthentication pulumi.BoolPtrInput `pulumi:"disablePasswordAuthentication"`
	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `ImageDefault` or `AutomaticByPlatform`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.  An example of how to correctly configure a Virtual Machine Scale Set to provision a Linux Virtual Machine with Automatic VM Guest Patching enabled can be found in the `./examples/orchestrated-vm-scale-set/automatic-vm-guest-patching` directory within the GitHub Repository.
	PatchMode pulumi.StringPtrInput `pulumi:"patchMode"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput `pulumi:"provisionVmAgent"`
	// One or more `secret` blocks as defined below.
	Secrets OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayInput `pulumi:"secrets"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) AdminPassword

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) AdminSshKeys

A `adminSshKey` block as documented below.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) AdminUsername

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ComputerNamePrefix

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) DisablePasswordAuthentication

When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`. Defaults to `true`.

> **NOTE:** Either `adminPassword` or `adminSshKey` must be specified.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) PatchAssessmentMode added in v5.18.0

Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) PatchMode

Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `ImageDefault` or `AutomaticByPlatform`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension. An example of how to correctly configure a Virtual Machine Scale Set to provision a Linux Virtual Machine with Automatic VM Guest Patching enabled can be found in the `./examples/orchestrated-vm-scale-set/automatic-vm-guest-patching` directory within the GitHub Repository.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ProvisionVmAgent

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) Secrets

One or more `secret` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs, OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtr and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrInput` via:

        OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) AdminPassword

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) AdminSshKeys

A `adminSshKey` block as documented below.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) AdminUsername

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ComputerNamePrefix

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) DisablePasswordAuthentication

When an `adminPassword` is specified `disablePasswordAuthentication` must be set to `false`. Defaults to `true`.

> **NOTE:** Either `adminPassword` or `adminSshKey` must be specified.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) PatchAssessmentMode added in v5.18.0

Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) PatchMode

Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `ImageDefault` or `AutomaticByPlatform`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension. An example of how to correctly configure a Virtual Machine Scale Set to provision a Linux Virtual Machine with Automatic VM Guest Patching enabled can be found in the `./examples/orchestrated-vm-scale-set/automatic-vm-guest-patching` directory within the GitHub Repository.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ProvisionVmAgent

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) Secrets

One or more `secret` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecret

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecret struct {
	// One or more `certificate` blocks as defined below.
	Certificates []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs struct {
	// One or more `certificate` blocks as defined below.
	Certificates OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretInput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArray{ OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificate

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificate struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url string `pulumi:"url"`
}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs struct {
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url pulumi.StringInput `pulumi:"url"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray []OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateInput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArray{ OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutputWithContext

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretInput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput() OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput
}

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs and OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretInput` via:

OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput

type OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput) Certificates

One or more `certificate` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput

func (OrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutput) ToOrchestratedVirtualMachineScaleSetOsProfileLinuxConfigurationSecretOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileOutput

type OrchestratedVirtualMachineScaleSetOsProfileOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) CustomData

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

> **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) LinuxConfiguration

A `linuxConfiguration` block as documented below.

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfileOutput

func (o OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfileOutput() OrchestratedVirtualMachineScaleSetOsProfileOutput

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfileOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfileOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileOutput

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (o OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput() OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileOutput) WindowsConfiguration

A `windowsConfiguration` block as documented below.

type OrchestratedVirtualMachineScaleSetOsProfilePtrInput

type OrchestratedVirtualMachineScaleSetOsProfilePtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput() OrchestratedVirtualMachineScaleSetOsProfilePtrOutput
	ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfilePtrOutput
}

OrchestratedVirtualMachineScaleSetOsProfilePtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileArgs, OrchestratedVirtualMachineScaleSetOsProfilePtr and OrchestratedVirtualMachineScaleSetOsProfilePtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfilePtrInput` via:

        OrchestratedVirtualMachineScaleSetOsProfileArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

type OrchestratedVirtualMachineScaleSetOsProfilePtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) CustomData

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

> **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) LinuxConfiguration

A `linuxConfiguration` block as documented below.

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfilePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfilePtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfilePtrOutput) WindowsConfiguration

A `windowsConfiguration` block as documented below.

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfiguration

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfiguration struct {
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContent `pulumi:"additionalUnattendContents"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword string `pulumi:"adminPassword"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername string `pulumi:"adminUsername"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `pulumi:"computerNamePrefix"`
	// Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
	EnableAutomaticUpdates *bool `pulumi:"enableAutomaticUpdates"`
	// Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
	//
	// > **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, the VM's `skuName` is set to a Azure generation 2 directory within the GitHub Repository.
	HotpatchingEnabled *bool `pulumi:"hotpatchingEnabled"`
	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode *string `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.
	PatchMode *string `pulumi:"patchMode"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent *bool `pulumi:"provisionVmAgent"`
	// One or more `secret` blocks as defined below.
	Secrets []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecret `pulumi:"secrets"`
	// Specifies the time zone of the virtual machine, the possible values are defined [here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
	Timezone *string `pulumi:"timezone"`
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListener `pulumi:"winrmListeners"`
}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContent added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContent struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content string `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting string `pulumi:"setting"`
}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content pulumi.StringInput `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting pulumi.StringInput `pulumi:"setting"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs) ElementType added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutputWithContext added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentInput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray) ElementType added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutputWithContext added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayInput added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArray{ OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput) ElementType added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput) Index added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayOutputWithContext added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentInput added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput) Content added in v5.67.0

The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput) ElementType added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput) Setting added in v5.67.0

The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput added in v5.67.0

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentOutputWithContext added in v5.67.0

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs struct {
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationAdditionalUnattendContentArrayInput `pulumi:"additionalUnattendContents"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringInput `pulumi:"adminPassword"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput `pulumi:"adminUsername"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput `pulumi:"computerNamePrefix"`
	// Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrInput `pulumi:"enableAutomaticUpdates"`
	// Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
	//
	// > **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, the VM's `skuName` is set to a Azure generation 2 directory within the GitHub Repository.
	HotpatchingEnabled pulumi.BoolPtrInput `pulumi:"hotpatchingEnabled"`
	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.
	PatchMode pulumi.StringPtrInput `pulumi:"patchMode"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput `pulumi:"provisionVmAgent"`
	// One or more `secret` blocks as defined below.
	Secrets OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayInput `pulumi:"secrets"`
	// Specifies the time zone of the virtual machine, the possible values are defined [here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
	Timezone pulumi.StringPtrInput `pulumi:"timezone"`
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayInput `pulumi:"winrmListeners"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) AdditionalUnattendContents added in v5.67.0

One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) AdminPassword

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) AdminUsername

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ComputerNamePrefix

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) EnableAutomaticUpdates

Are automatic updates enabled for this Virtual Machine? Defaults to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) HotpatchingEnabled

Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).

> **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, the VM's `skuName` is set to a Azure generation 2 directory within the GitHub Repository.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) PatchAssessmentMode added in v5.18.0

Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) PatchMode

Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ProvisionVmAgent

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) Secrets

One or more `secret` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) Timezone

Specifies the time zone of the virtual machine, the possible values are defined [here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationOutput) WinrmListeners

One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs, OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtr and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrInput` via:

        OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) AdditionalUnattendContents added in v5.67.0

One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) AdminPassword

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) AdminUsername

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) ComputerNamePrefix

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) EnableAutomaticUpdates

Are automatic updates enabled for this Virtual Machine? Defaults to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) HotpatchingEnabled

Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).

> **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, the VM's `skuName` is set to a Azure generation 2 directory within the GitHub Repository.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) PatchAssessmentMode added in v5.18.0

Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) PatchMode

Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` the `provisionVmAgent` must be set to `true` and the `extension` must contain at least one application health extension.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) ProvisionVmAgent

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) Secrets

One or more `secret` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) Timezone

Specifies the time zone of the virtual machine, the possible values are defined [here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutputWithContext

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationPtrOutput) WinrmListeners

One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecret

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecret struct {
	// One or more `certificate` blocks as defined below.
	Certificates []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs struct {
	// One or more `certificate` blocks as defined below.
	Certificates OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretInput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutputWithContext

func (i OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArray{ OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificate

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificate struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store string `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url string `pulumi:"url"`
}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store pulumi.StringInput `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url pulumi.StringInput `pulumi:"url"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateInput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArray{ OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput) Store

The certificate store on the Virtual Machine where the certificate should be added.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutputWithContext

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput) Certificates

One or more `certificate` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationSecretOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListener

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListener struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to `Https`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	CertificateUrl *string `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.
	Protocol string `pulumi:"protocol"`
}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to `Https`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	CertificateUrl pulumi.StringPtrInput `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.
	Protocol pulumi.StringInput `pulumi:"protocol"`
}

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray []OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerInput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArray{ OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs{...} }

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArrayOutputWithContext

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerInput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput() OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput
	ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput
}

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerInput is an input type that accepts OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs and OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerInput` via:

OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerArgs{...}

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput

type OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput) CertificateUrl

The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to `Https`. Changing this forces a new resource to be created.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput) Protocol

Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput

func (OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutput) ToOrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationWinrmListenerOutputWithContext

type OrchestratedVirtualMachineScaleSetOutput

type OrchestratedVirtualMachineScaleSetOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetOutput) AdditionalCapabilities added in v5.18.0

An `additionalCapabilities` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) AutomaticInstanceRepair added in v5.5.0

An `automaticInstanceRepair` block as defined below.

> **NOTE:** To enable the `automaticInstanceRepair`, the Virtual Machine Scale Set must have an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).

func (OrchestratedVirtualMachineScaleSetOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) CapacityReservationGroupId added in v5.18.0

func (o OrchestratedVirtualMachineScaleSetOutput) CapacityReservationGroupId() pulumi.StringPtrOutput

Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.

> **NOTE:** `capacityReservationGroupId` cannot be specified with `proximityPlacementGroupId`

> **NOTE:** If `capacityReservationGroupId` is specified the `singlePlacementGroup` must be set to `false`.

func (OrchestratedVirtualMachineScaleSetOutput) DataDisks added in v5.5.0

One or more `dataDisk` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) ElementType

func (OrchestratedVirtualMachineScaleSetOutput) EncryptionAtHostEnabled added in v5.5.0

Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?

func (OrchestratedVirtualMachineScaleSetOutput) EvictionPolicy added in v5.5.0

The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) ExtensionOperationsEnabled added in v5.18.0

func (o OrchestratedVirtualMachineScaleSetOutput) ExtensionOperationsEnabled() pulumi.BoolOutput

Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Virtual Machine Scale Set to be created.

> **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.

func (OrchestratedVirtualMachineScaleSetOutput) Extensions added in v5.5.0

One or more `extension` blocks as defined below

func (OrchestratedVirtualMachineScaleSetOutput) ExtensionsTimeBudget added in v5.5.0

Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.

func (OrchestratedVirtualMachineScaleSetOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) Instances added in v5.5.0

The number of Virtual Machines in the Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetOutput) LicenseType added in v5.5.0

Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.

func (OrchestratedVirtualMachineScaleSetOutput) Location added in v5.5.0

The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) MaxBidPrice added in v5.5.0

The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.

func (OrchestratedVirtualMachineScaleSetOutput) Name added in v5.5.0

The name of the Virtual Machine Scale Set. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) NetworkInterfaces added in v5.5.0

One or more `networkInterface` blocks as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) OsDisk added in v5.5.0

An `osDisk` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) OsProfile added in v5.5.0

An `osProfile` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) Plan added in v5.5.0

A `plan` block as documented below. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) PlatformFaultDomainCount added in v5.5.0

func (o OrchestratedVirtualMachineScaleSetOutput) PlatformFaultDomainCount() pulumi.IntOutput

Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.

> **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).

func (OrchestratedVirtualMachineScaleSetOutput) Priority added in v5.5.0

The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.

func (OrchestratedVirtualMachineScaleSetOutput) PriorityMix added in v5.37.0

a `priorityMix` block as defined below

func (OrchestratedVirtualMachineScaleSetOutput) ProximityPlacementGroupId added in v5.5.0

func (o OrchestratedVirtualMachineScaleSetOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) ResourceGroupName added in v5.5.0

The name of the Resource Group in which the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetOutput) SinglePlacementGroup added in v5.18.0

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are `true` or `false`.

> **NOTE:** `singlePlacementGroup` behaves differently for Flexible orchestration Virtual Machine Scale Sets than it does for Uniform orchestration Virtual Machine Scale Sets. It is recommended that you do not define the `singlePlacementGroup` field in your configuration file as the service will determine what this value should be based off of the value contained within the `skuName` field of your configuration file. You may set the `singlePlacementGroup` field to `true`, however once you set it to `false` you will not be able to revert it back to `true`.

func (OrchestratedVirtualMachineScaleSetOutput) SourceImageId added in v5.5.0

The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.

func (OrchestratedVirtualMachineScaleSetOutput) SourceImageReference added in v5.5.0

A `sourceImageReference` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetOutput) TerminationNotification added in v5.5.0

A `terminationNotification` block as defined below.

func (OrchestratedVirtualMachineScaleSetOutput) ToOrchestratedVirtualMachineScaleSetOutput

func (o OrchestratedVirtualMachineScaleSetOutput) ToOrchestratedVirtualMachineScaleSetOutput() OrchestratedVirtualMachineScaleSetOutput

func (OrchestratedVirtualMachineScaleSetOutput) ToOrchestratedVirtualMachineScaleSetOutputWithContext

func (o OrchestratedVirtualMachineScaleSetOutput) ToOrchestratedVirtualMachineScaleSetOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetOutput

func (OrchestratedVirtualMachineScaleSetOutput) UniqueId added in v5.5.0

The Unique ID for the Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetOutput) UserDataBase64 added in v5.21.0

The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.

func (OrchestratedVirtualMachineScaleSetOutput) ZoneBalance added in v5.5.0

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.

> **NOTE:** This can only be set to `true` when one or more `zones` are configured.

func (OrchestratedVirtualMachineScaleSetOutput) Zones added in v5.5.0

Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.

> **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).

type OrchestratedVirtualMachineScaleSetPlan

type OrchestratedVirtualMachineScaleSetPlan struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product string `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
}

type OrchestratedVirtualMachineScaleSetPlanArgs

type OrchestratedVirtualMachineScaleSetPlanArgs struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (OrchestratedVirtualMachineScaleSetPlanArgs) ElementType

func (OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanOutput

func (i OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanOutput() OrchestratedVirtualMachineScaleSetPlanOutput

func (OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanOutputWithContext

func (i OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPlanOutput

func (OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput

func (i OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput() OrchestratedVirtualMachineScaleSetPlanPtrOutput

func (OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetPlanArgs) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPlanPtrOutput

type OrchestratedVirtualMachineScaleSetPlanInput

type OrchestratedVirtualMachineScaleSetPlanInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetPlanOutput() OrchestratedVirtualMachineScaleSetPlanOutput
	ToOrchestratedVirtualMachineScaleSetPlanOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetPlanOutput
}

OrchestratedVirtualMachineScaleSetPlanInput is an input type that accepts OrchestratedVirtualMachineScaleSetPlanArgs and OrchestratedVirtualMachineScaleSetPlanOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetPlanInput` via:

OrchestratedVirtualMachineScaleSetPlanArgs{...}

type OrchestratedVirtualMachineScaleSetPlanOutput

type OrchestratedVirtualMachineScaleSetPlanOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetPlanOutput) ElementType

func (OrchestratedVirtualMachineScaleSetPlanOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanOutput

func (o OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanOutput() OrchestratedVirtualMachineScaleSetPlanOutput

func (OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanOutputWithContext

func (o OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPlanOutput

func (OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput

func (o OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput() OrchestratedVirtualMachineScaleSetPlanPtrOutput

func (OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetPlanOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPlanPtrOutput

type OrchestratedVirtualMachineScaleSetPlanPtrInput

type OrchestratedVirtualMachineScaleSetPlanPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetPlanPtrOutput() OrchestratedVirtualMachineScaleSetPlanPtrOutput
	ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetPlanPtrOutput
}

OrchestratedVirtualMachineScaleSetPlanPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetPlanArgs, OrchestratedVirtualMachineScaleSetPlanPtr and OrchestratedVirtualMachineScaleSetPlanPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetPlanPtrInput` via:

        OrchestratedVirtualMachineScaleSetPlanArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetPlanPtrOutput

type OrchestratedVirtualMachineScaleSetPlanPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput

func (o OrchestratedVirtualMachineScaleSetPlanPtrOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutput() OrchestratedVirtualMachineScaleSetPlanPtrOutput

func (OrchestratedVirtualMachineScaleSetPlanPtrOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetPlanPtrOutput) ToOrchestratedVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPlanPtrOutput

type OrchestratedVirtualMachineScaleSetPriorityMix added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMix struct {
	// Specifies the base number of VMs of `Regular` priority that will be created before any VMs of priority `Spot` are created. Possible values are integers between `0` and `1000`. Defaults to `0`.
	BaseRegularCount *int `pulumi:"baseRegularCount"`
	// Specifies the desired percentage of VM instances that are of `Regular` priority after the base count has been reached. Possible values are integers between `0` and `100`. Defaults to `0`.
	RegularPercentageAboveBase *int `pulumi:"regularPercentageAboveBase"`
}

type OrchestratedVirtualMachineScaleSetPriorityMixArgs added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMixArgs struct {
	// Specifies the base number of VMs of `Regular` priority that will be created before any VMs of priority `Spot` are created. Possible values are integers between `0` and `1000`. Defaults to `0`.
	BaseRegularCount pulumi.IntPtrInput `pulumi:"baseRegularCount"`
	// Specifies the desired percentage of VM instances that are of `Regular` priority after the base count has been reached. Possible values are integers between `0` and `100`. Defaults to `0`.
	RegularPercentageAboveBase pulumi.IntPtrInput `pulumi:"regularPercentageAboveBase"`
}

func (OrchestratedVirtualMachineScaleSetPriorityMixArgs) ElementType added in v5.37.0

func (OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixOutput added in v5.37.0

func (i OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixOutput() OrchestratedVirtualMachineScaleSetPriorityMixOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixOutputWithContext added in v5.37.0

func (i OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPriorityMixOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput added in v5.37.0

func (i OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput() OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext added in v5.37.0

func (i OrchestratedVirtualMachineScaleSetPriorityMixArgs) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput

type OrchestratedVirtualMachineScaleSetPriorityMixInput added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMixInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetPriorityMixOutput() OrchestratedVirtualMachineScaleSetPriorityMixOutput
	ToOrchestratedVirtualMachineScaleSetPriorityMixOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetPriorityMixOutput
}

OrchestratedVirtualMachineScaleSetPriorityMixInput is an input type that accepts OrchestratedVirtualMachineScaleSetPriorityMixArgs and OrchestratedVirtualMachineScaleSetPriorityMixOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetPriorityMixInput` via:

OrchestratedVirtualMachineScaleSetPriorityMixArgs{...}

type OrchestratedVirtualMachineScaleSetPriorityMixOutput added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMixOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) BaseRegularCount added in v5.37.0

Specifies the base number of VMs of `Regular` priority that will be created before any VMs of priority `Spot` are created. Possible values are integers between `0` and `1000`. Defaults to `0`.

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) ElementType added in v5.37.0

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) RegularPercentageAboveBase added in v5.37.0

Specifies the desired percentage of VM instances that are of `Regular` priority after the base count has been reached. Possible values are integers between `0` and `100`. Defaults to `0`.

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixOutput added in v5.37.0

func (o OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixOutput() OrchestratedVirtualMachineScaleSetPriorityMixOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixOutputWithContext added in v5.37.0

func (o OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPriorityMixOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput added in v5.37.0

func (o OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput() OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput

func (OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext added in v5.37.0

func (o OrchestratedVirtualMachineScaleSetPriorityMixOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput

type OrchestratedVirtualMachineScaleSetPriorityMixPtrInput added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMixPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput() OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput
	ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput
}

OrchestratedVirtualMachineScaleSetPriorityMixPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetPriorityMixArgs, OrchestratedVirtualMachineScaleSetPriorityMixPtr and OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetPriorityMixPtrInput` via:

        OrchestratedVirtualMachineScaleSetPriorityMixArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput added in v5.37.0

type OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) BaseRegularCount added in v5.37.0

Specifies the base number of VMs of `Regular` priority that will be created before any VMs of priority `Spot` are created. Possible values are integers between `0` and `1000`. Defaults to `0`.

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) Elem added in v5.37.0

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) ElementType added in v5.37.0

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) RegularPercentageAboveBase added in v5.37.0

Specifies the desired percentage of VM instances that are of `Regular` priority after the base count has been reached. Possible values are integers between `0` and `100`. Defaults to `0`.

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutput added in v5.37.0

func (OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext added in v5.37.0

func (o OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput) ToOrchestratedVirtualMachineScaleSetPriorityMixPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetPriorityMixPtrOutput

type OrchestratedVirtualMachineScaleSetSourceImageReference

type OrchestratedVirtualMachineScaleSetSourceImageReference struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version string `pulumi:"version"`
}

type OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs

type OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku pulumi.StringInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version pulumi.StringInput `pulumi:"version"`
}

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ElementType

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (i OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

type OrchestratedVirtualMachineScaleSetSourceImageReferenceInput

type OrchestratedVirtualMachineScaleSetSourceImageReferenceInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutput() OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput
	ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput
}

OrchestratedVirtualMachineScaleSetSourceImageReferenceInput is an input type that accepts OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs and OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetSourceImageReferenceInput` via:

OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs{...}

type OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput

type OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ElementType

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (o OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines.

type OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput

type OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput() OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput
	ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput
}

OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs, OrchestratedVirtualMachineScaleSetSourceImageReferencePtr and OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput` via:

        OrchestratedVirtualMachineScaleSetSourceImageReferenceArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

type OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) ToOrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput

func (OrchestratedVirtualMachineScaleSetSourceImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines.

type OrchestratedVirtualMachineScaleSetState

type OrchestratedVirtualMachineScaleSetState struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// An `automaticInstanceRepair` block as defined below.
	//
	// > **NOTE:** To enable the `automaticInstanceRepair`, the Virtual Machine Scale Set must have an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	AutomaticInstanceRepair OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics OrchestratedVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be specified with `proximityPlacementGroupId`
	//
	// > **NOTE:** If `capacityReservationGroupId` is specified the `singlePlacementGroup` must be set to `false`.
	CapacityReservationGroupId pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks OrchestratedVirtualMachineScaleSetDataDiskArrayInput
	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions OrchestratedVirtualMachineScaleSetExtensionArrayInput
	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity OrchestratedVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Virtual Machine Scale Set.
	Instances pulumi.IntPtrInput
	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces OrchestratedVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk OrchestratedVirtualMachineScaleSetOsDiskPtrInput
	// An `osProfile` block as defined below.
	OsProfile OrchestratedVirtualMachineScaleSetOsProfilePtrInput
	// A `plan` block as documented below. Changing this forces a new resource to be created.
	Plan OrchestratedVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The number of Fault Domains varies depending on which Azure Region you're using. More information about update and fault domains and how they work can be found [here](https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview).
	PlatformFaultDomainCount pulumi.IntPtrInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	Priority pulumi.StringPtrInput
	// a `priorityMix` block as defined below
	PriorityMix OrchestratedVirtualMachineScaleSetPriorityMixPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are `true` or `false`.
	//
	// > **NOTE:** `singlePlacementGroup` behaves differently for Flexible orchestration Virtual Machine Scale Sets than it does for Uniform orchestration Virtual Machine Scale Sets. It is recommended that you do not define the `singlePlacementGroup` field in your configuration file as the service will determine what this value should be based off of the value contained within the `skuName` field of your configuration file. You may set the `singlePlacementGroup` field to `true`, however once you set it to `false` you will not be able to revert it back to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The `name` of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the [General purpose](https://docs.microsoft.com/azure/virtual-machines/sizes-general), [Compute optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-compute), [Memory optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-memory), [Storage optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-storage), [GPU optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-gpu), [FPGA optimized](https://docs.microsoft.com/azure/virtual-machines/sizes-field-programmable-gate-arrays), [High performance](https://docs.microsoft.com/azure/virtual-machines/sizes-hpc), or [Previous generation](https://docs.microsoft.com/azure/virtual-machines/sizes-previous-gen) virtual machine SKUs.
	SkuName pulumi.StringPtrInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	SourceImageReference OrchestratedVirtualMachineScaleSetSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput
	// The Unique ID for the Virtual Machine Scale Set.
	UniqueId pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserDataBase64 pulumi.StringPtrInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayInput
}

func (OrchestratedVirtualMachineScaleSetState) ElementType

type OrchestratedVirtualMachineScaleSetTerminationNotification

type OrchestratedVirtualMachineScaleSetTerminationNotification struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values `true` or `false`.
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in `ISO 8601` format. Defaults to `PT5M`.
	Timeout *string `pulumi:"timeout"`
}

type OrchestratedVirtualMachineScaleSetTerminationNotificationArgs

type OrchestratedVirtualMachineScaleSetTerminationNotificationArgs struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values `true` or `false`.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in `ISO 8601` format. Defaults to `PT5M`.
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ElementType

func (OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutputWithContext

func (i OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext

func (i OrchestratedVirtualMachineScaleSetTerminationNotificationArgs) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

type OrchestratedVirtualMachineScaleSetTerminationNotificationInput

type OrchestratedVirtualMachineScaleSetTerminationNotificationInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutput() OrchestratedVirtualMachineScaleSetTerminationNotificationOutput
	ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationOutput
}

OrchestratedVirtualMachineScaleSetTerminationNotificationInput is an input type that accepts OrchestratedVirtualMachineScaleSetTerminationNotificationArgs and OrchestratedVirtualMachineScaleSetTerminationNotificationOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetTerminationNotificationInput` via:

OrchestratedVirtualMachineScaleSetTerminationNotificationArgs{...}

type OrchestratedVirtualMachineScaleSetTerminationNotificationOutput

type OrchestratedVirtualMachineScaleSetTerminationNotificationOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ElementType

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) Enabled

Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values `true` or `false`.

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in `ISO 8601` format. Defaults to `PT5M`.

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutputWithContext

func (o OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetTerminationNotificationOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

type OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput

type OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput interface {
	pulumi.Input

	ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput() OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput
	ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput
}

OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput is an input type that accepts OrchestratedVirtualMachineScaleSetTerminationNotificationArgs, OrchestratedVirtualMachineScaleSetTerminationNotificationPtr and OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput values. You can construct a concrete instance of `OrchestratedVirtualMachineScaleSetTerminationNotificationPtrInput` via:

        OrchestratedVirtualMachineScaleSetTerminationNotificationArgs{...}

or:

        nil

type OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

type OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput struct{ *pulumi.OutputState }

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) Elem

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) ElementType

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) Enabled

Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values `true` or `false`.

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in `ISO 8601` format. Defaults to `PT5M`.

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

func (OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext

func (o OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput) ToOrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) OrchestratedVirtualMachineScaleSetTerminationNotificationPtrOutput

type PacketCapture added in v5.28.0

type PacketCapture struct {
	pulumi.CustomResourceState

	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters PacketCaptureFilterArrayOutput `pulumi:"filters"`
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrOutput `pulumi:"maximumBytesPerPacket"`
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrOutput `pulumi:"maximumBytesPerSession"`
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrOutput `pulumi:"maximumCaptureDurationInSeconds"`
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringOutput `pulumi:"networkWatcherId"`
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation PacketCaptureStorageLocationOutput `pulumi:"storageLocation"`
	// The resource ID of the target Virtual Machine to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
}

Configures Network Packet Capturing against a Virtual Machine using a Network Watcher.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"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
		}
		exampleNetworkWatcher, err := network.NewNetworkWatcher(ctx, "example", &network.NetworkWatcherArgs{
			Name:              pulumi.String("example-nw"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-network"),
			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("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleNetworkInterface, err := network.NewNetworkInterface(ctx, "example", &network.NetworkInterfaceArgs{
			Name:              pulumi.String("example-nic"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("testconfiguration1"),
					SubnetId:                   exampleSubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleVirtualMachine, err := compute.NewVirtualMachine(ctx, "example", &compute.VirtualMachineArgs{
			Name:              pulumi.String("example-vm"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			NetworkInterfaceIds: pulumi.StringArray{
				exampleNetworkInterface.ID(),
			},
			VmSize: pulumi.String("Standard_F2"),
			StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
				Name:            pulumi.String("osdisk"),
				Caching:         pulumi.String("ReadWrite"),
				CreateOption:    pulumi.String("FromImage"),
				ManagedDiskType: pulumi.String("Standard_LRS"),
			},
			OsProfile: &compute.VirtualMachineOsProfileArgs{
				ComputerName:  pulumi.String("pctest-vm"),
				AdminUsername: pulumi.String("testadmin"),
				AdminPassword: pulumi.String("Password1234!"),
			},
			OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(false),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewExtension(ctx, "example", &compute.ExtensionArgs{
			Name:                    pulumi.String("network-watcher"),
			VirtualMachineId:        exampleVirtualMachine.ID(),
			Publisher:               pulumi.String("Microsoft.Azure.NetworkWatcher"),
			Type:                    pulumi.String("NetworkWatcherAgentLinux"),
			TypeHandlerVersion:      pulumi.String("1.4"),
			AutoUpgradeMinorVersion: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
			Name:                   pulumi.String("examplesa"),
			ResourceGroupName:      example.Name,
			Location:               example.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewPacketCapture(ctx, "example", &compute.PacketCaptureArgs{
			Name:             pulumi.String("example-pc"),
			NetworkWatcherId: exampleNetworkWatcher.ID(),
			VirtualMachineId: exampleVirtualMachine.ID(),
			StorageLocation: &compute.PacketCaptureStorageLocationArgs{
				StorageAccountId: exampleAccount.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE:** This Resource requires that [the Network Watcher Virtual Machine Extension](https://docs.microsoft.com/azure/network-watcher/network-watcher-packet-capture-manage-portal#before-you-begin) is installed on the Virtual Machine before capturing can be enabled which can be installed via the `compute.Extension` resource.

## Import

Virtual Machine Packet Captures can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/packetCapture:PacketCapture capture1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/networkWatchers/watcher1/packetCaptures/capture1 ```

func GetPacketCapture added in v5.28.0

func GetPacketCapture(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PacketCaptureState, opts ...pulumi.ResourceOption) (*PacketCapture, error)

GetPacketCapture gets an existing PacketCapture 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 NewPacketCapture added in v5.28.0

func NewPacketCapture(ctx *pulumi.Context,
	name string, args *PacketCaptureArgs, opts ...pulumi.ResourceOption) (*PacketCapture, error)

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

func (*PacketCapture) ElementType added in v5.28.0

func (*PacketCapture) ElementType() reflect.Type

func (*PacketCapture) ToPacketCaptureOutput added in v5.28.0

func (i *PacketCapture) ToPacketCaptureOutput() PacketCaptureOutput

func (*PacketCapture) ToPacketCaptureOutputWithContext added in v5.28.0

func (i *PacketCapture) ToPacketCaptureOutputWithContext(ctx context.Context) PacketCaptureOutput

type PacketCaptureArgs added in v5.28.0

type PacketCaptureArgs struct {
	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters PacketCaptureFilterArrayInput
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrInput
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrInput
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrInput
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringInput
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation PacketCaptureStorageLocationInput
	// The resource ID of the target Virtual Machine to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringInput
}

The set of arguments for constructing a PacketCapture resource.

func (PacketCaptureArgs) ElementType added in v5.28.0

func (PacketCaptureArgs) ElementType() reflect.Type

type PacketCaptureArray added in v5.28.0

type PacketCaptureArray []PacketCaptureInput

func (PacketCaptureArray) ElementType added in v5.28.0

func (PacketCaptureArray) ElementType() reflect.Type

func (PacketCaptureArray) ToPacketCaptureArrayOutput added in v5.28.0

func (i PacketCaptureArray) ToPacketCaptureArrayOutput() PacketCaptureArrayOutput

func (PacketCaptureArray) ToPacketCaptureArrayOutputWithContext added in v5.28.0

func (i PacketCaptureArray) ToPacketCaptureArrayOutputWithContext(ctx context.Context) PacketCaptureArrayOutput

type PacketCaptureArrayInput added in v5.28.0

type PacketCaptureArrayInput interface {
	pulumi.Input

	ToPacketCaptureArrayOutput() PacketCaptureArrayOutput
	ToPacketCaptureArrayOutputWithContext(context.Context) PacketCaptureArrayOutput
}

PacketCaptureArrayInput is an input type that accepts PacketCaptureArray and PacketCaptureArrayOutput values. You can construct a concrete instance of `PacketCaptureArrayInput` via:

PacketCaptureArray{ PacketCaptureArgs{...} }

type PacketCaptureArrayOutput added in v5.28.0

type PacketCaptureArrayOutput struct{ *pulumi.OutputState }

func (PacketCaptureArrayOutput) ElementType added in v5.28.0

func (PacketCaptureArrayOutput) ElementType() reflect.Type

func (PacketCaptureArrayOutput) Index added in v5.28.0

func (PacketCaptureArrayOutput) ToPacketCaptureArrayOutput added in v5.28.0

func (o PacketCaptureArrayOutput) ToPacketCaptureArrayOutput() PacketCaptureArrayOutput

func (PacketCaptureArrayOutput) ToPacketCaptureArrayOutputWithContext added in v5.28.0

func (o PacketCaptureArrayOutput) ToPacketCaptureArrayOutputWithContext(ctx context.Context) PacketCaptureArrayOutput

type PacketCaptureFilter added in v5.28.0

type PacketCaptureFilter struct {
	// The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalIpAddress *string `pulumi:"localIpAddress"`
	// The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalPort *string `pulumi:"localPort"`
	// The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.
	Protocol string `pulumi:"protocol"`
	// The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemoteIpAddress *string `pulumi:"remoteIpAddress"`
	// The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemotePort *string `pulumi:"remotePort"`
}

type PacketCaptureFilterArgs added in v5.28.0

type PacketCaptureFilterArgs struct {
	// The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalIpAddress pulumi.StringPtrInput `pulumi:"localIpAddress"`
	// The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalPort pulumi.StringPtrInput `pulumi:"localPort"`
	// The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemoteIpAddress pulumi.StringPtrInput `pulumi:"remoteIpAddress"`
	// The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemotePort pulumi.StringPtrInput `pulumi:"remotePort"`
}

func (PacketCaptureFilterArgs) ElementType added in v5.28.0

func (PacketCaptureFilterArgs) ElementType() reflect.Type

func (PacketCaptureFilterArgs) ToPacketCaptureFilterOutput added in v5.28.0

func (i PacketCaptureFilterArgs) ToPacketCaptureFilterOutput() PacketCaptureFilterOutput

func (PacketCaptureFilterArgs) ToPacketCaptureFilterOutputWithContext added in v5.28.0

func (i PacketCaptureFilterArgs) ToPacketCaptureFilterOutputWithContext(ctx context.Context) PacketCaptureFilterOutput

type PacketCaptureFilterArray added in v5.28.0

type PacketCaptureFilterArray []PacketCaptureFilterInput

func (PacketCaptureFilterArray) ElementType added in v5.28.0

func (PacketCaptureFilterArray) ElementType() reflect.Type

func (PacketCaptureFilterArray) ToPacketCaptureFilterArrayOutput added in v5.28.0

func (i PacketCaptureFilterArray) ToPacketCaptureFilterArrayOutput() PacketCaptureFilterArrayOutput

func (PacketCaptureFilterArray) ToPacketCaptureFilterArrayOutputWithContext added in v5.28.0

func (i PacketCaptureFilterArray) ToPacketCaptureFilterArrayOutputWithContext(ctx context.Context) PacketCaptureFilterArrayOutput

type PacketCaptureFilterArrayInput added in v5.28.0

type PacketCaptureFilterArrayInput interface {
	pulumi.Input

	ToPacketCaptureFilterArrayOutput() PacketCaptureFilterArrayOutput
	ToPacketCaptureFilterArrayOutputWithContext(context.Context) PacketCaptureFilterArrayOutput
}

PacketCaptureFilterArrayInput is an input type that accepts PacketCaptureFilterArray and PacketCaptureFilterArrayOutput values. You can construct a concrete instance of `PacketCaptureFilterArrayInput` via:

PacketCaptureFilterArray{ PacketCaptureFilterArgs{...} }

type PacketCaptureFilterArrayOutput added in v5.28.0

type PacketCaptureFilterArrayOutput struct{ *pulumi.OutputState }

func (PacketCaptureFilterArrayOutput) ElementType added in v5.28.0

func (PacketCaptureFilterArrayOutput) Index added in v5.28.0

func (PacketCaptureFilterArrayOutput) ToPacketCaptureFilterArrayOutput added in v5.28.0

func (o PacketCaptureFilterArrayOutput) ToPacketCaptureFilterArrayOutput() PacketCaptureFilterArrayOutput

func (PacketCaptureFilterArrayOutput) ToPacketCaptureFilterArrayOutputWithContext added in v5.28.0

func (o PacketCaptureFilterArrayOutput) ToPacketCaptureFilterArrayOutputWithContext(ctx context.Context) PacketCaptureFilterArrayOutput

type PacketCaptureFilterInput added in v5.28.0

type PacketCaptureFilterInput interface {
	pulumi.Input

	ToPacketCaptureFilterOutput() PacketCaptureFilterOutput
	ToPacketCaptureFilterOutputWithContext(context.Context) PacketCaptureFilterOutput
}

PacketCaptureFilterInput is an input type that accepts PacketCaptureFilterArgs and PacketCaptureFilterOutput values. You can construct a concrete instance of `PacketCaptureFilterInput` via:

PacketCaptureFilterArgs{...}

type PacketCaptureFilterOutput added in v5.28.0

type PacketCaptureFilterOutput struct{ *pulumi.OutputState }

func (PacketCaptureFilterOutput) ElementType added in v5.28.0

func (PacketCaptureFilterOutput) ElementType() reflect.Type

func (PacketCaptureFilterOutput) LocalIpAddress added in v5.28.0

The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (PacketCaptureFilterOutput) LocalPort added in v5.28.0

The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (PacketCaptureFilterOutput) Protocol added in v5.28.0

The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.

func (PacketCaptureFilterOutput) RemoteIpAddress added in v5.28.0

func (o PacketCaptureFilterOutput) RemoteIpAddress() pulumi.StringPtrOutput

The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (PacketCaptureFilterOutput) RemotePort added in v5.28.0

The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (PacketCaptureFilterOutput) ToPacketCaptureFilterOutput added in v5.28.0

func (o PacketCaptureFilterOutput) ToPacketCaptureFilterOutput() PacketCaptureFilterOutput

func (PacketCaptureFilterOutput) ToPacketCaptureFilterOutputWithContext added in v5.28.0

func (o PacketCaptureFilterOutput) ToPacketCaptureFilterOutputWithContext(ctx context.Context) PacketCaptureFilterOutput

type PacketCaptureInput added in v5.28.0

type PacketCaptureInput interface {
	pulumi.Input

	ToPacketCaptureOutput() PacketCaptureOutput
	ToPacketCaptureOutputWithContext(ctx context.Context) PacketCaptureOutput
}

type PacketCaptureMap added in v5.28.0

type PacketCaptureMap map[string]PacketCaptureInput

func (PacketCaptureMap) ElementType added in v5.28.0

func (PacketCaptureMap) ElementType() reflect.Type

func (PacketCaptureMap) ToPacketCaptureMapOutput added in v5.28.0

func (i PacketCaptureMap) ToPacketCaptureMapOutput() PacketCaptureMapOutput

func (PacketCaptureMap) ToPacketCaptureMapOutputWithContext added in v5.28.0

func (i PacketCaptureMap) ToPacketCaptureMapOutputWithContext(ctx context.Context) PacketCaptureMapOutput

type PacketCaptureMapInput added in v5.28.0

type PacketCaptureMapInput interface {
	pulumi.Input

	ToPacketCaptureMapOutput() PacketCaptureMapOutput
	ToPacketCaptureMapOutputWithContext(context.Context) PacketCaptureMapOutput
}

PacketCaptureMapInput is an input type that accepts PacketCaptureMap and PacketCaptureMapOutput values. You can construct a concrete instance of `PacketCaptureMapInput` via:

PacketCaptureMap{ "key": PacketCaptureArgs{...} }

type PacketCaptureMapOutput added in v5.28.0

type PacketCaptureMapOutput struct{ *pulumi.OutputState }

func (PacketCaptureMapOutput) ElementType added in v5.28.0

func (PacketCaptureMapOutput) ElementType() reflect.Type

func (PacketCaptureMapOutput) MapIndex added in v5.28.0

func (PacketCaptureMapOutput) ToPacketCaptureMapOutput added in v5.28.0

func (o PacketCaptureMapOutput) ToPacketCaptureMapOutput() PacketCaptureMapOutput

func (PacketCaptureMapOutput) ToPacketCaptureMapOutputWithContext added in v5.28.0

func (o PacketCaptureMapOutput) ToPacketCaptureMapOutputWithContext(ctx context.Context) PacketCaptureMapOutput

type PacketCaptureOutput added in v5.28.0

type PacketCaptureOutput struct{ *pulumi.OutputState }

func (PacketCaptureOutput) ElementType added in v5.28.0

func (PacketCaptureOutput) ElementType() reflect.Type

func (PacketCaptureOutput) Filters added in v5.28.0

One or more `filter` blocks as defined below. Changing this forces a new resource to be created.

func (PacketCaptureOutput) MaximumBytesPerPacket added in v5.28.0

func (o PacketCaptureOutput) MaximumBytesPerPacket() pulumi.IntPtrOutput

The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.

func (PacketCaptureOutput) MaximumBytesPerSession added in v5.28.0

func (o PacketCaptureOutput) MaximumBytesPerSession() pulumi.IntPtrOutput

Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.

func (PacketCaptureOutput) MaximumCaptureDurationInSeconds added in v5.28.0

func (o PacketCaptureOutput) MaximumCaptureDurationInSeconds() pulumi.IntPtrOutput

The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.

func (PacketCaptureOutput) Name added in v5.28.0

The name to use for this Network Packet Capture. Changing this forces a new resource to be created.

func (PacketCaptureOutput) NetworkWatcherId added in v5.28.0

func (o PacketCaptureOutput) NetworkWatcherId() pulumi.StringOutput

The resource ID of the Network Watcher. Changing this forces a new resource to be created.

func (PacketCaptureOutput) StorageLocation added in v5.28.0

A `storageLocation` block as defined below. Changing this forces a new resource to be created.

func (PacketCaptureOutput) ToPacketCaptureOutput added in v5.28.0

func (o PacketCaptureOutput) ToPacketCaptureOutput() PacketCaptureOutput

func (PacketCaptureOutput) ToPacketCaptureOutputWithContext added in v5.28.0

func (o PacketCaptureOutput) ToPacketCaptureOutputWithContext(ctx context.Context) PacketCaptureOutput

func (PacketCaptureOutput) VirtualMachineId added in v5.28.0

func (o PacketCaptureOutput) VirtualMachineId() pulumi.StringOutput

The resource ID of the target Virtual Machine to capture packets from. Changing this forces a new resource to be created.

type PacketCaptureState added in v5.28.0

type PacketCaptureState struct {
	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters PacketCaptureFilterArrayInput
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrInput
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrInput
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrInput
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringPtrInput
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation PacketCaptureStorageLocationPtrInput
	// The resource ID of the target Virtual Machine to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineId pulumi.StringPtrInput
}

func (PacketCaptureState) ElementType added in v5.28.0

func (PacketCaptureState) ElementType() reflect.Type

type PacketCaptureStorageLocation added in v5.28.0

type PacketCaptureStorageLocation struct {
	// A valid local path on the target Virtual Machine. Must include the name of the capture file (*.cap). For Linux Virtual Machines it must start with `/var/captures`.
	FilePath *string `pulumi:"filePath"`
	// The ID of the storage account where the packet capture sessions should be saved to.
	//
	// > **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.
	StorageAccountId *string `pulumi:"storageAccountId"`
	// The URI of the storage path where the packet capture sessions are saved to.
	StoragePath *string `pulumi:"storagePath"`
}

type PacketCaptureStorageLocationArgs added in v5.28.0

type PacketCaptureStorageLocationArgs struct {
	// A valid local path on the target Virtual Machine. Must include the name of the capture file (*.cap). For Linux Virtual Machines it must start with `/var/captures`.
	FilePath pulumi.StringPtrInput `pulumi:"filePath"`
	// The ID of the storage account where the packet capture sessions should be saved to.
	//
	// > **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.
	StorageAccountId pulumi.StringPtrInput `pulumi:"storageAccountId"`
	// The URI of the storage path where the packet capture sessions are saved to.
	StoragePath pulumi.StringPtrInput `pulumi:"storagePath"`
}

func (PacketCaptureStorageLocationArgs) ElementType added in v5.28.0

func (PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationOutput added in v5.28.0

func (i PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationOutput() PacketCaptureStorageLocationOutput

func (PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationOutputWithContext added in v5.28.0

func (i PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationOutputWithContext(ctx context.Context) PacketCaptureStorageLocationOutput

func (PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (i PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationPtrOutput() PacketCaptureStorageLocationPtrOutput

func (PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (i PacketCaptureStorageLocationArgs) ToPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) PacketCaptureStorageLocationPtrOutput

type PacketCaptureStorageLocationInput added in v5.28.0

type PacketCaptureStorageLocationInput interface {
	pulumi.Input

	ToPacketCaptureStorageLocationOutput() PacketCaptureStorageLocationOutput
	ToPacketCaptureStorageLocationOutputWithContext(context.Context) PacketCaptureStorageLocationOutput
}

PacketCaptureStorageLocationInput is an input type that accepts PacketCaptureStorageLocationArgs and PacketCaptureStorageLocationOutput values. You can construct a concrete instance of `PacketCaptureStorageLocationInput` via:

PacketCaptureStorageLocationArgs{...}

type PacketCaptureStorageLocationOutput added in v5.28.0

type PacketCaptureStorageLocationOutput struct{ *pulumi.OutputState }

func (PacketCaptureStorageLocationOutput) ElementType added in v5.28.0

func (PacketCaptureStorageLocationOutput) FilePath added in v5.28.0

A valid local path on the target Virtual Machine. Must include the name of the capture file (*.cap). For Linux Virtual Machines it must start with `/var/captures`.

func (PacketCaptureStorageLocationOutput) StorageAccountId added in v5.28.0

The ID of the storage account where the packet capture sessions should be saved to.

> **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.

func (PacketCaptureStorageLocationOutput) StoragePath added in v5.28.0

The URI of the storage path where the packet capture sessions are saved to.

func (PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationOutput added in v5.28.0

func (o PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationOutput() PacketCaptureStorageLocationOutput

func (PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationOutputWithContext added in v5.28.0

func (o PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationOutputWithContext(ctx context.Context) PacketCaptureStorageLocationOutput

func (PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (o PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationPtrOutput() PacketCaptureStorageLocationPtrOutput

func (PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (o PacketCaptureStorageLocationOutput) ToPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) PacketCaptureStorageLocationPtrOutput

type PacketCaptureStorageLocationPtrInput added in v5.28.0

type PacketCaptureStorageLocationPtrInput interface {
	pulumi.Input

	ToPacketCaptureStorageLocationPtrOutput() PacketCaptureStorageLocationPtrOutput
	ToPacketCaptureStorageLocationPtrOutputWithContext(context.Context) PacketCaptureStorageLocationPtrOutput
}

PacketCaptureStorageLocationPtrInput is an input type that accepts PacketCaptureStorageLocationArgs, PacketCaptureStorageLocationPtr and PacketCaptureStorageLocationPtrOutput values. You can construct a concrete instance of `PacketCaptureStorageLocationPtrInput` via:

        PacketCaptureStorageLocationArgs{...}

or:

        nil

func PacketCaptureStorageLocationPtr added in v5.28.0

type PacketCaptureStorageLocationPtrOutput added in v5.28.0

type PacketCaptureStorageLocationPtrOutput struct{ *pulumi.OutputState }

func (PacketCaptureStorageLocationPtrOutput) Elem added in v5.28.0

func (PacketCaptureStorageLocationPtrOutput) ElementType added in v5.28.0

func (PacketCaptureStorageLocationPtrOutput) FilePath added in v5.28.0

A valid local path on the target Virtual Machine. Must include the name of the capture file (*.cap). For Linux Virtual Machines it must start with `/var/captures`.

func (PacketCaptureStorageLocationPtrOutput) StorageAccountId added in v5.28.0

The ID of the storage account where the packet capture sessions should be saved to.

> **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.

func (PacketCaptureStorageLocationPtrOutput) StoragePath added in v5.28.0

The URI of the storage path where the packet capture sessions are saved to.

func (PacketCaptureStorageLocationPtrOutput) ToPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (o PacketCaptureStorageLocationPtrOutput) ToPacketCaptureStorageLocationPtrOutput() PacketCaptureStorageLocationPtrOutput

func (PacketCaptureStorageLocationPtrOutput) ToPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (o PacketCaptureStorageLocationPtrOutput) ToPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) PacketCaptureStorageLocationPtrOutput

type RunCommand added in v5.63.0

type RunCommand struct {
	pulumi.CustomResourceState

	// An `errorBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to errorBlobUri storage blob.
	ErrorBlobManagedIdentity RunCommandErrorBlobManagedIdentityPtrOutput `pulumi:"errorBlobManagedIdentity"`
	// Specifies the Azure storage blob where script error stream will be uploaded.
	ErrorBlobUri  pulumi.StringPtrOutput            `pulumi:"errorBlobUri"`
	InstanceViews RunCommandInstanceViewArrayOutput `pulumi:"instanceViews"`
	// The Azure Region where the Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of this Virtual Machine Run Command. Changing this forces a new Virtual Machine Run Command to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// An `outputBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to outputBlobUri storage blob.
	OutputBlobManagedIdentity RunCommandOutputBlobManagedIdentityPtrOutput `pulumi:"outputBlobManagedIdentity"`
	// Specifies the Azure storage blob where script output stream will be uploaded. It can be basic blob URI with SAS token.
	OutputBlobUri pulumi.StringPtrOutput `pulumi:"outputBlobUri"`
	// A list of `parameter` blocks as defined below. The parameters used by the script.
	Parameters RunCommandParameterArrayOutput `pulumi:"parameters"`
	// A list of `protectedParameter` blocks as defined below. The protected parameters used by the script.
	ProtectedParameters RunCommandProtectedParameterArrayOutput `pulumi:"protectedParameters"`
	// Specifies the user account password on the VM when executing the Virtual Machine Run Command.
	RunAsPassword pulumi.StringPtrOutput `pulumi:"runAsPassword"`
	// Specifies the user account on the VM when executing the Virtual Machine Run Command.
	RunAsUser pulumi.StringPtrOutput `pulumi:"runAsUser"`
	// A `source` block as defined below. The source of the run command script.
	Source RunCommandSourceOutput `pulumi:"source"`
	// A mapping of tags which should be assigned to the Virtual Machine Run Command.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the Virtual Machine ID within which this Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
}

Manages a Virtual Machine Run Command.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		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:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("internal"),
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleNetworkInterface, err := network.NewNetworkInterface(ctx, "example", &network.NetworkInterfaceArgs{
			Name:              pulumi.String("example-nic"),
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("internal"),
					SubnetId:                   exampleSubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleUserAssignedIdentity, err := authorization.NewUserAssignedIdentity(ctx, "example", &authorization.UserAssignedIdentityArgs{
			Name:              pulumi.String("example-uai"),
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		exampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, "example", &compute.LinuxVirtualMachineArgs{
			Name:                          pulumi.String("example-VM"),
			ResourceGroupName:             exampleResourceGroup.Name,
			Location:                      exampleResourceGroup.Location,
			Size:                          pulumi.String("Standard_B2s"),
			AdminUsername:                 pulumi.String("adminuser"),
			AdminPassword:                 pulumi.String("P@$$w0rd1234!"),
			DisablePasswordAuthentication: pulumi.Bool(false),
			NetworkInterfaceIds: pulumi.StringArray{
				exampleNetworkInterface.ID(),
			},
			OsDisk: &compute.LinuxVirtualMachineOsDiskArgs{
				Caching:            pulumi.String("ReadWrite"),
				StorageAccountType: pulumi.String("Premium_LRS"),
			},
			SourceImageReference: &compute.LinuxVirtualMachineSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			Identity: &compute.LinuxVirtualMachineIdentityArgs{
				Type: pulumi.String("SystemAssigned, UserAssigned"),
				IdentityIds: pulumi.StringArray{
					exampleUserAssignedIdentity.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
			Name:                   pulumi.String("exampleaccount"),
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "example", &authorization.AssignmentArgs{
			Scope:              exampleAccount.ID(),
			RoleDefinitionName: pulumi.String("Storage Blob Data Contributor"),
			PrincipalId:        exampleUserAssignedIdentity.PrincipalId,
		})
		if err != nil {
			return err
		}
		exampleContainer, err := storage.NewContainer(ctx, "example", &storage.ContainerArgs{
			Name:                pulumi.String("example-sc"),
			StorageAccountName:  exampleAccount.Name,
			ContainerAccessType: pulumi.String("blob"),
		})
		if err != nil {
			return err
		}
		example1, err := storage.NewBlob(ctx, "example1", &storage.BlobArgs{
			Name:                 pulumi.String("script1"),
			StorageAccountName:   exampleAccount.Name,
			StorageContainerName: exampleContainer.Name,
			Type:                 pulumi.String("Block"),
			SourceContent:        pulumi.String("echo 'hello world'"),
		})
		if err != nil {
			return err
		}
		example2, err := storage.NewBlob(ctx, "example2", &storage.BlobArgs{
			Name:                 pulumi.String("output"),
			StorageAccountName:   exampleAccount.Name,
			StorageContainerName: exampleContainer.Name,
			Type:                 pulumi.String("Append"),
		})
		if err != nil {
			return err
		}
		example3, err := storage.NewBlob(ctx, "example3", &storage.BlobArgs{
			Name:                 pulumi.String("error"),
			StorageAccountName:   exampleAccount.Name,
			StorageContainerName: exampleContainer.Name,
			Type:                 pulumi.String("Append"),
		})
		if err != nil {
			return err
		}
		example := storage.GetAccountSASOutput(ctx, storage.GetAccountSASOutputArgs{
			ConnectionString: exampleAccount.PrimaryConnectionString,
			HttpsOnly:        pulumi.Bool(true),
			SignedVersion:    pulumi.String("2019-10-10"),
			Start:            pulumi.String("2023-04-01T00:00:00Z"),
			Expiry:           pulumi.String("2024-04-01T00:00:00Z"),
			ResourceTypes: &storage.GetAccountSASResourceTypesArgs{
				Service:   pulumi.Bool(false),
				Container: pulumi.Bool(false),
				Object:    pulumi.Bool(true),
			},
			Services: &storage.GetAccountSASServicesArgs{
				Blob:  pulumi.Bool(true),
				Queue: pulumi.Bool(false),
				Table: pulumi.Bool(false),
				File:  pulumi.Bool(false),
			},
			Permissions: &storage.GetAccountSASPermissionsArgs{
				Read:    pulumi.Bool(true),
				Write:   pulumi.Bool(true),
				Delete:  pulumi.Bool(false),
				List:    pulumi.Bool(false),
				Add:     pulumi.Bool(true),
				Create:  pulumi.Bool(true),
				Update:  pulumi.Bool(false),
				Process: pulumi.Bool(false),
				Tag:     pulumi.Bool(false),
				Filter:  pulumi.Bool(false),
			},
		}, nil)
		// basic example
		_, err = compute.NewRunCommand(ctx, "example", &compute.RunCommandArgs{
			Name:             pulumi.String("example-vmrc"),
			Location:         exampleResourceGroup.Location,
			VirtualMachineId: exampleLinuxVirtualMachine.ID(),
			Source: &compute.RunCommandSourceArgs{
				Script: pulumi.String("echo 'hello world'"),
			},
		})
		if err != nil {
			return err
		}
		// authorize to storage blob using user assigned identity
		_, err = compute.NewRunCommand(ctx, "example2", &compute.RunCommandArgs{
			Location:         exampleResourceGroup.Location,
			Name:             pulumi.String("example2-vmrc"),
			VirtualMachineId: exampleLinuxVirtualMachine.ID(),
			OutputBlobUri:    example2.ID(),
			ErrorBlobUri:     example3.ID(),
			RunAsPassword:    pulumi.String("P@$$w0rd1234!"),
			RunAsUser:        pulumi.String("adminuser"),
			Source: &compute.RunCommandSourceArgs{
				ScriptUri: example1.ID(),
				ScriptUriManagedIdentity: &compute.RunCommandSourceScriptUriManagedIdentityArgs{
					ClientId: exampleUserAssignedIdentity.ClientId,
				},
			},
			ErrorBlobManagedIdentity: &compute.RunCommandErrorBlobManagedIdentityArgs{
				ClientId: exampleUserAssignedIdentity.ClientId,
			},
			OutputBlobManagedIdentity: &compute.RunCommandOutputBlobManagedIdentityArgs{
				ClientId: exampleUserAssignedIdentity.ClientId,
			},
			Parameters: compute.RunCommandParameterArray{
				&compute.RunCommandParameterArgs{
					Name:  pulumi.String("examplev1"),
					Value: pulumi.String("val1"),
				},
			},
			ProtectedParameters: compute.RunCommandProtectedParameterArray{
				&compute.RunCommandProtectedParameterArgs{
					Name:  pulumi.String("examplev2"),
					Value: pulumi.String("val2"),
				},
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("terraform-examples"),
				"some_key":    pulumi.String("some-value"),
			},
		})
		if err != nil {
			return err
		}
		// authorize to storage blob using SAS token
		_, err = compute.NewRunCommand(ctx, "example3", &compute.RunCommandArgs{
			Location:         exampleResourceGroup.Location,
			Name:             pulumi.String("example3-vmrc"),
			VirtualMachineId: exampleLinuxVirtualMachine.ID(),
			RunAsPassword:    pulumi.String("P@$$w0rd1234!"),
			RunAsUser:        pulumi.String("adminuser"),
			ErrorBlobUri: pulumi.All(example3.ID(), example).ApplyT(func(_args []interface{}) (string, error) {
				id := _args[0].(string)
				example := _args[1].(storage.GetAccountSASResult)
				return fmt.Sprintf("%v%v", id, example.Sas), nil
			}).(pulumi.StringOutput),
			OutputBlobUri: pulumi.All(example2.ID(), example).ApplyT(func(_args []interface{}) (string, error) {
				id := _args[0].(string)
				example := _args[1].(storage.GetAccountSASResult)
				return fmt.Sprintf("%v%v", id, example.Sas), nil
			}).(pulumi.StringOutput),
			Source: &compute.RunCommandSourceArgs{
				ScriptUri: pulumi.All(example1.ID(), example).ApplyT(func(_args []interface{}) (string, error) {
					id := _args[0].(string)
					example := _args[1].(storage.GetAccountSASResult)
					return fmt.Sprintf("%v%v", id, example.Sas), nil
				}).(pulumi.StringOutput),
			},
			Parameters: compute.RunCommandParameterArray{
				&compute.RunCommandParameterArgs{
					Name:  pulumi.String("example-vm1"),
					Value: pulumi.String("val1"),
				},
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("terraform-example-s"),
				"some_key":    pulumi.String("some-value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An existing Virtual Machine Run Command can be imported into Terraform using the `resource id`, e.g.

```sh $ pulumi import azure:compute/runCommand:RunCommand example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/vm1/runCommands/rc1 ```

func GetRunCommand added in v5.63.0

func GetRunCommand(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RunCommandState, opts ...pulumi.ResourceOption) (*RunCommand, error)

GetRunCommand gets an existing RunCommand 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 NewRunCommand added in v5.63.0

func NewRunCommand(ctx *pulumi.Context,
	name string, args *RunCommandArgs, opts ...pulumi.ResourceOption) (*RunCommand, error)

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

func (*RunCommand) ElementType added in v5.63.0

func (*RunCommand) ElementType() reflect.Type

func (*RunCommand) ToRunCommandOutput added in v5.63.0

func (i *RunCommand) ToRunCommandOutput() RunCommandOutput

func (*RunCommand) ToRunCommandOutputWithContext added in v5.63.0

func (i *RunCommand) ToRunCommandOutputWithContext(ctx context.Context) RunCommandOutput

type RunCommandArgs added in v5.63.0

type RunCommandArgs struct {
	// An `errorBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to errorBlobUri storage blob.
	ErrorBlobManagedIdentity RunCommandErrorBlobManagedIdentityPtrInput
	// Specifies the Azure storage blob where script error stream will be uploaded.
	ErrorBlobUri pulumi.StringPtrInput
	// The Azure Region where the Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Virtual Machine Run Command. Changing this forces a new Virtual Machine Run Command to be created.
	Name pulumi.StringPtrInput
	// An `outputBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to outputBlobUri storage blob.
	OutputBlobManagedIdentity RunCommandOutputBlobManagedIdentityPtrInput
	// Specifies the Azure storage blob where script output stream will be uploaded. It can be basic blob URI with SAS token.
	OutputBlobUri pulumi.StringPtrInput
	// A list of `parameter` blocks as defined below. The parameters used by the script.
	Parameters RunCommandParameterArrayInput
	// A list of `protectedParameter` blocks as defined below. The protected parameters used by the script.
	ProtectedParameters RunCommandProtectedParameterArrayInput
	// Specifies the user account password on the VM when executing the Virtual Machine Run Command.
	RunAsPassword pulumi.StringPtrInput
	// Specifies the user account on the VM when executing the Virtual Machine Run Command.
	RunAsUser pulumi.StringPtrInput
	// A `source` block as defined below. The source of the run command script.
	Source RunCommandSourceInput
	// A mapping of tags which should be assigned to the Virtual Machine Run Command.
	Tags pulumi.StringMapInput
	// Specifies the Virtual Machine ID within which this Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	VirtualMachineId pulumi.StringInput
}

The set of arguments for constructing a RunCommand resource.

func (RunCommandArgs) ElementType added in v5.63.0

func (RunCommandArgs) ElementType() reflect.Type

type RunCommandArray added in v5.63.0

type RunCommandArray []RunCommandInput

func (RunCommandArray) ElementType added in v5.63.0

func (RunCommandArray) ElementType() reflect.Type

func (RunCommandArray) ToRunCommandArrayOutput added in v5.63.0

func (i RunCommandArray) ToRunCommandArrayOutput() RunCommandArrayOutput

func (RunCommandArray) ToRunCommandArrayOutputWithContext added in v5.63.0

func (i RunCommandArray) ToRunCommandArrayOutputWithContext(ctx context.Context) RunCommandArrayOutput

type RunCommandArrayInput added in v5.63.0

type RunCommandArrayInput interface {
	pulumi.Input

	ToRunCommandArrayOutput() RunCommandArrayOutput
	ToRunCommandArrayOutputWithContext(context.Context) RunCommandArrayOutput
}

RunCommandArrayInput is an input type that accepts RunCommandArray and RunCommandArrayOutput values. You can construct a concrete instance of `RunCommandArrayInput` via:

RunCommandArray{ RunCommandArgs{...} }

type RunCommandArrayOutput added in v5.63.0

type RunCommandArrayOutput struct{ *pulumi.OutputState }

func (RunCommandArrayOutput) ElementType added in v5.63.0

func (RunCommandArrayOutput) ElementType() reflect.Type

func (RunCommandArrayOutput) Index added in v5.63.0

func (RunCommandArrayOutput) ToRunCommandArrayOutput added in v5.63.0

func (o RunCommandArrayOutput) ToRunCommandArrayOutput() RunCommandArrayOutput

func (RunCommandArrayOutput) ToRunCommandArrayOutputWithContext added in v5.63.0

func (o RunCommandArrayOutput) ToRunCommandArrayOutputWithContext(ctx context.Context) RunCommandArrayOutput

type RunCommandErrorBlobManagedIdentity added in v5.63.0

type RunCommandErrorBlobManagedIdentity struct {
	// The client ID of the managed identity.
	ClientId *string `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId *string `pulumi:"objectId"`
}

type RunCommandErrorBlobManagedIdentityArgs added in v5.63.0

type RunCommandErrorBlobManagedIdentityArgs struct {
	// The client ID of the managed identity.
	ClientId pulumi.StringPtrInput `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId pulumi.StringPtrInput `pulumi:"objectId"`
}

func (RunCommandErrorBlobManagedIdentityArgs) ElementType added in v5.63.0

func (RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityOutput added in v5.63.0

func (i RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityOutput() RunCommandErrorBlobManagedIdentityOutput

func (RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityOutputWithContext added in v5.63.0

func (i RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityOutputWithContext(ctx context.Context) RunCommandErrorBlobManagedIdentityOutput

func (RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityPtrOutput added in v5.63.0

func (i RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityPtrOutput() RunCommandErrorBlobManagedIdentityPtrOutput

func (RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (i RunCommandErrorBlobManagedIdentityArgs) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandErrorBlobManagedIdentityPtrOutput

type RunCommandErrorBlobManagedIdentityInput added in v5.63.0

type RunCommandErrorBlobManagedIdentityInput interface {
	pulumi.Input

	ToRunCommandErrorBlobManagedIdentityOutput() RunCommandErrorBlobManagedIdentityOutput
	ToRunCommandErrorBlobManagedIdentityOutputWithContext(context.Context) RunCommandErrorBlobManagedIdentityOutput
}

RunCommandErrorBlobManagedIdentityInput is an input type that accepts RunCommandErrorBlobManagedIdentityArgs and RunCommandErrorBlobManagedIdentityOutput values. You can construct a concrete instance of `RunCommandErrorBlobManagedIdentityInput` via:

RunCommandErrorBlobManagedIdentityArgs{...}

type RunCommandErrorBlobManagedIdentityOutput added in v5.63.0

type RunCommandErrorBlobManagedIdentityOutput struct{ *pulumi.OutputState }

func (RunCommandErrorBlobManagedIdentityOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandErrorBlobManagedIdentityOutput) ElementType added in v5.63.0

func (RunCommandErrorBlobManagedIdentityOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityOutput added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityOutput() RunCommandErrorBlobManagedIdentityOutput

func (RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityOutputWithContext added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityOutputWithContext(ctx context.Context) RunCommandErrorBlobManagedIdentityOutput

func (RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityPtrOutput() RunCommandErrorBlobManagedIdentityPtrOutput

func (RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityOutput) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandErrorBlobManagedIdentityPtrOutput

type RunCommandErrorBlobManagedIdentityPtrInput added in v5.63.0

type RunCommandErrorBlobManagedIdentityPtrInput interface {
	pulumi.Input

	ToRunCommandErrorBlobManagedIdentityPtrOutput() RunCommandErrorBlobManagedIdentityPtrOutput
	ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext(context.Context) RunCommandErrorBlobManagedIdentityPtrOutput
}

RunCommandErrorBlobManagedIdentityPtrInput is an input type that accepts RunCommandErrorBlobManagedIdentityArgs, RunCommandErrorBlobManagedIdentityPtr and RunCommandErrorBlobManagedIdentityPtrOutput values. You can construct a concrete instance of `RunCommandErrorBlobManagedIdentityPtrInput` via:

        RunCommandErrorBlobManagedIdentityArgs{...}

or:

        nil

type RunCommandErrorBlobManagedIdentityPtrOutput added in v5.63.0

type RunCommandErrorBlobManagedIdentityPtrOutput struct{ *pulumi.OutputState }

func (RunCommandErrorBlobManagedIdentityPtrOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandErrorBlobManagedIdentityPtrOutput) Elem added in v5.63.0

func (RunCommandErrorBlobManagedIdentityPtrOutput) ElementType added in v5.63.0

func (RunCommandErrorBlobManagedIdentityPtrOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandErrorBlobManagedIdentityPtrOutput) ToRunCommandErrorBlobManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityPtrOutput) ToRunCommandErrorBlobManagedIdentityPtrOutput() RunCommandErrorBlobManagedIdentityPtrOutput

func (RunCommandErrorBlobManagedIdentityPtrOutput) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandErrorBlobManagedIdentityPtrOutput) ToRunCommandErrorBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandErrorBlobManagedIdentityPtrOutput

type RunCommandInput added in v5.63.0

type RunCommandInput interface {
	pulumi.Input

	ToRunCommandOutput() RunCommandOutput
	ToRunCommandOutputWithContext(ctx context.Context) RunCommandOutput
}

type RunCommandInstanceView added in v5.63.0

type RunCommandInstanceView struct {
	EndTime          *string `pulumi:"endTime"`
	ErrorMessage     *string `pulumi:"errorMessage"`
	ExecutionMessage *string `pulumi:"executionMessage"`
	ExecutionState   *string `pulumi:"executionState"`
	ExitCode         *int    `pulumi:"exitCode"`
	Output           *string `pulumi:"output"`
	StartTime        *string `pulumi:"startTime"`
}

type RunCommandInstanceViewArgs added in v5.63.0

type RunCommandInstanceViewArgs struct {
	EndTime          pulumi.StringPtrInput `pulumi:"endTime"`
	ErrorMessage     pulumi.StringPtrInput `pulumi:"errorMessage"`
	ExecutionMessage pulumi.StringPtrInput `pulumi:"executionMessage"`
	ExecutionState   pulumi.StringPtrInput `pulumi:"executionState"`
	ExitCode         pulumi.IntPtrInput    `pulumi:"exitCode"`
	Output           pulumi.StringPtrInput `pulumi:"output"`
	StartTime        pulumi.StringPtrInput `pulumi:"startTime"`
}

func (RunCommandInstanceViewArgs) ElementType added in v5.63.0

func (RunCommandInstanceViewArgs) ElementType() reflect.Type

func (RunCommandInstanceViewArgs) ToRunCommandInstanceViewOutput added in v5.63.0

func (i RunCommandInstanceViewArgs) ToRunCommandInstanceViewOutput() RunCommandInstanceViewOutput

func (RunCommandInstanceViewArgs) ToRunCommandInstanceViewOutputWithContext added in v5.63.0

func (i RunCommandInstanceViewArgs) ToRunCommandInstanceViewOutputWithContext(ctx context.Context) RunCommandInstanceViewOutput

type RunCommandInstanceViewArray added in v5.63.0

type RunCommandInstanceViewArray []RunCommandInstanceViewInput

func (RunCommandInstanceViewArray) ElementType added in v5.63.0

func (RunCommandInstanceViewArray) ToRunCommandInstanceViewArrayOutput added in v5.63.0

func (i RunCommandInstanceViewArray) ToRunCommandInstanceViewArrayOutput() RunCommandInstanceViewArrayOutput

func (RunCommandInstanceViewArray) ToRunCommandInstanceViewArrayOutputWithContext added in v5.63.0

func (i RunCommandInstanceViewArray) ToRunCommandInstanceViewArrayOutputWithContext(ctx context.Context) RunCommandInstanceViewArrayOutput

type RunCommandInstanceViewArrayInput added in v5.63.0

type RunCommandInstanceViewArrayInput interface {
	pulumi.Input

	ToRunCommandInstanceViewArrayOutput() RunCommandInstanceViewArrayOutput
	ToRunCommandInstanceViewArrayOutputWithContext(context.Context) RunCommandInstanceViewArrayOutput
}

RunCommandInstanceViewArrayInput is an input type that accepts RunCommandInstanceViewArray and RunCommandInstanceViewArrayOutput values. You can construct a concrete instance of `RunCommandInstanceViewArrayInput` via:

RunCommandInstanceViewArray{ RunCommandInstanceViewArgs{...} }

type RunCommandInstanceViewArrayOutput added in v5.63.0

type RunCommandInstanceViewArrayOutput struct{ *pulumi.OutputState }

func (RunCommandInstanceViewArrayOutput) ElementType added in v5.63.0

func (RunCommandInstanceViewArrayOutput) Index added in v5.63.0

func (RunCommandInstanceViewArrayOutput) ToRunCommandInstanceViewArrayOutput added in v5.63.0

func (o RunCommandInstanceViewArrayOutput) ToRunCommandInstanceViewArrayOutput() RunCommandInstanceViewArrayOutput

func (RunCommandInstanceViewArrayOutput) ToRunCommandInstanceViewArrayOutputWithContext added in v5.63.0

func (o RunCommandInstanceViewArrayOutput) ToRunCommandInstanceViewArrayOutputWithContext(ctx context.Context) RunCommandInstanceViewArrayOutput

type RunCommandInstanceViewInput added in v5.63.0

type RunCommandInstanceViewInput interface {
	pulumi.Input

	ToRunCommandInstanceViewOutput() RunCommandInstanceViewOutput
	ToRunCommandInstanceViewOutputWithContext(context.Context) RunCommandInstanceViewOutput
}

RunCommandInstanceViewInput is an input type that accepts RunCommandInstanceViewArgs and RunCommandInstanceViewOutput values. You can construct a concrete instance of `RunCommandInstanceViewInput` via:

RunCommandInstanceViewArgs{...}

type RunCommandInstanceViewOutput added in v5.63.0

type RunCommandInstanceViewOutput struct{ *pulumi.OutputState }

func (RunCommandInstanceViewOutput) ElementType added in v5.63.0

func (RunCommandInstanceViewOutput) EndTime added in v5.63.0

func (RunCommandInstanceViewOutput) ErrorMessage added in v5.63.0

func (RunCommandInstanceViewOutput) ExecutionMessage added in v5.63.0

func (RunCommandInstanceViewOutput) ExecutionState added in v5.63.0

func (RunCommandInstanceViewOutput) ExitCode added in v5.63.0

func (RunCommandInstanceViewOutput) Output added in v5.63.0

func (RunCommandInstanceViewOutput) StartTime added in v5.63.0

func (RunCommandInstanceViewOutput) ToRunCommandInstanceViewOutput added in v5.63.0

func (o RunCommandInstanceViewOutput) ToRunCommandInstanceViewOutput() RunCommandInstanceViewOutput

func (RunCommandInstanceViewOutput) ToRunCommandInstanceViewOutputWithContext added in v5.63.0

func (o RunCommandInstanceViewOutput) ToRunCommandInstanceViewOutputWithContext(ctx context.Context) RunCommandInstanceViewOutput

type RunCommandMap added in v5.63.0

type RunCommandMap map[string]RunCommandInput

func (RunCommandMap) ElementType added in v5.63.0

func (RunCommandMap) ElementType() reflect.Type

func (RunCommandMap) ToRunCommandMapOutput added in v5.63.0

func (i RunCommandMap) ToRunCommandMapOutput() RunCommandMapOutput

func (RunCommandMap) ToRunCommandMapOutputWithContext added in v5.63.0

func (i RunCommandMap) ToRunCommandMapOutputWithContext(ctx context.Context) RunCommandMapOutput

type RunCommandMapInput added in v5.63.0

type RunCommandMapInput interface {
	pulumi.Input

	ToRunCommandMapOutput() RunCommandMapOutput
	ToRunCommandMapOutputWithContext(context.Context) RunCommandMapOutput
}

RunCommandMapInput is an input type that accepts RunCommandMap and RunCommandMapOutput values. You can construct a concrete instance of `RunCommandMapInput` via:

RunCommandMap{ "key": RunCommandArgs{...} }

type RunCommandMapOutput added in v5.63.0

type RunCommandMapOutput struct{ *pulumi.OutputState }

func (RunCommandMapOutput) ElementType added in v5.63.0

func (RunCommandMapOutput) ElementType() reflect.Type

func (RunCommandMapOutput) MapIndex added in v5.63.0

func (RunCommandMapOutput) ToRunCommandMapOutput added in v5.63.0

func (o RunCommandMapOutput) ToRunCommandMapOutput() RunCommandMapOutput

func (RunCommandMapOutput) ToRunCommandMapOutputWithContext added in v5.63.0

func (o RunCommandMapOutput) ToRunCommandMapOutputWithContext(ctx context.Context) RunCommandMapOutput

type RunCommandOutput added in v5.63.0

type RunCommandOutput struct{ *pulumi.OutputState }

func (RunCommandOutput) ElementType added in v5.63.0

func (RunCommandOutput) ElementType() reflect.Type

func (RunCommandOutput) ErrorBlobManagedIdentity added in v5.63.0

An `errorBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to errorBlobUri storage blob.

func (RunCommandOutput) ErrorBlobUri added in v5.63.0

func (o RunCommandOutput) ErrorBlobUri() pulumi.StringPtrOutput

Specifies the Azure storage blob where script error stream will be uploaded.

func (RunCommandOutput) InstanceViews added in v5.63.0

func (RunCommandOutput) Location added in v5.63.0

func (o RunCommandOutput) Location() pulumi.StringOutput

The Azure Region where the Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.

func (RunCommandOutput) Name added in v5.63.0

Specifies the name of this Virtual Machine Run Command. Changing this forces a new Virtual Machine Run Command to be created.

func (RunCommandOutput) OutputBlobManagedIdentity added in v5.63.0

func (o RunCommandOutput) OutputBlobManagedIdentity() RunCommandOutputBlobManagedIdentityPtrOutput

An `outputBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to outputBlobUri storage blob.

func (RunCommandOutput) OutputBlobUri added in v5.63.0

func (o RunCommandOutput) OutputBlobUri() pulumi.StringPtrOutput

Specifies the Azure storage blob where script output stream will be uploaded. It can be basic blob URI with SAS token.

func (RunCommandOutput) Parameters added in v5.63.0

A list of `parameter` blocks as defined below. The parameters used by the script.

func (RunCommandOutput) ProtectedParameters added in v5.63.0

A list of `protectedParameter` blocks as defined below. The protected parameters used by the script.

func (RunCommandOutput) RunAsPassword added in v5.63.0

func (o RunCommandOutput) RunAsPassword() pulumi.StringPtrOutput

Specifies the user account password on the VM when executing the Virtual Machine Run Command.

func (RunCommandOutput) RunAsUser added in v5.63.0

func (o RunCommandOutput) RunAsUser() pulumi.StringPtrOutput

Specifies the user account on the VM when executing the Virtual Machine Run Command.

func (RunCommandOutput) Source added in v5.63.0

A `source` block as defined below. The source of the run command script.

func (RunCommandOutput) Tags added in v5.63.0

A mapping of tags which should be assigned to the Virtual Machine Run Command.

func (RunCommandOutput) ToRunCommandOutput added in v5.63.0

func (o RunCommandOutput) ToRunCommandOutput() RunCommandOutput

func (RunCommandOutput) ToRunCommandOutputWithContext added in v5.63.0

func (o RunCommandOutput) ToRunCommandOutputWithContext(ctx context.Context) RunCommandOutput

func (RunCommandOutput) VirtualMachineId added in v5.63.0

func (o RunCommandOutput) VirtualMachineId() pulumi.StringOutput

Specifies the Virtual Machine ID within which this Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.

type RunCommandOutputBlobManagedIdentity added in v5.63.0

type RunCommandOutputBlobManagedIdentity struct {
	// The client ID of the managed identity.
	ClientId *string `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId *string `pulumi:"objectId"`
}

type RunCommandOutputBlobManagedIdentityArgs added in v5.63.0

type RunCommandOutputBlobManagedIdentityArgs struct {
	// The client ID of the managed identity.
	ClientId pulumi.StringPtrInput `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId pulumi.StringPtrInput `pulumi:"objectId"`
}

func (RunCommandOutputBlobManagedIdentityArgs) ElementType added in v5.63.0

func (RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityOutput added in v5.63.0

func (i RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityOutput() RunCommandOutputBlobManagedIdentityOutput

func (RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityOutputWithContext added in v5.63.0

func (i RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityOutputWithContext(ctx context.Context) RunCommandOutputBlobManagedIdentityOutput

func (RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityPtrOutput added in v5.63.0

func (i RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityPtrOutput() RunCommandOutputBlobManagedIdentityPtrOutput

func (RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (i RunCommandOutputBlobManagedIdentityArgs) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandOutputBlobManagedIdentityPtrOutput

type RunCommandOutputBlobManagedIdentityInput added in v5.63.0

type RunCommandOutputBlobManagedIdentityInput interface {
	pulumi.Input

	ToRunCommandOutputBlobManagedIdentityOutput() RunCommandOutputBlobManagedIdentityOutput
	ToRunCommandOutputBlobManagedIdentityOutputWithContext(context.Context) RunCommandOutputBlobManagedIdentityOutput
}

RunCommandOutputBlobManagedIdentityInput is an input type that accepts RunCommandOutputBlobManagedIdentityArgs and RunCommandOutputBlobManagedIdentityOutput values. You can construct a concrete instance of `RunCommandOutputBlobManagedIdentityInput` via:

RunCommandOutputBlobManagedIdentityArgs{...}

type RunCommandOutputBlobManagedIdentityOutput added in v5.63.0

type RunCommandOutputBlobManagedIdentityOutput struct{ *pulumi.OutputState }

func (RunCommandOutputBlobManagedIdentityOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandOutputBlobManagedIdentityOutput) ElementType added in v5.63.0

func (RunCommandOutputBlobManagedIdentityOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityOutput added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityOutput() RunCommandOutputBlobManagedIdentityOutput

func (RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityOutputWithContext added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityOutputWithContext(ctx context.Context) RunCommandOutputBlobManagedIdentityOutput

func (RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityPtrOutput() RunCommandOutputBlobManagedIdentityPtrOutput

func (RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityOutput) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandOutputBlobManagedIdentityPtrOutput

type RunCommandOutputBlobManagedIdentityPtrInput added in v5.63.0

type RunCommandOutputBlobManagedIdentityPtrInput interface {
	pulumi.Input

	ToRunCommandOutputBlobManagedIdentityPtrOutput() RunCommandOutputBlobManagedIdentityPtrOutput
	ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext(context.Context) RunCommandOutputBlobManagedIdentityPtrOutput
}

RunCommandOutputBlobManagedIdentityPtrInput is an input type that accepts RunCommandOutputBlobManagedIdentityArgs, RunCommandOutputBlobManagedIdentityPtr and RunCommandOutputBlobManagedIdentityPtrOutput values. You can construct a concrete instance of `RunCommandOutputBlobManagedIdentityPtrInput` via:

        RunCommandOutputBlobManagedIdentityArgs{...}

or:

        nil

type RunCommandOutputBlobManagedIdentityPtrOutput added in v5.63.0

type RunCommandOutputBlobManagedIdentityPtrOutput struct{ *pulumi.OutputState }

func (RunCommandOutputBlobManagedIdentityPtrOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandOutputBlobManagedIdentityPtrOutput) Elem added in v5.63.0

func (RunCommandOutputBlobManagedIdentityPtrOutput) ElementType added in v5.63.0

func (RunCommandOutputBlobManagedIdentityPtrOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandOutputBlobManagedIdentityPtrOutput) ToRunCommandOutputBlobManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityPtrOutput) ToRunCommandOutputBlobManagedIdentityPtrOutput() RunCommandOutputBlobManagedIdentityPtrOutput

func (RunCommandOutputBlobManagedIdentityPtrOutput) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandOutputBlobManagedIdentityPtrOutput) ToRunCommandOutputBlobManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandOutputBlobManagedIdentityPtrOutput

type RunCommandParameter added in v5.63.0

type RunCommandParameter struct {
	// The run parameter name.
	Name string `pulumi:"name"`
	// The run parameter value.
	Value string `pulumi:"value"`
}

type RunCommandParameterArgs added in v5.63.0

type RunCommandParameterArgs struct {
	// The run parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The run parameter value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (RunCommandParameterArgs) ElementType added in v5.63.0

func (RunCommandParameterArgs) ElementType() reflect.Type

func (RunCommandParameterArgs) ToRunCommandParameterOutput added in v5.63.0

func (i RunCommandParameterArgs) ToRunCommandParameterOutput() RunCommandParameterOutput

func (RunCommandParameterArgs) ToRunCommandParameterOutputWithContext added in v5.63.0

func (i RunCommandParameterArgs) ToRunCommandParameterOutputWithContext(ctx context.Context) RunCommandParameterOutput

type RunCommandParameterArray added in v5.63.0

type RunCommandParameterArray []RunCommandParameterInput

func (RunCommandParameterArray) ElementType added in v5.63.0

func (RunCommandParameterArray) ElementType() reflect.Type

func (RunCommandParameterArray) ToRunCommandParameterArrayOutput added in v5.63.0

func (i RunCommandParameterArray) ToRunCommandParameterArrayOutput() RunCommandParameterArrayOutput

func (RunCommandParameterArray) ToRunCommandParameterArrayOutputWithContext added in v5.63.0

func (i RunCommandParameterArray) ToRunCommandParameterArrayOutputWithContext(ctx context.Context) RunCommandParameterArrayOutput

type RunCommandParameterArrayInput added in v5.63.0

type RunCommandParameterArrayInput interface {
	pulumi.Input

	ToRunCommandParameterArrayOutput() RunCommandParameterArrayOutput
	ToRunCommandParameterArrayOutputWithContext(context.Context) RunCommandParameterArrayOutput
}

RunCommandParameterArrayInput is an input type that accepts RunCommandParameterArray and RunCommandParameterArrayOutput values. You can construct a concrete instance of `RunCommandParameterArrayInput` via:

RunCommandParameterArray{ RunCommandParameterArgs{...} }

type RunCommandParameterArrayOutput added in v5.63.0

type RunCommandParameterArrayOutput struct{ *pulumi.OutputState }

func (RunCommandParameterArrayOutput) ElementType added in v5.63.0

func (RunCommandParameterArrayOutput) Index added in v5.63.0

func (RunCommandParameterArrayOutput) ToRunCommandParameterArrayOutput added in v5.63.0

func (o RunCommandParameterArrayOutput) ToRunCommandParameterArrayOutput() RunCommandParameterArrayOutput

func (RunCommandParameterArrayOutput) ToRunCommandParameterArrayOutputWithContext added in v5.63.0

func (o RunCommandParameterArrayOutput) ToRunCommandParameterArrayOutputWithContext(ctx context.Context) RunCommandParameterArrayOutput

type RunCommandParameterInput added in v5.63.0

type RunCommandParameterInput interface {
	pulumi.Input

	ToRunCommandParameterOutput() RunCommandParameterOutput
	ToRunCommandParameterOutputWithContext(context.Context) RunCommandParameterOutput
}

RunCommandParameterInput is an input type that accepts RunCommandParameterArgs and RunCommandParameterOutput values. You can construct a concrete instance of `RunCommandParameterInput` via:

RunCommandParameterArgs{...}

type RunCommandParameterOutput added in v5.63.0

type RunCommandParameterOutput struct{ *pulumi.OutputState }

func (RunCommandParameterOutput) ElementType added in v5.63.0

func (RunCommandParameterOutput) ElementType() reflect.Type

func (RunCommandParameterOutput) Name added in v5.63.0

The run parameter name.

func (RunCommandParameterOutput) ToRunCommandParameterOutput added in v5.63.0

func (o RunCommandParameterOutput) ToRunCommandParameterOutput() RunCommandParameterOutput

func (RunCommandParameterOutput) ToRunCommandParameterOutputWithContext added in v5.63.0

func (o RunCommandParameterOutput) ToRunCommandParameterOutputWithContext(ctx context.Context) RunCommandParameterOutput

func (RunCommandParameterOutput) Value added in v5.63.0

The run parameter value.

type RunCommandProtectedParameter added in v5.63.0

type RunCommandProtectedParameter struct {
	// The run parameter name.
	Name string `pulumi:"name"`
	// The run parameter value.
	Value string `pulumi:"value"`
}

type RunCommandProtectedParameterArgs added in v5.63.0

type RunCommandProtectedParameterArgs struct {
	// The run parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The run parameter value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (RunCommandProtectedParameterArgs) ElementType added in v5.63.0

func (RunCommandProtectedParameterArgs) ToRunCommandProtectedParameterOutput added in v5.63.0

func (i RunCommandProtectedParameterArgs) ToRunCommandProtectedParameterOutput() RunCommandProtectedParameterOutput

func (RunCommandProtectedParameterArgs) ToRunCommandProtectedParameterOutputWithContext added in v5.63.0

func (i RunCommandProtectedParameterArgs) ToRunCommandProtectedParameterOutputWithContext(ctx context.Context) RunCommandProtectedParameterOutput

type RunCommandProtectedParameterArray added in v5.63.0

type RunCommandProtectedParameterArray []RunCommandProtectedParameterInput

func (RunCommandProtectedParameterArray) ElementType added in v5.63.0

func (RunCommandProtectedParameterArray) ToRunCommandProtectedParameterArrayOutput added in v5.63.0

func (i RunCommandProtectedParameterArray) ToRunCommandProtectedParameterArrayOutput() RunCommandProtectedParameterArrayOutput

func (RunCommandProtectedParameterArray) ToRunCommandProtectedParameterArrayOutputWithContext added in v5.63.0

func (i RunCommandProtectedParameterArray) ToRunCommandProtectedParameterArrayOutputWithContext(ctx context.Context) RunCommandProtectedParameterArrayOutput

type RunCommandProtectedParameterArrayInput added in v5.63.0

type RunCommandProtectedParameterArrayInput interface {
	pulumi.Input

	ToRunCommandProtectedParameterArrayOutput() RunCommandProtectedParameterArrayOutput
	ToRunCommandProtectedParameterArrayOutputWithContext(context.Context) RunCommandProtectedParameterArrayOutput
}

RunCommandProtectedParameterArrayInput is an input type that accepts RunCommandProtectedParameterArray and RunCommandProtectedParameterArrayOutput values. You can construct a concrete instance of `RunCommandProtectedParameterArrayInput` via:

RunCommandProtectedParameterArray{ RunCommandProtectedParameterArgs{...} }

type RunCommandProtectedParameterArrayOutput added in v5.63.0

type RunCommandProtectedParameterArrayOutput struct{ *pulumi.OutputState }

func (RunCommandProtectedParameterArrayOutput) ElementType added in v5.63.0

func (RunCommandProtectedParameterArrayOutput) Index added in v5.63.0

func (RunCommandProtectedParameterArrayOutput) ToRunCommandProtectedParameterArrayOutput added in v5.63.0

func (o RunCommandProtectedParameterArrayOutput) ToRunCommandProtectedParameterArrayOutput() RunCommandProtectedParameterArrayOutput

func (RunCommandProtectedParameterArrayOutput) ToRunCommandProtectedParameterArrayOutputWithContext added in v5.63.0

func (o RunCommandProtectedParameterArrayOutput) ToRunCommandProtectedParameterArrayOutputWithContext(ctx context.Context) RunCommandProtectedParameterArrayOutput

type RunCommandProtectedParameterInput added in v5.63.0

type RunCommandProtectedParameterInput interface {
	pulumi.Input

	ToRunCommandProtectedParameterOutput() RunCommandProtectedParameterOutput
	ToRunCommandProtectedParameterOutputWithContext(context.Context) RunCommandProtectedParameterOutput
}

RunCommandProtectedParameterInput is an input type that accepts RunCommandProtectedParameterArgs and RunCommandProtectedParameterOutput values. You can construct a concrete instance of `RunCommandProtectedParameterInput` via:

RunCommandProtectedParameterArgs{...}

type RunCommandProtectedParameterOutput added in v5.63.0

type RunCommandProtectedParameterOutput struct{ *pulumi.OutputState }

func (RunCommandProtectedParameterOutput) ElementType added in v5.63.0

func (RunCommandProtectedParameterOutput) Name added in v5.63.0

The run parameter name.

func (RunCommandProtectedParameterOutput) ToRunCommandProtectedParameterOutput added in v5.63.0

func (o RunCommandProtectedParameterOutput) ToRunCommandProtectedParameterOutput() RunCommandProtectedParameterOutput

func (RunCommandProtectedParameterOutput) ToRunCommandProtectedParameterOutputWithContext added in v5.63.0

func (o RunCommandProtectedParameterOutput) ToRunCommandProtectedParameterOutputWithContext(ctx context.Context) RunCommandProtectedParameterOutput

func (RunCommandProtectedParameterOutput) Value added in v5.63.0

The run parameter value.

type RunCommandSource added in v5.63.0

type RunCommandSource struct {
	CommandId *string `pulumi:"commandId"`
	Script    *string `pulumi:"script"`
	ScriptUri *string `pulumi:"scriptUri"`
	// A `scriptUriManagedIdentity` block as defined above.
	ScriptUriManagedIdentity *RunCommandSourceScriptUriManagedIdentity `pulumi:"scriptUriManagedIdentity"`
}

type RunCommandSourceArgs added in v5.63.0

type RunCommandSourceArgs struct {
	CommandId pulumi.StringPtrInput `pulumi:"commandId"`
	Script    pulumi.StringPtrInput `pulumi:"script"`
	ScriptUri pulumi.StringPtrInput `pulumi:"scriptUri"`
	// A `scriptUriManagedIdentity` block as defined above.
	ScriptUriManagedIdentity RunCommandSourceScriptUriManagedIdentityPtrInput `pulumi:"scriptUriManagedIdentity"`
}

func (RunCommandSourceArgs) ElementType added in v5.63.0

func (RunCommandSourceArgs) ElementType() reflect.Type

func (RunCommandSourceArgs) ToRunCommandSourceOutput added in v5.63.0

func (i RunCommandSourceArgs) ToRunCommandSourceOutput() RunCommandSourceOutput

func (RunCommandSourceArgs) ToRunCommandSourceOutputWithContext added in v5.63.0

func (i RunCommandSourceArgs) ToRunCommandSourceOutputWithContext(ctx context.Context) RunCommandSourceOutput

func (RunCommandSourceArgs) ToRunCommandSourcePtrOutput added in v5.63.0

func (i RunCommandSourceArgs) ToRunCommandSourcePtrOutput() RunCommandSourcePtrOutput

func (RunCommandSourceArgs) ToRunCommandSourcePtrOutputWithContext added in v5.63.0

func (i RunCommandSourceArgs) ToRunCommandSourcePtrOutputWithContext(ctx context.Context) RunCommandSourcePtrOutput

type RunCommandSourceInput added in v5.63.0

type RunCommandSourceInput interface {
	pulumi.Input

	ToRunCommandSourceOutput() RunCommandSourceOutput
	ToRunCommandSourceOutputWithContext(context.Context) RunCommandSourceOutput
}

RunCommandSourceInput is an input type that accepts RunCommandSourceArgs and RunCommandSourceOutput values. You can construct a concrete instance of `RunCommandSourceInput` via:

RunCommandSourceArgs{...}

type RunCommandSourceOutput added in v5.63.0

type RunCommandSourceOutput struct{ *pulumi.OutputState }

func (RunCommandSourceOutput) CommandId added in v5.63.0

func (RunCommandSourceOutput) ElementType added in v5.63.0

func (RunCommandSourceOutput) ElementType() reflect.Type

func (RunCommandSourceOutput) Script added in v5.63.0

func (RunCommandSourceOutput) ScriptUri added in v5.63.0

func (RunCommandSourceOutput) ScriptUriManagedIdentity added in v5.63.0

A `scriptUriManagedIdentity` block as defined above.

func (RunCommandSourceOutput) ToRunCommandSourceOutput added in v5.63.0

func (o RunCommandSourceOutput) ToRunCommandSourceOutput() RunCommandSourceOutput

func (RunCommandSourceOutput) ToRunCommandSourceOutputWithContext added in v5.63.0

func (o RunCommandSourceOutput) ToRunCommandSourceOutputWithContext(ctx context.Context) RunCommandSourceOutput

func (RunCommandSourceOutput) ToRunCommandSourcePtrOutput added in v5.63.0

func (o RunCommandSourceOutput) ToRunCommandSourcePtrOutput() RunCommandSourcePtrOutput

func (RunCommandSourceOutput) ToRunCommandSourcePtrOutputWithContext added in v5.63.0

func (o RunCommandSourceOutput) ToRunCommandSourcePtrOutputWithContext(ctx context.Context) RunCommandSourcePtrOutput

type RunCommandSourcePtrInput added in v5.63.0

type RunCommandSourcePtrInput interface {
	pulumi.Input

	ToRunCommandSourcePtrOutput() RunCommandSourcePtrOutput
	ToRunCommandSourcePtrOutputWithContext(context.Context) RunCommandSourcePtrOutput
}

RunCommandSourcePtrInput is an input type that accepts RunCommandSourceArgs, RunCommandSourcePtr and RunCommandSourcePtrOutput values. You can construct a concrete instance of `RunCommandSourcePtrInput` via:

        RunCommandSourceArgs{...}

or:

        nil

func RunCommandSourcePtr added in v5.63.0

func RunCommandSourcePtr(v *RunCommandSourceArgs) RunCommandSourcePtrInput

type RunCommandSourcePtrOutput added in v5.63.0

type RunCommandSourcePtrOutput struct{ *pulumi.OutputState }

func (RunCommandSourcePtrOutput) CommandId added in v5.63.0

func (RunCommandSourcePtrOutput) Elem added in v5.63.0

func (RunCommandSourcePtrOutput) ElementType added in v5.63.0

func (RunCommandSourcePtrOutput) ElementType() reflect.Type

func (RunCommandSourcePtrOutput) Script added in v5.63.0

func (RunCommandSourcePtrOutput) ScriptUri added in v5.63.0

func (RunCommandSourcePtrOutput) ScriptUriManagedIdentity added in v5.63.0

A `scriptUriManagedIdentity` block as defined above.

func (RunCommandSourcePtrOutput) ToRunCommandSourcePtrOutput added in v5.63.0

func (o RunCommandSourcePtrOutput) ToRunCommandSourcePtrOutput() RunCommandSourcePtrOutput

func (RunCommandSourcePtrOutput) ToRunCommandSourcePtrOutputWithContext added in v5.63.0

func (o RunCommandSourcePtrOutput) ToRunCommandSourcePtrOutputWithContext(ctx context.Context) RunCommandSourcePtrOutput

type RunCommandSourceScriptUriManagedIdentity added in v5.63.0

type RunCommandSourceScriptUriManagedIdentity struct {
	// The client ID of the managed identity.
	ClientId *string `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId *string `pulumi:"objectId"`
}

type RunCommandSourceScriptUriManagedIdentityArgs added in v5.63.0

type RunCommandSourceScriptUriManagedIdentityArgs struct {
	// The client ID of the managed identity.
	ClientId pulumi.StringPtrInput `pulumi:"clientId"`
	// The object ID of the managed identity.
	ObjectId pulumi.StringPtrInput `pulumi:"objectId"`
}

func (RunCommandSourceScriptUriManagedIdentityArgs) ElementType added in v5.63.0

func (RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityOutput added in v5.63.0

func (i RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityOutput() RunCommandSourceScriptUriManagedIdentityOutput

func (RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityOutputWithContext added in v5.63.0

func (i RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityOutputWithContext(ctx context.Context) RunCommandSourceScriptUriManagedIdentityOutput

func (RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityPtrOutput added in v5.63.0

func (i RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityPtrOutput() RunCommandSourceScriptUriManagedIdentityPtrOutput

func (RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext added in v5.63.0

func (i RunCommandSourceScriptUriManagedIdentityArgs) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandSourceScriptUriManagedIdentityPtrOutput

type RunCommandSourceScriptUriManagedIdentityInput added in v5.63.0

type RunCommandSourceScriptUriManagedIdentityInput interface {
	pulumi.Input

	ToRunCommandSourceScriptUriManagedIdentityOutput() RunCommandSourceScriptUriManagedIdentityOutput
	ToRunCommandSourceScriptUriManagedIdentityOutputWithContext(context.Context) RunCommandSourceScriptUriManagedIdentityOutput
}

RunCommandSourceScriptUriManagedIdentityInput is an input type that accepts RunCommandSourceScriptUriManagedIdentityArgs and RunCommandSourceScriptUriManagedIdentityOutput values. You can construct a concrete instance of `RunCommandSourceScriptUriManagedIdentityInput` via:

RunCommandSourceScriptUriManagedIdentityArgs{...}

type RunCommandSourceScriptUriManagedIdentityOutput added in v5.63.0

type RunCommandSourceScriptUriManagedIdentityOutput struct{ *pulumi.OutputState }

func (RunCommandSourceScriptUriManagedIdentityOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandSourceScriptUriManagedIdentityOutput) ElementType added in v5.63.0

func (RunCommandSourceScriptUriManagedIdentityOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityOutput added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityOutput() RunCommandSourceScriptUriManagedIdentityOutput

func (RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityOutputWithContext added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityOutputWithContext(ctx context.Context) RunCommandSourceScriptUriManagedIdentityOutput

func (RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutput() RunCommandSourceScriptUriManagedIdentityPtrOutput

func (RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandSourceScriptUriManagedIdentityPtrOutput

type RunCommandSourceScriptUriManagedIdentityPtrInput added in v5.63.0

type RunCommandSourceScriptUriManagedIdentityPtrInput interface {
	pulumi.Input

	ToRunCommandSourceScriptUriManagedIdentityPtrOutput() RunCommandSourceScriptUriManagedIdentityPtrOutput
	ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext(context.Context) RunCommandSourceScriptUriManagedIdentityPtrOutput
}

RunCommandSourceScriptUriManagedIdentityPtrInput is an input type that accepts RunCommandSourceScriptUriManagedIdentityArgs, RunCommandSourceScriptUriManagedIdentityPtr and RunCommandSourceScriptUriManagedIdentityPtrOutput values. You can construct a concrete instance of `RunCommandSourceScriptUriManagedIdentityPtrInput` via:

        RunCommandSourceScriptUriManagedIdentityArgs{...}

or:

        nil

type RunCommandSourceScriptUriManagedIdentityPtrOutput added in v5.63.0

type RunCommandSourceScriptUriManagedIdentityPtrOutput struct{ *pulumi.OutputState }

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) ClientId added in v5.63.0

The client ID of the managed identity.

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) Elem added in v5.63.0

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) ElementType added in v5.63.0

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) ObjectId added in v5.63.0

The object ID of the managed identity.

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutput added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityPtrOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutput() RunCommandSourceScriptUriManagedIdentityPtrOutput

func (RunCommandSourceScriptUriManagedIdentityPtrOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext added in v5.63.0

func (o RunCommandSourceScriptUriManagedIdentityPtrOutput) ToRunCommandSourceScriptUriManagedIdentityPtrOutputWithContext(ctx context.Context) RunCommandSourceScriptUriManagedIdentityPtrOutput

type RunCommandState added in v5.63.0

type RunCommandState struct {
	// An `errorBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to errorBlobUri storage blob.
	ErrorBlobManagedIdentity RunCommandErrorBlobManagedIdentityPtrInput
	// Specifies the Azure storage blob where script error stream will be uploaded.
	ErrorBlobUri  pulumi.StringPtrInput
	InstanceViews RunCommandInstanceViewArrayInput
	// The Azure Region where the Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Virtual Machine Run Command. Changing this forces a new Virtual Machine Run Command to be created.
	Name pulumi.StringPtrInput
	// An `outputBlobManagedIdentity` block as defined below. User-assigned managed Identity that has access to outputBlobUri storage blob.
	OutputBlobManagedIdentity RunCommandOutputBlobManagedIdentityPtrInput
	// Specifies the Azure storage blob where script output stream will be uploaded. It can be basic blob URI with SAS token.
	OutputBlobUri pulumi.StringPtrInput
	// A list of `parameter` blocks as defined below. The parameters used by the script.
	Parameters RunCommandParameterArrayInput
	// A list of `protectedParameter` blocks as defined below. The protected parameters used by the script.
	ProtectedParameters RunCommandProtectedParameterArrayInput
	// Specifies the user account password on the VM when executing the Virtual Machine Run Command.
	RunAsPassword pulumi.StringPtrInput
	// Specifies the user account on the VM when executing the Virtual Machine Run Command.
	RunAsUser pulumi.StringPtrInput
	// A `source` block as defined below. The source of the run command script.
	Source RunCommandSourcePtrInput
	// A mapping of tags which should be assigned to the Virtual Machine Run Command.
	Tags pulumi.StringMapInput
	// Specifies the Virtual Machine ID within which this Virtual Machine Run Command should exist. Changing this forces a new Virtual Machine Run Command to be created.
	VirtualMachineId pulumi.StringPtrInput
}

func (RunCommandState) ElementType added in v5.63.0

func (RunCommandState) ElementType() reflect.Type

type ScaleSet

type ScaleSet struct {
	pulumi.CustomResourceState

	// Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when `upgradePolicyMode` is set to `Rolling`. Defaults to `false`.
	AutomaticOsUpgrade pulumi.BoolPtrOutput `pulumi:"automaticOsUpgrade"`
	// A `bootDiagnostics` block as referenced below.
	BootDiagnostics ScaleSetBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `evictionPolicy` can only be set when `priority` is set to `Low`.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Can be specified multiple times to add extension profiles to the scale set. Each `extension` block supports the fields documented below.
	Extensions ScaleSetExtensionArrayOutput `pulumi:"extensions"`
	// Specifies the identifier for the load balancer health probe. Required when using `Rolling` as your `upgradePolicyMode`.
	HealthProbeId pulumi.StringPtrOutput `pulumi:"healthProbeId"`
	// An `identity` block as defined below.
	Identity ScaleSetIdentityOutput `pulumi:"identity"`
	// (Optional, when a Windows machine) Specifies the Windows OS license type. If supplied, the only allowed values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringOutput `pulumi:"licenseType"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A collection of `networkProfile` blocks as documented below.
	NetworkProfiles ScaleSetNetworkProfileArrayOutput `pulumi:"networkProfiles"`
	// A `osProfile` block as documented below.
	OsProfile ScaleSetOsProfileOutput `pulumi:"osProfile"`
	// A `osProfileLinuxConfig` block as documented below.
	OsProfileLinuxConfig ScaleSetOsProfileLinuxConfigOutput `pulumi:"osProfileLinuxConfig"`
	// A collection of `osProfileSecrets` blocks as documented below.
	OsProfileSecrets ScaleSetOsProfileSecretArrayOutput `pulumi:"osProfileSecrets"`
	// A `osProfileWindowsConfig` block as documented below.
	OsProfileWindowsConfig ScaleSetOsProfileWindowsConfigPtrOutput `pulumi:"osProfileWindowsConfig"`
	// Specifies whether the virtual machine scale set should be overprovisioned. Defaults to `true`.
	Overprovision pulumi.BoolPtrOutput `pulumi:"overprovision"`
	// A `plan` block as documented below.
	Plan ScaleSetPlanPtrOutput `pulumi:"plan"`
	// Specifies the priority for the Virtual Machines in the Scale Set. Possible values are `Low` and `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `rollingUpgradePolicy` block as defined below. This is only applicable when the `upgradePolicyMode` is `Rolling`.
	RollingUpgradePolicy ScaleSetRollingUpgradePolicyPtrOutput `pulumi:"rollingUpgradePolicy"`
	// Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Changing this forces a new resource to be created. See [documentation](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups) for more information. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrOutput `pulumi:"singlePlacementGroup"`
	// A `sku` block as documented below.
	Sku ScaleSetSkuOutput `pulumi:"sku"`
	// A `storageProfileDataDisk` block as documented below.
	StorageProfileDataDisks ScaleSetStorageProfileDataDiskArrayOutput `pulumi:"storageProfileDataDisks"`
	// A `storageProfileImageReference` block as documented below.
	StorageProfileImageReference ScaleSetStorageProfileImageReferenceOutput `pulumi:"storageProfileImageReference"`
	// A `storageProfileOsDisk` block as documented below.
	StorageProfileOsDisk ScaleSetStorageProfileOsDiskOutput `pulumi:"storageProfileOsDisk"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, `Rolling`, `Manual`, or `Automatic`. When choosing `Rolling`, you will need to set a health probe.
	UpgradePolicyMode pulumi.StringOutput `pulumi:"upgradePolicyMode"`
	// A collection of availability zones to spread the Virtual Machines over. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a virtual machine scale set.

## Example Usage

### With Managed Disks (Recommended)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/lb"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-std/sdk/go/std"
"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
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("acctvn"),
			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("acctsub"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "example", &network.PublicIpArgs{
			Name:              pulumi.String("test"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			AllocationMethod:  pulumi.String("Static"),
			DomainNameLabel:   example.Name,
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		exampleLoadBalancer, err := lb.NewLoadBalancer(ctx, "example", &lb.LoadBalancerArgs{
			Name:              pulumi.String("test"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			FrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{
				&lb.LoadBalancerFrontendIpConfigurationArgs{
					Name:              pulumi.String("PublicIPAddress"),
					PublicIpAddressId: examplePublicIp.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		bpepool, err := lb.NewBackendAddressPool(ctx, "bpepool", &lb.BackendAddressPoolArgs{
			LoadbalancerId: exampleLoadBalancer.ID(),
			Name:           pulumi.String("BackEndAddressPool"),
		})
		if err != nil {
			return err
		}
		lbnatpool, err := lb.NewNatPool(ctx, "lbnatpool", &lb.NatPoolArgs{
			ResourceGroupName:           example.Name,
			Name:                        pulumi.String("ssh"),
			LoadbalancerId:              exampleLoadBalancer.ID(),
			Protocol:                    pulumi.String("Tcp"),
			FrontendPortStart:           pulumi.Int(50000),
			FrontendPortEnd:             pulumi.Int(50119),
			BackendPort:                 pulumi.Int(22),
			FrontendIpConfigurationName: pulumi.String("PublicIPAddress"),
		})
		if err != nil {
			return err
		}
		exampleProbe, err := lb.NewProbe(ctx, "example", &lb.ProbeArgs{
			LoadbalancerId: exampleLoadBalancer.ID(),
			Name:           pulumi.String("http-probe"),
			Protocol:       pulumi.String("Http"),
			RequestPath:    pulumi.String("/health"),
			Port:           pulumi.Int(8080),
		})
		if err != nil {
			return err
		}
		invokeFile, err := std.File(ctx, &std.FileArgs{
			Input: "~/.ssh/demo_key.pub",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
			Name:               pulumi.String("mytestscaleset-1"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			AutomaticOsUpgrade: pulumi.Bool(true),
			UpgradePolicyMode:  pulumi.String("Rolling"),
			RollingUpgradePolicy: &compute.ScaleSetRollingUpgradePolicyArgs{
				MaxBatchInstancePercent:             pulumi.Int(20),
				MaxUnhealthyInstancePercent:         pulumi.Int(20),
				MaxUnhealthyUpgradedInstancePercent: pulumi.Int(5),
				PauseTimeBetweenBatches:             pulumi.String("PT0S"),
			},
			HealthProbeId: exampleProbe.ID(),
			Sku: &compute.ScaleSetSkuArgs{
				Name:     pulumi.String("Standard_F2"),
				Tier:     pulumi.String("Standard"),
				Capacity: pulumi.Int(2),
			},
			StorageProfileImageReference: &compute.ScaleSetStorageProfileImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			StorageProfileOsDisk: &compute.ScaleSetStorageProfileOsDiskArgs{
				Name:            pulumi.String(""),
				Caching:         pulumi.String("ReadWrite"),
				CreateOption:    pulumi.String("FromImage"),
				ManagedDiskType: pulumi.String("Standard_LRS"),
			},
			StorageProfileDataDisks: compute.ScaleSetStorageProfileDataDiskArray{
				&compute.ScaleSetStorageProfileDataDiskArgs{
					Lun:          pulumi.Int(0),
					Caching:      pulumi.String("ReadWrite"),
					CreateOption: pulumi.String("Empty"),
					DiskSizeGb:   pulumi.Int(10),
				},
			},
			OsProfile: &compute.ScaleSetOsProfileArgs{
				ComputerNamePrefix: pulumi.String("testvm"),
				AdminUsername:      pulumi.String("myadmin"),
			},
			OsProfileLinuxConfig: &compute.ScaleSetOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(true),
				SshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{
					&compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{
						Path:    pulumi.String("/home/myadmin/.ssh/authorized_keys"),
						KeyData: invokeFile.Result,
					},
				},
			},
			NetworkProfiles: compute.ScaleSetNetworkProfileArray{
				&compute.ScaleSetNetworkProfileArgs{
					Name:    pulumi.String("mynetworkprofile"),
					Primary: pulumi.Bool(true),
					IpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{
						&compute.ScaleSetNetworkProfileIpConfigurationArgs{
							Name:     pulumi.String("TestIPConfiguration"),
							Primary:  pulumi.Bool(true),
							SubnetId: exampleSubnet.ID(),
							LoadBalancerBackendAddressPoolIds: pulumi.StringArray{
								bpepool.ID(),
							},
							LoadBalancerInboundNatRulesIds: pulumi.StringArray{
								lbnatpool.ID(),
							},
						},
					},
				},
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With Unmanaged Disks

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi-std/sdk/go/std"
"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
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("acctvn"),
			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("acctsub"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
			Name:                   pulumi.String("accsa"),
			ResourceGroupName:      example.Name,
			Location:               example.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		exampleContainer, err := storage.NewContainer(ctx, "example", &storage.ContainerArgs{
			Name:                pulumi.String("vhds"),
			StorageAccountName:  exampleAccount.Name,
			ContainerAccessType: pulumi.String("private"),
		})
		if err != nil {
			return err
		}
		invokeFile, err := std.File(ctx, &std.FileArgs{
			Input: "~/.ssh/demo_key.pub",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
			Name:              pulumi.String("mytestscaleset-1"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			UpgradePolicyMode: pulumi.String("Manual"),
			Sku: &compute.ScaleSetSkuArgs{
				Name:     pulumi.String("Standard_F2"),
				Tier:     pulumi.String("Standard"),
				Capacity: pulumi.Int(2),
			},
			OsProfile: &compute.ScaleSetOsProfileArgs{
				ComputerNamePrefix: pulumi.String("testvm"),
				AdminUsername:      pulumi.String("myadmin"),
			},
			OsProfileLinuxConfig: &compute.ScaleSetOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(true),
				SshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{
					&compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{
						Path:    pulumi.String("/home/myadmin/.ssh/authorized_keys"),
						KeyData: invokeFile.Result,
					},
				},
			},
			NetworkProfiles: compute.ScaleSetNetworkProfileArray{
				&compute.ScaleSetNetworkProfileArgs{
					Name:    pulumi.String("TestNetworkProfile"),
					Primary: pulumi.Bool(true),
					IpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{
						&compute.ScaleSetNetworkProfileIpConfigurationArgs{
							Name:     pulumi.String("TestIPConfiguration"),
							Primary:  pulumi.Bool(true),
							SubnetId: exampleSubnet.ID(),
						},
					},
				},
			},
			StorageProfileOsDisk: &compute.ScaleSetStorageProfileOsDiskArgs{
				Name:         pulumi.String("osDiskProfile"),
				Caching:      pulumi.String("ReadWrite"),
				CreateOption: pulumi.String("FromImage"),
				VhdContainers: pulumi.StringArray{
					pulumi.All(exampleAccount.PrimaryBlobEndpoint, exampleContainer.Name).ApplyT(func(_args []interface{}) (string, error) {
						primaryBlobEndpoint := _args[0].(string)
						name := _args[1].(string)
						return fmt.Sprintf("%v%v", primaryBlobEndpoint, name), nil
					}).(pulumi.StringOutput),
				},
			},
			StorageProfileImageReference: &compute.ScaleSetStorageProfileImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Example of storageProfileImageReference with id

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.NewImage(ctx, "example", &compute.ImageArgs{
			Name: pulumi.String("test"),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
			Name: pulumi.String("test"),
			StorageProfileImageReference: &compute.ScaleSetStorageProfileImageReferenceArgs{
				Id: example.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Virtual Machine Scale Sets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/scaleSet:ScaleSet scaleset1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1 ```

func GetScaleSet

func GetScaleSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScaleSetState, opts ...pulumi.ResourceOption) (*ScaleSet, error)

GetScaleSet gets an existing ScaleSet 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 NewScaleSet

func NewScaleSet(ctx *pulumi.Context,
	name string, args *ScaleSetArgs, opts ...pulumi.ResourceOption) (*ScaleSet, error)

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

func (*ScaleSet) ElementType

func (*ScaleSet) ElementType() reflect.Type

func (*ScaleSet) ToScaleSetOutput

func (i *ScaleSet) ToScaleSetOutput() ScaleSetOutput

func (*ScaleSet) ToScaleSetOutputWithContext

func (i *ScaleSet) ToScaleSetOutputWithContext(ctx context.Context) ScaleSetOutput

type ScaleSetArgs

type ScaleSetArgs struct {
	// Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when `upgradePolicyMode` is set to `Rolling`. Defaults to `false`.
	AutomaticOsUpgrade pulumi.BoolPtrInput
	// A `bootDiagnostics` block as referenced below.
	BootDiagnostics ScaleSetBootDiagnosticsPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `evictionPolicy` can only be set when `priority` is set to `Low`.
	EvictionPolicy pulumi.StringPtrInput
	// Can be specified multiple times to add extension profiles to the scale set. Each `extension` block supports the fields documented below.
	Extensions ScaleSetExtensionArrayInput
	// Specifies the identifier for the load balancer health probe. Required when using `Rolling` as your `upgradePolicyMode`.
	HealthProbeId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity ScaleSetIdentityPtrInput
	// (Optional, when a Windows machine) Specifies the Windows OS license type. If supplied, the only allowed values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A collection of `networkProfile` blocks as documented below.
	NetworkProfiles ScaleSetNetworkProfileArrayInput
	// A `osProfile` block as documented below.
	OsProfile ScaleSetOsProfileInput
	// A `osProfileLinuxConfig` block as documented below.
	OsProfileLinuxConfig ScaleSetOsProfileLinuxConfigPtrInput
	// A collection of `osProfileSecrets` blocks as documented below.
	OsProfileSecrets ScaleSetOsProfileSecretArrayInput
	// A `osProfileWindowsConfig` block as documented below.
	OsProfileWindowsConfig ScaleSetOsProfileWindowsConfigPtrInput
	// Specifies whether the virtual machine scale set should be overprovisioned. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as documented below.
	Plan ScaleSetPlanPtrInput
	// Specifies the priority for the Virtual Machines in the Scale Set. Possible values are `Low` and `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `rollingUpgradePolicy` block as defined below. This is only applicable when the `upgradePolicyMode` is `Rolling`.
	RollingUpgradePolicy ScaleSetRollingUpgradePolicyPtrInput
	// Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Changing this forces a new resource to be created. See [documentation](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups) for more information. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// A `sku` block as documented below.
	Sku ScaleSetSkuInput
	// A `storageProfileDataDisk` block as documented below.
	StorageProfileDataDisks ScaleSetStorageProfileDataDiskArrayInput
	// A `storageProfileImageReference` block as documented below.
	StorageProfileImageReference ScaleSetStorageProfileImageReferencePtrInput
	// A `storageProfileOsDisk` block as documented below.
	StorageProfileOsDisk ScaleSetStorageProfileOsDiskInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, `Rolling`, `Manual`, or `Automatic`. When choosing `Rolling`, you will need to set a health probe.
	UpgradePolicyMode pulumi.StringInput
	// A collection of availability zones to spread the Virtual Machines over. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a ScaleSet resource.

func (ScaleSetArgs) ElementType

func (ScaleSetArgs) ElementType() reflect.Type

type ScaleSetArray

type ScaleSetArray []ScaleSetInput

func (ScaleSetArray) ElementType

func (ScaleSetArray) ElementType() reflect.Type

func (ScaleSetArray) ToScaleSetArrayOutput

func (i ScaleSetArray) ToScaleSetArrayOutput() ScaleSetArrayOutput

func (ScaleSetArray) ToScaleSetArrayOutputWithContext

func (i ScaleSetArray) ToScaleSetArrayOutputWithContext(ctx context.Context) ScaleSetArrayOutput

type ScaleSetArrayInput

type ScaleSetArrayInput interface {
	pulumi.Input

	ToScaleSetArrayOutput() ScaleSetArrayOutput
	ToScaleSetArrayOutputWithContext(context.Context) ScaleSetArrayOutput
}

ScaleSetArrayInput is an input type that accepts ScaleSetArray and ScaleSetArrayOutput values. You can construct a concrete instance of `ScaleSetArrayInput` via:

ScaleSetArray{ ScaleSetArgs{...} }

type ScaleSetArrayOutput

type ScaleSetArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetArrayOutput) ElementType

func (ScaleSetArrayOutput) ElementType() reflect.Type

func (ScaleSetArrayOutput) Index

func (ScaleSetArrayOutput) ToScaleSetArrayOutput

func (o ScaleSetArrayOutput) ToScaleSetArrayOutput() ScaleSetArrayOutput

func (ScaleSetArrayOutput) ToScaleSetArrayOutputWithContext

func (o ScaleSetArrayOutput) ToScaleSetArrayOutputWithContext(ctx context.Context) ScaleSetArrayOutput

type ScaleSetBootDiagnostics

type ScaleSetBootDiagnostics struct {
	// Whether to enable boot diagnostics for the virtual machine. Defaults to `true`.
	Enabled *bool `pulumi:"enabled"`
	// Blob endpoint for the storage account to hold the virtual machine's diagnostic files. This must be the root of a storage account, and not a storage container.
	StorageUri string `pulumi:"storageUri"`
}

type ScaleSetBootDiagnosticsArgs

type ScaleSetBootDiagnosticsArgs struct {
	// Whether to enable boot diagnostics for the virtual machine. Defaults to `true`.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// Blob endpoint for the storage account to hold the virtual machine's diagnostic files. This must be the root of a storage account, and not a storage container.
	StorageUri pulumi.StringInput `pulumi:"storageUri"`
}

func (ScaleSetBootDiagnosticsArgs) ElementType

func (ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsOutput

func (i ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsOutput() ScaleSetBootDiagnosticsOutput

func (ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsOutputWithContext

func (i ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) ScaleSetBootDiagnosticsOutput

func (ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsPtrOutput

func (i ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsPtrOutput() ScaleSetBootDiagnosticsPtrOutput

func (ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsPtrOutputWithContext

func (i ScaleSetBootDiagnosticsArgs) ToScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) ScaleSetBootDiagnosticsPtrOutput

type ScaleSetBootDiagnosticsInput

type ScaleSetBootDiagnosticsInput interface {
	pulumi.Input

	ToScaleSetBootDiagnosticsOutput() ScaleSetBootDiagnosticsOutput
	ToScaleSetBootDiagnosticsOutputWithContext(context.Context) ScaleSetBootDiagnosticsOutput
}

ScaleSetBootDiagnosticsInput is an input type that accepts ScaleSetBootDiagnosticsArgs and ScaleSetBootDiagnosticsOutput values. You can construct a concrete instance of `ScaleSetBootDiagnosticsInput` via:

ScaleSetBootDiagnosticsArgs{...}

type ScaleSetBootDiagnosticsOutput

type ScaleSetBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (ScaleSetBootDiagnosticsOutput) ElementType

func (ScaleSetBootDiagnosticsOutput) Enabled

Whether to enable boot diagnostics for the virtual machine. Defaults to `true`.

func (ScaleSetBootDiagnosticsOutput) StorageUri

Blob endpoint for the storage account to hold the virtual machine's diagnostic files. This must be the root of a storage account, and not a storage container.

func (ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsOutput

func (o ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsOutput() ScaleSetBootDiagnosticsOutput

func (ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsOutputWithContext

func (o ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) ScaleSetBootDiagnosticsOutput

func (ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsPtrOutput

func (o ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsPtrOutput() ScaleSetBootDiagnosticsPtrOutput

func (ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsPtrOutputWithContext

func (o ScaleSetBootDiagnosticsOutput) ToScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) ScaleSetBootDiagnosticsPtrOutput

type ScaleSetBootDiagnosticsPtrInput

type ScaleSetBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToScaleSetBootDiagnosticsPtrOutput() ScaleSetBootDiagnosticsPtrOutput
	ToScaleSetBootDiagnosticsPtrOutputWithContext(context.Context) ScaleSetBootDiagnosticsPtrOutput
}

ScaleSetBootDiagnosticsPtrInput is an input type that accepts ScaleSetBootDiagnosticsArgs, ScaleSetBootDiagnosticsPtr and ScaleSetBootDiagnosticsPtrOutput values. You can construct a concrete instance of `ScaleSetBootDiagnosticsPtrInput` via:

        ScaleSetBootDiagnosticsArgs{...}

or:

        nil

type ScaleSetBootDiagnosticsPtrOutput

type ScaleSetBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetBootDiagnosticsPtrOutput) Elem

func (ScaleSetBootDiagnosticsPtrOutput) ElementType

func (ScaleSetBootDiagnosticsPtrOutput) Enabled

Whether to enable boot diagnostics for the virtual machine. Defaults to `true`.

func (ScaleSetBootDiagnosticsPtrOutput) StorageUri

Blob endpoint for the storage account to hold the virtual machine's diagnostic files. This must be the root of a storage account, and not a storage container.

func (ScaleSetBootDiagnosticsPtrOutput) ToScaleSetBootDiagnosticsPtrOutput

func (o ScaleSetBootDiagnosticsPtrOutput) ToScaleSetBootDiagnosticsPtrOutput() ScaleSetBootDiagnosticsPtrOutput

func (ScaleSetBootDiagnosticsPtrOutput) ToScaleSetBootDiagnosticsPtrOutputWithContext

func (o ScaleSetBootDiagnosticsPtrOutput) ToScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) ScaleSetBootDiagnosticsPtrOutput

type ScaleSetExtension

type ScaleSetExtension struct {
	// Specifies whether or not to use the latest minor version available.
	AutoUpgradeMinorVersion *bool `pulumi:"autoUpgradeMinorVersion"`
	// Specifies the name of the extension.
	Name string `pulumi:"name"`
	// The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
	ProtectedSettings *string `pulumi:"protectedSettings"`
	// Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.
	ProvisionAfterExtensions []string `pulumi:"provisionAfterExtensions"`
	// The publisher of the extension, available publishers can be found by using the Azure CLI.
	Publisher string `pulumi:"publisher"`
	// The settings passed to the extension, these are specified as a JSON object in a string.
	Settings *string `pulumi:"settings"`
	// The type of extension, available types for a publisher can be found using the Azure CLI.
	Type string `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion string `pulumi:"typeHandlerVersion"`
}

type ScaleSetExtensionArgs

type ScaleSetExtensionArgs struct {
	// Specifies whether or not to use the latest minor version available.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput `pulumi:"autoUpgradeMinorVersion"`
	// Specifies the name of the extension.
	Name pulumi.StringInput `pulumi:"name"`
	// The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
	ProtectedSettings pulumi.StringPtrInput `pulumi:"protectedSettings"`
	// Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.
	ProvisionAfterExtensions pulumi.StringArrayInput `pulumi:"provisionAfterExtensions"`
	// The publisher of the extension, available publishers can be found by using the Azure CLI.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// The settings passed to the extension, these are specified as a JSON object in a string.
	Settings pulumi.StringPtrInput `pulumi:"settings"`
	// The type of extension, available types for a publisher can be found using the Azure CLI.
	Type pulumi.StringInput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringInput `pulumi:"typeHandlerVersion"`
}

func (ScaleSetExtensionArgs) ElementType

func (ScaleSetExtensionArgs) ElementType() reflect.Type

func (ScaleSetExtensionArgs) ToScaleSetExtensionOutput

func (i ScaleSetExtensionArgs) ToScaleSetExtensionOutput() ScaleSetExtensionOutput

func (ScaleSetExtensionArgs) ToScaleSetExtensionOutputWithContext

func (i ScaleSetExtensionArgs) ToScaleSetExtensionOutputWithContext(ctx context.Context) ScaleSetExtensionOutput

type ScaleSetExtensionArray

type ScaleSetExtensionArray []ScaleSetExtensionInput

func (ScaleSetExtensionArray) ElementType

func (ScaleSetExtensionArray) ElementType() reflect.Type

func (ScaleSetExtensionArray) ToScaleSetExtensionArrayOutput

func (i ScaleSetExtensionArray) ToScaleSetExtensionArrayOutput() ScaleSetExtensionArrayOutput

func (ScaleSetExtensionArray) ToScaleSetExtensionArrayOutputWithContext

func (i ScaleSetExtensionArray) ToScaleSetExtensionArrayOutputWithContext(ctx context.Context) ScaleSetExtensionArrayOutput

type ScaleSetExtensionArrayInput

type ScaleSetExtensionArrayInput interface {
	pulumi.Input

	ToScaleSetExtensionArrayOutput() ScaleSetExtensionArrayOutput
	ToScaleSetExtensionArrayOutputWithContext(context.Context) ScaleSetExtensionArrayOutput
}

ScaleSetExtensionArrayInput is an input type that accepts ScaleSetExtensionArray and ScaleSetExtensionArrayOutput values. You can construct a concrete instance of `ScaleSetExtensionArrayInput` via:

ScaleSetExtensionArray{ ScaleSetExtensionArgs{...} }

type ScaleSetExtensionArrayOutput

type ScaleSetExtensionArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetExtensionArrayOutput) ElementType

func (ScaleSetExtensionArrayOutput) Index

func (ScaleSetExtensionArrayOutput) ToScaleSetExtensionArrayOutput

func (o ScaleSetExtensionArrayOutput) ToScaleSetExtensionArrayOutput() ScaleSetExtensionArrayOutput

func (ScaleSetExtensionArrayOutput) ToScaleSetExtensionArrayOutputWithContext

func (o ScaleSetExtensionArrayOutput) ToScaleSetExtensionArrayOutputWithContext(ctx context.Context) ScaleSetExtensionArrayOutput

type ScaleSetExtensionInput

type ScaleSetExtensionInput interface {
	pulumi.Input

	ToScaleSetExtensionOutput() ScaleSetExtensionOutput
	ToScaleSetExtensionOutputWithContext(context.Context) ScaleSetExtensionOutput
}

ScaleSetExtensionInput is an input type that accepts ScaleSetExtensionArgs and ScaleSetExtensionOutput values. You can construct a concrete instance of `ScaleSetExtensionInput` via:

ScaleSetExtensionArgs{...}

type ScaleSetExtensionOutput

type ScaleSetExtensionOutput struct{ *pulumi.OutputState }

func (ScaleSetExtensionOutput) AutoUpgradeMinorVersion

func (o ScaleSetExtensionOutput) AutoUpgradeMinorVersion() pulumi.BoolPtrOutput

Specifies whether or not to use the latest minor version available.

func (ScaleSetExtensionOutput) ElementType

func (ScaleSetExtensionOutput) ElementType() reflect.Type

func (ScaleSetExtensionOutput) Name

Specifies the name of the extension.

func (ScaleSetExtensionOutput) ProtectedSettings

func (o ScaleSetExtensionOutput) ProtectedSettings() pulumi.StringPtrOutput

The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.

func (ScaleSetExtensionOutput) ProvisionAfterExtensions

func (o ScaleSetExtensionOutput) ProvisionAfterExtensions() pulumi.StringArrayOutput

Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.

func (ScaleSetExtensionOutput) Publisher

The publisher of the extension, available publishers can be found by using the Azure CLI.

func (ScaleSetExtensionOutput) Settings

The settings passed to the extension, these are specified as a JSON object in a string.

func (ScaleSetExtensionOutput) ToScaleSetExtensionOutput

func (o ScaleSetExtensionOutput) ToScaleSetExtensionOutput() ScaleSetExtensionOutput

func (ScaleSetExtensionOutput) ToScaleSetExtensionOutputWithContext

func (o ScaleSetExtensionOutput) ToScaleSetExtensionOutputWithContext(ctx context.Context) ScaleSetExtensionOutput

func (ScaleSetExtensionOutput) Type

The type of extension, available types for a publisher can be found using the Azure CLI.

func (ScaleSetExtensionOutput) TypeHandlerVersion

func (o ScaleSetExtensionOutput) TypeHandlerVersion() pulumi.StringOutput

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

type ScaleSetIdentity

type ScaleSetIdentity struct {
	// Specifies a list of user managed identity ids to be assigned to the VMSS. Required if `type` is `UserAssigned`.
	//
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		example, err := compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
	// 			Name:              pulumi.String("vm-scaleset"),
	// 			ResourceGroupName: pulumi.Any(exampleAzurermResourceGroup.Name),
	// 			Location:          pulumi.Any(exampleAzurermResourceGroup.Location),
	// 			Sku: &compute.ScaleSetSkuArgs{
	// 				Name:     pulumi.Any(vmSku),
	// 				Tier:     pulumi.String("Standard"),
	// 				Capacity: pulumi.Any(instanceCount),
	// 			},
	// 			Identity: &compute.ScaleSetIdentityArgs{
	// 				Type: pulumi.String("SystemAssigned"),
	// 			},
	// 			Extensions: compute.ScaleSetExtensionArray{
	// 				&compute.ScaleSetExtensionArgs{
	// 					Name:               pulumi.String("MSILinuxExtension"),
	// 					Publisher:          pulumi.String("Microsoft.ManagedIdentity"),
	// 					Type:               pulumi.String("ManagedIdentityExtensionForLinux"),
	// 					TypeHandlerVersion: pulumi.String("1.0"),
	// 					Settings:           pulumi.String("{\"port\": 50342}"),
	// 				},
	// 			},
	// 		})
	// 		if err != nil {
	// 			return err
	// 		}
	// 		ctx.Export("principalId", example.Identity.ApplyT(func(identity compute.ScaleSetIdentity) (*string, error) {
	// 			return &identity.PrincipalId, nil
	// 		}).(pulumi.StringPtrOutput))
	// 		return nil
	// 	})
	// }
	// “`
	IdentityIds []string `pulumi:"identityIds"`
	PrincipalId *string  `pulumi:"principalId"`
	// Specifies the identity type to be assigned to the scale set. Allowable values are `SystemAssigned` and `UserAssigned`. For the `SystemAssigned` identity the scale set's Service Principal ID (SPN) can be retrieved after the scale set has been created. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for more information. Possible values are `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.
	Type string `pulumi:"type"`
}

type ScaleSetIdentityArgs

type ScaleSetIdentityArgs struct {
	// Specifies a list of user managed identity ids to be assigned to the VMSS. Required if `type` is `UserAssigned`.
	//
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		example, err := compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
	// 			Name:              pulumi.String("vm-scaleset"),
	// 			ResourceGroupName: pulumi.Any(exampleAzurermResourceGroup.Name),
	// 			Location:          pulumi.Any(exampleAzurermResourceGroup.Location),
	// 			Sku: &compute.ScaleSetSkuArgs{
	// 				Name:     pulumi.Any(vmSku),
	// 				Tier:     pulumi.String("Standard"),
	// 				Capacity: pulumi.Any(instanceCount),
	// 			},
	// 			Identity: &compute.ScaleSetIdentityArgs{
	// 				Type: pulumi.String("SystemAssigned"),
	// 			},
	// 			Extensions: compute.ScaleSetExtensionArray{
	// 				&compute.ScaleSetExtensionArgs{
	// 					Name:               pulumi.String("MSILinuxExtension"),
	// 					Publisher:          pulumi.String("Microsoft.ManagedIdentity"),
	// 					Type:               pulumi.String("ManagedIdentityExtensionForLinux"),
	// 					TypeHandlerVersion: pulumi.String("1.0"),
	// 					Settings:           pulumi.String("{\"port\": 50342}"),
	// 				},
	// 			},
	// 		})
	// 		if err != nil {
	// 			return err
	// 		}
	// 		ctx.Export("principalId", example.Identity.ApplyT(func(identity compute.ScaleSetIdentity) (*string, error) {
	// 			return &identity.PrincipalId, nil
	// 		}).(pulumi.StringPtrOutput))
	// 		return nil
	// 	})
	// }
	// “`
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	PrincipalId pulumi.StringPtrInput   `pulumi:"principalId"`
	// Specifies the identity type to be assigned to the scale set. Allowable values are `SystemAssigned` and `UserAssigned`. For the `SystemAssigned` identity the scale set's Service Principal ID (SPN) can be retrieved after the scale set has been created. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for more information. Possible values are `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ScaleSetIdentityArgs) ElementType

func (ScaleSetIdentityArgs) ElementType() reflect.Type

func (ScaleSetIdentityArgs) ToScaleSetIdentityOutput

func (i ScaleSetIdentityArgs) ToScaleSetIdentityOutput() ScaleSetIdentityOutput

func (ScaleSetIdentityArgs) ToScaleSetIdentityOutputWithContext

func (i ScaleSetIdentityArgs) ToScaleSetIdentityOutputWithContext(ctx context.Context) ScaleSetIdentityOutput

func (ScaleSetIdentityArgs) ToScaleSetIdentityPtrOutput

func (i ScaleSetIdentityArgs) ToScaleSetIdentityPtrOutput() ScaleSetIdentityPtrOutput

func (ScaleSetIdentityArgs) ToScaleSetIdentityPtrOutputWithContext

func (i ScaleSetIdentityArgs) ToScaleSetIdentityPtrOutputWithContext(ctx context.Context) ScaleSetIdentityPtrOutput

type ScaleSetIdentityInput

type ScaleSetIdentityInput interface {
	pulumi.Input

	ToScaleSetIdentityOutput() ScaleSetIdentityOutput
	ToScaleSetIdentityOutputWithContext(context.Context) ScaleSetIdentityOutput
}

ScaleSetIdentityInput is an input type that accepts ScaleSetIdentityArgs and ScaleSetIdentityOutput values. You can construct a concrete instance of `ScaleSetIdentityInput` via:

ScaleSetIdentityArgs{...}

type ScaleSetIdentityOutput

type ScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (ScaleSetIdentityOutput) ElementType

func (ScaleSetIdentityOutput) ElementType() reflect.Type

func (ScaleSetIdentityOutput) IdentityIds

Specifies a list of user managed identity ids to be assigned to the VMSS. Required if `type` is `UserAssigned`.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
			Name:              pulumi.String("vm-scaleset"),
			ResourceGroupName: pulumi.Any(exampleAzurermResourceGroup.Name),
			Location:          pulumi.Any(exampleAzurermResourceGroup.Location),
			Sku: &compute.ScaleSetSkuArgs{
				Name:     pulumi.Any(vmSku),
				Tier:     pulumi.String("Standard"),
				Capacity: pulumi.Any(instanceCount),
			},
			Identity: &compute.ScaleSetIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
			Extensions: compute.ScaleSetExtensionArray{
				&compute.ScaleSetExtensionArgs{
					Name:               pulumi.String("MSILinuxExtension"),
					Publisher:          pulumi.String("Microsoft.ManagedIdentity"),
					Type:               pulumi.String("ManagedIdentityExtensionForLinux"),
					TypeHandlerVersion: pulumi.String("1.0"),
					Settings:           pulumi.String("{\"port\": 50342}"),
				},
			},
		})
		if err != nil {
			return err
		}
		ctx.Export("principalId", example.Identity.ApplyT(func(identity compute.ScaleSetIdentity) (*string, error) {
			return &identity.PrincipalId, nil
		}).(pulumi.StringPtrOutput))
		return nil
	})
}

```

func (ScaleSetIdentityOutput) PrincipalId

func (ScaleSetIdentityOutput) ToScaleSetIdentityOutput

func (o ScaleSetIdentityOutput) ToScaleSetIdentityOutput() ScaleSetIdentityOutput

func (ScaleSetIdentityOutput) ToScaleSetIdentityOutputWithContext

func (o ScaleSetIdentityOutput) ToScaleSetIdentityOutputWithContext(ctx context.Context) ScaleSetIdentityOutput

func (ScaleSetIdentityOutput) ToScaleSetIdentityPtrOutput

func (o ScaleSetIdentityOutput) ToScaleSetIdentityPtrOutput() ScaleSetIdentityPtrOutput

func (ScaleSetIdentityOutput) ToScaleSetIdentityPtrOutputWithContext

func (o ScaleSetIdentityOutput) ToScaleSetIdentityPtrOutputWithContext(ctx context.Context) ScaleSetIdentityPtrOutput

func (ScaleSetIdentityOutput) Type

Specifies the identity type to be assigned to the scale set. Allowable values are `SystemAssigned` and `UserAssigned`. For the `SystemAssigned` identity the scale set's Service Principal ID (SPN) can be retrieved after the scale set has been created. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for more information. Possible values are `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.

type ScaleSetIdentityPtrInput

type ScaleSetIdentityPtrInput interface {
	pulumi.Input

	ToScaleSetIdentityPtrOutput() ScaleSetIdentityPtrOutput
	ToScaleSetIdentityPtrOutputWithContext(context.Context) ScaleSetIdentityPtrOutput
}

ScaleSetIdentityPtrInput is an input type that accepts ScaleSetIdentityArgs, ScaleSetIdentityPtr and ScaleSetIdentityPtrOutput values. You can construct a concrete instance of `ScaleSetIdentityPtrInput` via:

        ScaleSetIdentityArgs{...}

or:

        nil

type ScaleSetIdentityPtrOutput

type ScaleSetIdentityPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetIdentityPtrOutput) Elem

func (ScaleSetIdentityPtrOutput) ElementType

func (ScaleSetIdentityPtrOutput) ElementType() reflect.Type

func (ScaleSetIdentityPtrOutput) IdentityIds

Specifies a list of user managed identity ids to be assigned to the VMSS. Required if `type` is `UserAssigned`.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := compute.NewScaleSet(ctx, "example", &compute.ScaleSetArgs{
			Name:              pulumi.String("vm-scaleset"),
			ResourceGroupName: pulumi.Any(exampleAzurermResourceGroup.Name),
			Location:          pulumi.Any(exampleAzurermResourceGroup.Location),
			Sku: &compute.ScaleSetSkuArgs{
				Name:     pulumi.Any(vmSku),
				Tier:     pulumi.String("Standard"),
				Capacity: pulumi.Any(instanceCount),
			},
			Identity: &compute.ScaleSetIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
			Extensions: compute.ScaleSetExtensionArray{
				&compute.ScaleSetExtensionArgs{
					Name:               pulumi.String("MSILinuxExtension"),
					Publisher:          pulumi.String("Microsoft.ManagedIdentity"),
					Type:               pulumi.String("ManagedIdentityExtensionForLinux"),
					TypeHandlerVersion: pulumi.String("1.0"),
					Settings:           pulumi.String("{\"port\": 50342}"),
				},
			},
		})
		if err != nil {
			return err
		}
		ctx.Export("principalId", example.Identity.ApplyT(func(identity compute.ScaleSetIdentity) (*string, error) {
			return &identity.PrincipalId, nil
		}).(pulumi.StringPtrOutput))
		return nil
	})
}

```

func (ScaleSetIdentityPtrOutput) PrincipalId

func (ScaleSetIdentityPtrOutput) ToScaleSetIdentityPtrOutput

func (o ScaleSetIdentityPtrOutput) ToScaleSetIdentityPtrOutput() ScaleSetIdentityPtrOutput

func (ScaleSetIdentityPtrOutput) ToScaleSetIdentityPtrOutputWithContext

func (o ScaleSetIdentityPtrOutput) ToScaleSetIdentityPtrOutputWithContext(ctx context.Context) ScaleSetIdentityPtrOutput

func (ScaleSetIdentityPtrOutput) Type

Specifies the identity type to be assigned to the scale set. Allowable values are `SystemAssigned` and `UserAssigned`. For the `SystemAssigned` identity the scale set's Service Principal ID (SPN) can be retrieved after the scale set has been created. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for more information. Possible values are `SystemAssigned`, `UserAssigned` and `SystemAssigned, UserAssigned`.

type ScaleSetInput

type ScaleSetInput interface {
	pulumi.Input

	ToScaleSetOutput() ScaleSetOutput
	ToScaleSetOutputWithContext(ctx context.Context) ScaleSetOutput
}

type ScaleSetMap

type ScaleSetMap map[string]ScaleSetInput

func (ScaleSetMap) ElementType

func (ScaleSetMap) ElementType() reflect.Type

func (ScaleSetMap) ToScaleSetMapOutput

func (i ScaleSetMap) ToScaleSetMapOutput() ScaleSetMapOutput

func (ScaleSetMap) ToScaleSetMapOutputWithContext

func (i ScaleSetMap) ToScaleSetMapOutputWithContext(ctx context.Context) ScaleSetMapOutput

type ScaleSetMapInput

type ScaleSetMapInput interface {
	pulumi.Input

	ToScaleSetMapOutput() ScaleSetMapOutput
	ToScaleSetMapOutputWithContext(context.Context) ScaleSetMapOutput
}

ScaleSetMapInput is an input type that accepts ScaleSetMap and ScaleSetMapOutput values. You can construct a concrete instance of `ScaleSetMapInput` via:

ScaleSetMap{ "key": ScaleSetArgs{...} }

type ScaleSetMapOutput

type ScaleSetMapOutput struct{ *pulumi.OutputState }

func (ScaleSetMapOutput) ElementType

func (ScaleSetMapOutput) ElementType() reflect.Type

func (ScaleSetMapOutput) MapIndex

func (ScaleSetMapOutput) ToScaleSetMapOutput

func (o ScaleSetMapOutput) ToScaleSetMapOutput() ScaleSetMapOutput

func (ScaleSetMapOutput) ToScaleSetMapOutputWithContext

func (o ScaleSetMapOutput) ToScaleSetMapOutputWithContext(ctx context.Context) ScaleSetMapOutput

type ScaleSetNetworkProfile

type ScaleSetNetworkProfile struct {
	// Specifies whether to enable accelerated networking or not.
	AcceleratedNetworking *bool `pulumi:"acceleratedNetworking"`
	// A `dnsSettings` block as documented below.
	DnsSettings *ScaleSetNetworkProfileDnsSettings `pulumi:"dnsSettings"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations []ScaleSetNetworkProfileIpConfiguration `pulumi:"ipConfigurations"`
	// Whether IP forwarding is enabled on this NIC. Defaults to `false`.
	IpForwarding *bool `pulumi:"ipForwarding"`
	// Specifies the name of the network interface configuration.
	Name string `pulumi:"name"`
	// Specifies the identifier for the network security group.
	NetworkSecurityGroupId *string `pulumi:"networkSecurityGroupId"`
	// Indicates whether network interfaces created from the network interface configuration will be the primary NIC of the VM.
	Primary bool `pulumi:"primary"`
}

type ScaleSetNetworkProfileArgs

type ScaleSetNetworkProfileArgs struct {
	// Specifies whether to enable accelerated networking or not.
	AcceleratedNetworking pulumi.BoolPtrInput `pulumi:"acceleratedNetworking"`
	// A `dnsSettings` block as documented below.
	DnsSettings ScaleSetNetworkProfileDnsSettingsPtrInput `pulumi:"dnsSettings"`
	// An `ipConfiguration` block as documented below.
	IpConfigurations ScaleSetNetworkProfileIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// Whether IP forwarding is enabled on this NIC. Defaults to `false`.
	IpForwarding pulumi.BoolPtrInput `pulumi:"ipForwarding"`
	// Specifies the name of the network interface configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the identifier for the network security group.
	NetworkSecurityGroupId pulumi.StringPtrInput `pulumi:"networkSecurityGroupId"`
	// Indicates whether network interfaces created from the network interface configuration will be the primary NIC of the VM.
	Primary pulumi.BoolInput `pulumi:"primary"`
}

func (ScaleSetNetworkProfileArgs) ElementType

func (ScaleSetNetworkProfileArgs) ElementType() reflect.Type

func (ScaleSetNetworkProfileArgs) ToScaleSetNetworkProfileOutput

func (i ScaleSetNetworkProfileArgs) ToScaleSetNetworkProfileOutput() ScaleSetNetworkProfileOutput

func (ScaleSetNetworkProfileArgs) ToScaleSetNetworkProfileOutputWithContext

func (i ScaleSetNetworkProfileArgs) ToScaleSetNetworkProfileOutputWithContext(ctx context.Context) ScaleSetNetworkProfileOutput

type ScaleSetNetworkProfileArray

type ScaleSetNetworkProfileArray []ScaleSetNetworkProfileInput

func (ScaleSetNetworkProfileArray) ElementType

func (ScaleSetNetworkProfileArray) ToScaleSetNetworkProfileArrayOutput

func (i ScaleSetNetworkProfileArray) ToScaleSetNetworkProfileArrayOutput() ScaleSetNetworkProfileArrayOutput

func (ScaleSetNetworkProfileArray) ToScaleSetNetworkProfileArrayOutputWithContext

func (i ScaleSetNetworkProfileArray) ToScaleSetNetworkProfileArrayOutputWithContext(ctx context.Context) ScaleSetNetworkProfileArrayOutput

type ScaleSetNetworkProfileArrayInput

type ScaleSetNetworkProfileArrayInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileArrayOutput() ScaleSetNetworkProfileArrayOutput
	ToScaleSetNetworkProfileArrayOutputWithContext(context.Context) ScaleSetNetworkProfileArrayOutput
}

ScaleSetNetworkProfileArrayInput is an input type that accepts ScaleSetNetworkProfileArray and ScaleSetNetworkProfileArrayOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileArrayInput` via:

ScaleSetNetworkProfileArray{ ScaleSetNetworkProfileArgs{...} }

type ScaleSetNetworkProfileArrayOutput

type ScaleSetNetworkProfileArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileArrayOutput) ElementType

func (ScaleSetNetworkProfileArrayOutput) Index

func (ScaleSetNetworkProfileArrayOutput) ToScaleSetNetworkProfileArrayOutput

func (o ScaleSetNetworkProfileArrayOutput) ToScaleSetNetworkProfileArrayOutput() ScaleSetNetworkProfileArrayOutput

func (ScaleSetNetworkProfileArrayOutput) ToScaleSetNetworkProfileArrayOutputWithContext

func (o ScaleSetNetworkProfileArrayOutput) ToScaleSetNetworkProfileArrayOutputWithContext(ctx context.Context) ScaleSetNetworkProfileArrayOutput

type ScaleSetNetworkProfileDnsSettings

type ScaleSetNetworkProfileDnsSettings struct {
	// Specifies an array of DNS servers.
	DnsServers []string `pulumi:"dnsServers"`
}

type ScaleSetNetworkProfileDnsSettingsArgs

type ScaleSetNetworkProfileDnsSettingsArgs struct {
	// Specifies an array of DNS servers.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
}

func (ScaleSetNetworkProfileDnsSettingsArgs) ElementType

func (ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsOutput

func (i ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsOutput() ScaleSetNetworkProfileDnsSettingsOutput

func (ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsOutputWithContext

func (i ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsOutputWithContext(ctx context.Context) ScaleSetNetworkProfileDnsSettingsOutput

func (ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsPtrOutput

func (i ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsPtrOutput() ScaleSetNetworkProfileDnsSettingsPtrOutput

func (ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext

func (i ScaleSetNetworkProfileDnsSettingsArgs) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext(ctx context.Context) ScaleSetNetworkProfileDnsSettingsPtrOutput

type ScaleSetNetworkProfileDnsSettingsInput

type ScaleSetNetworkProfileDnsSettingsInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileDnsSettingsOutput() ScaleSetNetworkProfileDnsSettingsOutput
	ToScaleSetNetworkProfileDnsSettingsOutputWithContext(context.Context) ScaleSetNetworkProfileDnsSettingsOutput
}

ScaleSetNetworkProfileDnsSettingsInput is an input type that accepts ScaleSetNetworkProfileDnsSettingsArgs and ScaleSetNetworkProfileDnsSettingsOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileDnsSettingsInput` via:

ScaleSetNetworkProfileDnsSettingsArgs{...}

type ScaleSetNetworkProfileDnsSettingsOutput

type ScaleSetNetworkProfileDnsSettingsOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileDnsSettingsOutput) DnsServers

Specifies an array of DNS servers.

func (ScaleSetNetworkProfileDnsSettingsOutput) ElementType

func (ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsOutput

func (o ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsOutput() ScaleSetNetworkProfileDnsSettingsOutput

func (ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsOutputWithContext

func (o ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsOutputWithContext(ctx context.Context) ScaleSetNetworkProfileDnsSettingsOutput

func (ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutput

func (o ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutput() ScaleSetNetworkProfileDnsSettingsPtrOutput

func (ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext

func (o ScaleSetNetworkProfileDnsSettingsOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext(ctx context.Context) ScaleSetNetworkProfileDnsSettingsPtrOutput

type ScaleSetNetworkProfileDnsSettingsPtrInput

type ScaleSetNetworkProfileDnsSettingsPtrInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileDnsSettingsPtrOutput() ScaleSetNetworkProfileDnsSettingsPtrOutput
	ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext(context.Context) ScaleSetNetworkProfileDnsSettingsPtrOutput
}

ScaleSetNetworkProfileDnsSettingsPtrInput is an input type that accepts ScaleSetNetworkProfileDnsSettingsArgs, ScaleSetNetworkProfileDnsSettingsPtr and ScaleSetNetworkProfileDnsSettingsPtrOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileDnsSettingsPtrInput` via:

        ScaleSetNetworkProfileDnsSettingsArgs{...}

or:

        nil

type ScaleSetNetworkProfileDnsSettingsPtrOutput

type ScaleSetNetworkProfileDnsSettingsPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileDnsSettingsPtrOutput) DnsServers

Specifies an array of DNS servers.

func (ScaleSetNetworkProfileDnsSettingsPtrOutput) Elem

func (ScaleSetNetworkProfileDnsSettingsPtrOutput) ElementType

func (ScaleSetNetworkProfileDnsSettingsPtrOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutput

func (o ScaleSetNetworkProfileDnsSettingsPtrOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutput() ScaleSetNetworkProfileDnsSettingsPtrOutput

func (ScaleSetNetworkProfileDnsSettingsPtrOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext

func (o ScaleSetNetworkProfileDnsSettingsPtrOutput) ToScaleSetNetworkProfileDnsSettingsPtrOutputWithContext(ctx context.Context) ScaleSetNetworkProfileDnsSettingsPtrOutput

type ScaleSetNetworkProfileInput

type ScaleSetNetworkProfileInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileOutput() ScaleSetNetworkProfileOutput
	ToScaleSetNetworkProfileOutputWithContext(context.Context) ScaleSetNetworkProfileOutput
}

ScaleSetNetworkProfileInput is an input type that accepts ScaleSetNetworkProfileArgs and ScaleSetNetworkProfileOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileInput` via:

ScaleSetNetworkProfileArgs{...}

type ScaleSetNetworkProfileIpConfiguration

type ScaleSetNetworkProfileIpConfiguration struct {
	// Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets can use the same application gateway.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// Specifies up to `20` application security group IDs.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound NAT pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds []string `pulumi:"loadBalancerInboundNatRulesIds"`
	// Specifies name of the IP configuration.
	Name string `pulumi:"name"`
	// Specifies if this ipConfiguration is the primary one.
	Primary bool `pulumi:"primary"`
	// Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddressConfiguration` block is documented below.
	PublicIpAddressConfiguration *ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfiguration `pulumi:"publicIpAddressConfiguration"`
	// Specifies the identifier of the subnet.
	SubnetId string `pulumi:"subnetId"`
}

type ScaleSetNetworkProfileIpConfigurationArgs

type ScaleSetNetworkProfileIpConfigurationArgs struct {
	// Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets can use the same application gateway.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// Specifies up to `20` application security group IDs.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound NAT pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds pulumi.StringArrayInput `pulumi:"loadBalancerInboundNatRulesIds"`
	// Specifies name of the IP configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies if this ipConfiguration is the primary one.
	Primary pulumi.BoolInput `pulumi:"primary"`
	// Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddressConfiguration` block is documented below.
	PublicIpAddressConfiguration ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrInput `pulumi:"publicIpAddressConfiguration"`
	// Specifies the identifier of the subnet.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (ScaleSetNetworkProfileIpConfigurationArgs) ElementType

func (ScaleSetNetworkProfileIpConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationOutput

func (i ScaleSetNetworkProfileIpConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationOutput() ScaleSetNetworkProfileIpConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationOutputWithContext

func (i ScaleSetNetworkProfileIpConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationOutput

type ScaleSetNetworkProfileIpConfigurationArray

type ScaleSetNetworkProfileIpConfigurationArray []ScaleSetNetworkProfileIpConfigurationInput

func (ScaleSetNetworkProfileIpConfigurationArray) ElementType

func (ScaleSetNetworkProfileIpConfigurationArray) ToScaleSetNetworkProfileIpConfigurationArrayOutput

func (i ScaleSetNetworkProfileIpConfigurationArray) ToScaleSetNetworkProfileIpConfigurationArrayOutput() ScaleSetNetworkProfileIpConfigurationArrayOutput

func (ScaleSetNetworkProfileIpConfigurationArray) ToScaleSetNetworkProfileIpConfigurationArrayOutputWithContext

func (i ScaleSetNetworkProfileIpConfigurationArray) ToScaleSetNetworkProfileIpConfigurationArrayOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationArrayOutput

type ScaleSetNetworkProfileIpConfigurationArrayInput

type ScaleSetNetworkProfileIpConfigurationArrayInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileIpConfigurationArrayOutput() ScaleSetNetworkProfileIpConfigurationArrayOutput
	ToScaleSetNetworkProfileIpConfigurationArrayOutputWithContext(context.Context) ScaleSetNetworkProfileIpConfigurationArrayOutput
}

ScaleSetNetworkProfileIpConfigurationArrayInput is an input type that accepts ScaleSetNetworkProfileIpConfigurationArray and ScaleSetNetworkProfileIpConfigurationArrayOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileIpConfigurationArrayInput` via:

ScaleSetNetworkProfileIpConfigurationArray{ ScaleSetNetworkProfileIpConfigurationArgs{...} }

type ScaleSetNetworkProfileIpConfigurationArrayOutput

type ScaleSetNetworkProfileIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileIpConfigurationArrayOutput) ElementType

func (ScaleSetNetworkProfileIpConfigurationArrayOutput) Index

func (ScaleSetNetworkProfileIpConfigurationArrayOutput) ToScaleSetNetworkProfileIpConfigurationArrayOutput

func (o ScaleSetNetworkProfileIpConfigurationArrayOutput) ToScaleSetNetworkProfileIpConfigurationArrayOutput() ScaleSetNetworkProfileIpConfigurationArrayOutput

func (ScaleSetNetworkProfileIpConfigurationArrayOutput) ToScaleSetNetworkProfileIpConfigurationArrayOutputWithContext

func (o ScaleSetNetworkProfileIpConfigurationArrayOutput) ToScaleSetNetworkProfileIpConfigurationArrayOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationArrayOutput

type ScaleSetNetworkProfileIpConfigurationInput

type ScaleSetNetworkProfileIpConfigurationInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileIpConfigurationOutput() ScaleSetNetworkProfileIpConfigurationOutput
	ToScaleSetNetworkProfileIpConfigurationOutputWithContext(context.Context) ScaleSetNetworkProfileIpConfigurationOutput
}

ScaleSetNetworkProfileIpConfigurationInput is an input type that accepts ScaleSetNetworkProfileIpConfigurationArgs and ScaleSetNetworkProfileIpConfigurationOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileIpConfigurationInput` via:

ScaleSetNetworkProfileIpConfigurationArgs{...}

type ScaleSetNetworkProfileIpConfigurationOutput

type ScaleSetNetworkProfileIpConfigurationOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds

func (o ScaleSetNetworkProfileIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds() pulumi.StringArrayOutput

Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets can use the same application gateway.

func (ScaleSetNetworkProfileIpConfigurationOutput) ApplicationSecurityGroupIds

Specifies up to `20` application security group IDs.

func (ScaleSetNetworkProfileIpConfigurationOutput) ElementType

func (ScaleSetNetworkProfileIpConfigurationOutput) LoadBalancerBackendAddressPoolIds

func (o ScaleSetNetworkProfileIpConfigurationOutput) LoadBalancerBackendAddressPoolIds() pulumi.StringArrayOutput

Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (ScaleSetNetworkProfileIpConfigurationOutput) LoadBalancerInboundNatRulesIds

func (o ScaleSetNetworkProfileIpConfigurationOutput) LoadBalancerInboundNatRulesIds() pulumi.StringArrayOutput

Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound NAT pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (ScaleSetNetworkProfileIpConfigurationOutput) Name

Specifies name of the IP configuration.

func (ScaleSetNetworkProfileIpConfigurationOutput) Primary

Specifies if this ipConfiguration is the primary one.

func (ScaleSetNetworkProfileIpConfigurationOutput) PublicIpAddressConfiguration

Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration. The `publicIpAddressConfiguration` block is documented below.

func (ScaleSetNetworkProfileIpConfigurationOutput) SubnetId

Specifies the identifier of the subnet.

func (ScaleSetNetworkProfileIpConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationOutput

func (o ScaleSetNetworkProfileIpConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationOutput() ScaleSetNetworkProfileIpConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationOutputWithContext

func (o ScaleSetNetworkProfileIpConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationOutput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfiguration

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfiguration struct {
	// The domain name label for the DNS settings.
	DomainNameLabel string `pulumi:"domainNameLabel"`
	// The idle timeout in minutes. This value must be between 4 and 30.
	IdleTimeout int `pulumi:"idleTimeout"`
	// The name of the public IP address configuration
	Name string `pulumi:"name"`
}

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs struct {
	// The domain name label for the DNS settings.
	DomainNameLabel pulumi.StringInput `pulumi:"domainNameLabel"`
	// The idle timeout in minutes. This value must be between 4 and 30.
	IdleTimeout pulumi.IntInput `pulumi:"idleTimeout"`
	// The name of the public IP address configuration
	Name pulumi.StringInput `pulumi:"name"`
}

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ElementType

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputWithContext

func (i ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext

func (i ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationInput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput() ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput
	ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputWithContext(context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput
}

ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationInput is an input type that accepts ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs and ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationInput` via:

ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs{...}

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) DomainNameLabel

The domain name label for the DNS settings.

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ElementType

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) IdleTimeout

The idle timeout in minutes. This value must be between 4 and 30.

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) Name

The name of the public IP address configuration

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputWithContext

func (o ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext

func (o ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext(ctx context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrInput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrInput interface {
	pulumi.Input

	ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput() ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput
	ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext(context.Context) ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput
}

ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrInput is an input type that accepts ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs, ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtr and ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput values. You can construct a concrete instance of `ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrInput` via:

        ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationArgs{...}

or:

        nil

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

type ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) DomainNameLabel

The domain name label for the DNS settings.

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) Elem

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) ElementType

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) IdleTimeout

The idle timeout in minutes. This value must be between 4 and 30.

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) Name

The name of the public IP address configuration

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput

func (ScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutput) ToScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationPtrOutputWithContext

type ScaleSetNetworkProfileOutput

type ScaleSetNetworkProfileOutput struct{ *pulumi.OutputState }

func (ScaleSetNetworkProfileOutput) AcceleratedNetworking

func (o ScaleSetNetworkProfileOutput) AcceleratedNetworking() pulumi.BoolPtrOutput

Specifies whether to enable accelerated networking or not.

func (ScaleSetNetworkProfileOutput) DnsSettings

A `dnsSettings` block as documented below.

func (ScaleSetNetworkProfileOutput) ElementType

func (ScaleSetNetworkProfileOutput) IpConfigurations

An `ipConfiguration` block as documented below.

func (ScaleSetNetworkProfileOutput) IpForwarding

Whether IP forwarding is enabled on this NIC. Defaults to `false`.

func (ScaleSetNetworkProfileOutput) Name

Specifies the name of the network interface configuration.

func (ScaleSetNetworkProfileOutput) NetworkSecurityGroupId

func (o ScaleSetNetworkProfileOutput) NetworkSecurityGroupId() pulumi.StringPtrOutput

Specifies the identifier for the network security group.

func (ScaleSetNetworkProfileOutput) Primary

Indicates whether network interfaces created from the network interface configuration will be the primary NIC of the VM.

func (ScaleSetNetworkProfileOutput) ToScaleSetNetworkProfileOutput

func (o ScaleSetNetworkProfileOutput) ToScaleSetNetworkProfileOutput() ScaleSetNetworkProfileOutput

func (ScaleSetNetworkProfileOutput) ToScaleSetNetworkProfileOutputWithContext

func (o ScaleSetNetworkProfileOutput) ToScaleSetNetworkProfileOutputWithContext(ctx context.Context) ScaleSetNetworkProfileOutput

type ScaleSetOsProfile

type ScaleSetOsProfile struct {
	// Specifies the administrator password to use for all the instances of virtual machines in a scale set.
	AdminPassword *string `pulumi:"adminPassword"`
	// Specifies the administrator account name to use for all the instances of virtual machines in the scale set.
	AdminUsername string `pulumi:"adminUsername"`
	// Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for Linux. Changing this forces a new resource to be created.
	ComputerNamePrefix string `pulumi:"computerNamePrefix"`
	// Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
	CustomData *string `pulumi:"customData"`
}

type ScaleSetOsProfileArgs

type ScaleSetOsProfileArgs struct {
	// Specifies the administrator password to use for all the instances of virtual machines in a scale set.
	AdminPassword pulumi.StringPtrInput `pulumi:"adminPassword"`
	// Specifies the administrator account name to use for all the instances of virtual machines in the scale set.
	AdminUsername pulumi.StringInput `pulumi:"adminUsername"`
	// Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for Linux. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringInput `pulumi:"computerNamePrefix"`
	// Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
	CustomData pulumi.StringPtrInput `pulumi:"customData"`
}

func (ScaleSetOsProfileArgs) ElementType

func (ScaleSetOsProfileArgs) ElementType() reflect.Type

func (ScaleSetOsProfileArgs) ToScaleSetOsProfileOutput

func (i ScaleSetOsProfileArgs) ToScaleSetOsProfileOutput() ScaleSetOsProfileOutput

func (ScaleSetOsProfileArgs) ToScaleSetOsProfileOutputWithContext

func (i ScaleSetOsProfileArgs) ToScaleSetOsProfileOutputWithContext(ctx context.Context) ScaleSetOsProfileOutput

func (ScaleSetOsProfileArgs) ToScaleSetOsProfilePtrOutput

func (i ScaleSetOsProfileArgs) ToScaleSetOsProfilePtrOutput() ScaleSetOsProfilePtrOutput

func (ScaleSetOsProfileArgs) ToScaleSetOsProfilePtrOutputWithContext

func (i ScaleSetOsProfileArgs) ToScaleSetOsProfilePtrOutputWithContext(ctx context.Context) ScaleSetOsProfilePtrOutput

type ScaleSetOsProfileInput

type ScaleSetOsProfileInput interface {
	pulumi.Input

	ToScaleSetOsProfileOutput() ScaleSetOsProfileOutput
	ToScaleSetOsProfileOutputWithContext(context.Context) ScaleSetOsProfileOutput
}

ScaleSetOsProfileInput is an input type that accepts ScaleSetOsProfileArgs and ScaleSetOsProfileOutput values. You can construct a concrete instance of `ScaleSetOsProfileInput` via:

ScaleSetOsProfileArgs{...}

type ScaleSetOsProfileLinuxConfig

type ScaleSetOsProfileLinuxConfig struct {
	// Specifies whether password authentication should be disabled. Defaults to `false`. Changing this forces a new resource to be created.
	DisablePasswordAuthentication *bool `pulumi:"disablePasswordAuthentication"`
	// One or more `sshKeys` blocks as defined below.
	//
	// > **Note:** Please note that the only allowed `path` is `/home/<username>/.ssh/authorized_keys` due to a limitation of Azure.
	//
	// > **NOTE:** At least one `sshKeys` block is required if `disablePasswordAuthentication` is set to `true`.
	SshKeys []ScaleSetOsProfileLinuxConfigSshKey `pulumi:"sshKeys"`
}

type ScaleSetOsProfileLinuxConfigArgs

type ScaleSetOsProfileLinuxConfigArgs struct {
	// Specifies whether password authentication should be disabled. Defaults to `false`. Changing this forces a new resource to be created.
	DisablePasswordAuthentication pulumi.BoolPtrInput `pulumi:"disablePasswordAuthentication"`
	// One or more `sshKeys` blocks as defined below.
	//
	// > **Note:** Please note that the only allowed `path` is `/home/<username>/.ssh/authorized_keys` due to a limitation of Azure.
	//
	// > **NOTE:** At least one `sshKeys` block is required if `disablePasswordAuthentication` is set to `true`.
	SshKeys ScaleSetOsProfileLinuxConfigSshKeyArrayInput `pulumi:"sshKeys"`
}

func (ScaleSetOsProfileLinuxConfigArgs) ElementType

func (ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigOutput

func (i ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigOutput() ScaleSetOsProfileLinuxConfigOutput

func (ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigOutputWithContext

func (i ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigOutput

func (ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigPtrOutput

func (i ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigPtrOutput() ScaleSetOsProfileLinuxConfigPtrOutput

func (ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext

func (i ScaleSetOsProfileLinuxConfigArgs) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigPtrOutput

type ScaleSetOsProfileLinuxConfigInput

type ScaleSetOsProfileLinuxConfigInput interface {
	pulumi.Input

	ToScaleSetOsProfileLinuxConfigOutput() ScaleSetOsProfileLinuxConfigOutput
	ToScaleSetOsProfileLinuxConfigOutputWithContext(context.Context) ScaleSetOsProfileLinuxConfigOutput
}

ScaleSetOsProfileLinuxConfigInput is an input type that accepts ScaleSetOsProfileLinuxConfigArgs and ScaleSetOsProfileLinuxConfigOutput values. You can construct a concrete instance of `ScaleSetOsProfileLinuxConfigInput` via:

ScaleSetOsProfileLinuxConfigArgs{...}

type ScaleSetOsProfileLinuxConfigOutput

type ScaleSetOsProfileLinuxConfigOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileLinuxConfigOutput) DisablePasswordAuthentication

func (o ScaleSetOsProfileLinuxConfigOutput) DisablePasswordAuthentication() pulumi.BoolPtrOutput

Specifies whether password authentication should be disabled. Defaults to `false`. Changing this forces a new resource to be created.

func (ScaleSetOsProfileLinuxConfigOutput) ElementType

func (ScaleSetOsProfileLinuxConfigOutput) SshKeys

One or more `sshKeys` blocks as defined below.

> **Note:** Please note that the only allowed `path` is `/home/<username>/.ssh/authorized_keys` due to a limitation of Azure.

> **NOTE:** At least one `sshKeys` block is required if `disablePasswordAuthentication` is set to `true`.

func (ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigOutput

func (o ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigOutput() ScaleSetOsProfileLinuxConfigOutput

func (ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigOutputWithContext

func (o ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigOutput

func (ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigPtrOutput

func (o ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigPtrOutput() ScaleSetOsProfileLinuxConfigPtrOutput

func (ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext

func (o ScaleSetOsProfileLinuxConfigOutput) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigPtrOutput

type ScaleSetOsProfileLinuxConfigPtrInput

type ScaleSetOsProfileLinuxConfigPtrInput interface {
	pulumi.Input

	ToScaleSetOsProfileLinuxConfigPtrOutput() ScaleSetOsProfileLinuxConfigPtrOutput
	ToScaleSetOsProfileLinuxConfigPtrOutputWithContext(context.Context) ScaleSetOsProfileLinuxConfigPtrOutput
}

ScaleSetOsProfileLinuxConfigPtrInput is an input type that accepts ScaleSetOsProfileLinuxConfigArgs, ScaleSetOsProfileLinuxConfigPtr and ScaleSetOsProfileLinuxConfigPtrOutput values. You can construct a concrete instance of `ScaleSetOsProfileLinuxConfigPtrInput` via:

        ScaleSetOsProfileLinuxConfigArgs{...}

or:

        nil

type ScaleSetOsProfileLinuxConfigPtrOutput

type ScaleSetOsProfileLinuxConfigPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileLinuxConfigPtrOutput) DisablePasswordAuthentication

func (o ScaleSetOsProfileLinuxConfigPtrOutput) DisablePasswordAuthentication() pulumi.BoolPtrOutput

Specifies whether password authentication should be disabled. Defaults to `false`. Changing this forces a new resource to be created.

func (ScaleSetOsProfileLinuxConfigPtrOutput) Elem

func (ScaleSetOsProfileLinuxConfigPtrOutput) ElementType

func (ScaleSetOsProfileLinuxConfigPtrOutput) SshKeys

One or more `sshKeys` blocks as defined below.

> **Note:** Please note that the only allowed `path` is `/home/<username>/.ssh/authorized_keys` due to a limitation of Azure.

> **NOTE:** At least one `sshKeys` block is required if `disablePasswordAuthentication` is set to `true`.

func (ScaleSetOsProfileLinuxConfigPtrOutput) ToScaleSetOsProfileLinuxConfigPtrOutput

func (o ScaleSetOsProfileLinuxConfigPtrOutput) ToScaleSetOsProfileLinuxConfigPtrOutput() ScaleSetOsProfileLinuxConfigPtrOutput

func (ScaleSetOsProfileLinuxConfigPtrOutput) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext

func (o ScaleSetOsProfileLinuxConfigPtrOutput) ToScaleSetOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigPtrOutput

type ScaleSetOsProfileLinuxConfigSshKey

type ScaleSetOsProfileLinuxConfigSshKey struct {
	// The Public SSH Key which should be written to the `path` defined above.
	//
	// > **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
	//
	// > **NOTE:** Rather than defining this in-line you can source this from a local file using the `file` function - for example `keyData = file("~/.ssh/id_rsa.pub")`.
	KeyData *string `pulumi:"keyData"`
	// The path of the destination file on the virtual machine
	//
	// > **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.
	Path string `pulumi:"path"`
}

type ScaleSetOsProfileLinuxConfigSshKeyArgs

type ScaleSetOsProfileLinuxConfigSshKeyArgs struct {
	// The Public SSH Key which should be written to the `path` defined above.
	//
	// > **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
	//
	// > **NOTE:** Rather than defining this in-line you can source this from a local file using the `file` function - for example `keyData = file("~/.ssh/id_rsa.pub")`.
	KeyData pulumi.StringPtrInput `pulumi:"keyData"`
	// The path of the destination file on the virtual machine
	//
	// > **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.
	Path pulumi.StringInput `pulumi:"path"`
}

func (ScaleSetOsProfileLinuxConfigSshKeyArgs) ElementType

func (ScaleSetOsProfileLinuxConfigSshKeyArgs) ToScaleSetOsProfileLinuxConfigSshKeyOutput

func (i ScaleSetOsProfileLinuxConfigSshKeyArgs) ToScaleSetOsProfileLinuxConfigSshKeyOutput() ScaleSetOsProfileLinuxConfigSshKeyOutput

func (ScaleSetOsProfileLinuxConfigSshKeyArgs) ToScaleSetOsProfileLinuxConfigSshKeyOutputWithContext

func (i ScaleSetOsProfileLinuxConfigSshKeyArgs) ToScaleSetOsProfileLinuxConfigSshKeyOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigSshKeyOutput

type ScaleSetOsProfileLinuxConfigSshKeyArray

type ScaleSetOsProfileLinuxConfigSshKeyArray []ScaleSetOsProfileLinuxConfigSshKeyInput

func (ScaleSetOsProfileLinuxConfigSshKeyArray) ElementType

func (ScaleSetOsProfileLinuxConfigSshKeyArray) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutput

func (i ScaleSetOsProfileLinuxConfigSshKeyArray) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutput() ScaleSetOsProfileLinuxConfigSshKeyArrayOutput

func (ScaleSetOsProfileLinuxConfigSshKeyArray) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutputWithContext

func (i ScaleSetOsProfileLinuxConfigSshKeyArray) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigSshKeyArrayOutput

type ScaleSetOsProfileLinuxConfigSshKeyArrayInput

type ScaleSetOsProfileLinuxConfigSshKeyArrayInput interface {
	pulumi.Input

	ToScaleSetOsProfileLinuxConfigSshKeyArrayOutput() ScaleSetOsProfileLinuxConfigSshKeyArrayOutput
	ToScaleSetOsProfileLinuxConfigSshKeyArrayOutputWithContext(context.Context) ScaleSetOsProfileLinuxConfigSshKeyArrayOutput
}

ScaleSetOsProfileLinuxConfigSshKeyArrayInput is an input type that accepts ScaleSetOsProfileLinuxConfigSshKeyArray and ScaleSetOsProfileLinuxConfigSshKeyArrayOutput values. You can construct a concrete instance of `ScaleSetOsProfileLinuxConfigSshKeyArrayInput` via:

ScaleSetOsProfileLinuxConfigSshKeyArray{ ScaleSetOsProfileLinuxConfigSshKeyArgs{...} }

type ScaleSetOsProfileLinuxConfigSshKeyArrayOutput

type ScaleSetOsProfileLinuxConfigSshKeyArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) ElementType

func (ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) Index

func (ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutput

func (o ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutput() ScaleSetOsProfileLinuxConfigSshKeyArrayOutput

func (ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutputWithContext

func (o ScaleSetOsProfileLinuxConfigSshKeyArrayOutput) ToScaleSetOsProfileLinuxConfigSshKeyArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigSshKeyArrayOutput

type ScaleSetOsProfileLinuxConfigSshKeyInput

type ScaleSetOsProfileLinuxConfigSshKeyInput interface {
	pulumi.Input

	ToScaleSetOsProfileLinuxConfigSshKeyOutput() ScaleSetOsProfileLinuxConfigSshKeyOutput
	ToScaleSetOsProfileLinuxConfigSshKeyOutputWithContext(context.Context) ScaleSetOsProfileLinuxConfigSshKeyOutput
}

ScaleSetOsProfileLinuxConfigSshKeyInput is an input type that accepts ScaleSetOsProfileLinuxConfigSshKeyArgs and ScaleSetOsProfileLinuxConfigSshKeyOutput values. You can construct a concrete instance of `ScaleSetOsProfileLinuxConfigSshKeyInput` via:

ScaleSetOsProfileLinuxConfigSshKeyArgs{...}

type ScaleSetOsProfileLinuxConfigSshKeyOutput

type ScaleSetOsProfileLinuxConfigSshKeyOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileLinuxConfigSshKeyOutput) ElementType

func (ScaleSetOsProfileLinuxConfigSshKeyOutput) KeyData

The Public SSH Key which should be written to the `path` defined above.

> **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length

> **NOTE:** Rather than defining this in-line you can source this from a local file using the `file` function - for example `keyData = file("~/.ssh/id_rsa.pub")`.

func (ScaleSetOsProfileLinuxConfigSshKeyOutput) Path

The path of the destination file on the virtual machine

> **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.

func (ScaleSetOsProfileLinuxConfigSshKeyOutput) ToScaleSetOsProfileLinuxConfigSshKeyOutput

func (o ScaleSetOsProfileLinuxConfigSshKeyOutput) ToScaleSetOsProfileLinuxConfigSshKeyOutput() ScaleSetOsProfileLinuxConfigSshKeyOutput

func (ScaleSetOsProfileLinuxConfigSshKeyOutput) ToScaleSetOsProfileLinuxConfigSshKeyOutputWithContext

func (o ScaleSetOsProfileLinuxConfigSshKeyOutput) ToScaleSetOsProfileLinuxConfigSshKeyOutputWithContext(ctx context.Context) ScaleSetOsProfileLinuxConfigSshKeyOutput

type ScaleSetOsProfileOutput

type ScaleSetOsProfileOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileOutput) AdminPassword

Specifies the administrator password to use for all the instances of virtual machines in a scale set.

func (ScaleSetOsProfileOutput) AdminUsername

func (o ScaleSetOsProfileOutput) AdminUsername() pulumi.StringOutput

Specifies the administrator account name to use for all the instances of virtual machines in the scale set.

func (ScaleSetOsProfileOutput) ComputerNamePrefix

func (o ScaleSetOsProfileOutput) ComputerNamePrefix() pulumi.StringOutput

Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for Linux. Changing this forces a new resource to be created.

func (ScaleSetOsProfileOutput) CustomData

Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.

func (ScaleSetOsProfileOutput) ElementType

func (ScaleSetOsProfileOutput) ElementType() reflect.Type

func (ScaleSetOsProfileOutput) ToScaleSetOsProfileOutput

func (o ScaleSetOsProfileOutput) ToScaleSetOsProfileOutput() ScaleSetOsProfileOutput

func (ScaleSetOsProfileOutput) ToScaleSetOsProfileOutputWithContext

func (o ScaleSetOsProfileOutput) ToScaleSetOsProfileOutputWithContext(ctx context.Context) ScaleSetOsProfileOutput

func (ScaleSetOsProfileOutput) ToScaleSetOsProfilePtrOutput

func (o ScaleSetOsProfileOutput) ToScaleSetOsProfilePtrOutput() ScaleSetOsProfilePtrOutput

func (ScaleSetOsProfileOutput) ToScaleSetOsProfilePtrOutputWithContext

func (o ScaleSetOsProfileOutput) ToScaleSetOsProfilePtrOutputWithContext(ctx context.Context) ScaleSetOsProfilePtrOutput

type ScaleSetOsProfilePtrInput

type ScaleSetOsProfilePtrInput interface {
	pulumi.Input

	ToScaleSetOsProfilePtrOutput() ScaleSetOsProfilePtrOutput
	ToScaleSetOsProfilePtrOutputWithContext(context.Context) ScaleSetOsProfilePtrOutput
}

ScaleSetOsProfilePtrInput is an input type that accepts ScaleSetOsProfileArgs, ScaleSetOsProfilePtr and ScaleSetOsProfilePtrOutput values. You can construct a concrete instance of `ScaleSetOsProfilePtrInput` via:

        ScaleSetOsProfileArgs{...}

or:

        nil

type ScaleSetOsProfilePtrOutput

type ScaleSetOsProfilePtrOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfilePtrOutput) AdminPassword

Specifies the administrator password to use for all the instances of virtual machines in a scale set.

func (ScaleSetOsProfilePtrOutput) AdminUsername

Specifies the administrator account name to use for all the instances of virtual machines in the scale set.

func (ScaleSetOsProfilePtrOutput) ComputerNamePrefix

func (o ScaleSetOsProfilePtrOutput) ComputerNamePrefix() pulumi.StringPtrOutput

Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for Linux. Changing this forces a new resource to be created.

func (ScaleSetOsProfilePtrOutput) CustomData

Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.

func (ScaleSetOsProfilePtrOutput) Elem

func (ScaleSetOsProfilePtrOutput) ElementType

func (ScaleSetOsProfilePtrOutput) ElementType() reflect.Type

func (ScaleSetOsProfilePtrOutput) ToScaleSetOsProfilePtrOutput

func (o ScaleSetOsProfilePtrOutput) ToScaleSetOsProfilePtrOutput() ScaleSetOsProfilePtrOutput

func (ScaleSetOsProfilePtrOutput) ToScaleSetOsProfilePtrOutputWithContext

func (o ScaleSetOsProfilePtrOutput) ToScaleSetOsProfilePtrOutputWithContext(ctx context.Context) ScaleSetOsProfilePtrOutput

type ScaleSetOsProfileSecret

type ScaleSetOsProfileSecret struct {
	// Specifies the key vault to use.
	SourceVaultId string `pulumi:"sourceVaultId"`
	// (Required, on Windows machines) One or more `vaultCertificates` blocks as defined below.
	VaultCertificates []ScaleSetOsProfileSecretVaultCertificate `pulumi:"vaultCertificates"`
}

type ScaleSetOsProfileSecretArgs

type ScaleSetOsProfileSecretArgs struct {
	// Specifies the key vault to use.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
	// (Required, on Windows machines) One or more `vaultCertificates` blocks as defined below.
	VaultCertificates ScaleSetOsProfileSecretVaultCertificateArrayInput `pulumi:"vaultCertificates"`
}

func (ScaleSetOsProfileSecretArgs) ElementType

func (ScaleSetOsProfileSecretArgs) ToScaleSetOsProfileSecretOutput

func (i ScaleSetOsProfileSecretArgs) ToScaleSetOsProfileSecretOutput() ScaleSetOsProfileSecretOutput

func (ScaleSetOsProfileSecretArgs) ToScaleSetOsProfileSecretOutputWithContext

func (i ScaleSetOsProfileSecretArgs) ToScaleSetOsProfileSecretOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretOutput

type ScaleSetOsProfileSecretArray

type ScaleSetOsProfileSecretArray []ScaleSetOsProfileSecretInput

func (ScaleSetOsProfileSecretArray) ElementType

func (ScaleSetOsProfileSecretArray) ToScaleSetOsProfileSecretArrayOutput

func (i ScaleSetOsProfileSecretArray) ToScaleSetOsProfileSecretArrayOutput() ScaleSetOsProfileSecretArrayOutput

func (ScaleSetOsProfileSecretArray) ToScaleSetOsProfileSecretArrayOutputWithContext

func (i ScaleSetOsProfileSecretArray) ToScaleSetOsProfileSecretArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretArrayOutput

type ScaleSetOsProfileSecretArrayInput

type ScaleSetOsProfileSecretArrayInput interface {
	pulumi.Input

	ToScaleSetOsProfileSecretArrayOutput() ScaleSetOsProfileSecretArrayOutput
	ToScaleSetOsProfileSecretArrayOutputWithContext(context.Context) ScaleSetOsProfileSecretArrayOutput
}

ScaleSetOsProfileSecretArrayInput is an input type that accepts ScaleSetOsProfileSecretArray and ScaleSetOsProfileSecretArrayOutput values. You can construct a concrete instance of `ScaleSetOsProfileSecretArrayInput` via:

ScaleSetOsProfileSecretArray{ ScaleSetOsProfileSecretArgs{...} }

type ScaleSetOsProfileSecretArrayOutput

type ScaleSetOsProfileSecretArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileSecretArrayOutput) ElementType

func (ScaleSetOsProfileSecretArrayOutput) Index

func (ScaleSetOsProfileSecretArrayOutput) ToScaleSetOsProfileSecretArrayOutput

func (o ScaleSetOsProfileSecretArrayOutput) ToScaleSetOsProfileSecretArrayOutput() ScaleSetOsProfileSecretArrayOutput

func (ScaleSetOsProfileSecretArrayOutput) ToScaleSetOsProfileSecretArrayOutputWithContext

func (o ScaleSetOsProfileSecretArrayOutput) ToScaleSetOsProfileSecretArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretArrayOutput

type ScaleSetOsProfileSecretInput

type ScaleSetOsProfileSecretInput interface {
	pulumi.Input

	ToScaleSetOsProfileSecretOutput() ScaleSetOsProfileSecretOutput
	ToScaleSetOsProfileSecretOutputWithContext(context.Context) ScaleSetOsProfileSecretOutput
}

ScaleSetOsProfileSecretInput is an input type that accepts ScaleSetOsProfileSecretArgs and ScaleSetOsProfileSecretOutput values. You can construct a concrete instance of `ScaleSetOsProfileSecretInput` via:

ScaleSetOsProfileSecretArgs{...}

type ScaleSetOsProfileSecretOutput

type ScaleSetOsProfileSecretOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileSecretOutput) ElementType

func (ScaleSetOsProfileSecretOutput) SourceVaultId

Specifies the key vault to use.

func (ScaleSetOsProfileSecretOutput) ToScaleSetOsProfileSecretOutput

func (o ScaleSetOsProfileSecretOutput) ToScaleSetOsProfileSecretOutput() ScaleSetOsProfileSecretOutput

func (ScaleSetOsProfileSecretOutput) ToScaleSetOsProfileSecretOutputWithContext

func (o ScaleSetOsProfileSecretOutput) ToScaleSetOsProfileSecretOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretOutput

func (ScaleSetOsProfileSecretOutput) VaultCertificates

(Required, on Windows machines) One or more `vaultCertificates` blocks as defined below.

type ScaleSetOsProfileSecretVaultCertificate

type ScaleSetOsProfileSecretVaultCertificate struct {
	// (Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to.
	CertificateStore *string `pulumi:"certificateStore"`
	// It is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be `data`, `dataType` and `password`.
	CertificateUrl string `pulumi:"certificateUrl"`
}

type ScaleSetOsProfileSecretVaultCertificateArgs

type ScaleSetOsProfileSecretVaultCertificateArgs struct {
	// (Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to.
	CertificateStore pulumi.StringPtrInput `pulumi:"certificateStore"`
	// It is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be `data`, `dataType` and `password`.
	CertificateUrl pulumi.StringInput `pulumi:"certificateUrl"`
}

func (ScaleSetOsProfileSecretVaultCertificateArgs) ElementType

func (ScaleSetOsProfileSecretVaultCertificateArgs) ToScaleSetOsProfileSecretVaultCertificateOutput

func (i ScaleSetOsProfileSecretVaultCertificateArgs) ToScaleSetOsProfileSecretVaultCertificateOutput() ScaleSetOsProfileSecretVaultCertificateOutput

func (ScaleSetOsProfileSecretVaultCertificateArgs) ToScaleSetOsProfileSecretVaultCertificateOutputWithContext

func (i ScaleSetOsProfileSecretVaultCertificateArgs) ToScaleSetOsProfileSecretVaultCertificateOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretVaultCertificateOutput

type ScaleSetOsProfileSecretVaultCertificateArray

type ScaleSetOsProfileSecretVaultCertificateArray []ScaleSetOsProfileSecretVaultCertificateInput

func (ScaleSetOsProfileSecretVaultCertificateArray) ElementType

func (ScaleSetOsProfileSecretVaultCertificateArray) ToScaleSetOsProfileSecretVaultCertificateArrayOutput

func (i ScaleSetOsProfileSecretVaultCertificateArray) ToScaleSetOsProfileSecretVaultCertificateArrayOutput() ScaleSetOsProfileSecretVaultCertificateArrayOutput

func (ScaleSetOsProfileSecretVaultCertificateArray) ToScaleSetOsProfileSecretVaultCertificateArrayOutputWithContext

func (i ScaleSetOsProfileSecretVaultCertificateArray) ToScaleSetOsProfileSecretVaultCertificateArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretVaultCertificateArrayOutput

type ScaleSetOsProfileSecretVaultCertificateArrayInput

type ScaleSetOsProfileSecretVaultCertificateArrayInput interface {
	pulumi.Input

	ToScaleSetOsProfileSecretVaultCertificateArrayOutput() ScaleSetOsProfileSecretVaultCertificateArrayOutput
	ToScaleSetOsProfileSecretVaultCertificateArrayOutputWithContext(context.Context) ScaleSetOsProfileSecretVaultCertificateArrayOutput
}

ScaleSetOsProfileSecretVaultCertificateArrayInput is an input type that accepts ScaleSetOsProfileSecretVaultCertificateArray and ScaleSetOsProfileSecretVaultCertificateArrayOutput values. You can construct a concrete instance of `ScaleSetOsProfileSecretVaultCertificateArrayInput` via:

ScaleSetOsProfileSecretVaultCertificateArray{ ScaleSetOsProfileSecretVaultCertificateArgs{...} }

type ScaleSetOsProfileSecretVaultCertificateArrayOutput

type ScaleSetOsProfileSecretVaultCertificateArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileSecretVaultCertificateArrayOutput) ElementType

func (ScaleSetOsProfileSecretVaultCertificateArrayOutput) Index

func (ScaleSetOsProfileSecretVaultCertificateArrayOutput) ToScaleSetOsProfileSecretVaultCertificateArrayOutput

func (o ScaleSetOsProfileSecretVaultCertificateArrayOutput) ToScaleSetOsProfileSecretVaultCertificateArrayOutput() ScaleSetOsProfileSecretVaultCertificateArrayOutput

func (ScaleSetOsProfileSecretVaultCertificateArrayOutput) ToScaleSetOsProfileSecretVaultCertificateArrayOutputWithContext

func (o ScaleSetOsProfileSecretVaultCertificateArrayOutput) ToScaleSetOsProfileSecretVaultCertificateArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretVaultCertificateArrayOutput

type ScaleSetOsProfileSecretVaultCertificateInput

type ScaleSetOsProfileSecretVaultCertificateInput interface {
	pulumi.Input

	ToScaleSetOsProfileSecretVaultCertificateOutput() ScaleSetOsProfileSecretVaultCertificateOutput
	ToScaleSetOsProfileSecretVaultCertificateOutputWithContext(context.Context) ScaleSetOsProfileSecretVaultCertificateOutput
}

ScaleSetOsProfileSecretVaultCertificateInput is an input type that accepts ScaleSetOsProfileSecretVaultCertificateArgs and ScaleSetOsProfileSecretVaultCertificateOutput values. You can construct a concrete instance of `ScaleSetOsProfileSecretVaultCertificateInput` via:

ScaleSetOsProfileSecretVaultCertificateArgs{...}

type ScaleSetOsProfileSecretVaultCertificateOutput

type ScaleSetOsProfileSecretVaultCertificateOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileSecretVaultCertificateOutput) CertificateStore

(Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to.

func (ScaleSetOsProfileSecretVaultCertificateOutput) CertificateUrl

It is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be `data`, `dataType` and `password`.

func (ScaleSetOsProfileSecretVaultCertificateOutput) ElementType

func (ScaleSetOsProfileSecretVaultCertificateOutput) ToScaleSetOsProfileSecretVaultCertificateOutput

func (o ScaleSetOsProfileSecretVaultCertificateOutput) ToScaleSetOsProfileSecretVaultCertificateOutput() ScaleSetOsProfileSecretVaultCertificateOutput

func (ScaleSetOsProfileSecretVaultCertificateOutput) ToScaleSetOsProfileSecretVaultCertificateOutputWithContext

func (o ScaleSetOsProfileSecretVaultCertificateOutput) ToScaleSetOsProfileSecretVaultCertificateOutputWithContext(ctx context.Context) ScaleSetOsProfileSecretVaultCertificateOutput

type ScaleSetOsProfileWindowsConfig

type ScaleSetOsProfileWindowsConfig struct {
	// An `additionalUnattendConfig` block as documented below.
	AdditionalUnattendConfigs []ScaleSetOsProfileWindowsConfigAdditionalUnattendConfig `pulumi:"additionalUnattendConfigs"`
	// Indicates whether virtual machines in the scale set are enabled for automatic updates.
	EnableAutomaticUpgrades *bool `pulumi:"enableAutomaticUpgrades"`
	// Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.
	ProvisionVmAgent *bool `pulumi:"provisionVmAgent"`
	// A collection of `winrm` blocks as documented below.
	Winrms []ScaleSetOsProfileWindowsConfigWinrm `pulumi:"winrms"`
}

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfig

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfig struct {
	// Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.
	Component string `pulumi:"component"`
	// Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
	Content string `pulumi:"content"`
	// Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.
	Pass string `pulumi:"pass"`
	// Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.
	SettingName string `pulumi:"settingName"`
}

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs struct {
	// Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.
	Component pulumi.StringInput `pulumi:"component"`
	// Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
	Content pulumi.StringInput `pulumi:"content"`
	// Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.
	Pass pulumi.StringInput `pulumi:"pass"`
	// Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.
	SettingName pulumi.StringInput `pulumi:"settingName"`
}

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs) ElementType

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext

func (i ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray []ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigInput

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray) ElementType

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext

func (i ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayInput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput() ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput
	ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput
}

ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayInput is an input type that accepts ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray and ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayInput` via:

ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArray{ ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs{...} }

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ElementType

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) Index

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext

func (o ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigInput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput() ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput
	ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput
}

ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigInput is an input type that accepts ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs and ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigInput` via:

ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArgs{...}

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput

type ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) Component

Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) Content

Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) ElementType

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) Pass

Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) SettingName

Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput

func (ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext

func (o ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutput

type ScaleSetOsProfileWindowsConfigArgs

type ScaleSetOsProfileWindowsConfigArgs struct {
	// An `additionalUnattendConfig` block as documented below.
	AdditionalUnattendConfigs ScaleSetOsProfileWindowsConfigAdditionalUnattendConfigArrayInput `pulumi:"additionalUnattendConfigs"`
	// Indicates whether virtual machines in the scale set are enabled for automatic updates.
	EnableAutomaticUpgrades pulumi.BoolPtrInput `pulumi:"enableAutomaticUpgrades"`
	// Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.
	ProvisionVmAgent pulumi.BoolPtrInput `pulumi:"provisionVmAgent"`
	// A collection of `winrm` blocks as documented below.
	Winrms ScaleSetOsProfileWindowsConfigWinrmArrayInput `pulumi:"winrms"`
}

func (ScaleSetOsProfileWindowsConfigArgs) ElementType

func (ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigOutput

func (i ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigOutput() ScaleSetOsProfileWindowsConfigOutput

func (ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigOutputWithContext

func (i ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigOutput

func (ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigPtrOutput

func (i ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigPtrOutput() ScaleSetOsProfileWindowsConfigPtrOutput

func (ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext

func (i ScaleSetOsProfileWindowsConfigArgs) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigPtrOutput

type ScaleSetOsProfileWindowsConfigInput

type ScaleSetOsProfileWindowsConfigInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigOutput() ScaleSetOsProfileWindowsConfigOutput
	ToScaleSetOsProfileWindowsConfigOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigOutput
}

ScaleSetOsProfileWindowsConfigInput is an input type that accepts ScaleSetOsProfileWindowsConfigArgs and ScaleSetOsProfileWindowsConfigOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigInput` via:

ScaleSetOsProfileWindowsConfigArgs{...}

type ScaleSetOsProfileWindowsConfigOutput

type ScaleSetOsProfileWindowsConfigOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigOutput) AdditionalUnattendConfigs

An `additionalUnattendConfig` block as documented below.

func (ScaleSetOsProfileWindowsConfigOutput) ElementType

func (ScaleSetOsProfileWindowsConfigOutput) EnableAutomaticUpgrades

func (o ScaleSetOsProfileWindowsConfigOutput) EnableAutomaticUpgrades() pulumi.BoolPtrOutput

Indicates whether virtual machines in the scale set are enabled for automatic updates.

func (ScaleSetOsProfileWindowsConfigOutput) ProvisionVmAgent

Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.

func (ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigOutput

func (o ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigOutput() ScaleSetOsProfileWindowsConfigOutput

func (ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigOutputWithContext

func (o ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigOutput

func (ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigPtrOutput

func (o ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigPtrOutput() ScaleSetOsProfileWindowsConfigPtrOutput

func (ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext

func (o ScaleSetOsProfileWindowsConfigOutput) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigPtrOutput

func (ScaleSetOsProfileWindowsConfigOutput) Winrms

A collection of `winrm` blocks as documented below.

type ScaleSetOsProfileWindowsConfigPtrInput

type ScaleSetOsProfileWindowsConfigPtrInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigPtrOutput() ScaleSetOsProfileWindowsConfigPtrOutput
	ToScaleSetOsProfileWindowsConfigPtrOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigPtrOutput
}

ScaleSetOsProfileWindowsConfigPtrInput is an input type that accepts ScaleSetOsProfileWindowsConfigArgs, ScaleSetOsProfileWindowsConfigPtr and ScaleSetOsProfileWindowsConfigPtrOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigPtrInput` via:

        ScaleSetOsProfileWindowsConfigArgs{...}

or:

        nil

type ScaleSetOsProfileWindowsConfigPtrOutput

type ScaleSetOsProfileWindowsConfigPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigPtrOutput) AdditionalUnattendConfigs

An `additionalUnattendConfig` block as documented below.

func (ScaleSetOsProfileWindowsConfigPtrOutput) Elem

func (ScaleSetOsProfileWindowsConfigPtrOutput) ElementType

func (ScaleSetOsProfileWindowsConfigPtrOutput) EnableAutomaticUpgrades

func (o ScaleSetOsProfileWindowsConfigPtrOutput) EnableAutomaticUpgrades() pulumi.BoolPtrOutput

Indicates whether virtual machines in the scale set are enabled for automatic updates.

func (ScaleSetOsProfileWindowsConfigPtrOutput) ProvisionVmAgent

Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.

func (ScaleSetOsProfileWindowsConfigPtrOutput) ToScaleSetOsProfileWindowsConfigPtrOutput

func (o ScaleSetOsProfileWindowsConfigPtrOutput) ToScaleSetOsProfileWindowsConfigPtrOutput() ScaleSetOsProfileWindowsConfigPtrOutput

func (ScaleSetOsProfileWindowsConfigPtrOutput) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext

func (o ScaleSetOsProfileWindowsConfigPtrOutput) ToScaleSetOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigPtrOutput

func (ScaleSetOsProfileWindowsConfigPtrOutput) Winrms

A collection of `winrm` blocks as documented below.

type ScaleSetOsProfileWindowsConfigWinrm

type ScaleSetOsProfileWindowsConfigWinrm struct {
	// Specifies URL of the certificate with which new Virtual Machines is provisioned.
	CertificateUrl *string `pulumi:"certificateUrl"`
	// Specifies the protocol of listener
	Protocol string `pulumi:"protocol"`
}

type ScaleSetOsProfileWindowsConfigWinrmArgs

type ScaleSetOsProfileWindowsConfigWinrmArgs struct {
	// Specifies URL of the certificate with which new Virtual Machines is provisioned.
	CertificateUrl pulumi.StringPtrInput `pulumi:"certificateUrl"`
	// Specifies the protocol of listener
	Protocol pulumi.StringInput `pulumi:"protocol"`
}

func (ScaleSetOsProfileWindowsConfigWinrmArgs) ElementType

func (ScaleSetOsProfileWindowsConfigWinrmArgs) ToScaleSetOsProfileWindowsConfigWinrmOutput

func (i ScaleSetOsProfileWindowsConfigWinrmArgs) ToScaleSetOsProfileWindowsConfigWinrmOutput() ScaleSetOsProfileWindowsConfigWinrmOutput

func (ScaleSetOsProfileWindowsConfigWinrmArgs) ToScaleSetOsProfileWindowsConfigWinrmOutputWithContext

func (i ScaleSetOsProfileWindowsConfigWinrmArgs) ToScaleSetOsProfileWindowsConfigWinrmOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigWinrmOutput

type ScaleSetOsProfileWindowsConfigWinrmArray

type ScaleSetOsProfileWindowsConfigWinrmArray []ScaleSetOsProfileWindowsConfigWinrmInput

func (ScaleSetOsProfileWindowsConfigWinrmArray) ElementType

func (ScaleSetOsProfileWindowsConfigWinrmArray) ToScaleSetOsProfileWindowsConfigWinrmArrayOutput

func (i ScaleSetOsProfileWindowsConfigWinrmArray) ToScaleSetOsProfileWindowsConfigWinrmArrayOutput() ScaleSetOsProfileWindowsConfigWinrmArrayOutput

func (ScaleSetOsProfileWindowsConfigWinrmArray) ToScaleSetOsProfileWindowsConfigWinrmArrayOutputWithContext

func (i ScaleSetOsProfileWindowsConfigWinrmArray) ToScaleSetOsProfileWindowsConfigWinrmArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigWinrmArrayOutput

type ScaleSetOsProfileWindowsConfigWinrmArrayInput

type ScaleSetOsProfileWindowsConfigWinrmArrayInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigWinrmArrayOutput() ScaleSetOsProfileWindowsConfigWinrmArrayOutput
	ToScaleSetOsProfileWindowsConfigWinrmArrayOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigWinrmArrayOutput
}

ScaleSetOsProfileWindowsConfigWinrmArrayInput is an input type that accepts ScaleSetOsProfileWindowsConfigWinrmArray and ScaleSetOsProfileWindowsConfigWinrmArrayOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigWinrmArrayInput` via:

ScaleSetOsProfileWindowsConfigWinrmArray{ ScaleSetOsProfileWindowsConfigWinrmArgs{...} }

type ScaleSetOsProfileWindowsConfigWinrmArrayOutput

type ScaleSetOsProfileWindowsConfigWinrmArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigWinrmArrayOutput) ElementType

func (ScaleSetOsProfileWindowsConfigWinrmArrayOutput) Index

func (ScaleSetOsProfileWindowsConfigWinrmArrayOutput) ToScaleSetOsProfileWindowsConfigWinrmArrayOutput

func (o ScaleSetOsProfileWindowsConfigWinrmArrayOutput) ToScaleSetOsProfileWindowsConfigWinrmArrayOutput() ScaleSetOsProfileWindowsConfigWinrmArrayOutput

func (ScaleSetOsProfileWindowsConfigWinrmArrayOutput) ToScaleSetOsProfileWindowsConfigWinrmArrayOutputWithContext

func (o ScaleSetOsProfileWindowsConfigWinrmArrayOutput) ToScaleSetOsProfileWindowsConfigWinrmArrayOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigWinrmArrayOutput

type ScaleSetOsProfileWindowsConfigWinrmInput

type ScaleSetOsProfileWindowsConfigWinrmInput interface {
	pulumi.Input

	ToScaleSetOsProfileWindowsConfigWinrmOutput() ScaleSetOsProfileWindowsConfigWinrmOutput
	ToScaleSetOsProfileWindowsConfigWinrmOutputWithContext(context.Context) ScaleSetOsProfileWindowsConfigWinrmOutput
}

ScaleSetOsProfileWindowsConfigWinrmInput is an input type that accepts ScaleSetOsProfileWindowsConfigWinrmArgs and ScaleSetOsProfileWindowsConfigWinrmOutput values. You can construct a concrete instance of `ScaleSetOsProfileWindowsConfigWinrmInput` via:

ScaleSetOsProfileWindowsConfigWinrmArgs{...}

type ScaleSetOsProfileWindowsConfigWinrmOutput

type ScaleSetOsProfileWindowsConfigWinrmOutput struct{ *pulumi.OutputState }

func (ScaleSetOsProfileWindowsConfigWinrmOutput) CertificateUrl

Specifies URL of the certificate with which new Virtual Machines is provisioned.

func (ScaleSetOsProfileWindowsConfigWinrmOutput) ElementType

func (ScaleSetOsProfileWindowsConfigWinrmOutput) Protocol

Specifies the protocol of listener

func (ScaleSetOsProfileWindowsConfigWinrmOutput) ToScaleSetOsProfileWindowsConfigWinrmOutput

func (o ScaleSetOsProfileWindowsConfigWinrmOutput) ToScaleSetOsProfileWindowsConfigWinrmOutput() ScaleSetOsProfileWindowsConfigWinrmOutput

func (ScaleSetOsProfileWindowsConfigWinrmOutput) ToScaleSetOsProfileWindowsConfigWinrmOutputWithContext

func (o ScaleSetOsProfileWindowsConfigWinrmOutput) ToScaleSetOsProfileWindowsConfigWinrmOutputWithContext(ctx context.Context) ScaleSetOsProfileWindowsConfigWinrmOutput

type ScaleSetOutput

type ScaleSetOutput struct{ *pulumi.OutputState }

func (ScaleSetOutput) AutomaticOsUpgrade added in v5.5.0

func (o ScaleSetOutput) AutomaticOsUpgrade() pulumi.BoolPtrOutput

Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when `upgradePolicyMode` is set to `Rolling`. Defaults to `false`.

func (ScaleSetOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as referenced below.

func (ScaleSetOutput) ElementType

func (ScaleSetOutput) ElementType() reflect.Type

func (ScaleSetOutput) EvictionPolicy added in v5.5.0

func (o ScaleSetOutput) EvictionPolicy() pulumi.StringPtrOutput

Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

> **NOTE:** `evictionPolicy` can only be set when `priority` is set to `Low`.

func (ScaleSetOutput) Extensions added in v5.5.0

Can be specified multiple times to add extension profiles to the scale set. Each `extension` block supports the fields documented below.

func (ScaleSetOutput) HealthProbeId added in v5.5.0

func (o ScaleSetOutput) HealthProbeId() pulumi.StringPtrOutput

Specifies the identifier for the load balancer health probe. Required when using `Rolling` as your `upgradePolicyMode`.

func (ScaleSetOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (ScaleSetOutput) LicenseType added in v5.5.0

func (o ScaleSetOutput) LicenseType() pulumi.StringOutput

(Optional, when a Windows machine) Specifies the Windows OS license type. If supplied, the only allowed values are `Windows_Client` and `Windows_Server`.

func (ScaleSetOutput) Location added in v5.5.0

func (o ScaleSetOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (ScaleSetOutput) Name added in v5.5.0

Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.

func (ScaleSetOutput) NetworkProfiles added in v5.5.0

A collection of `networkProfile` blocks as documented below.

func (ScaleSetOutput) OsProfile added in v5.5.0

A `osProfile` block as documented below.

func (ScaleSetOutput) OsProfileLinuxConfig added in v5.5.0

func (o ScaleSetOutput) OsProfileLinuxConfig() ScaleSetOsProfileLinuxConfigOutput

A `osProfileLinuxConfig` block as documented below.

func (ScaleSetOutput) OsProfileSecrets added in v5.5.0

A collection of `osProfileSecrets` blocks as documented below.

func (ScaleSetOutput) OsProfileWindowsConfig added in v5.5.0

func (o ScaleSetOutput) OsProfileWindowsConfig() ScaleSetOsProfileWindowsConfigPtrOutput

A `osProfileWindowsConfig` block as documented below.

func (ScaleSetOutput) Overprovision added in v5.5.0

func (o ScaleSetOutput) Overprovision() pulumi.BoolPtrOutput

Specifies whether the virtual machine scale set should be overprovisioned. Defaults to `true`.

func (ScaleSetOutput) Plan added in v5.5.0

A `plan` block as documented below.

func (ScaleSetOutput) Priority added in v5.5.0

func (o ScaleSetOutput) Priority() pulumi.StringPtrOutput

Specifies the priority for the Virtual Machines in the Scale Set. Possible values are `Low` and `Regular`. Changing this forces a new resource to be created.

func (ScaleSetOutput) ProximityPlacementGroupId added in v5.5.0

func (o ScaleSetOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

func (ScaleSetOutput) ResourceGroupName added in v5.5.0

func (o ScaleSetOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.

func (ScaleSetOutput) RollingUpgradePolicy added in v5.5.0

func (o ScaleSetOutput) RollingUpgradePolicy() ScaleSetRollingUpgradePolicyPtrOutput

A `rollingUpgradePolicy` block as defined below. This is only applicable when the `upgradePolicyMode` is `Rolling`.

func (ScaleSetOutput) SinglePlacementGroup added in v5.5.0

func (o ScaleSetOutput) SinglePlacementGroup() pulumi.BoolPtrOutput

Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Changing this forces a new resource to be created. See [documentation](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups) for more information. Defaults to `true`.

func (ScaleSetOutput) Sku added in v5.5.0

A `sku` block as documented below.

func (ScaleSetOutput) StorageProfileDataDisks added in v5.5.0

func (o ScaleSetOutput) StorageProfileDataDisks() ScaleSetStorageProfileDataDiskArrayOutput

A `storageProfileDataDisk` block as documented below.

func (ScaleSetOutput) StorageProfileImageReference added in v5.5.0

func (o ScaleSetOutput) StorageProfileImageReference() ScaleSetStorageProfileImageReferenceOutput

A `storageProfileImageReference` block as documented below.

func (ScaleSetOutput) StorageProfileOsDisk added in v5.5.0

func (o ScaleSetOutput) StorageProfileOsDisk() ScaleSetStorageProfileOsDiskOutput

A `storageProfileOsDisk` block as documented below.

func (ScaleSetOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (ScaleSetOutput) ToScaleSetOutput

func (o ScaleSetOutput) ToScaleSetOutput() ScaleSetOutput

func (ScaleSetOutput) ToScaleSetOutputWithContext

func (o ScaleSetOutput) ToScaleSetOutputWithContext(ctx context.Context) ScaleSetOutput

func (ScaleSetOutput) UpgradePolicyMode added in v5.5.0

func (o ScaleSetOutput) UpgradePolicyMode() pulumi.StringOutput

Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, `Rolling`, `Manual`, or `Automatic`. When choosing `Rolling`, you will need to set a health probe.

func (ScaleSetOutput) Zones added in v5.5.0

A collection of availability zones to spread the Virtual Machines over. Changing this forces a new resource to be created.

> **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).

type ScaleSetPacketCapture added in v5.28.0

type ScaleSetPacketCapture struct {
	pulumi.CustomResourceState

	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters ScaleSetPacketCaptureFilterArrayOutput `pulumi:"filters"`
	// A `machineScope` block as defined below. Changing this forces a new resource to be created.
	MachineScope ScaleSetPacketCaptureMachineScopePtrOutput `pulumi:"machineScope"`
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrOutput `pulumi:"maximumBytesPerPacket"`
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrOutput `pulumi:"maximumBytesPerSession"`
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrOutput `pulumi:"maximumCaptureDurationInSeconds"`
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringOutput `pulumi:"networkWatcherId"`
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation ScaleSetPacketCaptureStorageLocationOutput `pulumi:"storageLocation"`
	// The resource ID of the Virtual Machine Scale Set to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineScaleSetId pulumi.StringOutput `pulumi:"virtualMachineScaleSetId"`
}

Configures Network Packet Capturing against a Virtual Machine Scale Set using a Network Watcher.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleNetworkWatcher, err := network.NewNetworkWatcher(ctx, "example", &network.NetworkWatcherArgs{
			Name:              pulumi.String("example-nw"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-vn"),
			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("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleLinuxVirtualMachineScaleSet, err := compute.NewLinuxVirtualMachineScaleSet(ctx, "example", &compute.LinuxVirtualMachineScaleSetArgs{
			Name:                          pulumi.String("example-vmss"),
			ResourceGroupName:             example.Name,
			Location:                      example.Location,
			Sku:                           pulumi.String("Standard_F2"),
			Instances:                     pulumi.Int(4),
			AdminUsername:                 pulumi.String("adminuser"),
			AdminPassword:                 pulumi.String("P@ssword1234!"),
			ComputerNamePrefix:            pulumi.String("my-linux-computer-name-prefix"),
			UpgradeMode:                   pulumi.String("Automatic"),
			DisablePasswordAuthentication: pulumi.Bool(false),
			SourceImageReference: &compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			OsDisk: &compute.LinuxVirtualMachineScaleSetOsDiskArgs{
				StorageAccountType: pulumi.String("Standard_LRS"),
				Caching:            pulumi.String("ReadWrite"),
			},
			NetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{
				&compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{
					Name:    pulumi.String("example"),
					Primary: pulumi.Bool(true),
					IpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{
						&compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{
							Name:     pulumi.String("internal"),
							Primary:  pulumi.Bool(true),
							SubnetId: exampleSubnet.ID(),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewVirtualMachineScaleSetExtension(ctx, "example", &compute.VirtualMachineScaleSetExtensionArgs{
			Name:                     pulumi.String("network-watcher"),
			VirtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.ID(),
			Publisher:                pulumi.String("Microsoft.Azure.NetworkWatcher"),
			Type:                     pulumi.String("NetworkWatcherAgentLinux"),
			TypeHandlerVersion:       pulumi.String("1.4"),
			AutoUpgradeMinorVersion:  pulumi.Bool(true),
			AutomaticUpgradeEnabled:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewScaleSetPacketCapture(ctx, "example", &compute.ScaleSetPacketCaptureArgs{
			Name:                     pulumi.String("example-pc"),
			NetworkWatcherId:         exampleNetworkWatcher.ID(),
			VirtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.ID(),
			StorageLocation: &compute.ScaleSetPacketCaptureStorageLocationArgs{
				FilePath: pulumi.String("/var/captures/packet.cap"),
			},
			MachineScope: &compute.ScaleSetPacketCaptureMachineScopeArgs{
				IncludeInstanceIds: pulumi.StringArray{
					pulumi.String("0"),
				},
				ExcludeInstanceIds: pulumi.StringArray{
					pulumi.String("1"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE:** This Resource requires that [the Network Watcher Extension](https://docs.microsoft.com/azure/network-watcher/network-watcher-packet-capture-manage-portal#before-you-begin) is installed on the Virtual Machine Scale Set before capturing can be enabled which can be installed via the `compute.VirtualMachineScaleSetExtension` resource.

## Import

Virtual Machine Scale Set Packet Captures can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/scaleSetPacketCapture:ScaleSetPacketCapture capture1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/networkWatchers/watcher1/packetCaptures/capture1 ```

func GetScaleSetPacketCapture added in v5.28.0

func GetScaleSetPacketCapture(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScaleSetPacketCaptureState, opts ...pulumi.ResourceOption) (*ScaleSetPacketCapture, error)

GetScaleSetPacketCapture gets an existing ScaleSetPacketCapture 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 NewScaleSetPacketCapture added in v5.28.0

func NewScaleSetPacketCapture(ctx *pulumi.Context,
	name string, args *ScaleSetPacketCaptureArgs, opts ...pulumi.ResourceOption) (*ScaleSetPacketCapture, error)

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

func (*ScaleSetPacketCapture) ElementType added in v5.28.0

func (*ScaleSetPacketCapture) ElementType() reflect.Type

func (*ScaleSetPacketCapture) ToScaleSetPacketCaptureOutput added in v5.28.0

func (i *ScaleSetPacketCapture) ToScaleSetPacketCaptureOutput() ScaleSetPacketCaptureOutput

func (*ScaleSetPacketCapture) ToScaleSetPacketCaptureOutputWithContext added in v5.28.0

func (i *ScaleSetPacketCapture) ToScaleSetPacketCaptureOutputWithContext(ctx context.Context) ScaleSetPacketCaptureOutput

type ScaleSetPacketCaptureArgs added in v5.28.0

type ScaleSetPacketCaptureArgs struct {
	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters ScaleSetPacketCaptureFilterArrayInput
	// A `machineScope` block as defined below. Changing this forces a new resource to be created.
	MachineScope ScaleSetPacketCaptureMachineScopePtrInput
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrInput
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrInput
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrInput
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringInput
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation ScaleSetPacketCaptureStorageLocationInput
	// The resource ID of the Virtual Machine Scale Set to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineScaleSetId pulumi.StringInput
}

The set of arguments for constructing a ScaleSetPacketCapture resource.

func (ScaleSetPacketCaptureArgs) ElementType added in v5.28.0

func (ScaleSetPacketCaptureArgs) ElementType() reflect.Type

type ScaleSetPacketCaptureArray added in v5.28.0

type ScaleSetPacketCaptureArray []ScaleSetPacketCaptureInput

func (ScaleSetPacketCaptureArray) ElementType added in v5.28.0

func (ScaleSetPacketCaptureArray) ElementType() reflect.Type

func (ScaleSetPacketCaptureArray) ToScaleSetPacketCaptureArrayOutput added in v5.28.0

func (i ScaleSetPacketCaptureArray) ToScaleSetPacketCaptureArrayOutput() ScaleSetPacketCaptureArrayOutput

func (ScaleSetPacketCaptureArray) ToScaleSetPacketCaptureArrayOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureArray) ToScaleSetPacketCaptureArrayOutputWithContext(ctx context.Context) ScaleSetPacketCaptureArrayOutput

type ScaleSetPacketCaptureArrayInput added in v5.28.0

type ScaleSetPacketCaptureArrayInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureArrayOutput() ScaleSetPacketCaptureArrayOutput
	ToScaleSetPacketCaptureArrayOutputWithContext(context.Context) ScaleSetPacketCaptureArrayOutput
}

ScaleSetPacketCaptureArrayInput is an input type that accepts ScaleSetPacketCaptureArray and ScaleSetPacketCaptureArrayOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureArrayInput` via:

ScaleSetPacketCaptureArray{ ScaleSetPacketCaptureArgs{...} }

type ScaleSetPacketCaptureArrayOutput added in v5.28.0

type ScaleSetPacketCaptureArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureArrayOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureArrayOutput) Index added in v5.28.0

func (ScaleSetPacketCaptureArrayOutput) ToScaleSetPacketCaptureArrayOutput added in v5.28.0

func (o ScaleSetPacketCaptureArrayOutput) ToScaleSetPacketCaptureArrayOutput() ScaleSetPacketCaptureArrayOutput

func (ScaleSetPacketCaptureArrayOutput) ToScaleSetPacketCaptureArrayOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureArrayOutput) ToScaleSetPacketCaptureArrayOutputWithContext(ctx context.Context) ScaleSetPacketCaptureArrayOutput

type ScaleSetPacketCaptureFilter added in v5.28.0

type ScaleSetPacketCaptureFilter struct {
	// The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalIpAddress *string `pulumi:"localIpAddress"`
	// The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalPort *string `pulumi:"localPort"`
	// The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.
	Protocol string `pulumi:"protocol"`
	// The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemoteIpAddress *string `pulumi:"remoteIpAddress"`
	// The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemotePort *string `pulumi:"remotePort"`
}

type ScaleSetPacketCaptureFilterArgs added in v5.28.0

type ScaleSetPacketCaptureFilterArgs struct {
	// The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalIpAddress pulumi.StringPtrInput `pulumi:"localIpAddress"`
	// The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	LocalPort pulumi.StringPtrInput `pulumi:"localPort"`
	// The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemoteIpAddress pulumi.StringPtrInput `pulumi:"remoteIpAddress"`
	// The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.
	RemotePort pulumi.StringPtrInput `pulumi:"remotePort"`
}

func (ScaleSetPacketCaptureFilterArgs) ElementType added in v5.28.0

func (ScaleSetPacketCaptureFilterArgs) ToScaleSetPacketCaptureFilterOutput added in v5.28.0

func (i ScaleSetPacketCaptureFilterArgs) ToScaleSetPacketCaptureFilterOutput() ScaleSetPacketCaptureFilterOutput

func (ScaleSetPacketCaptureFilterArgs) ToScaleSetPacketCaptureFilterOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureFilterArgs) ToScaleSetPacketCaptureFilterOutputWithContext(ctx context.Context) ScaleSetPacketCaptureFilterOutput

type ScaleSetPacketCaptureFilterArray added in v5.28.0

type ScaleSetPacketCaptureFilterArray []ScaleSetPacketCaptureFilterInput

func (ScaleSetPacketCaptureFilterArray) ElementType added in v5.28.0

func (ScaleSetPacketCaptureFilterArray) ToScaleSetPacketCaptureFilterArrayOutput added in v5.28.0

func (i ScaleSetPacketCaptureFilterArray) ToScaleSetPacketCaptureFilterArrayOutput() ScaleSetPacketCaptureFilterArrayOutput

func (ScaleSetPacketCaptureFilterArray) ToScaleSetPacketCaptureFilterArrayOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureFilterArray) ToScaleSetPacketCaptureFilterArrayOutputWithContext(ctx context.Context) ScaleSetPacketCaptureFilterArrayOutput

type ScaleSetPacketCaptureFilterArrayInput added in v5.28.0

type ScaleSetPacketCaptureFilterArrayInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureFilterArrayOutput() ScaleSetPacketCaptureFilterArrayOutput
	ToScaleSetPacketCaptureFilterArrayOutputWithContext(context.Context) ScaleSetPacketCaptureFilterArrayOutput
}

ScaleSetPacketCaptureFilterArrayInput is an input type that accepts ScaleSetPacketCaptureFilterArray and ScaleSetPacketCaptureFilterArrayOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureFilterArrayInput` via:

ScaleSetPacketCaptureFilterArray{ ScaleSetPacketCaptureFilterArgs{...} }

type ScaleSetPacketCaptureFilterArrayOutput added in v5.28.0

type ScaleSetPacketCaptureFilterArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureFilterArrayOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureFilterArrayOutput) Index added in v5.28.0

func (ScaleSetPacketCaptureFilterArrayOutput) ToScaleSetPacketCaptureFilterArrayOutput added in v5.28.0

func (o ScaleSetPacketCaptureFilterArrayOutput) ToScaleSetPacketCaptureFilterArrayOutput() ScaleSetPacketCaptureFilterArrayOutput

func (ScaleSetPacketCaptureFilterArrayOutput) ToScaleSetPacketCaptureFilterArrayOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureFilterArrayOutput) ToScaleSetPacketCaptureFilterArrayOutputWithContext(ctx context.Context) ScaleSetPacketCaptureFilterArrayOutput

type ScaleSetPacketCaptureFilterInput added in v5.28.0

type ScaleSetPacketCaptureFilterInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureFilterOutput() ScaleSetPacketCaptureFilterOutput
	ToScaleSetPacketCaptureFilterOutputWithContext(context.Context) ScaleSetPacketCaptureFilterOutput
}

ScaleSetPacketCaptureFilterInput is an input type that accepts ScaleSetPacketCaptureFilterArgs and ScaleSetPacketCaptureFilterOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureFilterInput` via:

ScaleSetPacketCaptureFilterArgs{...}

type ScaleSetPacketCaptureFilterOutput added in v5.28.0

type ScaleSetPacketCaptureFilterOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureFilterOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureFilterOutput) LocalIpAddress added in v5.28.0

The local IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureFilterOutput) LocalPort added in v5.28.0

The local port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureFilterOutput) Protocol added in v5.28.0

The Protocol to be filtered on. Possible values include `Any`, `TCP` and `UDP`. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureFilterOutput) RemoteIpAddress added in v5.28.0

The remote IP Address to be filtered on. Specify `127.0.0.1` for a single address entry, `127.0.0.1-127.0.0.255` for a range and `127.0.0.1;127.0.0.5` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureFilterOutput) RemotePort added in v5.28.0

The remote port to be filtered on. Specify `80` for single port entry, `80-85` for a range and `80;443;` for multiple entries. Multiple ranges and mixing ranges with multiple entries are currently not supported. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureFilterOutput) ToScaleSetPacketCaptureFilterOutput added in v5.28.0

func (o ScaleSetPacketCaptureFilterOutput) ToScaleSetPacketCaptureFilterOutput() ScaleSetPacketCaptureFilterOutput

func (ScaleSetPacketCaptureFilterOutput) ToScaleSetPacketCaptureFilterOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureFilterOutput) ToScaleSetPacketCaptureFilterOutputWithContext(ctx context.Context) ScaleSetPacketCaptureFilterOutput

type ScaleSetPacketCaptureInput added in v5.28.0

type ScaleSetPacketCaptureInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureOutput() ScaleSetPacketCaptureOutput
	ToScaleSetPacketCaptureOutputWithContext(ctx context.Context) ScaleSetPacketCaptureOutput
}

type ScaleSetPacketCaptureMachineScope added in v5.28.0

type ScaleSetPacketCaptureMachineScope struct {
	// A list of Virtual Machine Scale Set instance IDs which should be excluded from running Packet Capture, e.g. `["0", "2"]`. Changing this forces a new resource to be created.
	ExcludeInstanceIds []string `pulumi:"excludeInstanceIds"`
	// A list of Virtual Machine Scale Set instance IDs which should be included for Packet Capture, e.g. `["1", "3"]`. Changing this forces a new resource to be created.
	IncludeInstanceIds []string `pulumi:"includeInstanceIds"`
}

type ScaleSetPacketCaptureMachineScopeArgs added in v5.28.0

type ScaleSetPacketCaptureMachineScopeArgs struct {
	// A list of Virtual Machine Scale Set instance IDs which should be excluded from running Packet Capture, e.g. `["0", "2"]`. Changing this forces a new resource to be created.
	ExcludeInstanceIds pulumi.StringArrayInput `pulumi:"excludeInstanceIds"`
	// A list of Virtual Machine Scale Set instance IDs which should be included for Packet Capture, e.g. `["1", "3"]`. Changing this forces a new resource to be created.
	IncludeInstanceIds pulumi.StringArrayInput `pulumi:"includeInstanceIds"`
}

func (ScaleSetPacketCaptureMachineScopeArgs) ElementType added in v5.28.0

func (ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopeOutput added in v5.28.0

func (i ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopeOutput() ScaleSetPacketCaptureMachineScopeOutput

func (ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopeOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopeOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMachineScopeOutput

func (ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopePtrOutput added in v5.28.0

func (i ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopePtrOutput() ScaleSetPacketCaptureMachineScopePtrOutput

func (ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureMachineScopeArgs) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMachineScopePtrOutput

type ScaleSetPacketCaptureMachineScopeInput added in v5.28.0

type ScaleSetPacketCaptureMachineScopeInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureMachineScopeOutput() ScaleSetPacketCaptureMachineScopeOutput
	ToScaleSetPacketCaptureMachineScopeOutputWithContext(context.Context) ScaleSetPacketCaptureMachineScopeOutput
}

ScaleSetPacketCaptureMachineScopeInput is an input type that accepts ScaleSetPacketCaptureMachineScopeArgs and ScaleSetPacketCaptureMachineScopeOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureMachineScopeInput` via:

ScaleSetPacketCaptureMachineScopeArgs{...}

type ScaleSetPacketCaptureMachineScopeOutput added in v5.28.0

type ScaleSetPacketCaptureMachineScopeOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureMachineScopeOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureMachineScopeOutput) ExcludeInstanceIds added in v5.28.0

A list of Virtual Machine Scale Set instance IDs which should be excluded from running Packet Capture, e.g. `["0", "2"]`. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureMachineScopeOutput) IncludeInstanceIds added in v5.28.0

A list of Virtual Machine Scale Set instance IDs which should be included for Packet Capture, e.g. `["1", "3"]`. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopeOutput added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopeOutput() ScaleSetPacketCaptureMachineScopeOutput

func (ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopeOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopeOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMachineScopeOutput

func (ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopePtrOutput added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopePtrOutput() ScaleSetPacketCaptureMachineScopePtrOutput

func (ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopeOutput) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMachineScopePtrOutput

type ScaleSetPacketCaptureMachineScopePtrInput added in v5.28.0

type ScaleSetPacketCaptureMachineScopePtrInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureMachineScopePtrOutput() ScaleSetPacketCaptureMachineScopePtrOutput
	ToScaleSetPacketCaptureMachineScopePtrOutputWithContext(context.Context) ScaleSetPacketCaptureMachineScopePtrOutput
}

ScaleSetPacketCaptureMachineScopePtrInput is an input type that accepts ScaleSetPacketCaptureMachineScopeArgs, ScaleSetPacketCaptureMachineScopePtr and ScaleSetPacketCaptureMachineScopePtrOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureMachineScopePtrInput` via:

        ScaleSetPacketCaptureMachineScopeArgs{...}

or:

        nil

type ScaleSetPacketCaptureMachineScopePtrOutput added in v5.28.0

type ScaleSetPacketCaptureMachineScopePtrOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureMachineScopePtrOutput) Elem added in v5.28.0

func (ScaleSetPacketCaptureMachineScopePtrOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureMachineScopePtrOutput) ExcludeInstanceIds added in v5.28.0

A list of Virtual Machine Scale Set instance IDs which should be excluded from running Packet Capture, e.g. `["0", "2"]`. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureMachineScopePtrOutput) IncludeInstanceIds added in v5.28.0

A list of Virtual Machine Scale Set instance IDs which should be included for Packet Capture, e.g. `["1", "3"]`. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureMachineScopePtrOutput) ToScaleSetPacketCaptureMachineScopePtrOutput added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopePtrOutput) ToScaleSetPacketCaptureMachineScopePtrOutput() ScaleSetPacketCaptureMachineScopePtrOutput

func (ScaleSetPacketCaptureMachineScopePtrOutput) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureMachineScopePtrOutput) ToScaleSetPacketCaptureMachineScopePtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMachineScopePtrOutput

type ScaleSetPacketCaptureMap added in v5.28.0

type ScaleSetPacketCaptureMap map[string]ScaleSetPacketCaptureInput

func (ScaleSetPacketCaptureMap) ElementType added in v5.28.0

func (ScaleSetPacketCaptureMap) ElementType() reflect.Type

func (ScaleSetPacketCaptureMap) ToScaleSetPacketCaptureMapOutput added in v5.28.0

func (i ScaleSetPacketCaptureMap) ToScaleSetPacketCaptureMapOutput() ScaleSetPacketCaptureMapOutput

func (ScaleSetPacketCaptureMap) ToScaleSetPacketCaptureMapOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureMap) ToScaleSetPacketCaptureMapOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMapOutput

type ScaleSetPacketCaptureMapInput added in v5.28.0

type ScaleSetPacketCaptureMapInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureMapOutput() ScaleSetPacketCaptureMapOutput
	ToScaleSetPacketCaptureMapOutputWithContext(context.Context) ScaleSetPacketCaptureMapOutput
}

ScaleSetPacketCaptureMapInput is an input type that accepts ScaleSetPacketCaptureMap and ScaleSetPacketCaptureMapOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureMapInput` via:

ScaleSetPacketCaptureMap{ "key": ScaleSetPacketCaptureArgs{...} }

type ScaleSetPacketCaptureMapOutput added in v5.28.0

type ScaleSetPacketCaptureMapOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureMapOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureMapOutput) MapIndex added in v5.28.0

func (ScaleSetPacketCaptureMapOutput) ToScaleSetPacketCaptureMapOutput added in v5.28.0

func (o ScaleSetPacketCaptureMapOutput) ToScaleSetPacketCaptureMapOutput() ScaleSetPacketCaptureMapOutput

func (ScaleSetPacketCaptureMapOutput) ToScaleSetPacketCaptureMapOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureMapOutput) ToScaleSetPacketCaptureMapOutputWithContext(ctx context.Context) ScaleSetPacketCaptureMapOutput

type ScaleSetPacketCaptureOutput added in v5.28.0

type ScaleSetPacketCaptureOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureOutput) Filters added in v5.28.0

One or more `filter` blocks as defined below. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) MachineScope added in v5.28.0

A `machineScope` block as defined below. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) MaximumBytesPerPacket added in v5.28.0

func (o ScaleSetPacketCaptureOutput) MaximumBytesPerPacket() pulumi.IntPtrOutput

The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) MaximumBytesPerSession added in v5.28.0

func (o ScaleSetPacketCaptureOutput) MaximumBytesPerSession() pulumi.IntPtrOutput

Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) MaximumCaptureDurationInSeconds added in v5.28.0

func (o ScaleSetPacketCaptureOutput) MaximumCaptureDurationInSeconds() pulumi.IntPtrOutput

The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) Name added in v5.28.0

The name to use for this Network Packet Capture. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) NetworkWatcherId added in v5.28.0

func (o ScaleSetPacketCaptureOutput) NetworkWatcherId() pulumi.StringOutput

The resource ID of the Network Watcher. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) StorageLocation added in v5.28.0

A `storageLocation` block as defined below. Changing this forces a new resource to be created.

func (ScaleSetPacketCaptureOutput) ToScaleSetPacketCaptureOutput added in v5.28.0

func (o ScaleSetPacketCaptureOutput) ToScaleSetPacketCaptureOutput() ScaleSetPacketCaptureOutput

func (ScaleSetPacketCaptureOutput) ToScaleSetPacketCaptureOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureOutput) ToScaleSetPacketCaptureOutputWithContext(ctx context.Context) ScaleSetPacketCaptureOutput

func (ScaleSetPacketCaptureOutput) VirtualMachineScaleSetId added in v5.28.0

func (o ScaleSetPacketCaptureOutput) VirtualMachineScaleSetId() pulumi.StringOutput

The resource ID of the Virtual Machine Scale Set to capture packets from. Changing this forces a new resource to be created.

type ScaleSetPacketCaptureState added in v5.28.0

type ScaleSetPacketCaptureState struct {
	// One or more `filter` blocks as defined below. Changing this forces a new resource to be created.
	Filters ScaleSetPacketCaptureFilterArrayInput
	// A `machineScope` block as defined below. Changing this forces a new resource to be created.
	MachineScope ScaleSetPacketCaptureMachineScopePtrInput
	// The number of bytes captured per packet. The remaining bytes are truncated. Defaults to `0` (Entire Packet Captured). Changing this forces a new resource to be created.
	MaximumBytesPerPacket pulumi.IntPtrInput
	// Maximum size of the capture in Bytes. Defaults to `1073741824` (1GB). Changing this forces a new resource to be created.
	MaximumBytesPerSession pulumi.IntPtrInput
	// The maximum duration of the capture session in seconds. Defaults to `18000` (5 hours). Changing this forces a new resource to be created.
	MaximumCaptureDurationInSeconds pulumi.IntPtrInput
	// The name to use for this Network Packet Capture. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The resource ID of the Network Watcher. Changing this forces a new resource to be created.
	NetworkWatcherId pulumi.StringPtrInput
	// A `storageLocation` block as defined below. Changing this forces a new resource to be created.
	StorageLocation ScaleSetPacketCaptureStorageLocationPtrInput
	// The resource ID of the Virtual Machine Scale Set to capture packets from. Changing this forces a new resource to be created.
	VirtualMachineScaleSetId pulumi.StringPtrInput
}

func (ScaleSetPacketCaptureState) ElementType added in v5.28.0

func (ScaleSetPacketCaptureState) ElementType() reflect.Type

type ScaleSetPacketCaptureStorageLocation added in v5.28.0

type ScaleSetPacketCaptureStorageLocation struct {
	// A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with `/var/captures`.
	FilePath *string `pulumi:"filePath"`
	// The ID of the storage account to save the packet capture session
	//
	// > **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.
	StorageAccountId *string `pulumi:"storageAccountId"`
	// The URI of the storage path where the packet capture sessions are saved to.
	StoragePath *string `pulumi:"storagePath"`
}

type ScaleSetPacketCaptureStorageLocationArgs added in v5.28.0

type ScaleSetPacketCaptureStorageLocationArgs struct {
	// A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with `/var/captures`.
	FilePath pulumi.StringPtrInput `pulumi:"filePath"`
	// The ID of the storage account to save the packet capture session
	//
	// > **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.
	StorageAccountId pulumi.StringPtrInput `pulumi:"storageAccountId"`
	// The URI of the storage path where the packet capture sessions are saved to.
	StoragePath pulumi.StringPtrInput `pulumi:"storagePath"`
}

func (ScaleSetPacketCaptureStorageLocationArgs) ElementType added in v5.28.0

func (ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationOutput added in v5.28.0

func (i ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationOutput() ScaleSetPacketCaptureStorageLocationOutput

func (ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationOutputWithContext(ctx context.Context) ScaleSetPacketCaptureStorageLocationOutput

func (ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (i ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationPtrOutput() ScaleSetPacketCaptureStorageLocationPtrOutput

func (ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (i ScaleSetPacketCaptureStorageLocationArgs) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureStorageLocationPtrOutput

type ScaleSetPacketCaptureStorageLocationInput added in v5.28.0

type ScaleSetPacketCaptureStorageLocationInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureStorageLocationOutput() ScaleSetPacketCaptureStorageLocationOutput
	ToScaleSetPacketCaptureStorageLocationOutputWithContext(context.Context) ScaleSetPacketCaptureStorageLocationOutput
}

ScaleSetPacketCaptureStorageLocationInput is an input type that accepts ScaleSetPacketCaptureStorageLocationArgs and ScaleSetPacketCaptureStorageLocationOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureStorageLocationInput` via:

ScaleSetPacketCaptureStorageLocationArgs{...}

type ScaleSetPacketCaptureStorageLocationOutput added in v5.28.0

type ScaleSetPacketCaptureStorageLocationOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureStorageLocationOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureStorageLocationOutput) FilePath added in v5.28.0

A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with `/var/captures`.

func (ScaleSetPacketCaptureStorageLocationOutput) StorageAccountId added in v5.28.0

The ID of the storage account to save the packet capture session

> **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.

func (ScaleSetPacketCaptureStorageLocationOutput) StoragePath added in v5.28.0

The URI of the storage path where the packet capture sessions are saved to.

func (ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationOutput added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationOutput() ScaleSetPacketCaptureStorageLocationOutput

func (ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationOutputWithContext(ctx context.Context) ScaleSetPacketCaptureStorageLocationOutput

func (ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationPtrOutput() ScaleSetPacketCaptureStorageLocationPtrOutput

func (ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationOutput) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureStorageLocationPtrOutput

type ScaleSetPacketCaptureStorageLocationPtrInput added in v5.28.0

type ScaleSetPacketCaptureStorageLocationPtrInput interface {
	pulumi.Input

	ToScaleSetPacketCaptureStorageLocationPtrOutput() ScaleSetPacketCaptureStorageLocationPtrOutput
	ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext(context.Context) ScaleSetPacketCaptureStorageLocationPtrOutput
}

ScaleSetPacketCaptureStorageLocationPtrInput is an input type that accepts ScaleSetPacketCaptureStorageLocationArgs, ScaleSetPacketCaptureStorageLocationPtr and ScaleSetPacketCaptureStorageLocationPtrOutput values. You can construct a concrete instance of `ScaleSetPacketCaptureStorageLocationPtrInput` via:

        ScaleSetPacketCaptureStorageLocationArgs{...}

or:

        nil

type ScaleSetPacketCaptureStorageLocationPtrOutput added in v5.28.0

type ScaleSetPacketCaptureStorageLocationPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetPacketCaptureStorageLocationPtrOutput) Elem added in v5.28.0

func (ScaleSetPacketCaptureStorageLocationPtrOutput) ElementType added in v5.28.0

func (ScaleSetPacketCaptureStorageLocationPtrOutput) FilePath added in v5.28.0

A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with `/var/captures`.

func (ScaleSetPacketCaptureStorageLocationPtrOutput) StorageAccountId added in v5.28.0

The ID of the storage account to save the packet capture session

> **NOTE:** At least one of `filePath` or `storageAccountId` must be specified.

func (ScaleSetPacketCaptureStorageLocationPtrOutput) StoragePath added in v5.28.0

The URI of the storage path where the packet capture sessions are saved to.

func (ScaleSetPacketCaptureStorageLocationPtrOutput) ToScaleSetPacketCaptureStorageLocationPtrOutput added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationPtrOutput) ToScaleSetPacketCaptureStorageLocationPtrOutput() ScaleSetPacketCaptureStorageLocationPtrOutput

func (ScaleSetPacketCaptureStorageLocationPtrOutput) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext added in v5.28.0

func (o ScaleSetPacketCaptureStorageLocationPtrOutput) ToScaleSetPacketCaptureStorageLocationPtrOutputWithContext(ctx context.Context) ScaleSetPacketCaptureStorageLocationPtrOutput

type ScaleSetPlan

type ScaleSetPlan struct {
	// Specifies the name of the image from the marketplace.
	Name string `pulumi:"name"`
	// Specifies the product of the image from the marketplace.
	Product string `pulumi:"product"`
	// Specifies the publisher of the image.
	Publisher string `pulumi:"publisher"`
}

type ScaleSetPlanArgs

type ScaleSetPlanArgs struct {
	// Specifies the name of the image from the marketplace.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the product of the image from the marketplace.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the publisher of the image.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (ScaleSetPlanArgs) ElementType

func (ScaleSetPlanArgs) ElementType() reflect.Type

func (ScaleSetPlanArgs) ToScaleSetPlanOutput

func (i ScaleSetPlanArgs) ToScaleSetPlanOutput() ScaleSetPlanOutput

func (ScaleSetPlanArgs) ToScaleSetPlanOutputWithContext

func (i ScaleSetPlanArgs) ToScaleSetPlanOutputWithContext(ctx context.Context) ScaleSetPlanOutput

func (ScaleSetPlanArgs) ToScaleSetPlanPtrOutput

func (i ScaleSetPlanArgs) ToScaleSetPlanPtrOutput() ScaleSetPlanPtrOutput

func (ScaleSetPlanArgs) ToScaleSetPlanPtrOutputWithContext

func (i ScaleSetPlanArgs) ToScaleSetPlanPtrOutputWithContext(ctx context.Context) ScaleSetPlanPtrOutput

type ScaleSetPlanInput

type ScaleSetPlanInput interface {
	pulumi.Input

	ToScaleSetPlanOutput() ScaleSetPlanOutput
	ToScaleSetPlanOutputWithContext(context.Context) ScaleSetPlanOutput
}

ScaleSetPlanInput is an input type that accepts ScaleSetPlanArgs and ScaleSetPlanOutput values. You can construct a concrete instance of `ScaleSetPlanInput` via:

ScaleSetPlanArgs{...}

type ScaleSetPlanOutput

type ScaleSetPlanOutput struct{ *pulumi.OutputState }

func (ScaleSetPlanOutput) ElementType

func (ScaleSetPlanOutput) ElementType() reflect.Type

func (ScaleSetPlanOutput) Name

Specifies the name of the image from the marketplace.

func (ScaleSetPlanOutput) Product

Specifies the product of the image from the marketplace.

func (ScaleSetPlanOutput) Publisher

func (o ScaleSetPlanOutput) Publisher() pulumi.StringOutput

Specifies the publisher of the image.

func (ScaleSetPlanOutput) ToScaleSetPlanOutput

func (o ScaleSetPlanOutput) ToScaleSetPlanOutput() ScaleSetPlanOutput

func (ScaleSetPlanOutput) ToScaleSetPlanOutputWithContext

func (o ScaleSetPlanOutput) ToScaleSetPlanOutputWithContext(ctx context.Context) ScaleSetPlanOutput

func (ScaleSetPlanOutput) ToScaleSetPlanPtrOutput

func (o ScaleSetPlanOutput) ToScaleSetPlanPtrOutput() ScaleSetPlanPtrOutput

func (ScaleSetPlanOutput) ToScaleSetPlanPtrOutputWithContext

func (o ScaleSetPlanOutput) ToScaleSetPlanPtrOutputWithContext(ctx context.Context) ScaleSetPlanPtrOutput

type ScaleSetPlanPtrInput

type ScaleSetPlanPtrInput interface {
	pulumi.Input

	ToScaleSetPlanPtrOutput() ScaleSetPlanPtrOutput
	ToScaleSetPlanPtrOutputWithContext(context.Context) ScaleSetPlanPtrOutput
}

ScaleSetPlanPtrInput is an input type that accepts ScaleSetPlanArgs, ScaleSetPlanPtr and ScaleSetPlanPtrOutput values. You can construct a concrete instance of `ScaleSetPlanPtrInput` via:

        ScaleSetPlanArgs{...}

or:

        nil

type ScaleSetPlanPtrOutput

type ScaleSetPlanPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetPlanPtrOutput) Elem

func (ScaleSetPlanPtrOutput) ElementType

func (ScaleSetPlanPtrOutput) ElementType() reflect.Type

func (ScaleSetPlanPtrOutput) Name

Specifies the name of the image from the marketplace.

func (ScaleSetPlanPtrOutput) Product

Specifies the product of the image from the marketplace.

func (ScaleSetPlanPtrOutput) Publisher

Specifies the publisher of the image.

func (ScaleSetPlanPtrOutput) ToScaleSetPlanPtrOutput

func (o ScaleSetPlanPtrOutput) ToScaleSetPlanPtrOutput() ScaleSetPlanPtrOutput

func (ScaleSetPlanPtrOutput) ToScaleSetPlanPtrOutputWithContext

func (o ScaleSetPlanPtrOutput) ToScaleSetPlanPtrOutputWithContext(ctx context.Context) ScaleSetPlanPtrOutput

type ScaleSetRollingUpgradePolicy

type ScaleSetRollingUpgradePolicy struct {
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.
	MaxBatchInstancePercent *int `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.
	MaxUnhealthyInstancePercent *int `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.
	MaxUnhealthyUpgradedInstancePercent *int `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (<https://en.wikipedia.org/wiki/ISO_8601#Durations>). Defaults to `PT0S` seconds represented as `PT0S`.
	PauseTimeBetweenBatches *string `pulumi:"pauseTimeBetweenBatches"`
}

type ScaleSetRollingUpgradePolicyArgs

type ScaleSetRollingUpgradePolicyArgs struct {
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.
	MaxBatchInstancePercent pulumi.IntPtrInput `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.
	MaxUnhealthyInstancePercent pulumi.IntPtrInput `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.
	MaxUnhealthyUpgradedInstancePercent pulumi.IntPtrInput `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (<https://en.wikipedia.org/wiki/ISO_8601#Durations>). Defaults to `PT0S` seconds represented as `PT0S`.
	PauseTimeBetweenBatches pulumi.StringPtrInput `pulumi:"pauseTimeBetweenBatches"`
}

func (ScaleSetRollingUpgradePolicyArgs) ElementType

func (ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyOutput

func (i ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyOutput() ScaleSetRollingUpgradePolicyOutput

func (ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyOutputWithContext

func (i ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) ScaleSetRollingUpgradePolicyOutput

func (ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyPtrOutput

func (i ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyPtrOutput() ScaleSetRollingUpgradePolicyPtrOutput

func (ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyPtrOutputWithContext

func (i ScaleSetRollingUpgradePolicyArgs) ToScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) ScaleSetRollingUpgradePolicyPtrOutput

type ScaleSetRollingUpgradePolicyInput

type ScaleSetRollingUpgradePolicyInput interface {
	pulumi.Input

	ToScaleSetRollingUpgradePolicyOutput() ScaleSetRollingUpgradePolicyOutput
	ToScaleSetRollingUpgradePolicyOutputWithContext(context.Context) ScaleSetRollingUpgradePolicyOutput
}

ScaleSetRollingUpgradePolicyInput is an input type that accepts ScaleSetRollingUpgradePolicyArgs and ScaleSetRollingUpgradePolicyOutput values. You can construct a concrete instance of `ScaleSetRollingUpgradePolicyInput` via:

ScaleSetRollingUpgradePolicyArgs{...}

type ScaleSetRollingUpgradePolicyOutput

type ScaleSetRollingUpgradePolicyOutput struct{ *pulumi.OutputState }

func (ScaleSetRollingUpgradePolicyOutput) ElementType

func (ScaleSetRollingUpgradePolicyOutput) MaxBatchInstancePercent

func (o ScaleSetRollingUpgradePolicyOutput) MaxBatchInstancePercent() pulumi.IntPtrOutput

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyOutput) MaxUnhealthyInstancePercent

func (o ScaleSetRollingUpgradePolicyOutput) MaxUnhealthyInstancePercent() pulumi.IntPtrOutput

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent

func (o ScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntPtrOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyOutput) PauseTimeBetweenBatches

func (o ScaleSetRollingUpgradePolicyOutput) PauseTimeBetweenBatches() pulumi.StringPtrOutput

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (<https://en.wikipedia.org/wiki/ISO_8601#Durations>). Defaults to `PT0S` seconds represented as `PT0S`.

func (ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyOutput

func (o ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyOutput() ScaleSetRollingUpgradePolicyOutput

func (ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyOutputWithContext

func (o ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) ScaleSetRollingUpgradePolicyOutput

func (ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyPtrOutput

func (o ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyPtrOutput() ScaleSetRollingUpgradePolicyPtrOutput

func (ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o ScaleSetRollingUpgradePolicyOutput) ToScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) ScaleSetRollingUpgradePolicyPtrOutput

type ScaleSetRollingUpgradePolicyPtrInput

type ScaleSetRollingUpgradePolicyPtrInput interface {
	pulumi.Input

	ToScaleSetRollingUpgradePolicyPtrOutput() ScaleSetRollingUpgradePolicyPtrOutput
	ToScaleSetRollingUpgradePolicyPtrOutputWithContext(context.Context) ScaleSetRollingUpgradePolicyPtrOutput
}

ScaleSetRollingUpgradePolicyPtrInput is an input type that accepts ScaleSetRollingUpgradePolicyArgs, ScaleSetRollingUpgradePolicyPtr and ScaleSetRollingUpgradePolicyPtrOutput values. You can construct a concrete instance of `ScaleSetRollingUpgradePolicyPtrInput` via:

        ScaleSetRollingUpgradePolicyArgs{...}

or:

        nil

type ScaleSetRollingUpgradePolicyPtrOutput

type ScaleSetRollingUpgradePolicyPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetRollingUpgradePolicyPtrOutput) Elem

func (ScaleSetRollingUpgradePolicyPtrOutput) ElementType

func (ScaleSetRollingUpgradePolicyPtrOutput) MaxBatchInstancePercent

func (o ScaleSetRollingUpgradePolicyPtrOutput) MaxBatchInstancePercent() pulumi.IntPtrOutput

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyInstancePercent

func (o ScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyInstancePercent() pulumi.IntPtrOutput

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent

func (o ScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntPtrOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.

func (ScaleSetRollingUpgradePolicyPtrOutput) PauseTimeBetweenBatches

func (o ScaleSetRollingUpgradePolicyPtrOutput) PauseTimeBetweenBatches() pulumi.StringPtrOutput

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (<https://en.wikipedia.org/wiki/ISO_8601#Durations>). Defaults to `PT0S` seconds represented as `PT0S`.

func (ScaleSetRollingUpgradePolicyPtrOutput) ToScaleSetRollingUpgradePolicyPtrOutput

func (o ScaleSetRollingUpgradePolicyPtrOutput) ToScaleSetRollingUpgradePolicyPtrOutput() ScaleSetRollingUpgradePolicyPtrOutput

func (ScaleSetRollingUpgradePolicyPtrOutput) ToScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o ScaleSetRollingUpgradePolicyPtrOutput) ToScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) ScaleSetRollingUpgradePolicyPtrOutput

type ScaleSetSku

type ScaleSetSku struct {
	// Specifies the number of virtual machines in the scale set.
	Capacity int `pulumi:"capacity"`
	// Specifies the size of virtual machines in a scale set.
	Name string `pulumi:"name"`
	// Specifies the tier of virtual machines in a scale set. Possible values, `standard` or `basic`.
	Tier *string `pulumi:"tier"`
}

type ScaleSetSkuArgs

type ScaleSetSkuArgs struct {
	// Specifies the number of virtual machines in the scale set.
	Capacity pulumi.IntInput `pulumi:"capacity"`
	// Specifies the size of virtual machines in a scale set.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the tier of virtual machines in a scale set. Possible values, `standard` or `basic`.
	Tier pulumi.StringPtrInput `pulumi:"tier"`
}

func (ScaleSetSkuArgs) ElementType

func (ScaleSetSkuArgs) ElementType() reflect.Type

func (ScaleSetSkuArgs) ToScaleSetSkuOutput

func (i ScaleSetSkuArgs) ToScaleSetSkuOutput() ScaleSetSkuOutput

func (ScaleSetSkuArgs) ToScaleSetSkuOutputWithContext

func (i ScaleSetSkuArgs) ToScaleSetSkuOutputWithContext(ctx context.Context) ScaleSetSkuOutput

func (ScaleSetSkuArgs) ToScaleSetSkuPtrOutput

func (i ScaleSetSkuArgs) ToScaleSetSkuPtrOutput() ScaleSetSkuPtrOutput

func (ScaleSetSkuArgs) ToScaleSetSkuPtrOutputWithContext

func (i ScaleSetSkuArgs) ToScaleSetSkuPtrOutputWithContext(ctx context.Context) ScaleSetSkuPtrOutput

type ScaleSetSkuInput

type ScaleSetSkuInput interface {
	pulumi.Input

	ToScaleSetSkuOutput() ScaleSetSkuOutput
	ToScaleSetSkuOutputWithContext(context.Context) ScaleSetSkuOutput
}

ScaleSetSkuInput is an input type that accepts ScaleSetSkuArgs and ScaleSetSkuOutput values. You can construct a concrete instance of `ScaleSetSkuInput` via:

ScaleSetSkuArgs{...}

type ScaleSetSkuOutput

type ScaleSetSkuOutput struct{ *pulumi.OutputState }

func (ScaleSetSkuOutput) Capacity

func (o ScaleSetSkuOutput) Capacity() pulumi.IntOutput

Specifies the number of virtual machines in the scale set.

func (ScaleSetSkuOutput) ElementType

func (ScaleSetSkuOutput) ElementType() reflect.Type

func (ScaleSetSkuOutput) Name

Specifies the size of virtual machines in a scale set.

func (ScaleSetSkuOutput) Tier

Specifies the tier of virtual machines in a scale set. Possible values, `standard` or `basic`.

func (ScaleSetSkuOutput) ToScaleSetSkuOutput

func (o ScaleSetSkuOutput) ToScaleSetSkuOutput() ScaleSetSkuOutput

func (ScaleSetSkuOutput) ToScaleSetSkuOutputWithContext

func (o ScaleSetSkuOutput) ToScaleSetSkuOutputWithContext(ctx context.Context) ScaleSetSkuOutput

func (ScaleSetSkuOutput) ToScaleSetSkuPtrOutput

func (o ScaleSetSkuOutput) ToScaleSetSkuPtrOutput() ScaleSetSkuPtrOutput

func (ScaleSetSkuOutput) ToScaleSetSkuPtrOutputWithContext

func (o ScaleSetSkuOutput) ToScaleSetSkuPtrOutputWithContext(ctx context.Context) ScaleSetSkuPtrOutput

type ScaleSetSkuPtrInput

type ScaleSetSkuPtrInput interface {
	pulumi.Input

	ToScaleSetSkuPtrOutput() ScaleSetSkuPtrOutput
	ToScaleSetSkuPtrOutputWithContext(context.Context) ScaleSetSkuPtrOutput
}

ScaleSetSkuPtrInput is an input type that accepts ScaleSetSkuArgs, ScaleSetSkuPtr and ScaleSetSkuPtrOutput values. You can construct a concrete instance of `ScaleSetSkuPtrInput` via:

        ScaleSetSkuArgs{...}

or:

        nil

func ScaleSetSkuPtr

func ScaleSetSkuPtr(v *ScaleSetSkuArgs) ScaleSetSkuPtrInput

type ScaleSetSkuPtrOutput

type ScaleSetSkuPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetSkuPtrOutput) Capacity

Specifies the number of virtual machines in the scale set.

func (ScaleSetSkuPtrOutput) Elem

func (ScaleSetSkuPtrOutput) ElementType

func (ScaleSetSkuPtrOutput) ElementType() reflect.Type

func (ScaleSetSkuPtrOutput) Name

Specifies the size of virtual machines in a scale set.

func (ScaleSetSkuPtrOutput) Tier

Specifies the tier of virtual machines in a scale set. Possible values, `standard` or `basic`.

func (ScaleSetSkuPtrOutput) ToScaleSetSkuPtrOutput

func (o ScaleSetSkuPtrOutput) ToScaleSetSkuPtrOutput() ScaleSetSkuPtrOutput

func (ScaleSetSkuPtrOutput) ToScaleSetSkuPtrOutputWithContext

func (o ScaleSetSkuPtrOutput) ToScaleSetSkuPtrOutputWithContext(ctx context.Context) ScaleSetSkuPtrOutput

type ScaleSetState

type ScaleSetState struct {
	// Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when `upgradePolicyMode` is set to `Rolling`. Defaults to `false`.
	AutomaticOsUpgrade pulumi.BoolPtrInput
	// A `bootDiagnostics` block as referenced below.
	BootDiagnostics ScaleSetBootDiagnosticsPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `evictionPolicy` can only be set when `priority` is set to `Low`.
	EvictionPolicy pulumi.StringPtrInput
	// Can be specified multiple times to add extension profiles to the scale set. Each `extension` block supports the fields documented below.
	Extensions ScaleSetExtensionArrayInput
	// Specifies the identifier for the load balancer health probe. Required when using `Rolling` as your `upgradePolicyMode`.
	HealthProbeId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity ScaleSetIdentityPtrInput
	// (Optional, when a Windows machine) Specifies the Windows OS license type. If supplied, the only allowed values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A collection of `networkProfile` blocks as documented below.
	NetworkProfiles ScaleSetNetworkProfileArrayInput
	// A `osProfile` block as documented below.
	OsProfile ScaleSetOsProfilePtrInput
	// A `osProfileLinuxConfig` block as documented below.
	OsProfileLinuxConfig ScaleSetOsProfileLinuxConfigPtrInput
	// A collection of `osProfileSecrets` blocks as documented below.
	OsProfileSecrets ScaleSetOsProfileSecretArrayInput
	// A `osProfileWindowsConfig` block as documented below.
	OsProfileWindowsConfig ScaleSetOsProfileWindowsConfigPtrInput
	// Specifies whether the virtual machine scale set should be overprovisioned. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as documented below.
	Plan ScaleSetPlanPtrInput
	// Specifies the priority for the Virtual Machines in the Scale Set. Possible values are `Low` and `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `rollingUpgradePolicy` block as defined below. This is only applicable when the `upgradePolicyMode` is `Rolling`.
	RollingUpgradePolicy ScaleSetRollingUpgradePolicyPtrInput
	// Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Changing this forces a new resource to be created. See [documentation](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups) for more information. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// A `sku` block as documented below.
	Sku ScaleSetSkuPtrInput
	// A `storageProfileDataDisk` block as documented below.
	StorageProfileDataDisks ScaleSetStorageProfileDataDiskArrayInput
	// A `storageProfileImageReference` block as documented below.
	StorageProfileImageReference ScaleSetStorageProfileImageReferencePtrInput
	// A `storageProfileOsDisk` block as documented below.
	StorageProfileOsDisk ScaleSetStorageProfileOsDiskPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, `Rolling`, `Manual`, or `Automatic`. When choosing `Rolling`, you will need to set a health probe.
	UpgradePolicyMode pulumi.StringPtrInput
	// A collection of availability zones to spread the Virtual Machines over. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	Zones pulumi.StringArrayInput
}

func (ScaleSetState) ElementType

func (ScaleSetState) ElementType() reflect.Type

type ScaleSetStorageProfileDataDisk

type ScaleSetStorageProfileDataDisk struct {
	// Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.
	Caching *string `pulumi:"caching"`
	// Specifies how the data disk should be created. The only possible options are `FromImage` and `Empty`.
	CreateOption string `pulumi:"createOption"`
	// Specifies the size of the disk in GB. This element is required when creating an empty disk.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.
	Lun int `pulumi:"lun"`
	// Specifies the type of managed disk to create. Value must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.
	ManagedDiskType *string `pulumi:"managedDiskType"`
}

type ScaleSetStorageProfileDataDiskArgs

type ScaleSetStorageProfileDataDiskArgs struct {
	// Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// Specifies how the data disk should be created. The only possible options are `FromImage` and `Empty`.
	CreateOption pulumi.StringInput `pulumi:"createOption"`
	// Specifies the size of the disk in GB. This element is required when creating an empty disk.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.
	Lun pulumi.IntInput `pulumi:"lun"`
	// Specifies the type of managed disk to create. Value must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.
	ManagedDiskType pulumi.StringPtrInput `pulumi:"managedDiskType"`
}

func (ScaleSetStorageProfileDataDiskArgs) ElementType

func (ScaleSetStorageProfileDataDiskArgs) ToScaleSetStorageProfileDataDiskOutput

func (i ScaleSetStorageProfileDataDiskArgs) ToScaleSetStorageProfileDataDiskOutput() ScaleSetStorageProfileDataDiskOutput

func (ScaleSetStorageProfileDataDiskArgs) ToScaleSetStorageProfileDataDiskOutputWithContext

func (i ScaleSetStorageProfileDataDiskArgs) ToScaleSetStorageProfileDataDiskOutputWithContext(ctx context.Context) ScaleSetStorageProfileDataDiskOutput

type ScaleSetStorageProfileDataDiskArray

type ScaleSetStorageProfileDataDiskArray []ScaleSetStorageProfileDataDiskInput

func (ScaleSetStorageProfileDataDiskArray) ElementType

func (ScaleSetStorageProfileDataDiskArray) ToScaleSetStorageProfileDataDiskArrayOutput

func (i ScaleSetStorageProfileDataDiskArray) ToScaleSetStorageProfileDataDiskArrayOutput() ScaleSetStorageProfileDataDiskArrayOutput

func (ScaleSetStorageProfileDataDiskArray) ToScaleSetStorageProfileDataDiskArrayOutputWithContext

func (i ScaleSetStorageProfileDataDiskArray) ToScaleSetStorageProfileDataDiskArrayOutputWithContext(ctx context.Context) ScaleSetStorageProfileDataDiskArrayOutput

type ScaleSetStorageProfileDataDiskArrayInput

type ScaleSetStorageProfileDataDiskArrayInput interface {
	pulumi.Input

	ToScaleSetStorageProfileDataDiskArrayOutput() ScaleSetStorageProfileDataDiskArrayOutput
	ToScaleSetStorageProfileDataDiskArrayOutputWithContext(context.Context) ScaleSetStorageProfileDataDiskArrayOutput
}

ScaleSetStorageProfileDataDiskArrayInput is an input type that accepts ScaleSetStorageProfileDataDiskArray and ScaleSetStorageProfileDataDiskArrayOutput values. You can construct a concrete instance of `ScaleSetStorageProfileDataDiskArrayInput` via:

ScaleSetStorageProfileDataDiskArray{ ScaleSetStorageProfileDataDiskArgs{...} }

type ScaleSetStorageProfileDataDiskArrayOutput

type ScaleSetStorageProfileDataDiskArrayOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileDataDiskArrayOutput) ElementType

func (ScaleSetStorageProfileDataDiskArrayOutput) Index

func (ScaleSetStorageProfileDataDiskArrayOutput) ToScaleSetStorageProfileDataDiskArrayOutput

func (o ScaleSetStorageProfileDataDiskArrayOutput) ToScaleSetStorageProfileDataDiskArrayOutput() ScaleSetStorageProfileDataDiskArrayOutput

func (ScaleSetStorageProfileDataDiskArrayOutput) ToScaleSetStorageProfileDataDiskArrayOutputWithContext

func (o ScaleSetStorageProfileDataDiskArrayOutput) ToScaleSetStorageProfileDataDiskArrayOutputWithContext(ctx context.Context) ScaleSetStorageProfileDataDiskArrayOutput

type ScaleSetStorageProfileDataDiskInput

type ScaleSetStorageProfileDataDiskInput interface {
	pulumi.Input

	ToScaleSetStorageProfileDataDiskOutput() ScaleSetStorageProfileDataDiskOutput
	ToScaleSetStorageProfileDataDiskOutputWithContext(context.Context) ScaleSetStorageProfileDataDiskOutput
}

ScaleSetStorageProfileDataDiskInput is an input type that accepts ScaleSetStorageProfileDataDiskArgs and ScaleSetStorageProfileDataDiskOutput values. You can construct a concrete instance of `ScaleSetStorageProfileDataDiskInput` via:

ScaleSetStorageProfileDataDiskArgs{...}

type ScaleSetStorageProfileDataDiskOutput

type ScaleSetStorageProfileDataDiskOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileDataDiskOutput) Caching

Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.

func (ScaleSetStorageProfileDataDiskOutput) CreateOption

Specifies how the data disk should be created. The only possible options are `FromImage` and `Empty`.

func (ScaleSetStorageProfileDataDiskOutput) DiskSizeGb

Specifies the size of the disk in GB. This element is required when creating an empty disk.

func (ScaleSetStorageProfileDataDiskOutput) ElementType

func (ScaleSetStorageProfileDataDiskOutput) Lun

Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.

func (ScaleSetStorageProfileDataDiskOutput) ManagedDiskType

Specifies the type of managed disk to create. Value must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.

func (ScaleSetStorageProfileDataDiskOutput) ToScaleSetStorageProfileDataDiskOutput

func (o ScaleSetStorageProfileDataDiskOutput) ToScaleSetStorageProfileDataDiskOutput() ScaleSetStorageProfileDataDiskOutput

func (ScaleSetStorageProfileDataDiskOutput) ToScaleSetStorageProfileDataDiskOutputWithContext

func (o ScaleSetStorageProfileDataDiskOutput) ToScaleSetStorageProfileDataDiskOutputWithContext(ctx context.Context) ScaleSetStorageProfileDataDiskOutput

type ScaleSetStorageProfileImageReference

type ScaleSetStorageProfileImageReference struct {
	// Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.
	Id *string `pulumi:"id"`
	// Specifies the offer of the image used to create the virtual machines.
	Offer *string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines.
	Publisher *string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version *string `pulumi:"version"`
}

type ScaleSetStorageProfileImageReferenceArgs

type ScaleSetStorageProfileImageReferenceArgs struct {
	// Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Specifies the offer of the image used to create the virtual machines.
	Offer pulumi.StringPtrInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines.
	Publisher pulumi.StringPtrInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku pulumi.StringPtrInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (ScaleSetStorageProfileImageReferenceArgs) ElementType

func (ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferenceOutput

func (i ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferenceOutput() ScaleSetStorageProfileImageReferenceOutput

func (ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferenceOutputWithContext

func (i ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferenceOutputWithContext(ctx context.Context) ScaleSetStorageProfileImageReferenceOutput

func (ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferencePtrOutput

func (i ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferencePtrOutput() ScaleSetStorageProfileImageReferencePtrOutput

func (ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferencePtrOutputWithContext

func (i ScaleSetStorageProfileImageReferenceArgs) ToScaleSetStorageProfileImageReferencePtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileImageReferencePtrOutput

type ScaleSetStorageProfileImageReferenceInput

type ScaleSetStorageProfileImageReferenceInput interface {
	pulumi.Input

	ToScaleSetStorageProfileImageReferenceOutput() ScaleSetStorageProfileImageReferenceOutput
	ToScaleSetStorageProfileImageReferenceOutputWithContext(context.Context) ScaleSetStorageProfileImageReferenceOutput
}

ScaleSetStorageProfileImageReferenceInput is an input type that accepts ScaleSetStorageProfileImageReferenceArgs and ScaleSetStorageProfileImageReferenceOutput values. You can construct a concrete instance of `ScaleSetStorageProfileImageReferenceInput` via:

ScaleSetStorageProfileImageReferenceArgs{...}

type ScaleSetStorageProfileImageReferenceOutput

type ScaleSetStorageProfileImageReferenceOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileImageReferenceOutput) ElementType

func (ScaleSetStorageProfileImageReferenceOutput) Id

Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.

func (ScaleSetStorageProfileImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferenceOutput

func (o ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferenceOutput() ScaleSetStorageProfileImageReferenceOutput

func (ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferenceOutputWithContext

func (o ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferenceOutputWithContext(ctx context.Context) ScaleSetStorageProfileImageReferenceOutput

func (ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferencePtrOutput

func (o ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferencePtrOutput() ScaleSetStorageProfileImageReferencePtrOutput

func (ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferencePtrOutputWithContext

func (o ScaleSetStorageProfileImageReferenceOutput) ToScaleSetStorageProfileImageReferencePtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileImageReferencePtrOutput

func (ScaleSetStorageProfileImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines.

type ScaleSetStorageProfileImageReferencePtrInput

type ScaleSetStorageProfileImageReferencePtrInput interface {
	pulumi.Input

	ToScaleSetStorageProfileImageReferencePtrOutput() ScaleSetStorageProfileImageReferencePtrOutput
	ToScaleSetStorageProfileImageReferencePtrOutputWithContext(context.Context) ScaleSetStorageProfileImageReferencePtrOutput
}

ScaleSetStorageProfileImageReferencePtrInput is an input type that accepts ScaleSetStorageProfileImageReferenceArgs, ScaleSetStorageProfileImageReferencePtr and ScaleSetStorageProfileImageReferencePtrOutput values. You can construct a concrete instance of `ScaleSetStorageProfileImageReferencePtrInput` via:

        ScaleSetStorageProfileImageReferenceArgs{...}

or:

        nil

type ScaleSetStorageProfileImageReferencePtrOutput

type ScaleSetStorageProfileImageReferencePtrOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileImageReferencePtrOutput) Elem

func (ScaleSetStorageProfileImageReferencePtrOutput) ElementType

func (ScaleSetStorageProfileImageReferencePtrOutput) Id

Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.

func (ScaleSetStorageProfileImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (ScaleSetStorageProfileImageReferencePtrOutput) ToScaleSetStorageProfileImageReferencePtrOutput

func (o ScaleSetStorageProfileImageReferencePtrOutput) ToScaleSetStorageProfileImageReferencePtrOutput() ScaleSetStorageProfileImageReferencePtrOutput

func (ScaleSetStorageProfileImageReferencePtrOutput) ToScaleSetStorageProfileImageReferencePtrOutputWithContext

func (o ScaleSetStorageProfileImageReferencePtrOutput) ToScaleSetStorageProfileImageReferencePtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileImageReferencePtrOutput

func (ScaleSetStorageProfileImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines.

type ScaleSetStorageProfileOsDisk

type ScaleSetStorageProfileOsDisk struct {
	// Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.
	Caching *string `pulumi:"caching"`
	// Specifies how the virtual machine should be created. The only possible option is `FromImage`.
	CreateOption string `pulumi:"createOption"`
	// Specifies the blob URI for user image. A virtual machine scale set creates an os disk in the same container as the user image.
	// Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them.
	// When setting this field `osType` needs to be specified. Cannot be used when `vhdContainers`, `managedDiskType` or `storageProfileImageReference` are specified.
	Image *string `pulumi:"image"`
	// Specifies the type of managed disk to create. Value you must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`. Cannot be used when `vhdContainers` or `image` is specified.
	ManagedDiskType *string `pulumi:"managedDiskType"`
	// Specifies the disk name. Must be specified when using unmanaged disk ('managed_disk_type' property not set).
	Name *string `pulumi:"name"`
	// Specifies the operating system Type, valid values are windows, Linux.
	OsType *string `pulumi:"osType"`
	// Specifies the VHD URI. Cannot be used when `image` or `managedDiskType` is specified.
	VhdContainers []string `pulumi:"vhdContainers"`
}

type ScaleSetStorageProfileOsDiskArgs

type ScaleSetStorageProfileOsDiskArgs struct {
	// Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// Specifies how the virtual machine should be created. The only possible option is `FromImage`.
	CreateOption pulumi.StringInput `pulumi:"createOption"`
	// Specifies the blob URI for user image. A virtual machine scale set creates an os disk in the same container as the user image.
	// Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them.
	// When setting this field `osType` needs to be specified. Cannot be used when `vhdContainers`, `managedDiskType` or `storageProfileImageReference` are specified.
	Image pulumi.StringPtrInput `pulumi:"image"`
	// Specifies the type of managed disk to create. Value you must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`. Cannot be used when `vhdContainers` or `image` is specified.
	ManagedDiskType pulumi.StringPtrInput `pulumi:"managedDiskType"`
	// Specifies the disk name. Must be specified when using unmanaged disk ('managed_disk_type' property not set).
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Specifies the operating system Type, valid values are windows, Linux.
	OsType pulumi.StringPtrInput `pulumi:"osType"`
	// Specifies the VHD URI. Cannot be used when `image` or `managedDiskType` is specified.
	VhdContainers pulumi.StringArrayInput `pulumi:"vhdContainers"`
}

func (ScaleSetStorageProfileOsDiskArgs) ElementType

func (ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskOutput

func (i ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskOutput() ScaleSetStorageProfileOsDiskOutput

func (ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskOutputWithContext

func (i ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskOutputWithContext(ctx context.Context) ScaleSetStorageProfileOsDiskOutput

func (ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskPtrOutput

func (i ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskPtrOutput() ScaleSetStorageProfileOsDiskPtrOutput

func (ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskPtrOutputWithContext

func (i ScaleSetStorageProfileOsDiskArgs) ToScaleSetStorageProfileOsDiskPtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileOsDiskPtrOutput

type ScaleSetStorageProfileOsDiskInput

type ScaleSetStorageProfileOsDiskInput interface {
	pulumi.Input

	ToScaleSetStorageProfileOsDiskOutput() ScaleSetStorageProfileOsDiskOutput
	ToScaleSetStorageProfileOsDiskOutputWithContext(context.Context) ScaleSetStorageProfileOsDiskOutput
}

ScaleSetStorageProfileOsDiskInput is an input type that accepts ScaleSetStorageProfileOsDiskArgs and ScaleSetStorageProfileOsDiskOutput values. You can construct a concrete instance of `ScaleSetStorageProfileOsDiskInput` via:

ScaleSetStorageProfileOsDiskArgs{...}

type ScaleSetStorageProfileOsDiskOutput

type ScaleSetStorageProfileOsDiskOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileOsDiskOutput) Caching

Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.

func (ScaleSetStorageProfileOsDiskOutput) CreateOption

Specifies how the virtual machine should be created. The only possible option is `FromImage`.

func (ScaleSetStorageProfileOsDiskOutput) ElementType

func (ScaleSetStorageProfileOsDiskOutput) Image

Specifies the blob URI for user image. A virtual machine scale set creates an os disk in the same container as the user image. Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them. When setting this field `osType` needs to be specified. Cannot be used when `vhdContainers`, `managedDiskType` or `storageProfileImageReference` are specified.

func (ScaleSetStorageProfileOsDiskOutput) ManagedDiskType

Specifies the type of managed disk to create. Value you must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`. Cannot be used when `vhdContainers` or `image` is specified.

func (ScaleSetStorageProfileOsDiskOutput) Name

Specifies the disk name. Must be specified when using unmanaged disk ('managed_disk_type' property not set).

func (ScaleSetStorageProfileOsDiskOutput) OsType

Specifies the operating system Type, valid values are windows, Linux.

func (ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskOutput

func (o ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskOutput() ScaleSetStorageProfileOsDiskOutput

func (ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskOutputWithContext

func (o ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskOutputWithContext(ctx context.Context) ScaleSetStorageProfileOsDiskOutput

func (ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskPtrOutput

func (o ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskPtrOutput() ScaleSetStorageProfileOsDiskPtrOutput

func (ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskPtrOutputWithContext

func (o ScaleSetStorageProfileOsDiskOutput) ToScaleSetStorageProfileOsDiskPtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileOsDiskPtrOutput

func (ScaleSetStorageProfileOsDiskOutput) VhdContainers

Specifies the VHD URI. Cannot be used when `image` or `managedDiskType` is specified.

type ScaleSetStorageProfileOsDiskPtrInput

type ScaleSetStorageProfileOsDiskPtrInput interface {
	pulumi.Input

	ToScaleSetStorageProfileOsDiskPtrOutput() ScaleSetStorageProfileOsDiskPtrOutput
	ToScaleSetStorageProfileOsDiskPtrOutputWithContext(context.Context) ScaleSetStorageProfileOsDiskPtrOutput
}

ScaleSetStorageProfileOsDiskPtrInput is an input type that accepts ScaleSetStorageProfileOsDiskArgs, ScaleSetStorageProfileOsDiskPtr and ScaleSetStorageProfileOsDiskPtrOutput values. You can construct a concrete instance of `ScaleSetStorageProfileOsDiskPtrInput` via:

        ScaleSetStorageProfileOsDiskArgs{...}

or:

        nil

type ScaleSetStorageProfileOsDiskPtrOutput

type ScaleSetStorageProfileOsDiskPtrOutput struct{ *pulumi.OutputState }

func (ScaleSetStorageProfileOsDiskPtrOutput) Caching

Specifies the caching requirements. Possible values include: `None` (default), `ReadOnly`, `ReadWrite`.

func (ScaleSetStorageProfileOsDiskPtrOutput) CreateOption

Specifies how the virtual machine should be created. The only possible option is `FromImage`.

func (ScaleSetStorageProfileOsDiskPtrOutput) Elem

func (ScaleSetStorageProfileOsDiskPtrOutput) ElementType

func (ScaleSetStorageProfileOsDiskPtrOutput) Image

Specifies the blob URI for user image. A virtual machine scale set creates an os disk in the same container as the user image. Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them. When setting this field `osType` needs to be specified. Cannot be used when `vhdContainers`, `managedDiskType` or `storageProfileImageReference` are specified.

func (ScaleSetStorageProfileOsDiskPtrOutput) ManagedDiskType

Specifies the type of managed disk to create. Value you must be either `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`. Cannot be used when `vhdContainers` or `image` is specified.

func (ScaleSetStorageProfileOsDiskPtrOutput) Name

Specifies the disk name. Must be specified when using unmanaged disk ('managed_disk_type' property not set).

func (ScaleSetStorageProfileOsDiskPtrOutput) OsType

Specifies the operating system Type, valid values are windows, Linux.

func (ScaleSetStorageProfileOsDiskPtrOutput) ToScaleSetStorageProfileOsDiskPtrOutput

func (o ScaleSetStorageProfileOsDiskPtrOutput) ToScaleSetStorageProfileOsDiskPtrOutput() ScaleSetStorageProfileOsDiskPtrOutput

func (ScaleSetStorageProfileOsDiskPtrOutput) ToScaleSetStorageProfileOsDiskPtrOutputWithContext

func (o ScaleSetStorageProfileOsDiskPtrOutput) ToScaleSetStorageProfileOsDiskPtrOutputWithContext(ctx context.Context) ScaleSetStorageProfileOsDiskPtrOutput

func (ScaleSetStorageProfileOsDiskPtrOutput) VhdContainers

Specifies the VHD URI. Cannot be used when `image` or `managedDiskType` is specified.

type SharedImage

type SharedImage struct {
	pulumi.CustomResourceState

	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	AcceleratedNetworkSupportEnabled pulumi.BoolPtrOutput `pulumi:"acceleratedNetworkSupportEnabled"`
	// CPU architecture supported by an OS. Possible values are `x64` and `Arm64`. Defaults to `x64`. Changing this forces a new resource to be created.
	Architecture pulumi.StringPtrOutput `pulumi:"architecture"`
	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	//
	// > **Note:**: Only one of `trustedLaunchSupported`, `trustedLaunchEnabled`, `confidentialVmSupported` and `confidentialVmEnabled` can be specified.
	ConfidentialVmEnabled pulumi.BoolPtrOutput `pulumi:"confidentialVmEnabled"`
	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	ConfidentialVmSupported pulumi.BoolPtrOutput `pulumi:"confidentialVmSupported"`
	// A description of this Shared Image.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// One or more Disk Types not allowed for the Image. Possible values include `Standard_LRS` and `Premium_LRS`.
	DiskTypesNotAlloweds pulumi.StringArrayOutput `pulumi:"diskTypesNotAlloweds"`
	// The end of life date in RFC3339 format of the Image.
	EndOfLifeDate pulumi.StringPtrOutput `pulumi:"endOfLifeDate"`
	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	Eula pulumi.StringPtrOutput `pulumi:"eula"`
	// Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
	GalleryName pulumi.StringOutput `pulumi:"galleryName"`
	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are `V1` and `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrOutput `pulumi:"hyperVGeneration"`
	// An `identifier` block as defined below.
	Identifier SharedImageIdentifierOutput `pulumi:"identifier"`
	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Maximum memory in GB recommended for the Image.
	MaxRecommendedMemoryInGb pulumi.IntPtrOutput `pulumi:"maxRecommendedMemoryInGb"`
	// Maximum count of vCPUs recommended for the Image.
	MaxRecommendedVcpuCount pulumi.IntPtrOutput `pulumi:"maxRecommendedVcpuCount"`
	// Minimum memory in GB recommended for the Image.
	MinRecommendedMemoryInGb pulumi.IntPtrOutput `pulumi:"minRecommendedMemoryInGb"`
	// Minimum count of vCPUs recommended for the Image.
	MinRecommendedVcpuCount pulumi.IntPtrOutput `pulumi:"minRecommendedVcpuCount"`
	// Specifies the name of the Shared Image. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The type of Operating System present in this Shared Image. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	OsType pulumi.StringOutput `pulumi:"osType"`
	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	PrivacyStatementUri pulumi.StringPtrOutput `pulumi:"privacyStatementUri"`
	// A `purchasePlan` block as defined below.
	PurchasePlan SharedImagePurchasePlanPtrOutput `pulumi:"purchasePlan"`
	// The URI containing the Release Notes associated with this Shared Image.
	ReleaseNoteUri pulumi.StringPtrOutput `pulumi:"releaseNoteUri"`
	// The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run). Changing this forces a new resource to be created.
	//
	// !> **Note:** It's recommended to Generalize images where possible - Specialized Images reuse the same UUID internally within each Virtual Machine, which can have unintended side-effects.
	Specialized pulumi.BoolPtrOutput `pulumi:"specialized"`
	// A mapping of tags to assign to the Shared Image.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchEnabled pulumi.BoolPtrOutput `pulumi:"trustedLaunchEnabled"`
	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchSupported pulumi.BoolPtrOutput `pulumi:"trustedLaunchSupported"`
}

Manages a Shared Image within a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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
		}
		exampleSharedImageGallery, err := compute.NewSharedImageGallery(ctx, "example", &compute.SharedImageGalleryArgs{
			Name:              pulumi.String("example_image_gallery"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Description:       pulumi.String("Shared images and things."),
			Tags: pulumi.StringMap{
				"Hello": pulumi.String("There"),
				"World": pulumi.String("Example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewSharedImage(ctx, "example", &compute.SharedImageArgs{
			Name:              pulumi.String("my-image"),
			GalleryName:       exampleSharedImageGallery.Name,
			ResourceGroupName: example.Name,
			Location:          example.Location,
			OsType:            pulumi.String("Linux"),
			Identifier: &compute.SharedImageIdentifierArgs{
				Publisher: pulumi.String("PublisherName"),
				Offer:     pulumi.String("OfferName"),
				Sku:       pulumi.String("ExampleSku"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shared Images can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/sharedImage:SharedImage image1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/galleries/gallery1/images/image1 ```

func GetSharedImage

func GetSharedImage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedImageState, opts ...pulumi.ResourceOption) (*SharedImage, error)

GetSharedImage gets an existing SharedImage 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 NewSharedImage

func NewSharedImage(ctx *pulumi.Context,
	name string, args *SharedImageArgs, opts ...pulumi.ResourceOption) (*SharedImage, error)

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

func (*SharedImage) ElementType

func (*SharedImage) ElementType() reflect.Type

func (*SharedImage) ToSharedImageOutput

func (i *SharedImage) ToSharedImageOutput() SharedImageOutput

func (*SharedImage) ToSharedImageOutputWithContext

func (i *SharedImage) ToSharedImageOutputWithContext(ctx context.Context) SharedImageOutput

type SharedImageArgs

type SharedImageArgs struct {
	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	AcceleratedNetworkSupportEnabled pulumi.BoolPtrInput
	// CPU architecture supported by an OS. Possible values are `x64` and `Arm64`. Defaults to `x64`. Changing this forces a new resource to be created.
	Architecture pulumi.StringPtrInput
	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	//
	// > **Note:**: Only one of `trustedLaunchSupported`, `trustedLaunchEnabled`, `confidentialVmSupported` and `confidentialVmEnabled` can be specified.
	ConfidentialVmEnabled pulumi.BoolPtrInput
	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	ConfidentialVmSupported pulumi.BoolPtrInput
	// A description of this Shared Image.
	Description pulumi.StringPtrInput
	// One or more Disk Types not allowed for the Image. Possible values include `Standard_LRS` and `Premium_LRS`.
	DiskTypesNotAlloweds pulumi.StringArrayInput
	// The end of life date in RFC3339 format of the Image.
	EndOfLifeDate pulumi.StringPtrInput
	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	Eula pulumi.StringPtrInput
	// Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
	GalleryName pulumi.StringInput
	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are `V1` and `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrInput
	// An `identifier` block as defined below.
	Identifier SharedImageIdentifierInput
	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Maximum memory in GB recommended for the Image.
	MaxRecommendedMemoryInGb pulumi.IntPtrInput
	// Maximum count of vCPUs recommended for the Image.
	MaxRecommendedVcpuCount pulumi.IntPtrInput
	// Minimum memory in GB recommended for the Image.
	MinRecommendedMemoryInGb pulumi.IntPtrInput
	// Minimum count of vCPUs recommended for the Image.
	MinRecommendedVcpuCount pulumi.IntPtrInput
	// Specifies the name of the Shared Image. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The type of Operating System present in this Shared Image. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	OsType pulumi.StringInput
	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	PrivacyStatementUri pulumi.StringPtrInput
	// A `purchasePlan` block as defined below.
	PurchasePlan SharedImagePurchasePlanPtrInput
	// The URI containing the Release Notes associated with this Shared Image.
	ReleaseNoteUri pulumi.StringPtrInput
	// The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run). Changing this forces a new resource to be created.
	//
	// !> **Note:** It's recommended to Generalize images where possible - Specialized Images reuse the same UUID internally within each Virtual Machine, which can have unintended side-effects.
	Specialized pulumi.BoolPtrInput
	// A mapping of tags to assign to the Shared Image.
	Tags pulumi.StringMapInput
	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchEnabled pulumi.BoolPtrInput
	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchSupported pulumi.BoolPtrInput
}

The set of arguments for constructing a SharedImage resource.

func (SharedImageArgs) ElementType

func (SharedImageArgs) ElementType() reflect.Type

type SharedImageArray

type SharedImageArray []SharedImageInput

func (SharedImageArray) ElementType

func (SharedImageArray) ElementType() reflect.Type

func (SharedImageArray) ToSharedImageArrayOutput

func (i SharedImageArray) ToSharedImageArrayOutput() SharedImageArrayOutput

func (SharedImageArray) ToSharedImageArrayOutputWithContext

func (i SharedImageArray) ToSharedImageArrayOutputWithContext(ctx context.Context) SharedImageArrayOutput

type SharedImageArrayInput

type SharedImageArrayInput interface {
	pulumi.Input

	ToSharedImageArrayOutput() SharedImageArrayOutput
	ToSharedImageArrayOutputWithContext(context.Context) SharedImageArrayOutput
}

SharedImageArrayInput is an input type that accepts SharedImageArray and SharedImageArrayOutput values. You can construct a concrete instance of `SharedImageArrayInput` via:

SharedImageArray{ SharedImageArgs{...} }

type SharedImageArrayOutput

type SharedImageArrayOutput struct{ *pulumi.OutputState }

func (SharedImageArrayOutput) ElementType

func (SharedImageArrayOutput) ElementType() reflect.Type

func (SharedImageArrayOutput) Index

func (SharedImageArrayOutput) ToSharedImageArrayOutput

func (o SharedImageArrayOutput) ToSharedImageArrayOutput() SharedImageArrayOutput

func (SharedImageArrayOutput) ToSharedImageArrayOutputWithContext

func (o SharedImageArrayOutput) ToSharedImageArrayOutputWithContext(ctx context.Context) SharedImageArrayOutput

type SharedImageGallery

type SharedImageGallery struct {
	pulumi.CustomResourceState

	// A description for this Shared Image Gallery.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `sharing` block as defined below. Changing this forces a new resource to be created.
	Sharing SharedImageGallerySharingPtrOutput `pulumi:"sharing"`
	// A mapping of tags to assign to the Shared Image Gallery.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The Unique Name for this Shared Image Gallery.
	UniqueName pulumi.StringOutput `pulumi:"uniqueName"`
}

Manages a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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 = compute.NewSharedImageGallery(ctx, "example", &compute.SharedImageGalleryArgs{
			Name:              pulumi.String("example_image_gallery"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Description:       pulumi.String("Shared images and things."),
			Tags: pulumi.StringMap{
				"Hello": pulumi.String("There"),
				"World": pulumi.String("Example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shared Image Galleries can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/sharedImageGallery:SharedImageGallery gallery1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/galleries/gallery1 ```

func GetSharedImageGallery

func GetSharedImageGallery(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedImageGalleryState, opts ...pulumi.ResourceOption) (*SharedImageGallery, error)

GetSharedImageGallery gets an existing SharedImageGallery 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 NewSharedImageGallery

func NewSharedImageGallery(ctx *pulumi.Context,
	name string, args *SharedImageGalleryArgs, opts ...pulumi.ResourceOption) (*SharedImageGallery, error)

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

func (*SharedImageGallery) ElementType

func (*SharedImageGallery) ElementType() reflect.Type

func (*SharedImageGallery) ToSharedImageGalleryOutput

func (i *SharedImageGallery) ToSharedImageGalleryOutput() SharedImageGalleryOutput

func (*SharedImageGallery) ToSharedImageGalleryOutputWithContext

func (i *SharedImageGallery) ToSharedImageGalleryOutputWithContext(ctx context.Context) SharedImageGalleryOutput

type SharedImageGalleryArgs

type SharedImageGalleryArgs struct {
	// A description for this Shared Image Gallery.
	Description pulumi.StringPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `sharing` block as defined below. Changing this forces a new resource to be created.
	Sharing SharedImageGallerySharingPtrInput
	// A mapping of tags to assign to the Shared Image Gallery.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a SharedImageGallery resource.

func (SharedImageGalleryArgs) ElementType

func (SharedImageGalleryArgs) ElementType() reflect.Type

type SharedImageGalleryArray

type SharedImageGalleryArray []SharedImageGalleryInput

func (SharedImageGalleryArray) ElementType

func (SharedImageGalleryArray) ElementType() reflect.Type

func (SharedImageGalleryArray) ToSharedImageGalleryArrayOutput

func (i SharedImageGalleryArray) ToSharedImageGalleryArrayOutput() SharedImageGalleryArrayOutput

func (SharedImageGalleryArray) ToSharedImageGalleryArrayOutputWithContext

func (i SharedImageGalleryArray) ToSharedImageGalleryArrayOutputWithContext(ctx context.Context) SharedImageGalleryArrayOutput

type SharedImageGalleryArrayInput

type SharedImageGalleryArrayInput interface {
	pulumi.Input

	ToSharedImageGalleryArrayOutput() SharedImageGalleryArrayOutput
	ToSharedImageGalleryArrayOutputWithContext(context.Context) SharedImageGalleryArrayOutput
}

SharedImageGalleryArrayInput is an input type that accepts SharedImageGalleryArray and SharedImageGalleryArrayOutput values. You can construct a concrete instance of `SharedImageGalleryArrayInput` via:

SharedImageGalleryArray{ SharedImageGalleryArgs{...} }

type SharedImageGalleryArrayOutput

type SharedImageGalleryArrayOutput struct{ *pulumi.OutputState }

func (SharedImageGalleryArrayOutput) ElementType

func (SharedImageGalleryArrayOutput) Index

func (SharedImageGalleryArrayOutput) ToSharedImageGalleryArrayOutput

func (o SharedImageGalleryArrayOutput) ToSharedImageGalleryArrayOutput() SharedImageGalleryArrayOutput

func (SharedImageGalleryArrayOutput) ToSharedImageGalleryArrayOutputWithContext

func (o SharedImageGalleryArrayOutput) ToSharedImageGalleryArrayOutputWithContext(ctx context.Context) SharedImageGalleryArrayOutput

type SharedImageGalleryInput

type SharedImageGalleryInput interface {
	pulumi.Input

	ToSharedImageGalleryOutput() SharedImageGalleryOutput
	ToSharedImageGalleryOutputWithContext(ctx context.Context) SharedImageGalleryOutput
}

type SharedImageGalleryMap

type SharedImageGalleryMap map[string]SharedImageGalleryInput

func (SharedImageGalleryMap) ElementType

func (SharedImageGalleryMap) ElementType() reflect.Type

func (SharedImageGalleryMap) ToSharedImageGalleryMapOutput

func (i SharedImageGalleryMap) ToSharedImageGalleryMapOutput() SharedImageGalleryMapOutput

func (SharedImageGalleryMap) ToSharedImageGalleryMapOutputWithContext

func (i SharedImageGalleryMap) ToSharedImageGalleryMapOutputWithContext(ctx context.Context) SharedImageGalleryMapOutput

type SharedImageGalleryMapInput

type SharedImageGalleryMapInput interface {
	pulumi.Input

	ToSharedImageGalleryMapOutput() SharedImageGalleryMapOutput
	ToSharedImageGalleryMapOutputWithContext(context.Context) SharedImageGalleryMapOutput
}

SharedImageGalleryMapInput is an input type that accepts SharedImageGalleryMap and SharedImageGalleryMapOutput values. You can construct a concrete instance of `SharedImageGalleryMapInput` via:

SharedImageGalleryMap{ "key": SharedImageGalleryArgs{...} }

type SharedImageGalleryMapOutput

type SharedImageGalleryMapOutput struct{ *pulumi.OutputState }

func (SharedImageGalleryMapOutput) ElementType

func (SharedImageGalleryMapOutput) MapIndex

func (SharedImageGalleryMapOutput) ToSharedImageGalleryMapOutput

func (o SharedImageGalleryMapOutput) ToSharedImageGalleryMapOutput() SharedImageGalleryMapOutput

func (SharedImageGalleryMapOutput) ToSharedImageGalleryMapOutputWithContext

func (o SharedImageGalleryMapOutput) ToSharedImageGalleryMapOutputWithContext(ctx context.Context) SharedImageGalleryMapOutput

type SharedImageGalleryOutput

type SharedImageGalleryOutput struct{ *pulumi.OutputState }

func (SharedImageGalleryOutput) Description added in v5.5.0

A description for this Shared Image Gallery.

func (SharedImageGalleryOutput) ElementType

func (SharedImageGalleryOutput) ElementType() reflect.Type

func (SharedImageGalleryOutput) Location added in v5.5.0

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (SharedImageGalleryOutput) Name added in v5.5.0

Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGalleryOutput) ResourceGroupName added in v5.5.0

func (o SharedImageGalleryOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGalleryOutput) Sharing added in v5.48.0

A `sharing` block as defined below. Changing this forces a new resource to be created.

func (SharedImageGalleryOutput) Tags added in v5.5.0

A mapping of tags to assign to the Shared Image Gallery.

func (SharedImageGalleryOutput) ToSharedImageGalleryOutput

func (o SharedImageGalleryOutput) ToSharedImageGalleryOutput() SharedImageGalleryOutput

func (SharedImageGalleryOutput) ToSharedImageGalleryOutputWithContext

func (o SharedImageGalleryOutput) ToSharedImageGalleryOutputWithContext(ctx context.Context) SharedImageGalleryOutput

func (SharedImageGalleryOutput) UniqueName added in v5.5.0

The Unique Name for this Shared Image Gallery.

type SharedImageGallerySharing added in v5.48.0

type SharedImageGallerySharing struct {
	// A `communityGallery` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `communityGallery` must be set when `permission` is set to `Community`.
	CommunityGallery *SharedImageGallerySharingCommunityGallery `pulumi:"communityGallery"`
	// The permission of the Shared Image Gallery when sharing. Possible values are `Community`, `Groups` and `Private`. Changing this forces a new resource to be created.
	//
	// > **Note:** This requires that the Preview Feature `Microsoft.Compute/CommunityGalleries` is enabled, see [the documentation](https://learn.microsoft.com/azure/virtual-machines/share-gallery-community?tabs=cli) for more information.
	Permission string `pulumi:"permission"`
}

type SharedImageGallerySharingArgs added in v5.48.0

type SharedImageGallerySharingArgs struct {
	// A `communityGallery` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `communityGallery` must be set when `permission` is set to `Community`.
	CommunityGallery SharedImageGallerySharingCommunityGalleryPtrInput `pulumi:"communityGallery"`
	// The permission of the Shared Image Gallery when sharing. Possible values are `Community`, `Groups` and `Private`. Changing this forces a new resource to be created.
	//
	// > **Note:** This requires that the Preview Feature `Microsoft.Compute/CommunityGalleries` is enabled, see [the documentation](https://learn.microsoft.com/azure/virtual-machines/share-gallery-community?tabs=cli) for more information.
	Permission pulumi.StringInput `pulumi:"permission"`
}

func (SharedImageGallerySharingArgs) ElementType added in v5.48.0

func (SharedImageGallerySharingArgs) ToSharedImageGallerySharingOutput added in v5.48.0

func (i SharedImageGallerySharingArgs) ToSharedImageGallerySharingOutput() SharedImageGallerySharingOutput

func (SharedImageGallerySharingArgs) ToSharedImageGallerySharingOutputWithContext added in v5.48.0

func (i SharedImageGallerySharingArgs) ToSharedImageGallerySharingOutputWithContext(ctx context.Context) SharedImageGallerySharingOutput

func (SharedImageGallerySharingArgs) ToSharedImageGallerySharingPtrOutput added in v5.48.0

func (i SharedImageGallerySharingArgs) ToSharedImageGallerySharingPtrOutput() SharedImageGallerySharingPtrOutput

func (SharedImageGallerySharingArgs) ToSharedImageGallerySharingPtrOutputWithContext added in v5.48.0

func (i SharedImageGallerySharingArgs) ToSharedImageGallerySharingPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingPtrOutput

type SharedImageGallerySharingCommunityGallery added in v5.48.0

type SharedImageGallerySharingCommunityGallery struct {
	// The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.
	Eula string `pulumi:"eula"`
	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name *string `pulumi:"name"`
	// Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.
	Prefix string `pulumi:"prefix"`
	// Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherEmail string `pulumi:"publisherEmail"`
	// URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherUri string `pulumi:"publisherUri"`
}

type SharedImageGallerySharingCommunityGalleryArgs added in v5.48.0

type SharedImageGallerySharingCommunityGalleryArgs struct {
	// The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.
	Eula pulumi.StringInput `pulumi:"eula"`
	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.
	Prefix pulumi.StringInput `pulumi:"prefix"`
	// Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherEmail pulumi.StringInput `pulumi:"publisherEmail"`
	// URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherUri pulumi.StringInput `pulumi:"publisherUri"`
}

func (SharedImageGallerySharingCommunityGalleryArgs) ElementType added in v5.48.0

func (SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryOutput added in v5.48.0

func (i SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryOutput() SharedImageGallerySharingCommunityGalleryOutput

func (SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryOutputWithContext added in v5.48.0

func (i SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryOutputWithContext(ctx context.Context) SharedImageGallerySharingCommunityGalleryOutput

func (SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryPtrOutput added in v5.48.0

func (i SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryPtrOutput() SharedImageGallerySharingCommunityGalleryPtrOutput

func (SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext added in v5.48.0

func (i SharedImageGallerySharingCommunityGalleryArgs) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingCommunityGalleryPtrOutput

type SharedImageGallerySharingCommunityGalleryInput added in v5.48.0

type SharedImageGallerySharingCommunityGalleryInput interface {
	pulumi.Input

	ToSharedImageGallerySharingCommunityGalleryOutput() SharedImageGallerySharingCommunityGalleryOutput
	ToSharedImageGallerySharingCommunityGalleryOutputWithContext(context.Context) SharedImageGallerySharingCommunityGalleryOutput
}

SharedImageGallerySharingCommunityGalleryInput is an input type that accepts SharedImageGallerySharingCommunityGalleryArgs and SharedImageGallerySharingCommunityGalleryOutput values. You can construct a concrete instance of `SharedImageGallerySharingCommunityGalleryInput` via:

SharedImageGallerySharingCommunityGalleryArgs{...}

type SharedImageGallerySharingCommunityGalleryOutput added in v5.48.0

type SharedImageGallerySharingCommunityGalleryOutput struct{ *pulumi.OutputState }

func (SharedImageGallerySharingCommunityGalleryOutput) ElementType added in v5.48.0

func (SharedImageGallerySharingCommunityGalleryOutput) Eula added in v5.48.0

The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryOutput) Name added in v5.48.0

Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryOutput) Prefix added in v5.48.0

Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryOutput) PublisherEmail added in v5.48.0

Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryOutput) PublisherUri added in v5.48.0

URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryOutput added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryOutput() SharedImageGallerySharingCommunityGalleryOutput

func (SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryOutputWithContext(ctx context.Context) SharedImageGallerySharingCommunityGalleryOutput

func (SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutput added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutput() SharedImageGallerySharingCommunityGalleryPtrOutput

func (SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingCommunityGalleryPtrOutput

type SharedImageGallerySharingCommunityGalleryPtrInput added in v5.48.0

type SharedImageGallerySharingCommunityGalleryPtrInput interface {
	pulumi.Input

	ToSharedImageGallerySharingCommunityGalleryPtrOutput() SharedImageGallerySharingCommunityGalleryPtrOutput
	ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext(context.Context) SharedImageGallerySharingCommunityGalleryPtrOutput
}

SharedImageGallerySharingCommunityGalleryPtrInput is an input type that accepts SharedImageGallerySharingCommunityGalleryArgs, SharedImageGallerySharingCommunityGalleryPtr and SharedImageGallerySharingCommunityGalleryPtrOutput values. You can construct a concrete instance of `SharedImageGallerySharingCommunityGalleryPtrInput` via:

        SharedImageGallerySharingCommunityGalleryArgs{...}

or:

        nil

type SharedImageGallerySharingCommunityGalleryPtrOutput added in v5.48.0

type SharedImageGallerySharingCommunityGalleryPtrOutput struct{ *pulumi.OutputState }

func (SharedImageGallerySharingCommunityGalleryPtrOutput) Elem added in v5.48.0

func (SharedImageGallerySharingCommunityGalleryPtrOutput) ElementType added in v5.48.0

func (SharedImageGallerySharingCommunityGalleryPtrOutput) Eula added in v5.48.0

The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryPtrOutput) Name added in v5.48.0

Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryPtrOutput) Prefix added in v5.48.0

Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryPtrOutput) PublisherEmail added in v5.48.0

Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryPtrOutput) PublisherUri added in v5.48.0

URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.

func (SharedImageGallerySharingCommunityGalleryPtrOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutput added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryPtrOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutput() SharedImageGallerySharingCommunityGalleryPtrOutput

func (SharedImageGallerySharingCommunityGalleryPtrOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingCommunityGalleryPtrOutput) ToSharedImageGallerySharingCommunityGalleryPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingCommunityGalleryPtrOutput

type SharedImageGallerySharingInput added in v5.48.0

type SharedImageGallerySharingInput interface {
	pulumi.Input

	ToSharedImageGallerySharingOutput() SharedImageGallerySharingOutput
	ToSharedImageGallerySharingOutputWithContext(context.Context) SharedImageGallerySharingOutput
}

SharedImageGallerySharingInput is an input type that accepts SharedImageGallerySharingArgs and SharedImageGallerySharingOutput values. You can construct a concrete instance of `SharedImageGallerySharingInput` via:

SharedImageGallerySharingArgs{...}

type SharedImageGallerySharingOutput added in v5.48.0

type SharedImageGallerySharingOutput struct{ *pulumi.OutputState }

func (SharedImageGallerySharingOutput) CommunityGallery added in v5.48.0

A `communityGallery` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** `communityGallery` must be set when `permission` is set to `Community`.

func (SharedImageGallerySharingOutput) ElementType added in v5.48.0

func (SharedImageGallerySharingOutput) Permission added in v5.48.0

The permission of the Shared Image Gallery when sharing. Possible values are `Community`, `Groups` and `Private`. Changing this forces a new resource to be created.

> **Note:** This requires that the Preview Feature `Microsoft.Compute/CommunityGalleries` is enabled, see [the documentation](https://learn.microsoft.com/azure/virtual-machines/share-gallery-community?tabs=cli) for more information.

func (SharedImageGallerySharingOutput) ToSharedImageGallerySharingOutput added in v5.48.0

func (o SharedImageGallerySharingOutput) ToSharedImageGallerySharingOutput() SharedImageGallerySharingOutput

func (SharedImageGallerySharingOutput) ToSharedImageGallerySharingOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingOutput) ToSharedImageGallerySharingOutputWithContext(ctx context.Context) SharedImageGallerySharingOutput

func (SharedImageGallerySharingOutput) ToSharedImageGallerySharingPtrOutput added in v5.48.0

func (o SharedImageGallerySharingOutput) ToSharedImageGallerySharingPtrOutput() SharedImageGallerySharingPtrOutput

func (SharedImageGallerySharingOutput) ToSharedImageGallerySharingPtrOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingOutput) ToSharedImageGallerySharingPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingPtrOutput

type SharedImageGallerySharingPtrInput added in v5.48.0

type SharedImageGallerySharingPtrInput interface {
	pulumi.Input

	ToSharedImageGallerySharingPtrOutput() SharedImageGallerySharingPtrOutput
	ToSharedImageGallerySharingPtrOutputWithContext(context.Context) SharedImageGallerySharingPtrOutput
}

SharedImageGallerySharingPtrInput is an input type that accepts SharedImageGallerySharingArgs, SharedImageGallerySharingPtr and SharedImageGallerySharingPtrOutput values. You can construct a concrete instance of `SharedImageGallerySharingPtrInput` via:

        SharedImageGallerySharingArgs{...}

or:

        nil

func SharedImageGallerySharingPtr added in v5.48.0

type SharedImageGallerySharingPtrOutput added in v5.48.0

type SharedImageGallerySharingPtrOutput struct{ *pulumi.OutputState }

func (SharedImageGallerySharingPtrOutput) CommunityGallery added in v5.48.0

A `communityGallery` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** `communityGallery` must be set when `permission` is set to `Community`.

func (SharedImageGallerySharingPtrOutput) Elem added in v5.48.0

func (SharedImageGallerySharingPtrOutput) ElementType added in v5.48.0

func (SharedImageGallerySharingPtrOutput) Permission added in v5.48.0

The permission of the Shared Image Gallery when sharing. Possible values are `Community`, `Groups` and `Private`. Changing this forces a new resource to be created.

> **Note:** This requires that the Preview Feature `Microsoft.Compute/CommunityGalleries` is enabled, see [the documentation](https://learn.microsoft.com/azure/virtual-machines/share-gallery-community?tabs=cli) for more information.

func (SharedImageGallerySharingPtrOutput) ToSharedImageGallerySharingPtrOutput added in v5.48.0

func (o SharedImageGallerySharingPtrOutput) ToSharedImageGallerySharingPtrOutput() SharedImageGallerySharingPtrOutput

func (SharedImageGallerySharingPtrOutput) ToSharedImageGallerySharingPtrOutputWithContext added in v5.48.0

func (o SharedImageGallerySharingPtrOutput) ToSharedImageGallerySharingPtrOutputWithContext(ctx context.Context) SharedImageGallerySharingPtrOutput

type SharedImageGalleryState

type SharedImageGalleryState struct {
	// A description for this Shared Image Gallery.
	Description pulumi.StringPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `sharing` block as defined below. Changing this forces a new resource to be created.
	Sharing SharedImageGallerySharingPtrInput
	// A mapping of tags to assign to the Shared Image Gallery.
	Tags pulumi.StringMapInput
	// The Unique Name for this Shared Image Gallery.
	UniqueName pulumi.StringPtrInput
}

func (SharedImageGalleryState) ElementType

func (SharedImageGalleryState) ElementType() reflect.Type

type SharedImageIdentifier

type SharedImageIdentifier struct {
	// The Offer Name for this Shared Image. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.
	Sku string `pulumi:"sku"`
}

type SharedImageIdentifierArgs

type SharedImageIdentifierArgs struct {
	// The Offer Name for this Shared Image. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.
	Sku pulumi.StringInput `pulumi:"sku"`
}

func (SharedImageIdentifierArgs) ElementType

func (SharedImageIdentifierArgs) ElementType() reflect.Type

func (SharedImageIdentifierArgs) ToSharedImageIdentifierOutput

func (i SharedImageIdentifierArgs) ToSharedImageIdentifierOutput() SharedImageIdentifierOutput

func (SharedImageIdentifierArgs) ToSharedImageIdentifierOutputWithContext

func (i SharedImageIdentifierArgs) ToSharedImageIdentifierOutputWithContext(ctx context.Context) SharedImageIdentifierOutput

func (SharedImageIdentifierArgs) ToSharedImageIdentifierPtrOutput

func (i SharedImageIdentifierArgs) ToSharedImageIdentifierPtrOutput() SharedImageIdentifierPtrOutput

func (SharedImageIdentifierArgs) ToSharedImageIdentifierPtrOutputWithContext

func (i SharedImageIdentifierArgs) ToSharedImageIdentifierPtrOutputWithContext(ctx context.Context) SharedImageIdentifierPtrOutput

type SharedImageIdentifierInput

type SharedImageIdentifierInput interface {
	pulumi.Input

	ToSharedImageIdentifierOutput() SharedImageIdentifierOutput
	ToSharedImageIdentifierOutputWithContext(context.Context) SharedImageIdentifierOutput
}

SharedImageIdentifierInput is an input type that accepts SharedImageIdentifierArgs and SharedImageIdentifierOutput values. You can construct a concrete instance of `SharedImageIdentifierInput` via:

SharedImageIdentifierArgs{...}

type SharedImageIdentifierOutput

type SharedImageIdentifierOutput struct{ *pulumi.OutputState }

func (SharedImageIdentifierOutput) ElementType

func (SharedImageIdentifierOutput) Offer

The Offer Name for this Shared Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierOutput) Publisher

The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierOutput) Sku

The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierOutput) ToSharedImageIdentifierOutput

func (o SharedImageIdentifierOutput) ToSharedImageIdentifierOutput() SharedImageIdentifierOutput

func (SharedImageIdentifierOutput) ToSharedImageIdentifierOutputWithContext

func (o SharedImageIdentifierOutput) ToSharedImageIdentifierOutputWithContext(ctx context.Context) SharedImageIdentifierOutput

func (SharedImageIdentifierOutput) ToSharedImageIdentifierPtrOutput

func (o SharedImageIdentifierOutput) ToSharedImageIdentifierPtrOutput() SharedImageIdentifierPtrOutput

func (SharedImageIdentifierOutput) ToSharedImageIdentifierPtrOutputWithContext

func (o SharedImageIdentifierOutput) ToSharedImageIdentifierPtrOutputWithContext(ctx context.Context) SharedImageIdentifierPtrOutput

type SharedImageIdentifierPtrInput

type SharedImageIdentifierPtrInput interface {
	pulumi.Input

	ToSharedImageIdentifierPtrOutput() SharedImageIdentifierPtrOutput
	ToSharedImageIdentifierPtrOutputWithContext(context.Context) SharedImageIdentifierPtrOutput
}

SharedImageIdentifierPtrInput is an input type that accepts SharedImageIdentifierArgs, SharedImageIdentifierPtr and SharedImageIdentifierPtrOutput values. You can construct a concrete instance of `SharedImageIdentifierPtrInput` via:

        SharedImageIdentifierArgs{...}

or:

        nil

type SharedImageIdentifierPtrOutput

type SharedImageIdentifierPtrOutput struct{ *pulumi.OutputState }

func (SharedImageIdentifierPtrOutput) Elem

func (SharedImageIdentifierPtrOutput) ElementType

func (SharedImageIdentifierPtrOutput) Offer

The Offer Name for this Shared Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierPtrOutput) Publisher

The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierPtrOutput) Sku

The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImageIdentifierPtrOutput) ToSharedImageIdentifierPtrOutput

func (o SharedImageIdentifierPtrOutput) ToSharedImageIdentifierPtrOutput() SharedImageIdentifierPtrOutput

func (SharedImageIdentifierPtrOutput) ToSharedImageIdentifierPtrOutputWithContext

func (o SharedImageIdentifierPtrOutput) ToSharedImageIdentifierPtrOutputWithContext(ctx context.Context) SharedImageIdentifierPtrOutput

type SharedImageInput

type SharedImageInput interface {
	pulumi.Input

	ToSharedImageOutput() SharedImageOutput
	ToSharedImageOutputWithContext(ctx context.Context) SharedImageOutput
}

type SharedImageMap

type SharedImageMap map[string]SharedImageInput

func (SharedImageMap) ElementType

func (SharedImageMap) ElementType() reflect.Type

func (SharedImageMap) ToSharedImageMapOutput

func (i SharedImageMap) ToSharedImageMapOutput() SharedImageMapOutput

func (SharedImageMap) ToSharedImageMapOutputWithContext

func (i SharedImageMap) ToSharedImageMapOutputWithContext(ctx context.Context) SharedImageMapOutput

type SharedImageMapInput

type SharedImageMapInput interface {
	pulumi.Input

	ToSharedImageMapOutput() SharedImageMapOutput
	ToSharedImageMapOutputWithContext(context.Context) SharedImageMapOutput
}

SharedImageMapInput is an input type that accepts SharedImageMap and SharedImageMapOutput values. You can construct a concrete instance of `SharedImageMapInput` via:

SharedImageMap{ "key": SharedImageArgs{...} }

type SharedImageMapOutput

type SharedImageMapOutput struct{ *pulumi.OutputState }

func (SharedImageMapOutput) ElementType

func (SharedImageMapOutput) ElementType() reflect.Type

func (SharedImageMapOutput) MapIndex

func (SharedImageMapOutput) ToSharedImageMapOutput

func (o SharedImageMapOutput) ToSharedImageMapOutput() SharedImageMapOutput

func (SharedImageMapOutput) ToSharedImageMapOutputWithContext

func (o SharedImageMapOutput) ToSharedImageMapOutputWithContext(ctx context.Context) SharedImageMapOutput

type SharedImageOutput

type SharedImageOutput struct{ *pulumi.OutputState }

func (SharedImageOutput) AcceleratedNetworkSupportEnabled added in v5.5.0

func (o SharedImageOutput) AcceleratedNetworkSupportEnabled() pulumi.BoolPtrOutput

Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.

func (SharedImageOutput) Architecture added in v5.16.0

func (o SharedImageOutput) Architecture() pulumi.StringPtrOutput

CPU architecture supported by an OS. Possible values are `x64` and `Arm64`. Defaults to `x64`. Changing this forces a new resource to be created.

func (SharedImageOutput) ConfidentialVmEnabled added in v5.35.0

func (o SharedImageOutput) ConfidentialVmEnabled() pulumi.BoolPtrOutput

Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.

> **Note:**: Only one of `trustedLaunchSupported`, `trustedLaunchEnabled`, `confidentialVmSupported` and `confidentialVmEnabled` can be specified.

func (SharedImageOutput) ConfidentialVmSupported added in v5.35.0

func (o SharedImageOutput) ConfidentialVmSupported() pulumi.BoolPtrOutput

Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.

func (SharedImageOutput) Description added in v5.5.0

func (o SharedImageOutput) Description() pulumi.StringPtrOutput

A description of this Shared Image.

func (SharedImageOutput) DiskTypesNotAlloweds added in v5.13.0

func (o SharedImageOutput) DiskTypesNotAlloweds() pulumi.StringArrayOutput

One or more Disk Types not allowed for the Image. Possible values include `Standard_LRS` and `Premium_LRS`.

func (SharedImageOutput) ElementType

func (SharedImageOutput) ElementType() reflect.Type

func (SharedImageOutput) EndOfLifeDate added in v5.13.0

func (o SharedImageOutput) EndOfLifeDate() pulumi.StringPtrOutput

The end of life date in RFC3339 format of the Image.

func (SharedImageOutput) Eula added in v5.5.0

The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.

func (SharedImageOutput) GalleryName added in v5.5.0

func (o SharedImageOutput) GalleryName() pulumi.StringOutput

Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.

func (SharedImageOutput) HyperVGeneration added in v5.5.0

func (o SharedImageOutput) HyperVGeneration() pulumi.StringPtrOutput

The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are `V1` and `V2`. Defaults to `V1`. Changing this forces a new resource to be created.

func (SharedImageOutput) Identifier added in v5.5.0

An `identifier` block as defined below.

func (SharedImageOutput) Location added in v5.5.0

func (o SharedImageOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.

func (SharedImageOutput) MaxRecommendedMemoryInGb added in v5.13.0

func (o SharedImageOutput) MaxRecommendedMemoryInGb() pulumi.IntPtrOutput

Maximum memory in GB recommended for the Image.

func (SharedImageOutput) MaxRecommendedVcpuCount added in v5.13.0

func (o SharedImageOutput) MaxRecommendedVcpuCount() pulumi.IntPtrOutput

Maximum count of vCPUs recommended for the Image.

func (SharedImageOutput) MinRecommendedMemoryInGb added in v5.13.0

func (o SharedImageOutput) MinRecommendedMemoryInGb() pulumi.IntPtrOutput

Minimum memory in GB recommended for the Image.

func (SharedImageOutput) MinRecommendedVcpuCount added in v5.13.0

func (o SharedImageOutput) MinRecommendedVcpuCount() pulumi.IntPtrOutput

Minimum count of vCPUs recommended for the Image.

func (SharedImageOutput) Name added in v5.5.0

Specifies the name of the Shared Image. Changing this forces a new resource to be created.

func (SharedImageOutput) OsType added in v5.5.0

The type of Operating System present in this Shared Image. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.

func (SharedImageOutput) PrivacyStatementUri added in v5.5.0

func (o SharedImageOutput) PrivacyStatementUri() pulumi.StringPtrOutput

The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.

func (SharedImageOutput) PurchasePlan added in v5.5.0

A `purchasePlan` block as defined below.

func (SharedImageOutput) ReleaseNoteUri added in v5.5.0

func (o SharedImageOutput) ReleaseNoteUri() pulumi.StringPtrOutput

The URI containing the Release Notes associated with this Shared Image.

func (SharedImageOutput) ResourceGroupName added in v5.5.0

func (o SharedImageOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

func (SharedImageOutput) Specialized added in v5.5.0

func (o SharedImageOutput) Specialized() pulumi.BoolPtrOutput

Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run). Changing this forces a new resource to be created.

!> **Note:** It's recommended to Generalize images where possible - Specialized Images reuse the same UUID internally within each Virtual Machine, which can have unintended side-effects.

func (SharedImageOutput) Tags added in v5.5.0

A mapping of tags to assign to the Shared Image.

func (SharedImageOutput) ToSharedImageOutput

func (o SharedImageOutput) ToSharedImageOutput() SharedImageOutput

func (SharedImageOutput) ToSharedImageOutputWithContext

func (o SharedImageOutput) ToSharedImageOutputWithContext(ctx context.Context) SharedImageOutput

func (SharedImageOutput) TrustedLaunchEnabled added in v5.5.0

func (o SharedImageOutput) TrustedLaunchEnabled() pulumi.BoolPtrOutput

Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.

func (SharedImageOutput) TrustedLaunchSupported added in v5.57.0

func (o SharedImageOutput) TrustedLaunchSupported() pulumi.BoolPtrOutput

Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.

type SharedImagePurchasePlan

type SharedImagePurchasePlan struct {
	// The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.
	Product *string `pulumi:"product"`
	// The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `pulumi:"publisher"`
}

type SharedImagePurchasePlanArgs

type SharedImagePurchasePlanArgs struct {
	// The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.
	Product pulumi.StringPtrInput `pulumi:"product"`
	// The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.
	Publisher pulumi.StringPtrInput `pulumi:"publisher"`
}

func (SharedImagePurchasePlanArgs) ElementType

func (SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanOutput

func (i SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanOutput() SharedImagePurchasePlanOutput

func (SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanOutputWithContext

func (i SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanOutputWithContext(ctx context.Context) SharedImagePurchasePlanOutput

func (SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanPtrOutput

func (i SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanPtrOutput() SharedImagePurchasePlanPtrOutput

func (SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanPtrOutputWithContext

func (i SharedImagePurchasePlanArgs) ToSharedImagePurchasePlanPtrOutputWithContext(ctx context.Context) SharedImagePurchasePlanPtrOutput

type SharedImagePurchasePlanInput

type SharedImagePurchasePlanInput interface {
	pulumi.Input

	ToSharedImagePurchasePlanOutput() SharedImagePurchasePlanOutput
	ToSharedImagePurchasePlanOutputWithContext(context.Context) SharedImagePurchasePlanOutput
}

SharedImagePurchasePlanInput is an input type that accepts SharedImagePurchasePlanArgs and SharedImagePurchasePlanOutput values. You can construct a concrete instance of `SharedImagePurchasePlanInput` via:

SharedImagePurchasePlanArgs{...}

type SharedImagePurchasePlanOutput

type SharedImagePurchasePlanOutput struct{ *pulumi.OutputState }

func (SharedImagePurchasePlanOutput) ElementType

func (SharedImagePurchasePlanOutput) Name

The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanOutput) Product

The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanOutput) Publisher

The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanOutput

func (o SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanOutput() SharedImagePurchasePlanOutput

func (SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanOutputWithContext

func (o SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanOutputWithContext(ctx context.Context) SharedImagePurchasePlanOutput

func (SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanPtrOutput

func (o SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanPtrOutput() SharedImagePurchasePlanPtrOutput

func (SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanPtrOutputWithContext

func (o SharedImagePurchasePlanOutput) ToSharedImagePurchasePlanPtrOutputWithContext(ctx context.Context) SharedImagePurchasePlanPtrOutput

type SharedImagePurchasePlanPtrInput

type SharedImagePurchasePlanPtrInput interface {
	pulumi.Input

	ToSharedImagePurchasePlanPtrOutput() SharedImagePurchasePlanPtrOutput
	ToSharedImagePurchasePlanPtrOutputWithContext(context.Context) SharedImagePurchasePlanPtrOutput
}

SharedImagePurchasePlanPtrInput is an input type that accepts SharedImagePurchasePlanArgs, SharedImagePurchasePlanPtr and SharedImagePurchasePlanPtrOutput values. You can construct a concrete instance of `SharedImagePurchasePlanPtrInput` via:

        SharedImagePurchasePlanArgs{...}

or:

        nil

type SharedImagePurchasePlanPtrOutput

type SharedImagePurchasePlanPtrOutput struct{ *pulumi.OutputState }

func (SharedImagePurchasePlanPtrOutput) Elem

func (SharedImagePurchasePlanPtrOutput) ElementType

func (SharedImagePurchasePlanPtrOutput) Name

The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanPtrOutput) Product

The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanPtrOutput) Publisher

The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.

func (SharedImagePurchasePlanPtrOutput) ToSharedImagePurchasePlanPtrOutput

func (o SharedImagePurchasePlanPtrOutput) ToSharedImagePurchasePlanPtrOutput() SharedImagePurchasePlanPtrOutput

func (SharedImagePurchasePlanPtrOutput) ToSharedImagePurchasePlanPtrOutputWithContext

func (o SharedImagePurchasePlanPtrOutput) ToSharedImagePurchasePlanPtrOutputWithContext(ctx context.Context) SharedImagePurchasePlanPtrOutput

type SharedImageState

type SharedImageState struct {
	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	AcceleratedNetworkSupportEnabled pulumi.BoolPtrInput
	// CPU architecture supported by an OS. Possible values are `x64` and `Arm64`. Defaults to `x64`. Changing this forces a new resource to be created.
	Architecture pulumi.StringPtrInput
	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	//
	// > **Note:**: Only one of `trustedLaunchSupported`, `trustedLaunchEnabled`, `confidentialVmSupported` and `confidentialVmEnabled` can be specified.
	ConfidentialVmEnabled pulumi.BoolPtrInput
	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	ConfidentialVmSupported pulumi.BoolPtrInput
	// A description of this Shared Image.
	Description pulumi.StringPtrInput
	// One or more Disk Types not allowed for the Image. Possible values include `Standard_LRS` and `Premium_LRS`.
	DiskTypesNotAlloweds pulumi.StringArrayInput
	// The end of life date in RFC3339 format of the Image.
	EndOfLifeDate pulumi.StringPtrInput
	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	Eula pulumi.StringPtrInput
	// Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
	GalleryName pulumi.StringPtrInput
	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are `V1` and `V2`. Defaults to `V1`. Changing this forces a new resource to be created.
	HyperVGeneration pulumi.StringPtrInput
	// An `identifier` block as defined below.
	Identifier SharedImageIdentifierPtrInput
	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Maximum memory in GB recommended for the Image.
	MaxRecommendedMemoryInGb pulumi.IntPtrInput
	// Maximum count of vCPUs recommended for the Image.
	MaxRecommendedVcpuCount pulumi.IntPtrInput
	// Minimum memory in GB recommended for the Image.
	MinRecommendedMemoryInGb pulumi.IntPtrInput
	// Minimum count of vCPUs recommended for the Image.
	MinRecommendedVcpuCount pulumi.IntPtrInput
	// Specifies the name of the Shared Image. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The type of Operating System present in this Shared Image. Possible values are `Linux` and `Windows`. Changing this forces a new resource to be created.
	OsType pulumi.StringPtrInput
	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	PrivacyStatementUri pulumi.StringPtrInput
	// A `purchasePlan` block as defined below.
	PurchasePlan SharedImagePurchasePlanPtrInput
	// The URI containing the Release Notes associated with this Shared Image.
	ReleaseNoteUri pulumi.StringPtrInput
	// The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies that the Operating System used inside this Image has not been Generalized (for example, `sysprep` on Windows has not been run). Changing this forces a new resource to be created.
	//
	// !> **Note:** It's recommended to Generalize images where possible - Specialized Images reuse the same UUID internally within each Virtual Machine, which can have unintended side-effects.
	Specialized pulumi.BoolPtrInput
	// A mapping of tags to assign to the Shared Image.
	Tags pulumi.StringMapInput
	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchEnabled pulumi.BoolPtrInput
	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchSupported pulumi.BoolPtrInput
}

func (SharedImageState) ElementType

func (SharedImageState) ElementType() reflect.Type

type SharedImageVersion

type SharedImageVersion struct {
	pulumi.CustomResourceState

	// URI of the Azure Storage Blob used to create the Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	BlobUri pulumi.StringPtrOutput `pulumi:"blobUri"`
	// Specifies whether this Shared Image Version can be deleted from the Azure Regions this is replicated to. Defaults to `false`. Changing this forces a new resource to be created.
	DeletionOfReplicatedLocationsEnabled pulumi.BoolPtrOutput `pulumi:"deletionOfReplicatedLocationsEnabled"`
	// The end of life date in RFC3339 format of the Image Version.
	EndOfLifeDate pulumi.StringPtrOutput `pulumi:"endOfLifeDate"`
	// Should this Image Version be excluded from the `latest` filter? If set to `true` this Image Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrOutput `pulumi:"excludeFromLatest"`
	// The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
	GalleryName pulumi.StringOutput `pulumi:"galleryName"`
	// The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
	ImageName pulumi.StringOutput `pulumi:"imageName"`
	// The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The ID of the Managed Image or Virtual Machine ID which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The ID can be sourced from the `compute.Image` data source or resource
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	ManagedImageId pulumi.StringPtrOutput `pulumi:"managedImageId"`
	// The version number for this Image Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the OS disk snapshot which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	OsDiskSnapshotId pulumi.StringPtrOutput `pulumi:"osDiskSnapshotId"`
	// Mode to be used for replication. Possible values are `Full` and `Shallow`. Defaults to `Full`. Changing this forces a new resource to be created.
	ReplicationMode pulumi.StringPtrOutput `pulumi:"replicationMode"`
	// The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The ID of the Storage Account where the Blob exists. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	StorageAccountId pulumi.StringPtrOutput `pulumi:"storageAccountId"`
	// A collection of tags which should be applied to this resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// One or more `targetRegion` blocks as documented below.
	TargetRegions SharedImageVersionTargetRegionArrayOutput `pulumi:"targetRegions"`
}

Manages a Version of a Shared Image within a Shared Image Gallery.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		existing, err := compute.LookupImage(ctx, &compute.LookupImageArgs{
			Name:              pulumi.StringRef("search-api"),
			ResourceGroupName: "packerimages",
		}, nil)
		if err != nil {
			return err
		}
		existingGetSharedImage, err := compute.LookupSharedImage(ctx, &compute.LookupSharedImageArgs{
			Name:              "existing-image",
			GalleryName:       "existing_gallery",
			ResourceGroupName: "existing-resources",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewSharedImageVersion(ctx, "example", &compute.SharedImageVersionArgs{
			Name:              pulumi.String("0.0.1"),
			GalleryName:       pulumi.String(existingGetSharedImage.GalleryName),
			ImageName:         pulumi.String(existingGetSharedImage.Name),
			ResourceGroupName: pulumi.String(existingGetSharedImage.ResourceGroupName),
			Location:          pulumi.String(existingGetSharedImage.Location),
			ManagedImageId:    pulumi.String(existing.Id),
			TargetRegions: compute.SharedImageVersionTargetRegionArray{
				&compute.SharedImageVersionTargetRegionArgs{
					Name:                 pulumi.String(existingGetSharedImage.Location),
					RegionalReplicaCount: pulumi.Int(5),
					StorageAccountType:   pulumi.String("Standard_LRS"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shared Image Versions can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/sharedImageVersion:SharedImageVersion version /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/galleries/gallery1/images/image1/versions/1.2.3 ```

func GetSharedImageVersion

func GetSharedImageVersion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedImageVersionState, opts ...pulumi.ResourceOption) (*SharedImageVersion, error)

GetSharedImageVersion gets an existing SharedImageVersion 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 NewSharedImageVersion

func NewSharedImageVersion(ctx *pulumi.Context,
	name string, args *SharedImageVersionArgs, opts ...pulumi.ResourceOption) (*SharedImageVersion, error)

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

func (*SharedImageVersion) ElementType

func (*SharedImageVersion) ElementType() reflect.Type

func (*SharedImageVersion) ToSharedImageVersionOutput

func (i *SharedImageVersion) ToSharedImageVersionOutput() SharedImageVersionOutput

func (*SharedImageVersion) ToSharedImageVersionOutputWithContext

func (i *SharedImageVersion) ToSharedImageVersionOutputWithContext(ctx context.Context) SharedImageVersionOutput

type SharedImageVersionArgs

type SharedImageVersionArgs struct {
	// URI of the Azure Storage Blob used to create the Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	BlobUri pulumi.StringPtrInput
	// Specifies whether this Shared Image Version can be deleted from the Azure Regions this is replicated to. Defaults to `false`. Changing this forces a new resource to be created.
	DeletionOfReplicatedLocationsEnabled pulumi.BoolPtrInput
	// The end of life date in RFC3339 format of the Image Version.
	EndOfLifeDate pulumi.StringPtrInput
	// Should this Image Version be excluded from the `latest` filter? If set to `true` this Image Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrInput
	// The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
	GalleryName pulumi.StringInput
	// The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
	ImageName pulumi.StringInput
	// The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The ID of the Managed Image or Virtual Machine ID which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The ID can be sourced from the `compute.Image` data source or resource
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	ManagedImageId pulumi.StringPtrInput
	// The version number for this Image Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the OS disk snapshot which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	OsDiskSnapshotId pulumi.StringPtrInput
	// Mode to be used for replication. Possible values are `Full` and `Shallow`. Defaults to `Full`. Changing this forces a new resource to be created.
	ReplicationMode pulumi.StringPtrInput
	// The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The ID of the Storage Account where the Blob exists. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	StorageAccountId pulumi.StringPtrInput
	// A collection of tags which should be applied to this resource.
	Tags pulumi.StringMapInput
	// One or more `targetRegion` blocks as documented below.
	TargetRegions SharedImageVersionTargetRegionArrayInput
}

The set of arguments for constructing a SharedImageVersion resource.

func (SharedImageVersionArgs) ElementType

func (SharedImageVersionArgs) ElementType() reflect.Type

type SharedImageVersionArray

type SharedImageVersionArray []SharedImageVersionInput

func (SharedImageVersionArray) ElementType

func (SharedImageVersionArray) ElementType() reflect.Type

func (SharedImageVersionArray) ToSharedImageVersionArrayOutput

func (i SharedImageVersionArray) ToSharedImageVersionArrayOutput() SharedImageVersionArrayOutput

func (SharedImageVersionArray) ToSharedImageVersionArrayOutputWithContext

func (i SharedImageVersionArray) ToSharedImageVersionArrayOutputWithContext(ctx context.Context) SharedImageVersionArrayOutput

type SharedImageVersionArrayInput

type SharedImageVersionArrayInput interface {
	pulumi.Input

	ToSharedImageVersionArrayOutput() SharedImageVersionArrayOutput
	ToSharedImageVersionArrayOutputWithContext(context.Context) SharedImageVersionArrayOutput
}

SharedImageVersionArrayInput is an input type that accepts SharedImageVersionArray and SharedImageVersionArrayOutput values. You can construct a concrete instance of `SharedImageVersionArrayInput` via:

SharedImageVersionArray{ SharedImageVersionArgs{...} }

type SharedImageVersionArrayOutput

type SharedImageVersionArrayOutput struct{ *pulumi.OutputState }

func (SharedImageVersionArrayOutput) ElementType

func (SharedImageVersionArrayOutput) Index

func (SharedImageVersionArrayOutput) ToSharedImageVersionArrayOutput

func (o SharedImageVersionArrayOutput) ToSharedImageVersionArrayOutput() SharedImageVersionArrayOutput

func (SharedImageVersionArrayOutput) ToSharedImageVersionArrayOutputWithContext

func (o SharedImageVersionArrayOutput) ToSharedImageVersionArrayOutputWithContext(ctx context.Context) SharedImageVersionArrayOutput

type SharedImageVersionInput

type SharedImageVersionInput interface {
	pulumi.Input

	ToSharedImageVersionOutput() SharedImageVersionOutput
	ToSharedImageVersionOutputWithContext(ctx context.Context) SharedImageVersionOutput
}

type SharedImageVersionMap

type SharedImageVersionMap map[string]SharedImageVersionInput

func (SharedImageVersionMap) ElementType

func (SharedImageVersionMap) ElementType() reflect.Type

func (SharedImageVersionMap) ToSharedImageVersionMapOutput

func (i SharedImageVersionMap) ToSharedImageVersionMapOutput() SharedImageVersionMapOutput

func (SharedImageVersionMap) ToSharedImageVersionMapOutputWithContext

func (i SharedImageVersionMap) ToSharedImageVersionMapOutputWithContext(ctx context.Context) SharedImageVersionMapOutput

type SharedImageVersionMapInput

type SharedImageVersionMapInput interface {
	pulumi.Input

	ToSharedImageVersionMapOutput() SharedImageVersionMapOutput
	ToSharedImageVersionMapOutputWithContext(context.Context) SharedImageVersionMapOutput
}

SharedImageVersionMapInput is an input type that accepts SharedImageVersionMap and SharedImageVersionMapOutput values. You can construct a concrete instance of `SharedImageVersionMapInput` via:

SharedImageVersionMap{ "key": SharedImageVersionArgs{...} }

type SharedImageVersionMapOutput

type SharedImageVersionMapOutput struct{ *pulumi.OutputState }

func (SharedImageVersionMapOutput) ElementType

func (SharedImageVersionMapOutput) MapIndex

func (SharedImageVersionMapOutput) ToSharedImageVersionMapOutput

func (o SharedImageVersionMapOutput) ToSharedImageVersionMapOutput() SharedImageVersionMapOutput

func (SharedImageVersionMapOutput) ToSharedImageVersionMapOutputWithContext

func (o SharedImageVersionMapOutput) ToSharedImageVersionMapOutputWithContext(ctx context.Context) SharedImageVersionMapOutput

type SharedImageVersionOutput

type SharedImageVersionOutput struct{ *pulumi.OutputState }

func (SharedImageVersionOutput) BlobUri added in v5.16.0

URI of the Azure Storage Blob used to create the Image Version. Changing this forces a new resource to be created.

> **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.

> **NOTE:** `blobUri` and `storageAccountId` must be specified together

func (SharedImageVersionOutput) DeletionOfReplicatedLocationsEnabled added in v5.52.0

func (o SharedImageVersionOutput) DeletionOfReplicatedLocationsEnabled() pulumi.BoolPtrOutput

Specifies whether this Shared Image Version can be deleted from the Azure Regions this is replicated to. Defaults to `false`. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) ElementType

func (SharedImageVersionOutput) ElementType() reflect.Type

func (SharedImageVersionOutput) EndOfLifeDate added in v5.12.0

The end of life date in RFC3339 format of the Image Version.

func (SharedImageVersionOutput) ExcludeFromLatest added in v5.5.0

func (o SharedImageVersionOutput) ExcludeFromLatest() pulumi.BoolPtrOutput

Should this Image Version be excluded from the `latest` filter? If set to `true` this Image Version won't be returned for the `latest` version. Defaults to `false`.

func (SharedImageVersionOutput) GalleryName added in v5.5.0

The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) ImageName added in v5.5.0

The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) Location added in v5.5.0

The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) ManagedImageId added in v5.5.0

func (o SharedImageVersionOutput) ManagedImageId() pulumi.StringPtrOutput

The ID of the Managed Image or Virtual Machine ID which should be used for this Shared Image Version. Changing this forces a new resource to be created.

> **NOTE:** The ID can be sourced from the `compute.Image` data source or resource

> **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.

func (SharedImageVersionOutput) Name added in v5.5.0

The version number for this Image Version, such as `1.0.0`. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) OsDiskSnapshotId added in v5.5.0

func (o SharedImageVersionOutput) OsDiskSnapshotId() pulumi.StringPtrOutput

The ID of the OS disk snapshot which should be used for this Shared Image Version. Changing this forces a new resource to be created.

> **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.

func (SharedImageVersionOutput) ReplicationMode added in v5.12.0

func (o SharedImageVersionOutput) ReplicationMode() pulumi.StringPtrOutput

Mode to be used for replication. Possible values are `Full` and `Shallow`. Defaults to `Full`. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) ResourceGroupName added in v5.5.0

func (o SharedImageVersionOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

func (SharedImageVersionOutput) StorageAccountId added in v5.16.0

func (o SharedImageVersionOutput) StorageAccountId() pulumi.StringPtrOutput

The ID of the Storage Account where the Blob exists. Changing this forces a new resource to be created.

> **NOTE:** `blobUri` and `storageAccountId` must be specified together

func (SharedImageVersionOutput) Tags added in v5.5.0

A collection of tags which should be applied to this resource.

func (SharedImageVersionOutput) TargetRegions added in v5.5.0

One or more `targetRegion` blocks as documented below.

func (SharedImageVersionOutput) ToSharedImageVersionOutput

func (o SharedImageVersionOutput) ToSharedImageVersionOutput() SharedImageVersionOutput

func (SharedImageVersionOutput) ToSharedImageVersionOutputWithContext

func (o SharedImageVersionOutput) ToSharedImageVersionOutputWithContext(ctx context.Context) SharedImageVersionOutput

type SharedImageVersionState

type SharedImageVersionState struct {
	// URI of the Azure Storage Blob used to create the Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	BlobUri pulumi.StringPtrInput
	// Specifies whether this Shared Image Version can be deleted from the Azure Regions this is replicated to. Defaults to `false`. Changing this forces a new resource to be created.
	DeletionOfReplicatedLocationsEnabled pulumi.BoolPtrInput
	// The end of life date in RFC3339 format of the Image Version.
	EndOfLifeDate pulumi.StringPtrInput
	// Should this Image Version be excluded from the `latest` filter? If set to `true` this Image Version won't be returned for the `latest` version. Defaults to `false`.
	ExcludeFromLatest pulumi.BoolPtrInput
	// The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
	GalleryName pulumi.StringPtrInput
	// The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
	ImageName pulumi.StringPtrInput
	// The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The ID of the Managed Image or Virtual Machine ID which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The ID can be sourced from the `compute.Image` data source or resource
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	ManagedImageId pulumi.StringPtrInput
	// The version number for this Image Version, such as `1.0.0`. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the OS disk snapshot which should be used for this Shared Image Version. Changing this forces a new resource to be created.
	//
	// > **NOTE:** You must specify exact one of `blobUri`, `managedImageId` and `osDiskSnapshotId`.
	OsDiskSnapshotId pulumi.StringPtrInput
	// Mode to be used for replication. Possible values are `Full` and `Shallow`. Defaults to `Full`. Changing this forces a new resource to be created.
	ReplicationMode pulumi.StringPtrInput
	// The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The ID of the Storage Account where the Blob exists. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `blobUri` and `storageAccountId` must be specified together
	StorageAccountId pulumi.StringPtrInput
	// A collection of tags which should be applied to this resource.
	Tags pulumi.StringMapInput
	// One or more `targetRegion` blocks as documented below.
	TargetRegions SharedImageVersionTargetRegionArrayInput
}

func (SharedImageVersionState) ElementType

func (SharedImageVersionState) ElementType() reflect.Type

type SharedImageVersionTargetRegion

type SharedImageVersionTargetRegion struct {
	// The ID of the Disk Encryption Set to encrypt the Image Version in the target region. Changing this forces a new resource to be created.
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// Specifies whether this Shared Image Version should be excluded when querying for the `latest` version. Defaults to `false`.
	ExcludeFromLatestEnabled *bool `pulumi:"excludeFromLatestEnabled"`
	// The Azure Region in which this Image Version should exist.
	Name string `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount int `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`. You can store all of your image version replicas in Zone Redundant Storage by specifying `Standard_ZRS`.
	StorageAccountType *string `pulumi:"storageAccountType"`
}

type SharedImageVersionTargetRegionArgs

type SharedImageVersionTargetRegionArgs struct {
	// The ID of the Disk Encryption Set to encrypt the Image Version in the target region. Changing this forces a new resource to be created.
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// Specifies whether this Shared Image Version should be excluded when querying for the `latest` version. Defaults to `false`.
	ExcludeFromLatestEnabled pulumi.BoolPtrInput `pulumi:"excludeFromLatestEnabled"`
	// The Azure Region in which this Image Version should exist.
	Name pulumi.StringInput `pulumi:"name"`
	// The number of replicas of the Image Version to be created per region.
	RegionalReplicaCount pulumi.IntInput `pulumi:"regionalReplicaCount"`
	// The storage account type for the image version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`. You can store all of your image version replicas in Zone Redundant Storage by specifying `Standard_ZRS`.
	StorageAccountType pulumi.StringPtrInput `pulumi:"storageAccountType"`
}

func (SharedImageVersionTargetRegionArgs) ElementType

func (SharedImageVersionTargetRegionArgs) ToSharedImageVersionTargetRegionOutput

func (i SharedImageVersionTargetRegionArgs) ToSharedImageVersionTargetRegionOutput() SharedImageVersionTargetRegionOutput

func (SharedImageVersionTargetRegionArgs) ToSharedImageVersionTargetRegionOutputWithContext

func (i SharedImageVersionTargetRegionArgs) ToSharedImageVersionTargetRegionOutputWithContext(ctx context.Context) SharedImageVersionTargetRegionOutput

type SharedImageVersionTargetRegionArray

type SharedImageVersionTargetRegionArray []SharedImageVersionTargetRegionInput

func (SharedImageVersionTargetRegionArray) ElementType

func (SharedImageVersionTargetRegionArray) ToSharedImageVersionTargetRegionArrayOutput

func (i SharedImageVersionTargetRegionArray) ToSharedImageVersionTargetRegionArrayOutput() SharedImageVersionTargetRegionArrayOutput

func (SharedImageVersionTargetRegionArray) ToSharedImageVersionTargetRegionArrayOutputWithContext

func (i SharedImageVersionTargetRegionArray) ToSharedImageVersionTargetRegionArrayOutputWithContext(ctx context.Context) SharedImageVersionTargetRegionArrayOutput

type SharedImageVersionTargetRegionArrayInput

type SharedImageVersionTargetRegionArrayInput interface {
	pulumi.Input

	ToSharedImageVersionTargetRegionArrayOutput() SharedImageVersionTargetRegionArrayOutput
	ToSharedImageVersionTargetRegionArrayOutputWithContext(context.Context) SharedImageVersionTargetRegionArrayOutput
}

SharedImageVersionTargetRegionArrayInput is an input type that accepts SharedImageVersionTargetRegionArray and SharedImageVersionTargetRegionArrayOutput values. You can construct a concrete instance of `SharedImageVersionTargetRegionArrayInput` via:

SharedImageVersionTargetRegionArray{ SharedImageVersionTargetRegionArgs{...} }

type SharedImageVersionTargetRegionArrayOutput

type SharedImageVersionTargetRegionArrayOutput struct{ *pulumi.OutputState }

func (SharedImageVersionTargetRegionArrayOutput) ElementType

func (SharedImageVersionTargetRegionArrayOutput) Index

func (SharedImageVersionTargetRegionArrayOutput) ToSharedImageVersionTargetRegionArrayOutput

func (o SharedImageVersionTargetRegionArrayOutput) ToSharedImageVersionTargetRegionArrayOutput() SharedImageVersionTargetRegionArrayOutput

func (SharedImageVersionTargetRegionArrayOutput) ToSharedImageVersionTargetRegionArrayOutputWithContext

func (o SharedImageVersionTargetRegionArrayOutput) ToSharedImageVersionTargetRegionArrayOutputWithContext(ctx context.Context) SharedImageVersionTargetRegionArrayOutput

type SharedImageVersionTargetRegionInput

type SharedImageVersionTargetRegionInput interface {
	pulumi.Input

	ToSharedImageVersionTargetRegionOutput() SharedImageVersionTargetRegionOutput
	ToSharedImageVersionTargetRegionOutputWithContext(context.Context) SharedImageVersionTargetRegionOutput
}

SharedImageVersionTargetRegionInput is an input type that accepts SharedImageVersionTargetRegionArgs and SharedImageVersionTargetRegionOutput values. You can construct a concrete instance of `SharedImageVersionTargetRegionInput` via:

SharedImageVersionTargetRegionArgs{...}

type SharedImageVersionTargetRegionOutput

type SharedImageVersionTargetRegionOutput struct{ *pulumi.OutputState }

func (SharedImageVersionTargetRegionOutput) DiskEncryptionSetId added in v5.12.0

The ID of the Disk Encryption Set to encrypt the Image Version in the target region. Changing this forces a new resource to be created.

func (SharedImageVersionTargetRegionOutput) ElementType

func (SharedImageVersionTargetRegionOutput) ExcludeFromLatestEnabled added in v5.52.0

func (o SharedImageVersionTargetRegionOutput) ExcludeFromLatestEnabled() pulumi.BoolPtrOutput

Specifies whether this Shared Image Version should be excluded when querying for the `latest` version. Defaults to `false`.

func (SharedImageVersionTargetRegionOutput) Name

The Azure Region in which this Image Version should exist.

func (SharedImageVersionTargetRegionOutput) RegionalReplicaCount

func (o SharedImageVersionTargetRegionOutput) RegionalReplicaCount() pulumi.IntOutput

The number of replicas of the Image Version to be created per region.

func (SharedImageVersionTargetRegionOutput) StorageAccountType

The storage account type for the image version. Possible values are `Standard_LRS`, `Premium_LRS` and `Standard_ZRS`. Defaults to `Standard_LRS`. You can store all of your image version replicas in Zone Redundant Storage by specifying `Standard_ZRS`.

func (SharedImageVersionTargetRegionOutput) ToSharedImageVersionTargetRegionOutput

func (o SharedImageVersionTargetRegionOutput) ToSharedImageVersionTargetRegionOutput() SharedImageVersionTargetRegionOutput

func (SharedImageVersionTargetRegionOutput) ToSharedImageVersionTargetRegionOutputWithContext

func (o SharedImageVersionTargetRegionOutput) ToSharedImageVersionTargetRegionOutputWithContext(ctx context.Context) SharedImageVersionTargetRegionOutput

type Snapshot

type Snapshot struct {
	pulumi.CustomResourceState

	// Indicates how the snapshot is to be created. Possible values are `Copy` or `Import`.
	//
	// > **Note:** One of `sourceUri`, `sourceResourceId` or `storageAccountId` must be specified.
	CreateOption pulumi.StringOutput `pulumi:"createOption"`
	// The size of the Snapshotted Disk in GB.
	DiskSizeGb pulumi.IntOutput `pulumi:"diskSizeGb"`
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings SnapshotEncryptionSettingsPtrOutput `pulumi:"encryptionSettings"`
	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	IncrementalEnabled pulumi.BoolPtrOutput `pulumi:"incrementalEnabled"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Policy for accessing the disk via network. Possible values are `AllowAll`, `AllowPrivate`, or `DenyAll`. Defaults to `AllowAll`.
	NetworkAccessPolicy pulumi.StringPtrOutput `pulumi:"networkAccessPolicy"`
	// Policy for controlling export on the disk. Possible values are `true` or `false`. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"publicNetworkAccessEnabled"`
	// The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies a reference to an existing snapshot, when `createOption` is `Copy`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrOutput `pulumi:"sourceResourceId"`
	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	SourceUri pulumi.StringPtrOutput `pulumi:"sourceUri"`
	// Specifies the ID of an storage account. Used with `sourceUri` to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrOutput `pulumi:"storageAccountId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Whether Trusted Launch is enabled for the Snapshot.
	TrustedLaunchEnabled pulumi.BoolOutput `pulumi:"trustedLaunchEnabled"`
}

Manages a Disk Snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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("snapshot-rg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "example", &compute.ManagedDiskArgs{
			Name:               pulumi.String("managed-disk"),
			Location:           example.Location,
			ResourceGroupName:  example.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(10),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewSnapshot(ctx, "example", &compute.SnapshotArgs{
			Name:              pulumi.String("snapshot"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			CreateOption:      pulumi.String("Copy"),
			SourceUri:         exampleManagedDisk.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import azure:compute/snapshot:Snapshot example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/snapshots/snapshot1 ```

func GetSnapshot

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error)

GetSnapshot gets an existing Snapshot 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 NewSnapshot

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOption) (*Snapshot, error)

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

func (*Snapshot) ElementType

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext

func (i *Snapshot) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

type SnapshotArgs

type SnapshotArgs struct {
	// Indicates how the snapshot is to be created. Possible values are `Copy` or `Import`.
	//
	// > **Note:** One of `sourceUri`, `sourceResourceId` or `storageAccountId` must be specified.
	CreateOption pulumi.StringInput
	// The size of the Snapshotted Disk in GB.
	DiskSizeGb pulumi.IntPtrInput
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings SnapshotEncryptionSettingsPtrInput
	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	IncrementalEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Policy for accessing the disk via network. Possible values are `AllowAll`, `AllowPrivate`, or `DenyAll`. Defaults to `AllowAll`.
	NetworkAccessPolicy pulumi.StringPtrInput
	// Policy for controlling export on the disk. Possible values are `true` or `false`. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies a reference to an existing snapshot, when `createOption` is `Copy`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrInput
	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	SourceUri pulumi.StringPtrInput
	// Specifies the ID of an storage account. Used with `sourceUri` to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext

func (i SnapshotArray) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotArrayInput

type SnapshotArrayInput interface {
	pulumi.Input

	ToSnapshotArrayOutput() SnapshotArrayOutput
	ToSnapshotArrayOutputWithContext(context.Context) SnapshotArrayOutput
}

SnapshotArrayInput is an input type that accepts SnapshotArray and SnapshotArrayOutput values. You can construct a concrete instance of `SnapshotArrayInput` via:

SnapshotArray{ SnapshotArgs{...} }

type SnapshotArrayOutput

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index

func (SnapshotArrayOutput) ToSnapshotArrayOutput

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext

func (o SnapshotArrayOutput) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotEncryptionSettings

type SnapshotEncryptionSettings struct {
	// A `diskEncryptionKey` block as defined below.
	DiskEncryptionKey *SnapshotEncryptionSettingsDiskEncryptionKey `pulumi:"diskEncryptionKey"`
	// Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`
	Enabled *bool `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey *SnapshotEncryptionSettingsKeyEncryptionKey `pulumi:"keyEncryptionKey"`
}

type SnapshotEncryptionSettingsArgs

type SnapshotEncryptionSettingsArgs struct {
	// A `diskEncryptionKey` block as defined below.
	DiskEncryptionKey SnapshotEncryptionSettingsDiskEncryptionKeyPtrInput `pulumi:"diskEncryptionKey"`
	// Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey SnapshotEncryptionSettingsKeyEncryptionKeyPtrInput `pulumi:"keyEncryptionKey"`
}

func (SnapshotEncryptionSettingsArgs) ElementType

func (SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsOutput

func (i SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsOutput() SnapshotEncryptionSettingsOutput

func (SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsOutputWithContext

func (i SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsOutput

func (SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsPtrOutput

func (i SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsPtrOutput() SnapshotEncryptionSettingsPtrOutput

func (SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsPtrOutputWithContext

func (i SnapshotEncryptionSettingsArgs) ToSnapshotEncryptionSettingsPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsPtrOutput

type SnapshotEncryptionSettingsDiskEncryptionKey

type SnapshotEncryptionSettingsDiskEncryptionKey struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type SnapshotEncryptionSettingsDiskEncryptionKeyArgs

type SnapshotEncryptionSettingsDiskEncryptionKeyArgs struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ElementType

func (SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (i SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutput() SnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutputWithContext

func (i SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

func (i SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput() SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (i SnapshotEncryptionSettingsDiskEncryptionKeyArgs) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsDiskEncryptionKeyInput

type SnapshotEncryptionSettingsDiskEncryptionKeyInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsDiskEncryptionKeyOutput() SnapshotEncryptionSettingsDiskEncryptionKeyOutput
	ToSnapshotEncryptionSettingsDiskEncryptionKeyOutputWithContext(context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyOutput
}

SnapshotEncryptionSettingsDiskEncryptionKeyInput is an input type that accepts SnapshotEncryptionSettingsDiskEncryptionKeyArgs and SnapshotEncryptionSettingsDiskEncryptionKeyOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsDiskEncryptionKeyInput` via:

SnapshotEncryptionSettingsDiskEncryptionKeyArgs{...}

type SnapshotEncryptionSettingsDiskEncryptionKeyOutput

type SnapshotEncryptionSettingsDiskEncryptionKeyOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ElementType

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) SecretUrl

The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (o SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutput() SnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutputWithContext

func (o SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

func (o SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput() SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (o SnapshotEncryptionSettingsDiskEncryptionKeyOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsDiskEncryptionKeyPtrInput

type SnapshotEncryptionSettingsDiskEncryptionKeyPtrInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput() SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput
	ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput
}

SnapshotEncryptionSettingsDiskEncryptionKeyPtrInput is an input type that accepts SnapshotEncryptionSettingsDiskEncryptionKeyArgs, SnapshotEncryptionSettingsDiskEncryptionKeyPtr and SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsDiskEncryptionKeyPtrInput` via:

        SnapshotEncryptionSettingsDiskEncryptionKeyArgs{...}

or:

        nil

type SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) Elem

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) ElementType

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) SecretUrl

The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as `id` on the `keyvault.Secret` resource.

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext

func (o SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsDiskEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsInput

type SnapshotEncryptionSettingsInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsOutput() SnapshotEncryptionSettingsOutput
	ToSnapshotEncryptionSettingsOutputWithContext(context.Context) SnapshotEncryptionSettingsOutput
}

SnapshotEncryptionSettingsInput is an input type that accepts SnapshotEncryptionSettingsArgs and SnapshotEncryptionSettingsOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsInput` via:

SnapshotEncryptionSettingsArgs{...}

type SnapshotEncryptionSettingsKeyEncryptionKey

type SnapshotEncryptionSettingsKeyEncryptionKey struct {
	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.
	KeyUrl string `pulumi:"keyUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type SnapshotEncryptionSettingsKeyEncryptionKeyArgs

type SnapshotEncryptionSettingsKeyEncryptionKeyArgs struct {
	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.
	KeyUrl pulumi.StringInput `pulumi:"keyUrl"`
	// The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ElementType

func (SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (i SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutput() SnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutputWithContext

func (i SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (i SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput() SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (i SnapshotEncryptionSettingsKeyEncryptionKeyArgs) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsKeyEncryptionKeyInput

type SnapshotEncryptionSettingsKeyEncryptionKeyInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsKeyEncryptionKeyOutput() SnapshotEncryptionSettingsKeyEncryptionKeyOutput
	ToSnapshotEncryptionSettingsKeyEncryptionKeyOutputWithContext(context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyOutput
}

SnapshotEncryptionSettingsKeyEncryptionKeyInput is an input type that accepts SnapshotEncryptionSettingsKeyEncryptionKeyArgs and SnapshotEncryptionSettingsKeyEncryptionKeyOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsKeyEncryptionKeyInput` via:

SnapshotEncryptionSettingsKeyEncryptionKeyArgs{...}

type SnapshotEncryptionSettingsKeyEncryptionKeyOutput

type SnapshotEncryptionSettingsKeyEncryptionKeyOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ElementType

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) KeyUrl

The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (o SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutput() SnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutputWithContext

func (o SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (o SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput() SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (o SnapshotEncryptionSettingsKeyEncryptionKeyOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsKeyEncryptionKeyPtrInput

type SnapshotEncryptionSettingsKeyEncryptionKeyPtrInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput() SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput
	ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput
}

SnapshotEncryptionSettingsKeyEncryptionKeyPtrInput is an input type that accepts SnapshotEncryptionSettingsKeyEncryptionKeyArgs, SnapshotEncryptionSettingsKeyEncryptionKeyPtr and SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsKeyEncryptionKeyPtrInput` via:

        SnapshotEncryptionSettingsKeyEncryptionKeyArgs{...}

or:

        nil

type SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) Elem

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) ElementType

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) KeyUrl

The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `keyvault.Key` resource.

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) SourceVaultId

The ID of the source Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource.

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (o SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput() SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

func (SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext

func (o SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput) ToSnapshotEncryptionSettingsKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsKeyEncryptionKeyPtrOutput

type SnapshotEncryptionSettingsOutput

type SnapshotEncryptionSettingsOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsOutput) DiskEncryptionKey

A `diskEncryptionKey` block as defined below.

func (SnapshotEncryptionSettingsOutput) ElementType

func (SnapshotEncryptionSettingsOutput) Enabled deprecated

Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`

func (SnapshotEncryptionSettingsOutput) KeyEncryptionKey

A `keyEncryptionKey` block as defined below.

func (SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsOutput

func (o SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsOutput() SnapshotEncryptionSettingsOutput

func (SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsOutputWithContext

func (o SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsOutput

func (SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsPtrOutput

func (o SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsPtrOutput() SnapshotEncryptionSettingsPtrOutput

func (SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsPtrOutputWithContext

func (o SnapshotEncryptionSettingsOutput) ToSnapshotEncryptionSettingsPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsPtrOutput

type SnapshotEncryptionSettingsPtrInput

type SnapshotEncryptionSettingsPtrInput interface {
	pulumi.Input

	ToSnapshotEncryptionSettingsPtrOutput() SnapshotEncryptionSettingsPtrOutput
	ToSnapshotEncryptionSettingsPtrOutputWithContext(context.Context) SnapshotEncryptionSettingsPtrOutput
}

SnapshotEncryptionSettingsPtrInput is an input type that accepts SnapshotEncryptionSettingsArgs, SnapshotEncryptionSettingsPtr and SnapshotEncryptionSettingsPtrOutput values. You can construct a concrete instance of `SnapshotEncryptionSettingsPtrInput` via:

        SnapshotEncryptionSettingsArgs{...}

or:

        nil

type SnapshotEncryptionSettingsPtrOutput

type SnapshotEncryptionSettingsPtrOutput struct{ *pulumi.OutputState }

func (SnapshotEncryptionSettingsPtrOutput) DiskEncryptionKey

A `diskEncryptionKey` block as defined below.

func (SnapshotEncryptionSettingsPtrOutput) Elem

func (SnapshotEncryptionSettingsPtrOutput) ElementType

func (SnapshotEncryptionSettingsPtrOutput) Enabled deprecated

Deprecated: Deprecated, Azure Disk Encryption is now configured directly by `diskEncryptionKey` and `keyEncryptionKey`. To disable Azure Disk Encryption, please remove `encryptionSettings` block. To enabled, specify a `encryptionSettings` block`

func (SnapshotEncryptionSettingsPtrOutput) KeyEncryptionKey

A `keyEncryptionKey` block as defined below.

func (SnapshotEncryptionSettingsPtrOutput) ToSnapshotEncryptionSettingsPtrOutput

func (o SnapshotEncryptionSettingsPtrOutput) ToSnapshotEncryptionSettingsPtrOutput() SnapshotEncryptionSettingsPtrOutput

func (SnapshotEncryptionSettingsPtrOutput) ToSnapshotEncryptionSettingsPtrOutputWithContext

func (o SnapshotEncryptionSettingsPtrOutput) ToSnapshotEncryptionSettingsPtrOutputWithContext(ctx context.Context) SnapshotEncryptionSettingsPtrOutput

type SnapshotInput

type SnapshotInput interface {
	pulumi.Input

	ToSnapshotOutput() SnapshotOutput
	ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput
}

type SnapshotMap

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext

func (i SnapshotMap) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotMapInput

type SnapshotMapInput interface {
	pulumi.Input

	ToSnapshotMapOutput() SnapshotMapOutput
	ToSnapshotMapOutputWithContext(context.Context) SnapshotMapOutput
}

SnapshotMapInput is an input type that accepts SnapshotMap and SnapshotMapOutput values. You can construct a concrete instance of `SnapshotMapInput` via:

SnapshotMap{ "key": SnapshotArgs{...} }

type SnapshotMapOutput

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex

func (SnapshotMapOutput) ToSnapshotMapOutput

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext

func (o SnapshotMapOutput) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotOutput

type SnapshotOutput struct{ *pulumi.OutputState }

func (SnapshotOutput) CreateOption added in v5.5.0

func (o SnapshotOutput) CreateOption() pulumi.StringOutput

Indicates how the snapshot is to be created. Possible values are `Copy` or `Import`.

> **Note:** One of `sourceUri`, `sourceResourceId` or `storageAccountId` must be specified.

func (SnapshotOutput) DiskSizeGb added in v5.5.0

func (o SnapshotOutput) DiskSizeGb() pulumi.IntOutput

The size of the Snapshotted Disk in GB.

func (SnapshotOutput) ElementType

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) EncryptionSettings added in v5.5.0

func (o SnapshotOutput) EncryptionSettings() SnapshotEncryptionSettingsPtrOutput

A `encryptionSettings` block as defined below.

> **NOTE:** Removing `encryptionSettings` forces a new resource to be created.

func (SnapshotOutput) IncrementalEnabled added in v5.40.0

func (o SnapshotOutput) IncrementalEnabled() pulumi.BoolPtrOutput

Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.

func (SnapshotOutput) Location added in v5.5.0

func (o SnapshotOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (SnapshotOutput) Name added in v5.5.0

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

func (SnapshotOutput) NetworkAccessPolicy added in v5.72.0

func (o SnapshotOutput) NetworkAccessPolicy() pulumi.StringPtrOutput

Policy for accessing the disk via network. Possible values are `AllowAll`, `AllowPrivate`, or `DenyAll`. Defaults to `AllowAll`.

func (SnapshotOutput) PublicNetworkAccessEnabled added in v5.72.0

func (o SnapshotOutput) PublicNetworkAccessEnabled() pulumi.BoolPtrOutput

Policy for controlling export on the disk. Possible values are `true` or `false`. Defaults to `true`.

func (SnapshotOutput) ResourceGroupName added in v5.5.0

func (o SnapshotOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.

func (SnapshotOutput) SourceResourceId added in v5.5.0

func (o SnapshotOutput) SourceResourceId() pulumi.StringPtrOutput

Specifies a reference to an existing snapshot, when `createOption` is `Copy`. Changing this forces a new resource to be created.

func (SnapshotOutput) SourceUri added in v5.5.0

func (o SnapshotOutput) SourceUri() pulumi.StringPtrOutput

Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.

func (SnapshotOutput) StorageAccountId added in v5.5.0

func (o SnapshotOutput) StorageAccountId() pulumi.StringPtrOutput

Specifies the ID of an storage account. Used with `sourceUri` to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.

func (SnapshotOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (SnapshotOutput) ToSnapshotOutput

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext

func (o SnapshotOutput) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

func (SnapshotOutput) TrustedLaunchEnabled added in v5.6.0

func (o SnapshotOutput) TrustedLaunchEnabled() pulumi.BoolOutput

Whether Trusted Launch is enabled for the Snapshot.

type SnapshotState

type SnapshotState struct {
	// Indicates how the snapshot is to be created. Possible values are `Copy` or `Import`.
	//
	// > **Note:** One of `sourceUri`, `sourceResourceId` or `storageAccountId` must be specified.
	CreateOption pulumi.StringPtrInput
	// The size of the Snapshotted Disk in GB.
	DiskSizeGb pulumi.IntPtrInput
	// A `encryptionSettings` block as defined below.
	//
	// > **NOTE:** Removing `encryptionSettings` forces a new resource to be created.
	EncryptionSettings SnapshotEncryptionSettingsPtrInput
	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	IncrementalEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Policy for accessing the disk via network. Possible values are `AllowAll`, `AllowPrivate`, or `DenyAll`. Defaults to `AllowAll`.
	NetworkAccessPolicy pulumi.StringPtrInput
	// Policy for controlling export on the disk. Possible values are `true` or `false`. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies a reference to an existing snapshot, when `createOption` is `Copy`. Changing this forces a new resource to be created.
	SourceResourceId pulumi.StringPtrInput
	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	SourceUri pulumi.StringPtrInput
	// Specifies the ID of an storage account. Used with `sourceUri` to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	StorageAccountId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Whether Trusted Launch is enabled for the Snapshot.
	TrustedLaunchEnabled pulumi.BoolPtrInput
}

func (SnapshotState) ElementType

func (SnapshotState) ElementType() reflect.Type

type SshPublicKey

type SshPublicKey struct {
	pulumi.CustomResourceState

	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this SSH Public Key. Changing this forces a new SSH Public Key to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey pulumi.StringOutput `pulumi:"publicKey"`
	// The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the SSH Public Key.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a SSH Public Key.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		invokeFile, err := std.File(ctx, &std.FileArgs{
			Input: "~/.ssh/id_rsa.pub",
		}, nil)
		if err != nil {
			return err
		}
		_, err = compute.NewSshPublicKey(ctx, "example", &compute.SshPublicKeyArgs{
			Name:              pulumi.String("example"),
			ResourceGroupName: pulumi.String("example"),
			Location:          pulumi.String("West Europe"),
			PublicKey:         invokeFile.Result,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

SSH Public Keys can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/sshPublicKey:SshPublicKey example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName1 ```

func GetSshPublicKey

func GetSshPublicKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SshPublicKeyState, opts ...pulumi.ResourceOption) (*SshPublicKey, error)

GetSshPublicKey gets an existing SshPublicKey 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 NewSshPublicKey

func NewSshPublicKey(ctx *pulumi.Context,
	name string, args *SshPublicKeyArgs, opts ...pulumi.ResourceOption) (*SshPublicKey, error)

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

func (*SshPublicKey) ElementType

func (*SshPublicKey) ElementType() reflect.Type

func (*SshPublicKey) ToSshPublicKeyOutput

func (i *SshPublicKey) ToSshPublicKeyOutput() SshPublicKeyOutput

func (*SshPublicKey) ToSshPublicKeyOutputWithContext

func (i *SshPublicKey) ToSshPublicKeyOutputWithContext(ctx context.Context) SshPublicKeyOutput

type SshPublicKeyArgs

type SshPublicKeyArgs struct {
	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this SSH Public Key. Changing this forces a new SSH Public Key to be created.
	Name pulumi.StringPtrInput
	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey pulumi.StringInput
	// The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags which should be assigned to the SSH Public Key.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a SshPublicKey resource.

func (SshPublicKeyArgs) ElementType

func (SshPublicKeyArgs) ElementType() reflect.Type

type SshPublicKeyArray

type SshPublicKeyArray []SshPublicKeyInput

func (SshPublicKeyArray) ElementType

func (SshPublicKeyArray) ElementType() reflect.Type

func (SshPublicKeyArray) ToSshPublicKeyArrayOutput

func (i SshPublicKeyArray) ToSshPublicKeyArrayOutput() SshPublicKeyArrayOutput

func (SshPublicKeyArray) ToSshPublicKeyArrayOutputWithContext

func (i SshPublicKeyArray) ToSshPublicKeyArrayOutputWithContext(ctx context.Context) SshPublicKeyArrayOutput

type SshPublicKeyArrayInput

type SshPublicKeyArrayInput interface {
	pulumi.Input

	ToSshPublicKeyArrayOutput() SshPublicKeyArrayOutput
	ToSshPublicKeyArrayOutputWithContext(context.Context) SshPublicKeyArrayOutput
}

SshPublicKeyArrayInput is an input type that accepts SshPublicKeyArray and SshPublicKeyArrayOutput values. You can construct a concrete instance of `SshPublicKeyArrayInput` via:

SshPublicKeyArray{ SshPublicKeyArgs{...} }

type SshPublicKeyArrayOutput

type SshPublicKeyArrayOutput struct{ *pulumi.OutputState }

func (SshPublicKeyArrayOutput) ElementType

func (SshPublicKeyArrayOutput) ElementType() reflect.Type

func (SshPublicKeyArrayOutput) Index

func (SshPublicKeyArrayOutput) ToSshPublicKeyArrayOutput

func (o SshPublicKeyArrayOutput) ToSshPublicKeyArrayOutput() SshPublicKeyArrayOutput

func (SshPublicKeyArrayOutput) ToSshPublicKeyArrayOutputWithContext

func (o SshPublicKeyArrayOutput) ToSshPublicKeyArrayOutputWithContext(ctx context.Context) SshPublicKeyArrayOutput

type SshPublicKeyInput

type SshPublicKeyInput interface {
	pulumi.Input

	ToSshPublicKeyOutput() SshPublicKeyOutput
	ToSshPublicKeyOutputWithContext(ctx context.Context) SshPublicKeyOutput
}

type SshPublicKeyMap

type SshPublicKeyMap map[string]SshPublicKeyInput

func (SshPublicKeyMap) ElementType

func (SshPublicKeyMap) ElementType() reflect.Type

func (SshPublicKeyMap) ToSshPublicKeyMapOutput

func (i SshPublicKeyMap) ToSshPublicKeyMapOutput() SshPublicKeyMapOutput

func (SshPublicKeyMap) ToSshPublicKeyMapOutputWithContext

func (i SshPublicKeyMap) ToSshPublicKeyMapOutputWithContext(ctx context.Context) SshPublicKeyMapOutput

type SshPublicKeyMapInput

type SshPublicKeyMapInput interface {
	pulumi.Input

	ToSshPublicKeyMapOutput() SshPublicKeyMapOutput
	ToSshPublicKeyMapOutputWithContext(context.Context) SshPublicKeyMapOutput
}

SshPublicKeyMapInput is an input type that accepts SshPublicKeyMap and SshPublicKeyMapOutput values. You can construct a concrete instance of `SshPublicKeyMapInput` via:

SshPublicKeyMap{ "key": SshPublicKeyArgs{...} }

type SshPublicKeyMapOutput

type SshPublicKeyMapOutput struct{ *pulumi.OutputState }

func (SshPublicKeyMapOutput) ElementType

func (SshPublicKeyMapOutput) ElementType() reflect.Type

func (SshPublicKeyMapOutput) MapIndex

func (SshPublicKeyMapOutput) ToSshPublicKeyMapOutput

func (o SshPublicKeyMapOutput) ToSshPublicKeyMapOutput() SshPublicKeyMapOutput

func (SshPublicKeyMapOutput) ToSshPublicKeyMapOutputWithContext

func (o SshPublicKeyMapOutput) ToSshPublicKeyMapOutputWithContext(ctx context.Context) SshPublicKeyMapOutput

type SshPublicKeyOutput

type SshPublicKeyOutput struct{ *pulumi.OutputState }

func (SshPublicKeyOutput) ElementType

func (SshPublicKeyOutput) ElementType() reflect.Type

func (SshPublicKeyOutput) Location added in v5.5.0

func (o SshPublicKeyOutput) Location() pulumi.StringOutput

The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.

func (SshPublicKeyOutput) Name added in v5.5.0

The name which should be used for this SSH Public Key. Changing this forces a new SSH Public Key to be created.

func (SshPublicKeyOutput) PublicKey added in v5.5.0

func (o SshPublicKeyOutput) PublicKey() pulumi.StringOutput

SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.

func (SshPublicKeyOutput) ResourceGroupName added in v5.5.0

func (o SshPublicKeyOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.

func (SshPublicKeyOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to the SSH Public Key.

func (SshPublicKeyOutput) ToSshPublicKeyOutput

func (o SshPublicKeyOutput) ToSshPublicKeyOutput() SshPublicKeyOutput

func (SshPublicKeyOutput) ToSshPublicKeyOutputWithContext

func (o SshPublicKeyOutput) ToSshPublicKeyOutputWithContext(ctx context.Context) SshPublicKeyOutput

type SshPublicKeyState

type SshPublicKeyState struct {
	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this SSH Public Key. Changing this forces a new SSH Public Key to be created.
	Name pulumi.StringPtrInput
	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey pulumi.StringPtrInput
	// The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the SSH Public Key.
	Tags pulumi.StringMapInput
}

func (SshPublicKeyState) ElementType

func (SshPublicKeyState) ElementType() reflect.Type

type VirtualMachine

type VirtualMachine struct {
	pulumi.CustomResourceState

	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities VirtualMachineAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringOutput `pulumi:"availabilitySetId"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics VirtualMachineBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteDataDisksOnTermination pulumi.BoolPtrOutput `pulumi:"deleteDataDisksOnTermination"`
	// Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteOsDiskOnTermination pulumi.BoolPtrOutput `pulumi:"deleteOsDiskOnTermination"`
	// An `identity` block as defined below.
	Identity VirtualMachineIdentityOutput `pulumi:"identity"`
	// Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringOutput `pulumi:"licenseType"`
	// Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of Network Interface IDs which should be associated with the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"`
	// An `osProfile` block as defined below. Required when `createOption` in the `storageOsDisk` block is set to `FromImage`.
	OsProfile VirtualMachineOsProfilePtrOutput `pulumi:"osProfile"`
	// (Required, when a Linux machine) An `osProfileLinuxConfig` block as defined below.
	OsProfileLinuxConfig VirtualMachineOsProfileLinuxConfigPtrOutput `pulumi:"osProfileLinuxConfig"`
	// One or more `osProfileSecrets` blocks as defined below.
	OsProfileSecrets VirtualMachineOsProfileSecretArrayOutput `pulumi:"osProfileSecrets"`
	// (Required, when a Windows machine) An `osProfileWindowsConfig` block as defined below.
	OsProfileWindowsConfig VirtualMachineOsProfileWindowsConfigPtrOutput `pulumi:"osProfileWindowsConfig"`
	// A `plan` block as defined below.
	Plan VirtualMachinePlanPtrOutput `pulumi:"plan"`
	// The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
	PrimaryNetworkInterfaceId pulumi.StringPtrOutput `pulumi:"primaryNetworkInterfaceId"`
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// One or more `storageDataDisk` blocks as defined below.
	//
	// > **Please Note:** Data Disks can also be attached either using this block or the `compute.DataDiskAttachment` resource - but not both.
	StorageDataDisks VirtualMachineStorageDataDiskArrayOutput `pulumi:"storageDataDisks"`
	// A `storageImageReference` block as defined below. Changing this forces a new resource to be created.
	StorageImageReference VirtualMachineStorageImageReferenceOutput `pulumi:"storageImageReference"`
	// A `storageOsDisk` block as defined below.
	StorageOsDisk VirtualMachineStorageOsDiskOutput `pulumi:"storageOsDisk"`
	// A mapping of tags to assign to the Virtual Machine.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the [size of the Virtual Machine](https://docs.microsoft.com/azure/virtual-machines/sizes-general). See also [Azure VM Naming Conventions](https://docs.microsoft.com/azure/virtual-machines/vm-naming-conventions).
	VmSize pulumi.StringOutput `pulumi:"vmSize"`
	// A list of a single item of the Availability Zone which the Virtual Machine should be allocated in. Changing this forces a new resource to be created.
	//
	// > **Please Note**: Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	//
	// For more information on the different example configurations, please check out the [Azure documentation](https://docs.microsoft.com/en-gb/rest/api/compute/virtualmachines/createorupdate#examples)
	Zones pulumi.StringPtrOutput `pulumi:"zones"`
}

Manages a Virtual Machine.

## Disclaimers

> **Note:** The `compute.VirtualMachine` resource has been superseded by the `compute.LinuxVirtualMachine` and `compute.WindowsVirtualMachine` resources. The existing `compute.VirtualMachine` resource will continue to be available throughout the 2.x releases however is in a feature-frozen state to maintain compatibility - new functionality will instead be added to the `compute.LinuxVirtualMachine` and `compute.WindowsVirtualMachine` resources.

> **Note:** Data Disks can be attached either directly on the `compute.VirtualMachine` resource, or using the `compute.DataDiskAttachment` resource - but the two cannot be used together. If both are used against the same Virtual Machine, spurious changes will occur.

## Example Usage

### From An Azure Platform Image)

This example provisions a Virtual Machine with Managed Disks.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		prefix := "tfvmex"
		if param := cfg.Get("prefix"); param != "" {
			prefix = param
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String(fmt.Sprintf("%v-resources", prefix)),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		main, err := network.NewVirtualNetwork(ctx, "main", &network.VirtualNetworkArgs{
			Name: pulumi.String(fmt.Sprintf("%v-network", prefix)),
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
			Name:               pulumi.String("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: main.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		mainNetworkInterface, err := network.NewNetworkInterface(ctx, "main", &network.NetworkInterfaceArgs{
			Name:              pulumi.String(fmt.Sprintf("%v-nic", prefix)),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("testconfiguration1"),
					SubnetId:                   internal.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewVirtualMachine(ctx, "main", &compute.VirtualMachineArgs{
			Name:              pulumi.String(fmt.Sprintf("%v-vm", prefix)),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			NetworkInterfaceIds: pulumi.StringArray{
				mainNetworkInterface.ID(),
			},
			VmSize: pulumi.String("Standard_DS1_v2"),
			StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
				Name:            pulumi.String("myosdisk1"),
				Caching:         pulumi.String("ReadWrite"),
				CreateOption:    pulumi.String("FromImage"),
				ManagedDiskType: pulumi.String("Standard_LRS"),
			},
			OsProfile: &compute.VirtualMachineOsProfileArgs{
				ComputerName:  pulumi.String("hostname"),
				AdminUsername: pulumi.String("testadmin"),
				AdminPassword: pulumi.String("Password1234!"),
			},
			OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(false),
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("staging"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Virtual Machines can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/virtualMachine:VirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1 ```

func GetVirtualMachine

func GetVirtualMachine(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VirtualMachineState, opts ...pulumi.ResourceOption) (*VirtualMachine, error)

GetVirtualMachine gets an existing VirtualMachine 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 NewVirtualMachine

func NewVirtualMachine(ctx *pulumi.Context,
	name string, args *VirtualMachineArgs, opts ...pulumi.ResourceOption) (*VirtualMachine, error)

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

func (*VirtualMachine) ElementType

func (*VirtualMachine) ElementType() reflect.Type

func (*VirtualMachine) ToVirtualMachineOutput

func (i *VirtualMachine) ToVirtualMachineOutput() VirtualMachineOutput

func (*VirtualMachine) ToVirtualMachineOutputWithContext

func (i *VirtualMachine) ToVirtualMachineOutputWithContext(ctx context.Context) VirtualMachineOutput

type VirtualMachineAdditionalCapabilities

type VirtualMachineAdditionalCapabilities struct {
	// Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
	//
	// > **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).
	UltraSsdEnabled bool `pulumi:"ultraSsdEnabled"`
}

type VirtualMachineAdditionalCapabilitiesArgs

type VirtualMachineAdditionalCapabilitiesArgs struct {
	// Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
	//
	// > **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).
	UltraSsdEnabled pulumi.BoolInput `pulumi:"ultraSsdEnabled"`
}

func (VirtualMachineAdditionalCapabilitiesArgs) ElementType

func (VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesOutput

func (i VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesOutput() VirtualMachineAdditionalCapabilitiesOutput

func (VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesOutputWithContext

func (i VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) VirtualMachineAdditionalCapabilitiesOutput

func (VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesPtrOutput

func (i VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesPtrOutput() VirtualMachineAdditionalCapabilitiesPtrOutput

func (VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (i VirtualMachineAdditionalCapabilitiesArgs) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) VirtualMachineAdditionalCapabilitiesPtrOutput

type VirtualMachineAdditionalCapabilitiesInput

type VirtualMachineAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToVirtualMachineAdditionalCapabilitiesOutput() VirtualMachineAdditionalCapabilitiesOutput
	ToVirtualMachineAdditionalCapabilitiesOutputWithContext(context.Context) VirtualMachineAdditionalCapabilitiesOutput
}

VirtualMachineAdditionalCapabilitiesInput is an input type that accepts VirtualMachineAdditionalCapabilitiesArgs and VirtualMachineAdditionalCapabilitiesOutput values. You can construct a concrete instance of `VirtualMachineAdditionalCapabilitiesInput` via:

VirtualMachineAdditionalCapabilitiesArgs{...}

type VirtualMachineAdditionalCapabilitiesOutput

type VirtualMachineAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (VirtualMachineAdditionalCapabilitiesOutput) ElementType

func (VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesOutput

func (o VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesOutput() VirtualMachineAdditionalCapabilitiesOutput

func (VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesOutputWithContext

func (o VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) VirtualMachineAdditionalCapabilitiesOutput

func (VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutput

func (o VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutput() VirtualMachineAdditionalCapabilitiesPtrOutput

func (VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o VirtualMachineAdditionalCapabilitiesOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) VirtualMachineAdditionalCapabilitiesPtrOutput

func (VirtualMachineAdditionalCapabilitiesOutput) UltraSsdEnabled

Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.

> **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).

type VirtualMachineAdditionalCapabilitiesPtrInput

type VirtualMachineAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToVirtualMachineAdditionalCapabilitiesPtrOutput() VirtualMachineAdditionalCapabilitiesPtrOutput
	ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(context.Context) VirtualMachineAdditionalCapabilitiesPtrOutput
}

VirtualMachineAdditionalCapabilitiesPtrInput is an input type that accepts VirtualMachineAdditionalCapabilitiesArgs, VirtualMachineAdditionalCapabilitiesPtr and VirtualMachineAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `VirtualMachineAdditionalCapabilitiesPtrInput` via:

        VirtualMachineAdditionalCapabilitiesArgs{...}

or:

        nil

type VirtualMachineAdditionalCapabilitiesPtrOutput

type VirtualMachineAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineAdditionalCapabilitiesPtrOutput) Elem

func (VirtualMachineAdditionalCapabilitiesPtrOutput) ElementType

func (VirtualMachineAdditionalCapabilitiesPtrOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutput

func (o VirtualMachineAdditionalCapabilitiesPtrOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutput() VirtualMachineAdditionalCapabilitiesPtrOutput

func (VirtualMachineAdditionalCapabilitiesPtrOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o VirtualMachineAdditionalCapabilitiesPtrOutput) ToVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) VirtualMachineAdditionalCapabilitiesPtrOutput

func (VirtualMachineAdditionalCapabilitiesPtrOutput) UltraSsdEnabled

Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.

> **Note:** Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series: `ESv3`, `DSv3`, `FSv3`, `LSv2`, `M` and `Mv2`. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd).

type VirtualMachineArgs

type VirtualMachineArgs struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities VirtualMachineAdditionalCapabilitiesPtrInput
	// The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics VirtualMachineBootDiagnosticsPtrInput
	// Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteDataDisksOnTermination pulumi.BoolPtrInput
	// Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteOsDiskOnTermination pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity VirtualMachineIdentityPtrInput
	// Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A list of Network Interface IDs which should be associated with the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// An `osProfile` block as defined below. Required when `createOption` in the `storageOsDisk` block is set to `FromImage`.
	OsProfile VirtualMachineOsProfilePtrInput
	// (Required, when a Linux machine) An `osProfileLinuxConfig` block as defined below.
	OsProfileLinuxConfig VirtualMachineOsProfileLinuxConfigPtrInput
	// One or more `osProfileSecrets` blocks as defined below.
	OsProfileSecrets VirtualMachineOsProfileSecretArrayInput
	// (Required, when a Windows machine) An `osProfileWindowsConfig` block as defined below.
	OsProfileWindowsConfig VirtualMachineOsProfileWindowsConfigPtrInput
	// A `plan` block as defined below.
	Plan VirtualMachinePlanPtrInput
	// The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
	PrimaryNetworkInterfaceId pulumi.StringPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrInput
	// Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// One or more `storageDataDisk` blocks as defined below.
	//
	// > **Please Note:** Data Disks can also be attached either using this block or the `compute.DataDiskAttachment` resource - but not both.
	StorageDataDisks VirtualMachineStorageDataDiskArrayInput
	// A `storageImageReference` block as defined below. Changing this forces a new resource to be created.
	StorageImageReference VirtualMachineStorageImageReferencePtrInput
	// A `storageOsDisk` block as defined below.
	StorageOsDisk VirtualMachineStorageOsDiskInput
	// A mapping of tags to assign to the Virtual Machine.
	Tags pulumi.StringMapInput
	// Specifies the [size of the Virtual Machine](https://docs.microsoft.com/azure/virtual-machines/sizes-general). See also [Azure VM Naming Conventions](https://docs.microsoft.com/azure/virtual-machines/vm-naming-conventions).
	VmSize pulumi.StringInput
	// A list of a single item of the Availability Zone which the Virtual Machine should be allocated in. Changing this forces a new resource to be created.
	//
	// > **Please Note**: Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	//
	// For more information on the different example configurations, please check out the [Azure documentation](https://docs.microsoft.com/en-gb/rest/api/compute/virtualmachines/createorupdate#examples)
	Zones pulumi.StringPtrInput
}

The set of arguments for constructing a VirtualMachine resource.

func (VirtualMachineArgs) ElementType

func (VirtualMachineArgs) ElementType() reflect.Type

type VirtualMachineArray

type VirtualMachineArray []VirtualMachineInput

func (VirtualMachineArray) ElementType

func (VirtualMachineArray) ElementType() reflect.Type

func (VirtualMachineArray) ToVirtualMachineArrayOutput

func (i VirtualMachineArray) ToVirtualMachineArrayOutput() VirtualMachineArrayOutput

func (VirtualMachineArray) ToVirtualMachineArrayOutputWithContext

func (i VirtualMachineArray) ToVirtualMachineArrayOutputWithContext(ctx context.Context) VirtualMachineArrayOutput

type VirtualMachineArrayInput

type VirtualMachineArrayInput interface {
	pulumi.Input

	ToVirtualMachineArrayOutput() VirtualMachineArrayOutput
	ToVirtualMachineArrayOutputWithContext(context.Context) VirtualMachineArrayOutput
}

VirtualMachineArrayInput is an input type that accepts VirtualMachineArray and VirtualMachineArrayOutput values. You can construct a concrete instance of `VirtualMachineArrayInput` via:

VirtualMachineArray{ VirtualMachineArgs{...} }

type VirtualMachineArrayOutput

type VirtualMachineArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineArrayOutput) ElementType

func (VirtualMachineArrayOutput) ElementType() reflect.Type

func (VirtualMachineArrayOutput) Index

func (VirtualMachineArrayOutput) ToVirtualMachineArrayOutput

func (o VirtualMachineArrayOutput) ToVirtualMachineArrayOutput() VirtualMachineArrayOutput

func (VirtualMachineArrayOutput) ToVirtualMachineArrayOutputWithContext

func (o VirtualMachineArrayOutput) ToVirtualMachineArrayOutputWithContext(ctx context.Context) VirtualMachineArrayOutput

type VirtualMachineBootDiagnostics

type VirtualMachineBootDiagnostics struct {
	// Should Boot Diagnostics be enabled for this Virtual Machine?
	Enabled bool `pulumi:"enabled"`
	// The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
	//
	// > **NOTE:** This needs to be the root of a Storage Account and not a Storage Container.
	StorageUri string `pulumi:"storageUri"`
}

type VirtualMachineBootDiagnosticsArgs

type VirtualMachineBootDiagnosticsArgs struct {
	// Should Boot Diagnostics be enabled for this Virtual Machine?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
	//
	// > **NOTE:** This needs to be the root of a Storage Account and not a Storage Container.
	StorageUri pulumi.StringInput `pulumi:"storageUri"`
}

func (VirtualMachineBootDiagnosticsArgs) ElementType

func (VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsOutput

func (i VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsOutput() VirtualMachineBootDiagnosticsOutput

func (VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsOutputWithContext

func (i VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) VirtualMachineBootDiagnosticsOutput

func (VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsPtrOutput

func (i VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsPtrOutput() VirtualMachineBootDiagnosticsPtrOutput

func (VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsPtrOutputWithContext

func (i VirtualMachineBootDiagnosticsArgs) ToVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) VirtualMachineBootDiagnosticsPtrOutput

type VirtualMachineBootDiagnosticsInput

type VirtualMachineBootDiagnosticsInput interface {
	pulumi.Input

	ToVirtualMachineBootDiagnosticsOutput() VirtualMachineBootDiagnosticsOutput
	ToVirtualMachineBootDiagnosticsOutputWithContext(context.Context) VirtualMachineBootDiagnosticsOutput
}

VirtualMachineBootDiagnosticsInput is an input type that accepts VirtualMachineBootDiagnosticsArgs and VirtualMachineBootDiagnosticsOutput values. You can construct a concrete instance of `VirtualMachineBootDiagnosticsInput` via:

VirtualMachineBootDiagnosticsArgs{...}

type VirtualMachineBootDiagnosticsOutput

type VirtualMachineBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (VirtualMachineBootDiagnosticsOutput) ElementType

func (VirtualMachineBootDiagnosticsOutput) Enabled

Should Boot Diagnostics be enabled for this Virtual Machine?

func (VirtualMachineBootDiagnosticsOutput) StorageUri

The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.

> **NOTE:** This needs to be the root of a Storage Account and not a Storage Container.

func (VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsOutput

func (o VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsOutput() VirtualMachineBootDiagnosticsOutput

func (VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsOutputWithContext

func (o VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) VirtualMachineBootDiagnosticsOutput

func (VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsPtrOutput

func (o VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsPtrOutput() VirtualMachineBootDiagnosticsPtrOutput

func (VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o VirtualMachineBootDiagnosticsOutput) ToVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) VirtualMachineBootDiagnosticsPtrOutput

type VirtualMachineBootDiagnosticsPtrInput

type VirtualMachineBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToVirtualMachineBootDiagnosticsPtrOutput() VirtualMachineBootDiagnosticsPtrOutput
	ToVirtualMachineBootDiagnosticsPtrOutputWithContext(context.Context) VirtualMachineBootDiagnosticsPtrOutput
}

VirtualMachineBootDiagnosticsPtrInput is an input type that accepts VirtualMachineBootDiagnosticsArgs, VirtualMachineBootDiagnosticsPtr and VirtualMachineBootDiagnosticsPtrOutput values. You can construct a concrete instance of `VirtualMachineBootDiagnosticsPtrInput` via:

        VirtualMachineBootDiagnosticsArgs{...}

or:

        nil

type VirtualMachineBootDiagnosticsPtrOutput

type VirtualMachineBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineBootDiagnosticsPtrOutput) Elem

func (VirtualMachineBootDiagnosticsPtrOutput) ElementType

func (VirtualMachineBootDiagnosticsPtrOutput) Enabled

Should Boot Diagnostics be enabled for this Virtual Machine?

func (VirtualMachineBootDiagnosticsPtrOutput) StorageUri

The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.

> **NOTE:** This needs to be the root of a Storage Account and not a Storage Container.

func (VirtualMachineBootDiagnosticsPtrOutput) ToVirtualMachineBootDiagnosticsPtrOutput

func (o VirtualMachineBootDiagnosticsPtrOutput) ToVirtualMachineBootDiagnosticsPtrOutput() VirtualMachineBootDiagnosticsPtrOutput

func (VirtualMachineBootDiagnosticsPtrOutput) ToVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o VirtualMachineBootDiagnosticsPtrOutput) ToVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) VirtualMachineBootDiagnosticsPtrOutput

type VirtualMachineIdentity

type VirtualMachineIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	//
	// > **NOTE:** Managed Service Identity previously required the installation of a VM Extension, but this information [is now available via the Azure Instance Metadata Service](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview#how-does-it-work).
	//
	// > **NOTE:** When `type` is set to `SystemAssigned`, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for additional information.
	Type string `pulumi:"type"`
}

type VirtualMachineIdentityArgs

type VirtualMachineIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	//
	// > **NOTE:** Managed Service Identity previously required the installation of a VM Extension, but this information [is now available via the Azure Instance Metadata Service](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview#how-does-it-work).
	//
	// > **NOTE:** When `type` is set to `SystemAssigned`, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for additional information.
	Type pulumi.StringInput `pulumi:"type"`
}

func (VirtualMachineIdentityArgs) ElementType

func (VirtualMachineIdentityArgs) ElementType() reflect.Type

func (VirtualMachineIdentityArgs) ToVirtualMachineIdentityOutput

func (i VirtualMachineIdentityArgs) ToVirtualMachineIdentityOutput() VirtualMachineIdentityOutput

func (VirtualMachineIdentityArgs) ToVirtualMachineIdentityOutputWithContext

func (i VirtualMachineIdentityArgs) ToVirtualMachineIdentityOutputWithContext(ctx context.Context) VirtualMachineIdentityOutput

func (VirtualMachineIdentityArgs) ToVirtualMachineIdentityPtrOutput

func (i VirtualMachineIdentityArgs) ToVirtualMachineIdentityPtrOutput() VirtualMachineIdentityPtrOutput

func (VirtualMachineIdentityArgs) ToVirtualMachineIdentityPtrOutputWithContext

func (i VirtualMachineIdentityArgs) ToVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) VirtualMachineIdentityPtrOutput

type VirtualMachineIdentityInput

type VirtualMachineIdentityInput interface {
	pulumi.Input

	ToVirtualMachineIdentityOutput() VirtualMachineIdentityOutput
	ToVirtualMachineIdentityOutputWithContext(context.Context) VirtualMachineIdentityOutput
}

VirtualMachineIdentityInput is an input type that accepts VirtualMachineIdentityArgs and VirtualMachineIdentityOutput values. You can construct a concrete instance of `VirtualMachineIdentityInput` via:

VirtualMachineIdentityArgs{...}

type VirtualMachineIdentityOutput

type VirtualMachineIdentityOutput struct{ *pulumi.OutputState }

func (VirtualMachineIdentityOutput) ElementType

func (VirtualMachineIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (VirtualMachineIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (VirtualMachineIdentityOutput) ToVirtualMachineIdentityOutput

func (o VirtualMachineIdentityOutput) ToVirtualMachineIdentityOutput() VirtualMachineIdentityOutput

func (VirtualMachineIdentityOutput) ToVirtualMachineIdentityOutputWithContext

func (o VirtualMachineIdentityOutput) ToVirtualMachineIdentityOutputWithContext(ctx context.Context) VirtualMachineIdentityOutput

func (VirtualMachineIdentityOutput) ToVirtualMachineIdentityPtrOutput

func (o VirtualMachineIdentityOutput) ToVirtualMachineIdentityPtrOutput() VirtualMachineIdentityPtrOutput

func (VirtualMachineIdentityOutput) ToVirtualMachineIdentityPtrOutputWithContext

func (o VirtualMachineIdentityOutput) ToVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) VirtualMachineIdentityPtrOutput

func (VirtualMachineIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

> **NOTE:** Managed Service Identity previously required the installation of a VM Extension, but this information [is now available via the Azure Instance Metadata Service](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview#how-does-it-work).

> **NOTE:** When `type` is set to `SystemAssigned`, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for additional information.

type VirtualMachineIdentityPtrInput

type VirtualMachineIdentityPtrInput interface {
	pulumi.Input

	ToVirtualMachineIdentityPtrOutput() VirtualMachineIdentityPtrOutput
	ToVirtualMachineIdentityPtrOutputWithContext(context.Context) VirtualMachineIdentityPtrOutput
}

VirtualMachineIdentityPtrInput is an input type that accepts VirtualMachineIdentityArgs, VirtualMachineIdentityPtr and VirtualMachineIdentityPtrOutput values. You can construct a concrete instance of `VirtualMachineIdentityPtrInput` via:

        VirtualMachineIdentityArgs{...}

or:

        nil

type VirtualMachineIdentityPtrOutput

type VirtualMachineIdentityPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineIdentityPtrOutput) Elem

func (VirtualMachineIdentityPtrOutput) ElementType

func (VirtualMachineIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (VirtualMachineIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (VirtualMachineIdentityPtrOutput) ToVirtualMachineIdentityPtrOutput

func (o VirtualMachineIdentityPtrOutput) ToVirtualMachineIdentityPtrOutput() VirtualMachineIdentityPtrOutput

func (VirtualMachineIdentityPtrOutput) ToVirtualMachineIdentityPtrOutputWithContext

func (o VirtualMachineIdentityPtrOutput) ToVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) VirtualMachineIdentityPtrOutput

func (VirtualMachineIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

> **NOTE:** Managed Service Identity previously required the installation of a VM Extension, but this information [is now available via the Azure Instance Metadata Service](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview#how-does-it-work).

> **NOTE:** When `type` is set to `SystemAssigned`, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See [documentation](https://docs.microsoft.com/azure/active-directory/managed-service-identity/overview) for additional information.

type VirtualMachineInput

type VirtualMachineInput interface {
	pulumi.Input

	ToVirtualMachineOutput() VirtualMachineOutput
	ToVirtualMachineOutputWithContext(ctx context.Context) VirtualMachineOutput
}

type VirtualMachineMap

type VirtualMachineMap map[string]VirtualMachineInput

func (VirtualMachineMap) ElementType

func (VirtualMachineMap) ElementType() reflect.Type

func (VirtualMachineMap) ToVirtualMachineMapOutput

func (i VirtualMachineMap) ToVirtualMachineMapOutput() VirtualMachineMapOutput

func (VirtualMachineMap) ToVirtualMachineMapOutputWithContext

func (i VirtualMachineMap) ToVirtualMachineMapOutputWithContext(ctx context.Context) VirtualMachineMapOutput

type VirtualMachineMapInput

type VirtualMachineMapInput interface {
	pulumi.Input

	ToVirtualMachineMapOutput() VirtualMachineMapOutput
	ToVirtualMachineMapOutputWithContext(context.Context) VirtualMachineMapOutput
}

VirtualMachineMapInput is an input type that accepts VirtualMachineMap and VirtualMachineMapOutput values. You can construct a concrete instance of `VirtualMachineMapInput` via:

VirtualMachineMap{ "key": VirtualMachineArgs{...} }

type VirtualMachineMapOutput

type VirtualMachineMapOutput struct{ *pulumi.OutputState }

func (VirtualMachineMapOutput) ElementType

func (VirtualMachineMapOutput) ElementType() reflect.Type

func (VirtualMachineMapOutput) MapIndex

func (VirtualMachineMapOutput) ToVirtualMachineMapOutput

func (o VirtualMachineMapOutput) ToVirtualMachineMapOutput() VirtualMachineMapOutput

func (VirtualMachineMapOutput) ToVirtualMachineMapOutputWithContext

func (o VirtualMachineMapOutput) ToVirtualMachineMapOutputWithContext(ctx context.Context) VirtualMachineMapOutput

type VirtualMachineOsProfile

type VirtualMachineOsProfile struct {
	// (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
	//
	// > **NOTE:** If using Linux, it may be preferable to use SSH Key authentication (available in the `osProfileLinuxConfig` block) instead of password authentication.
	AdminPassword *string `pulumi:"adminPassword"`
	// Specifies the name of the local administrator account.
	AdminUsername string `pulumi:"adminUsername"`
	// Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
	ComputerName string  `pulumi:"computerName"`
	CustomData   *string `pulumi:"customData"`
}

type VirtualMachineOsProfileArgs

type VirtualMachineOsProfileArgs struct {
	// (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
	//
	// > **NOTE:** If using Linux, it may be preferable to use SSH Key authentication (available in the `osProfileLinuxConfig` block) instead of password authentication.
	AdminPassword pulumi.StringPtrInput `pulumi:"adminPassword"`
	// Specifies the name of the local administrator account.
	AdminUsername pulumi.StringInput `pulumi:"adminUsername"`
	// Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
	ComputerName pulumi.StringInput    `pulumi:"computerName"`
	CustomData   pulumi.StringPtrInput `pulumi:"customData"`
}

func (VirtualMachineOsProfileArgs) ElementType

func (VirtualMachineOsProfileArgs) ToVirtualMachineOsProfileOutput

func (i VirtualMachineOsProfileArgs) ToVirtualMachineOsProfileOutput() VirtualMachineOsProfileOutput

func (VirtualMachineOsProfileArgs) ToVirtualMachineOsProfileOutputWithContext

func (i VirtualMachineOsProfileArgs) ToVirtualMachineOsProfileOutputWithContext(ctx context.Context) VirtualMachineOsProfileOutput

func (VirtualMachineOsProfileArgs) ToVirtualMachineOsProfilePtrOutput

func (i VirtualMachineOsProfileArgs) ToVirtualMachineOsProfilePtrOutput() VirtualMachineOsProfilePtrOutput

func (VirtualMachineOsProfileArgs) ToVirtualMachineOsProfilePtrOutputWithContext

func (i VirtualMachineOsProfileArgs) ToVirtualMachineOsProfilePtrOutputWithContext(ctx context.Context) VirtualMachineOsProfilePtrOutput

type VirtualMachineOsProfileInput

type VirtualMachineOsProfileInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileOutput() VirtualMachineOsProfileOutput
	ToVirtualMachineOsProfileOutputWithContext(context.Context) VirtualMachineOsProfileOutput
}

VirtualMachineOsProfileInput is an input type that accepts VirtualMachineOsProfileArgs and VirtualMachineOsProfileOutput values. You can construct a concrete instance of `VirtualMachineOsProfileInput` via:

VirtualMachineOsProfileArgs{...}

type VirtualMachineOsProfileLinuxConfig

type VirtualMachineOsProfileLinuxConfig struct {
	// Specifies whether password authentication should be disabled. If set to `false`, an `adminPassword` must be specified.
	DisablePasswordAuthentication bool `pulumi:"disablePasswordAuthentication"`
	// One or more `sshKeys` blocks as defined below. This field is required if `disablePasswordAuthentication` is set to `true`.
	SshKeys []VirtualMachineOsProfileLinuxConfigSshKey `pulumi:"sshKeys"`
}

type VirtualMachineOsProfileLinuxConfigArgs

type VirtualMachineOsProfileLinuxConfigArgs struct {
	// Specifies whether password authentication should be disabled. If set to `false`, an `adminPassword` must be specified.
	DisablePasswordAuthentication pulumi.BoolInput `pulumi:"disablePasswordAuthentication"`
	// One or more `sshKeys` blocks as defined below. This field is required if `disablePasswordAuthentication` is set to `true`.
	SshKeys VirtualMachineOsProfileLinuxConfigSshKeyArrayInput `pulumi:"sshKeys"`
}

func (VirtualMachineOsProfileLinuxConfigArgs) ElementType

func (VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigOutput

func (i VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigOutput() VirtualMachineOsProfileLinuxConfigOutput

func (VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigOutputWithContext

func (i VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigOutput

func (VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigPtrOutput

func (i VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigPtrOutput() VirtualMachineOsProfileLinuxConfigPtrOutput

func (VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext

func (i VirtualMachineOsProfileLinuxConfigArgs) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigPtrOutput

type VirtualMachineOsProfileLinuxConfigInput

type VirtualMachineOsProfileLinuxConfigInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileLinuxConfigOutput() VirtualMachineOsProfileLinuxConfigOutput
	ToVirtualMachineOsProfileLinuxConfigOutputWithContext(context.Context) VirtualMachineOsProfileLinuxConfigOutput
}

VirtualMachineOsProfileLinuxConfigInput is an input type that accepts VirtualMachineOsProfileLinuxConfigArgs and VirtualMachineOsProfileLinuxConfigOutput values. You can construct a concrete instance of `VirtualMachineOsProfileLinuxConfigInput` via:

VirtualMachineOsProfileLinuxConfigArgs{...}

type VirtualMachineOsProfileLinuxConfigOutput

type VirtualMachineOsProfileLinuxConfigOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileLinuxConfigOutput) DisablePasswordAuthentication

func (o VirtualMachineOsProfileLinuxConfigOutput) DisablePasswordAuthentication() pulumi.BoolOutput

Specifies whether password authentication should be disabled. If set to `false`, an `adminPassword` must be specified.

func (VirtualMachineOsProfileLinuxConfigOutput) ElementType

func (VirtualMachineOsProfileLinuxConfigOutput) SshKeys

One or more `sshKeys` blocks as defined below. This field is required if `disablePasswordAuthentication` is set to `true`.

func (VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigOutput

func (o VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigOutput() VirtualMachineOsProfileLinuxConfigOutput

func (VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigOutputWithContext

func (o VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigOutput

func (VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutput

func (o VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutput() VirtualMachineOsProfileLinuxConfigPtrOutput

func (VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext

func (o VirtualMachineOsProfileLinuxConfigOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigPtrOutput

type VirtualMachineOsProfileLinuxConfigPtrInput

type VirtualMachineOsProfileLinuxConfigPtrInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileLinuxConfigPtrOutput() VirtualMachineOsProfileLinuxConfigPtrOutput
	ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext(context.Context) VirtualMachineOsProfileLinuxConfigPtrOutput
}

VirtualMachineOsProfileLinuxConfigPtrInput is an input type that accepts VirtualMachineOsProfileLinuxConfigArgs, VirtualMachineOsProfileLinuxConfigPtr and VirtualMachineOsProfileLinuxConfigPtrOutput values. You can construct a concrete instance of `VirtualMachineOsProfileLinuxConfigPtrInput` via:

        VirtualMachineOsProfileLinuxConfigArgs{...}

or:

        nil

type VirtualMachineOsProfileLinuxConfigPtrOutput

type VirtualMachineOsProfileLinuxConfigPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileLinuxConfigPtrOutput) DisablePasswordAuthentication

func (o VirtualMachineOsProfileLinuxConfigPtrOutput) DisablePasswordAuthentication() pulumi.BoolPtrOutput

Specifies whether password authentication should be disabled. If set to `false`, an `adminPassword` must be specified.

func (VirtualMachineOsProfileLinuxConfigPtrOutput) Elem

func (VirtualMachineOsProfileLinuxConfigPtrOutput) ElementType

func (VirtualMachineOsProfileLinuxConfigPtrOutput) SshKeys

One or more `sshKeys` blocks as defined below. This field is required if `disablePasswordAuthentication` is set to `true`.

func (VirtualMachineOsProfileLinuxConfigPtrOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutput

func (o VirtualMachineOsProfileLinuxConfigPtrOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutput() VirtualMachineOsProfileLinuxConfigPtrOutput

func (VirtualMachineOsProfileLinuxConfigPtrOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext

func (o VirtualMachineOsProfileLinuxConfigPtrOutput) ToVirtualMachineOsProfileLinuxConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigPtrOutput

type VirtualMachineOsProfileLinuxConfigSshKey

type VirtualMachineOsProfileLinuxConfigSshKey struct {
	// The Public SSH Key which should be written to the `path` defined above.
	//
	// > **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
	KeyData string `pulumi:"keyData"`
	// The path of the destination file on the virtual machine
	//
	// > **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.
	Path string `pulumi:"path"`
}

type VirtualMachineOsProfileLinuxConfigSshKeyArgs

type VirtualMachineOsProfileLinuxConfigSshKeyArgs struct {
	// The Public SSH Key which should be written to the `path` defined above.
	//
	// > **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
	KeyData pulumi.StringInput `pulumi:"keyData"`
	// The path of the destination file on the virtual machine
	//
	// > **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.
	Path pulumi.StringInput `pulumi:"path"`
}

func (VirtualMachineOsProfileLinuxConfigSshKeyArgs) ElementType

func (VirtualMachineOsProfileLinuxConfigSshKeyArgs) ToVirtualMachineOsProfileLinuxConfigSshKeyOutput

func (i VirtualMachineOsProfileLinuxConfigSshKeyArgs) ToVirtualMachineOsProfileLinuxConfigSshKeyOutput() VirtualMachineOsProfileLinuxConfigSshKeyOutput

func (VirtualMachineOsProfileLinuxConfigSshKeyArgs) ToVirtualMachineOsProfileLinuxConfigSshKeyOutputWithContext

func (i VirtualMachineOsProfileLinuxConfigSshKeyArgs) ToVirtualMachineOsProfileLinuxConfigSshKeyOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigSshKeyOutput

type VirtualMachineOsProfileLinuxConfigSshKeyArray

type VirtualMachineOsProfileLinuxConfigSshKeyArray []VirtualMachineOsProfileLinuxConfigSshKeyInput

func (VirtualMachineOsProfileLinuxConfigSshKeyArray) ElementType

func (VirtualMachineOsProfileLinuxConfigSshKeyArray) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

func (i VirtualMachineOsProfileLinuxConfigSshKeyArray) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutput() VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

func (VirtualMachineOsProfileLinuxConfigSshKeyArray) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutputWithContext

func (i VirtualMachineOsProfileLinuxConfigSshKeyArray) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

type VirtualMachineOsProfileLinuxConfigSshKeyArrayInput

type VirtualMachineOsProfileLinuxConfigSshKeyArrayInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutput() VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput
	ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutputWithContext(context.Context) VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput
}

VirtualMachineOsProfileLinuxConfigSshKeyArrayInput is an input type that accepts VirtualMachineOsProfileLinuxConfigSshKeyArray and VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput values. You can construct a concrete instance of `VirtualMachineOsProfileLinuxConfigSshKeyArrayInput` via:

VirtualMachineOsProfileLinuxConfigSshKeyArray{ VirtualMachineOsProfileLinuxConfigSshKeyArgs{...} }

type VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

type VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) ElementType

func (VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) Index

func (VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

func (o VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutput() VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

func (VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutputWithContext

func (o VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigSshKeyArrayOutput

type VirtualMachineOsProfileLinuxConfigSshKeyInput

type VirtualMachineOsProfileLinuxConfigSshKeyInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileLinuxConfigSshKeyOutput() VirtualMachineOsProfileLinuxConfigSshKeyOutput
	ToVirtualMachineOsProfileLinuxConfigSshKeyOutputWithContext(context.Context) VirtualMachineOsProfileLinuxConfigSshKeyOutput
}

VirtualMachineOsProfileLinuxConfigSshKeyInput is an input type that accepts VirtualMachineOsProfileLinuxConfigSshKeyArgs and VirtualMachineOsProfileLinuxConfigSshKeyOutput values. You can construct a concrete instance of `VirtualMachineOsProfileLinuxConfigSshKeyInput` via:

VirtualMachineOsProfileLinuxConfigSshKeyArgs{...}

type VirtualMachineOsProfileLinuxConfigSshKeyOutput

type VirtualMachineOsProfileLinuxConfigSshKeyOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileLinuxConfigSshKeyOutput) ElementType

func (VirtualMachineOsProfileLinuxConfigSshKeyOutput) KeyData

The Public SSH Key which should be written to the `path` defined above.

> **Note:** Azure only supports RSA SSH2 key signatures of at least 2048 bits in length

func (VirtualMachineOsProfileLinuxConfigSshKeyOutput) Path

The path of the destination file on the virtual machine

> **NOTE:** Due to a limitation in the Azure VM Agent the only allowed `path` is `/home/{username}/.ssh/authorized_keys`.

func (VirtualMachineOsProfileLinuxConfigSshKeyOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyOutput

func (o VirtualMachineOsProfileLinuxConfigSshKeyOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyOutput() VirtualMachineOsProfileLinuxConfigSshKeyOutput

func (VirtualMachineOsProfileLinuxConfigSshKeyOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyOutputWithContext

func (o VirtualMachineOsProfileLinuxConfigSshKeyOutput) ToVirtualMachineOsProfileLinuxConfigSshKeyOutputWithContext(ctx context.Context) VirtualMachineOsProfileLinuxConfigSshKeyOutput

type VirtualMachineOsProfileOutput

type VirtualMachineOsProfileOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileOutput) AdminPassword

(Optional for Windows, Optional for Linux) The password associated with the local administrator account.

> **NOTE:** If using Linux, it may be preferable to use SSH Key authentication (available in the `osProfileLinuxConfig` block) instead of password authentication.

func (VirtualMachineOsProfileOutput) AdminUsername

Specifies the name of the local administrator account.

func (VirtualMachineOsProfileOutput) ComputerName

Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

func (VirtualMachineOsProfileOutput) CustomData

func (VirtualMachineOsProfileOutput) ElementType

func (VirtualMachineOsProfileOutput) ToVirtualMachineOsProfileOutput

func (o VirtualMachineOsProfileOutput) ToVirtualMachineOsProfileOutput() VirtualMachineOsProfileOutput

func (VirtualMachineOsProfileOutput) ToVirtualMachineOsProfileOutputWithContext

func (o VirtualMachineOsProfileOutput) ToVirtualMachineOsProfileOutputWithContext(ctx context.Context) VirtualMachineOsProfileOutput

func (VirtualMachineOsProfileOutput) ToVirtualMachineOsProfilePtrOutput

func (o VirtualMachineOsProfileOutput) ToVirtualMachineOsProfilePtrOutput() VirtualMachineOsProfilePtrOutput

func (VirtualMachineOsProfileOutput) ToVirtualMachineOsProfilePtrOutputWithContext

func (o VirtualMachineOsProfileOutput) ToVirtualMachineOsProfilePtrOutputWithContext(ctx context.Context) VirtualMachineOsProfilePtrOutput

type VirtualMachineOsProfilePtrInput

type VirtualMachineOsProfilePtrInput interface {
	pulumi.Input

	ToVirtualMachineOsProfilePtrOutput() VirtualMachineOsProfilePtrOutput
	ToVirtualMachineOsProfilePtrOutputWithContext(context.Context) VirtualMachineOsProfilePtrOutput
}

VirtualMachineOsProfilePtrInput is an input type that accepts VirtualMachineOsProfileArgs, VirtualMachineOsProfilePtr and VirtualMachineOsProfilePtrOutput values. You can construct a concrete instance of `VirtualMachineOsProfilePtrInput` via:

        VirtualMachineOsProfileArgs{...}

or:

        nil

type VirtualMachineOsProfilePtrOutput

type VirtualMachineOsProfilePtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfilePtrOutput) AdminPassword

(Optional for Windows, Optional for Linux) The password associated with the local administrator account.

> **NOTE:** If using Linux, it may be preferable to use SSH Key authentication (available in the `osProfileLinuxConfig` block) instead of password authentication.

func (VirtualMachineOsProfilePtrOutput) AdminUsername

Specifies the name of the local administrator account.

func (VirtualMachineOsProfilePtrOutput) ComputerName

Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

func (VirtualMachineOsProfilePtrOutput) CustomData

func (VirtualMachineOsProfilePtrOutput) Elem

func (VirtualMachineOsProfilePtrOutput) ElementType

func (VirtualMachineOsProfilePtrOutput) ToVirtualMachineOsProfilePtrOutput

func (o VirtualMachineOsProfilePtrOutput) ToVirtualMachineOsProfilePtrOutput() VirtualMachineOsProfilePtrOutput

func (VirtualMachineOsProfilePtrOutput) ToVirtualMachineOsProfilePtrOutputWithContext

func (o VirtualMachineOsProfilePtrOutput) ToVirtualMachineOsProfilePtrOutputWithContext(ctx context.Context) VirtualMachineOsProfilePtrOutput

type VirtualMachineOsProfileSecret

type VirtualMachineOsProfileSecret struct {
	// Specifies the ID of the Key Vault to use.
	SourceVaultId string `pulumi:"sourceVaultId"`
	// One or more `vaultCertificates` blocks as defined below.
	VaultCertificates []VirtualMachineOsProfileSecretVaultCertificate `pulumi:"vaultCertificates"`
}

type VirtualMachineOsProfileSecretArgs

type VirtualMachineOsProfileSecretArgs struct {
	// Specifies the ID of the Key Vault to use.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
	// One or more `vaultCertificates` blocks as defined below.
	VaultCertificates VirtualMachineOsProfileSecretVaultCertificateArrayInput `pulumi:"vaultCertificates"`
}

func (VirtualMachineOsProfileSecretArgs) ElementType

func (VirtualMachineOsProfileSecretArgs) ToVirtualMachineOsProfileSecretOutput

func (i VirtualMachineOsProfileSecretArgs) ToVirtualMachineOsProfileSecretOutput() VirtualMachineOsProfileSecretOutput

func (VirtualMachineOsProfileSecretArgs) ToVirtualMachineOsProfileSecretOutputWithContext

func (i VirtualMachineOsProfileSecretArgs) ToVirtualMachineOsProfileSecretOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretOutput

type VirtualMachineOsProfileSecretArray

type VirtualMachineOsProfileSecretArray []VirtualMachineOsProfileSecretInput

func (VirtualMachineOsProfileSecretArray) ElementType

func (VirtualMachineOsProfileSecretArray) ToVirtualMachineOsProfileSecretArrayOutput

func (i VirtualMachineOsProfileSecretArray) ToVirtualMachineOsProfileSecretArrayOutput() VirtualMachineOsProfileSecretArrayOutput

func (VirtualMachineOsProfileSecretArray) ToVirtualMachineOsProfileSecretArrayOutputWithContext

func (i VirtualMachineOsProfileSecretArray) ToVirtualMachineOsProfileSecretArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretArrayOutput

type VirtualMachineOsProfileSecretArrayInput

type VirtualMachineOsProfileSecretArrayInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileSecretArrayOutput() VirtualMachineOsProfileSecretArrayOutput
	ToVirtualMachineOsProfileSecretArrayOutputWithContext(context.Context) VirtualMachineOsProfileSecretArrayOutput
}

VirtualMachineOsProfileSecretArrayInput is an input type that accepts VirtualMachineOsProfileSecretArray and VirtualMachineOsProfileSecretArrayOutput values. You can construct a concrete instance of `VirtualMachineOsProfileSecretArrayInput` via:

VirtualMachineOsProfileSecretArray{ VirtualMachineOsProfileSecretArgs{...} }

type VirtualMachineOsProfileSecretArrayOutput

type VirtualMachineOsProfileSecretArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileSecretArrayOutput) ElementType

func (VirtualMachineOsProfileSecretArrayOutput) Index

func (VirtualMachineOsProfileSecretArrayOutput) ToVirtualMachineOsProfileSecretArrayOutput

func (o VirtualMachineOsProfileSecretArrayOutput) ToVirtualMachineOsProfileSecretArrayOutput() VirtualMachineOsProfileSecretArrayOutput

func (VirtualMachineOsProfileSecretArrayOutput) ToVirtualMachineOsProfileSecretArrayOutputWithContext

func (o VirtualMachineOsProfileSecretArrayOutput) ToVirtualMachineOsProfileSecretArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretArrayOutput

type VirtualMachineOsProfileSecretInput

type VirtualMachineOsProfileSecretInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileSecretOutput() VirtualMachineOsProfileSecretOutput
	ToVirtualMachineOsProfileSecretOutputWithContext(context.Context) VirtualMachineOsProfileSecretOutput
}

VirtualMachineOsProfileSecretInput is an input type that accepts VirtualMachineOsProfileSecretArgs and VirtualMachineOsProfileSecretOutput values. You can construct a concrete instance of `VirtualMachineOsProfileSecretInput` via:

VirtualMachineOsProfileSecretArgs{...}

type VirtualMachineOsProfileSecretOutput

type VirtualMachineOsProfileSecretOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileSecretOutput) ElementType

func (VirtualMachineOsProfileSecretOutput) SourceVaultId

Specifies the ID of the Key Vault to use.

func (VirtualMachineOsProfileSecretOutput) ToVirtualMachineOsProfileSecretOutput

func (o VirtualMachineOsProfileSecretOutput) ToVirtualMachineOsProfileSecretOutput() VirtualMachineOsProfileSecretOutput

func (VirtualMachineOsProfileSecretOutput) ToVirtualMachineOsProfileSecretOutputWithContext

func (o VirtualMachineOsProfileSecretOutput) ToVirtualMachineOsProfileSecretOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretOutput

func (VirtualMachineOsProfileSecretOutput) VaultCertificates

One or more `vaultCertificates` blocks as defined below.

type VirtualMachineOsProfileSecretVaultCertificate

type VirtualMachineOsProfileSecretVaultCertificate struct {
	// (Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as `My`.
	CertificateStore *string `pulumi:"certificateStore"`
	// The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
	//
	// > **NOTE:** If your certificate is stored in Azure Key Vault - this can be sourced from the `secretId` property on the `keyvault.Certificate` resource.
	CertificateUrl string `pulumi:"certificateUrl"`
}

type VirtualMachineOsProfileSecretVaultCertificateArgs

type VirtualMachineOsProfileSecretVaultCertificateArgs struct {
	// (Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as `My`.
	CertificateStore pulumi.StringPtrInput `pulumi:"certificateStore"`
	// The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
	//
	// > **NOTE:** If your certificate is stored in Azure Key Vault - this can be sourced from the `secretId` property on the `keyvault.Certificate` resource.
	CertificateUrl pulumi.StringInput `pulumi:"certificateUrl"`
}

func (VirtualMachineOsProfileSecretVaultCertificateArgs) ElementType

func (VirtualMachineOsProfileSecretVaultCertificateArgs) ToVirtualMachineOsProfileSecretVaultCertificateOutput

func (i VirtualMachineOsProfileSecretVaultCertificateArgs) ToVirtualMachineOsProfileSecretVaultCertificateOutput() VirtualMachineOsProfileSecretVaultCertificateOutput

func (VirtualMachineOsProfileSecretVaultCertificateArgs) ToVirtualMachineOsProfileSecretVaultCertificateOutputWithContext

func (i VirtualMachineOsProfileSecretVaultCertificateArgs) ToVirtualMachineOsProfileSecretVaultCertificateOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretVaultCertificateOutput

type VirtualMachineOsProfileSecretVaultCertificateArray

type VirtualMachineOsProfileSecretVaultCertificateArray []VirtualMachineOsProfileSecretVaultCertificateInput

func (VirtualMachineOsProfileSecretVaultCertificateArray) ElementType

func (VirtualMachineOsProfileSecretVaultCertificateArray) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutput

func (i VirtualMachineOsProfileSecretVaultCertificateArray) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutput() VirtualMachineOsProfileSecretVaultCertificateArrayOutput

func (VirtualMachineOsProfileSecretVaultCertificateArray) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutputWithContext

func (i VirtualMachineOsProfileSecretVaultCertificateArray) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretVaultCertificateArrayOutput

type VirtualMachineOsProfileSecretVaultCertificateArrayInput

type VirtualMachineOsProfileSecretVaultCertificateArrayInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileSecretVaultCertificateArrayOutput() VirtualMachineOsProfileSecretVaultCertificateArrayOutput
	ToVirtualMachineOsProfileSecretVaultCertificateArrayOutputWithContext(context.Context) VirtualMachineOsProfileSecretVaultCertificateArrayOutput
}

VirtualMachineOsProfileSecretVaultCertificateArrayInput is an input type that accepts VirtualMachineOsProfileSecretVaultCertificateArray and VirtualMachineOsProfileSecretVaultCertificateArrayOutput values. You can construct a concrete instance of `VirtualMachineOsProfileSecretVaultCertificateArrayInput` via:

VirtualMachineOsProfileSecretVaultCertificateArray{ VirtualMachineOsProfileSecretVaultCertificateArgs{...} }

type VirtualMachineOsProfileSecretVaultCertificateArrayOutput

type VirtualMachineOsProfileSecretVaultCertificateArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileSecretVaultCertificateArrayOutput) ElementType

func (VirtualMachineOsProfileSecretVaultCertificateArrayOutput) Index

func (VirtualMachineOsProfileSecretVaultCertificateArrayOutput) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutput

func (VirtualMachineOsProfileSecretVaultCertificateArrayOutput) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutputWithContext

func (o VirtualMachineOsProfileSecretVaultCertificateArrayOutput) ToVirtualMachineOsProfileSecretVaultCertificateArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretVaultCertificateArrayOutput

type VirtualMachineOsProfileSecretVaultCertificateInput

type VirtualMachineOsProfileSecretVaultCertificateInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileSecretVaultCertificateOutput() VirtualMachineOsProfileSecretVaultCertificateOutput
	ToVirtualMachineOsProfileSecretVaultCertificateOutputWithContext(context.Context) VirtualMachineOsProfileSecretVaultCertificateOutput
}

VirtualMachineOsProfileSecretVaultCertificateInput is an input type that accepts VirtualMachineOsProfileSecretVaultCertificateArgs and VirtualMachineOsProfileSecretVaultCertificateOutput values. You can construct a concrete instance of `VirtualMachineOsProfileSecretVaultCertificateInput` via:

VirtualMachineOsProfileSecretVaultCertificateArgs{...}

type VirtualMachineOsProfileSecretVaultCertificateOutput

type VirtualMachineOsProfileSecretVaultCertificateOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileSecretVaultCertificateOutput) CertificateStore

(Required, on windows machines) Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as `My`.

func (VirtualMachineOsProfileSecretVaultCertificateOutput) CertificateUrl

The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:

> **NOTE:** If your certificate is stored in Azure Key Vault - this can be sourced from the `secretId` property on the `keyvault.Certificate` resource.

func (VirtualMachineOsProfileSecretVaultCertificateOutput) ElementType

func (VirtualMachineOsProfileSecretVaultCertificateOutput) ToVirtualMachineOsProfileSecretVaultCertificateOutput

func (o VirtualMachineOsProfileSecretVaultCertificateOutput) ToVirtualMachineOsProfileSecretVaultCertificateOutput() VirtualMachineOsProfileSecretVaultCertificateOutput

func (VirtualMachineOsProfileSecretVaultCertificateOutput) ToVirtualMachineOsProfileSecretVaultCertificateOutputWithContext

func (o VirtualMachineOsProfileSecretVaultCertificateOutput) ToVirtualMachineOsProfileSecretVaultCertificateOutputWithContext(ctx context.Context) VirtualMachineOsProfileSecretVaultCertificateOutput

type VirtualMachineOsProfileWindowsConfig

type VirtualMachineOsProfileWindowsConfig struct {
	// An `additionalUnattendConfig` block as defined below.
	AdditionalUnattendConfigs []VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfig `pulumi:"additionalUnattendConfigs"`
	// Are automatic updates enabled on this Virtual Machine? Defaults to `false`.
	EnableAutomaticUpgrades *bool `pulumi:"enableAutomaticUpgrades"`
	// Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to `false`.
	//
	// > **NOTE:** This is different from the Default value used for this field within Azure.
	ProvisionVmAgent *bool `pulumi:"provisionVmAgent"`
	// Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.
	Timezone *string `pulumi:"timezone"`
	// One or more `winrm` blocks as defined below.
	Winrms []VirtualMachineOsProfileWindowsConfigWinrm `pulumi:"winrms"`
}

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfig

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfig struct {
	// Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.
	Component string `pulumi:"component"`
	// Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
	Content string `pulumi:"content"`
	// Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.
	Pass string `pulumi:"pass"`
	// Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.
	SettingName string `pulumi:"settingName"`
}

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs struct {
	// Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.
	Component pulumi.StringInput `pulumi:"component"`
	// Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
	Content pulumi.StringInput `pulumi:"content"`
	// Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.
	Pass pulumi.StringInput `pulumi:"pass"`
	// Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.
	SettingName pulumi.StringInput `pulumi:"settingName"`
}

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs) ElementType

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray []VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigInput

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray) ElementType

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayInput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput() VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput
	ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput
}

VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayInput is an input type that accepts VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray and VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayInput` via:

VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray{ VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs{...} }

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayOutput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigInput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput() VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput
	ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput
}

VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigInput is an input type that accepts VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs and VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigInput` via:

VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs{...}

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput

type VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) Component

Specifies the name of the component to configure with the added content. The only allowable value is `Microsoft-Windows-Shell-Setup`.

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) Content

Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) Pass

Specifies the name of the pass that the content applies to. The only allowable value is `oobeSystem`.

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) SettingName

Specifies the name of the setting to which the content applies. Possible values are: `FirstLogonCommands` and `AutoLogon`.

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput

func (VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput) ToVirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigOutput

type VirtualMachineOsProfileWindowsConfigArgs

type VirtualMachineOsProfileWindowsConfigArgs struct {
	// An `additionalUnattendConfig` block as defined below.
	AdditionalUnattendConfigs VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArrayInput `pulumi:"additionalUnattendConfigs"`
	// Are automatic updates enabled on this Virtual Machine? Defaults to `false`.
	EnableAutomaticUpgrades pulumi.BoolPtrInput `pulumi:"enableAutomaticUpgrades"`
	// Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to `false`.
	//
	// > **NOTE:** This is different from the Default value used for this field within Azure.
	ProvisionVmAgent pulumi.BoolPtrInput `pulumi:"provisionVmAgent"`
	// Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.
	Timezone pulumi.StringPtrInput `pulumi:"timezone"`
	// One or more `winrm` blocks as defined below.
	Winrms VirtualMachineOsProfileWindowsConfigWinrmArrayInput `pulumi:"winrms"`
}

func (VirtualMachineOsProfileWindowsConfigArgs) ElementType

func (VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigOutput

func (i VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigOutput() VirtualMachineOsProfileWindowsConfigOutput

func (VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigOutput

func (VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigPtrOutput

func (i VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigPtrOutput() VirtualMachineOsProfileWindowsConfigPtrOutput

func (VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigArgs) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigPtrOutput

type VirtualMachineOsProfileWindowsConfigInput

type VirtualMachineOsProfileWindowsConfigInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigOutput() VirtualMachineOsProfileWindowsConfigOutput
	ToVirtualMachineOsProfileWindowsConfigOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigOutput
}

VirtualMachineOsProfileWindowsConfigInput is an input type that accepts VirtualMachineOsProfileWindowsConfigArgs and VirtualMachineOsProfileWindowsConfigOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigInput` via:

VirtualMachineOsProfileWindowsConfigArgs{...}

type VirtualMachineOsProfileWindowsConfigOutput

type VirtualMachineOsProfileWindowsConfigOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigOutput) AdditionalUnattendConfigs

An `additionalUnattendConfig` block as defined below.

func (VirtualMachineOsProfileWindowsConfigOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigOutput) EnableAutomaticUpgrades

Are automatic updates enabled on this Virtual Machine? Defaults to `false`.

func (VirtualMachineOsProfileWindowsConfigOutput) ProvisionVmAgent

Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to `false`.

> **NOTE:** This is different from the Default value used for this field within Azure.

func (VirtualMachineOsProfileWindowsConfigOutput) Timezone

Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.

func (VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigOutput

func (o VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigOutput() VirtualMachineOsProfileWindowsConfigOutput

func (VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigOutput

func (VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutput

func (o VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutput() VirtualMachineOsProfileWindowsConfigPtrOutput

func (VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigPtrOutput

func (VirtualMachineOsProfileWindowsConfigOutput) Winrms

One or more `winrm` blocks as defined below.

type VirtualMachineOsProfileWindowsConfigPtrInput

type VirtualMachineOsProfileWindowsConfigPtrInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigPtrOutput() VirtualMachineOsProfileWindowsConfigPtrOutput
	ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigPtrOutput
}

VirtualMachineOsProfileWindowsConfigPtrInput is an input type that accepts VirtualMachineOsProfileWindowsConfigArgs, VirtualMachineOsProfileWindowsConfigPtr and VirtualMachineOsProfileWindowsConfigPtrOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigPtrInput` via:

        VirtualMachineOsProfileWindowsConfigArgs{...}

or:

        nil

type VirtualMachineOsProfileWindowsConfigPtrOutput

type VirtualMachineOsProfileWindowsConfigPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigPtrOutput) AdditionalUnattendConfigs

An `additionalUnattendConfig` block as defined below.

func (VirtualMachineOsProfileWindowsConfigPtrOutput) Elem

func (VirtualMachineOsProfileWindowsConfigPtrOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigPtrOutput) EnableAutomaticUpgrades

Are automatic updates enabled on this Virtual Machine? Defaults to `false`.

func (VirtualMachineOsProfileWindowsConfigPtrOutput) ProvisionVmAgent

Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to `false`.

> **NOTE:** This is different from the Default value used for this field within Azure.

func (VirtualMachineOsProfileWindowsConfigPtrOutput) Timezone

Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.

func (VirtualMachineOsProfileWindowsConfigPtrOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutput

func (o VirtualMachineOsProfileWindowsConfigPtrOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutput() VirtualMachineOsProfileWindowsConfigPtrOutput

func (VirtualMachineOsProfileWindowsConfigPtrOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigPtrOutput) ToVirtualMachineOsProfileWindowsConfigPtrOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigPtrOutput

func (VirtualMachineOsProfileWindowsConfigPtrOutput) Winrms

One or more `winrm` blocks as defined below.

type VirtualMachineOsProfileWindowsConfigWinrm

type VirtualMachineOsProfileWindowsConfigWinrm struct {
	// The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the `vaultCertificates` block within the `osProfileSecrets` block.
	//
	// > **NOTE:** This can be sourced from the `secretId` field on the `keyvault.Certificate` resource.
	CertificateUrl *string `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `HTTP` or `HTTPS`.
	Protocol string `pulumi:"protocol"`
}

type VirtualMachineOsProfileWindowsConfigWinrmArgs

type VirtualMachineOsProfileWindowsConfigWinrmArgs struct {
	// The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the `vaultCertificates` block within the `osProfileSecrets` block.
	//
	// > **NOTE:** This can be sourced from the `secretId` field on the `keyvault.Certificate` resource.
	CertificateUrl pulumi.StringPtrInput `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `HTTP` or `HTTPS`.
	Protocol pulumi.StringInput `pulumi:"protocol"`
}

func (VirtualMachineOsProfileWindowsConfigWinrmArgs) ElementType

func (VirtualMachineOsProfileWindowsConfigWinrmArgs) ToVirtualMachineOsProfileWindowsConfigWinrmOutput

func (i VirtualMachineOsProfileWindowsConfigWinrmArgs) ToVirtualMachineOsProfileWindowsConfigWinrmOutput() VirtualMachineOsProfileWindowsConfigWinrmOutput

func (VirtualMachineOsProfileWindowsConfigWinrmArgs) ToVirtualMachineOsProfileWindowsConfigWinrmOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigWinrmArgs) ToVirtualMachineOsProfileWindowsConfigWinrmOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigWinrmOutput

type VirtualMachineOsProfileWindowsConfigWinrmArray

type VirtualMachineOsProfileWindowsConfigWinrmArray []VirtualMachineOsProfileWindowsConfigWinrmInput

func (VirtualMachineOsProfileWindowsConfigWinrmArray) ElementType

func (VirtualMachineOsProfileWindowsConfigWinrmArray) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutput

func (i VirtualMachineOsProfileWindowsConfigWinrmArray) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutput() VirtualMachineOsProfileWindowsConfigWinrmArrayOutput

func (VirtualMachineOsProfileWindowsConfigWinrmArray) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutputWithContext

func (i VirtualMachineOsProfileWindowsConfigWinrmArray) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigWinrmArrayOutput

type VirtualMachineOsProfileWindowsConfigWinrmArrayInput

type VirtualMachineOsProfileWindowsConfigWinrmArrayInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutput() VirtualMachineOsProfileWindowsConfigWinrmArrayOutput
	ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigWinrmArrayOutput
}

VirtualMachineOsProfileWindowsConfigWinrmArrayInput is an input type that accepts VirtualMachineOsProfileWindowsConfigWinrmArray and VirtualMachineOsProfileWindowsConfigWinrmArrayOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigWinrmArrayInput` via:

VirtualMachineOsProfileWindowsConfigWinrmArray{ VirtualMachineOsProfileWindowsConfigWinrmArgs{...} }

type VirtualMachineOsProfileWindowsConfigWinrmArrayOutput

type VirtualMachineOsProfileWindowsConfigWinrmArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigWinrmArrayOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigWinrmArrayOutput) Index

func (VirtualMachineOsProfileWindowsConfigWinrmArrayOutput) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutput

func (VirtualMachineOsProfileWindowsConfigWinrmArrayOutput) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigWinrmArrayOutput) ToVirtualMachineOsProfileWindowsConfigWinrmArrayOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigWinrmArrayOutput

type VirtualMachineOsProfileWindowsConfigWinrmInput

type VirtualMachineOsProfileWindowsConfigWinrmInput interface {
	pulumi.Input

	ToVirtualMachineOsProfileWindowsConfigWinrmOutput() VirtualMachineOsProfileWindowsConfigWinrmOutput
	ToVirtualMachineOsProfileWindowsConfigWinrmOutputWithContext(context.Context) VirtualMachineOsProfileWindowsConfigWinrmOutput
}

VirtualMachineOsProfileWindowsConfigWinrmInput is an input type that accepts VirtualMachineOsProfileWindowsConfigWinrmArgs and VirtualMachineOsProfileWindowsConfigWinrmOutput values. You can construct a concrete instance of `VirtualMachineOsProfileWindowsConfigWinrmInput` via:

VirtualMachineOsProfileWindowsConfigWinrmArgs{...}

type VirtualMachineOsProfileWindowsConfigWinrmOutput

type VirtualMachineOsProfileWindowsConfigWinrmOutput struct{ *pulumi.OutputState }

func (VirtualMachineOsProfileWindowsConfigWinrmOutput) CertificateUrl

The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the `vaultCertificates` block within the `osProfileSecrets` block.

> **NOTE:** This can be sourced from the `secretId` field on the `keyvault.Certificate` resource.

func (VirtualMachineOsProfileWindowsConfigWinrmOutput) ElementType

func (VirtualMachineOsProfileWindowsConfigWinrmOutput) Protocol

Specifies the protocol of listener. Possible values are `HTTP` or `HTTPS`.

func (VirtualMachineOsProfileWindowsConfigWinrmOutput) ToVirtualMachineOsProfileWindowsConfigWinrmOutput

func (o VirtualMachineOsProfileWindowsConfigWinrmOutput) ToVirtualMachineOsProfileWindowsConfigWinrmOutput() VirtualMachineOsProfileWindowsConfigWinrmOutput

func (VirtualMachineOsProfileWindowsConfigWinrmOutput) ToVirtualMachineOsProfileWindowsConfigWinrmOutputWithContext

func (o VirtualMachineOsProfileWindowsConfigWinrmOutput) ToVirtualMachineOsProfileWindowsConfigWinrmOutputWithContext(ctx context.Context) VirtualMachineOsProfileWindowsConfigWinrmOutput

type VirtualMachineOutput

type VirtualMachineOutput struct{ *pulumi.OutputState }

func (VirtualMachineOutput) AdditionalCapabilities added in v5.5.0

An `additionalCapabilities` block as defined below.

func (VirtualMachineOutput) AvailabilitySetId added in v5.5.0

func (o VirtualMachineOutput) AvailabilitySetId() pulumi.StringOutput

The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

func (VirtualMachineOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (VirtualMachineOutput) DeleteDataDisksOnTermination added in v5.5.0

func (o VirtualMachineOutput) DeleteDataDisksOnTermination() pulumi.BoolPtrOutput

Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to `false`.

> **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.

func (VirtualMachineOutput) DeleteOsDiskOnTermination added in v5.5.0

func (o VirtualMachineOutput) DeleteOsDiskOnTermination() pulumi.BoolPtrOutput

Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to `false`.

> **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.

func (VirtualMachineOutput) ElementType

func (VirtualMachineOutput) ElementType() reflect.Type

func (VirtualMachineOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (VirtualMachineOutput) LicenseType added in v5.5.0

func (o VirtualMachineOutput) LicenseType() pulumi.StringOutput

Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are `Windows_Client` and `Windows_Server`.

func (VirtualMachineOutput) Location added in v5.5.0

Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.

func (VirtualMachineOutput) Name added in v5.5.0

Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

func (VirtualMachineOutput) NetworkInterfaceIds added in v5.5.0

func (o VirtualMachineOutput) NetworkInterfaceIds() pulumi.StringArrayOutput

A list of Network Interface IDs which should be associated with the Virtual Machine.

func (VirtualMachineOutput) OsProfile added in v5.5.0

An `osProfile` block as defined below. Required when `createOption` in the `storageOsDisk` block is set to `FromImage`.

func (VirtualMachineOutput) OsProfileLinuxConfig added in v5.5.0

(Required, when a Linux machine) An `osProfileLinuxConfig` block as defined below.

func (VirtualMachineOutput) OsProfileSecrets added in v5.5.0

One or more `osProfileSecrets` blocks as defined below.

func (VirtualMachineOutput) OsProfileWindowsConfig added in v5.5.0

(Required, when a Windows machine) An `osProfileWindowsConfig` block as defined below.

func (VirtualMachineOutput) Plan added in v5.5.0

A `plan` block as defined below.

func (VirtualMachineOutput) PrimaryNetworkInterfaceId added in v5.5.0

func (o VirtualMachineOutput) PrimaryNetworkInterfaceId() pulumi.StringPtrOutput

The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.

func (VirtualMachineOutput) ProximityPlacementGroupId added in v5.5.0

func (o VirtualMachineOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

func (VirtualMachineOutput) ResourceGroupName added in v5.5.0

func (o VirtualMachineOutput) ResourceGroupName() pulumi.StringOutput

Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.

func (VirtualMachineOutput) StorageDataDisks added in v5.5.0

One or more `storageDataDisk` blocks as defined below.

> **Please Note:** Data Disks can also be attached either using this block or the `compute.DataDiskAttachment` resource - but not both.

func (VirtualMachineOutput) StorageImageReference added in v5.5.0

A `storageImageReference` block as defined below. Changing this forces a new resource to be created.

func (VirtualMachineOutput) StorageOsDisk added in v5.5.0

A `storageOsDisk` block as defined below.

func (VirtualMachineOutput) Tags added in v5.5.0

A mapping of tags to assign to the Virtual Machine.

func (VirtualMachineOutput) ToVirtualMachineOutput

func (o VirtualMachineOutput) ToVirtualMachineOutput() VirtualMachineOutput

func (VirtualMachineOutput) ToVirtualMachineOutputWithContext

func (o VirtualMachineOutput) ToVirtualMachineOutputWithContext(ctx context.Context) VirtualMachineOutput

func (VirtualMachineOutput) VmSize added in v5.5.0

Specifies the [size of the Virtual Machine](https://docs.microsoft.com/azure/virtual-machines/sizes-general). See also [Azure VM Naming Conventions](https://docs.microsoft.com/azure/virtual-machines/vm-naming-conventions).

func (VirtualMachineOutput) Zones added in v5.5.0

A list of a single item of the Availability Zone which the Virtual Machine should be allocated in. Changing this forces a new resource to be created.

> **Please Note**: Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).

For more information on the different example configurations, please check out the [Azure documentation](https://docs.microsoft.com/en-gb/rest/api/compute/virtualmachines/createorupdate#examples)

type VirtualMachinePlan

type VirtualMachinePlan struct {
	// Specifies the name of the image from the marketplace.
	Name string `pulumi:"name"`
	// Specifies the product of the image from the marketplace.
	Product string `pulumi:"product"`
	// Specifies the publisher of the image.
	Publisher string `pulumi:"publisher"`
}

type VirtualMachinePlanArgs

type VirtualMachinePlanArgs struct {
	// Specifies the name of the image from the marketplace.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the product of the image from the marketplace.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the publisher of the image.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (VirtualMachinePlanArgs) ElementType

func (VirtualMachinePlanArgs) ElementType() reflect.Type

func (VirtualMachinePlanArgs) ToVirtualMachinePlanOutput

func (i VirtualMachinePlanArgs) ToVirtualMachinePlanOutput() VirtualMachinePlanOutput

func (VirtualMachinePlanArgs) ToVirtualMachinePlanOutputWithContext

func (i VirtualMachinePlanArgs) ToVirtualMachinePlanOutputWithContext(ctx context.Context) VirtualMachinePlanOutput

func (VirtualMachinePlanArgs) ToVirtualMachinePlanPtrOutput

func (i VirtualMachinePlanArgs) ToVirtualMachinePlanPtrOutput() VirtualMachinePlanPtrOutput

func (VirtualMachinePlanArgs) ToVirtualMachinePlanPtrOutputWithContext

func (i VirtualMachinePlanArgs) ToVirtualMachinePlanPtrOutputWithContext(ctx context.Context) VirtualMachinePlanPtrOutput

type VirtualMachinePlanInput

type VirtualMachinePlanInput interface {
	pulumi.Input

	ToVirtualMachinePlanOutput() VirtualMachinePlanOutput
	ToVirtualMachinePlanOutputWithContext(context.Context) VirtualMachinePlanOutput
}

VirtualMachinePlanInput is an input type that accepts VirtualMachinePlanArgs and VirtualMachinePlanOutput values. You can construct a concrete instance of `VirtualMachinePlanInput` via:

VirtualMachinePlanArgs{...}

type VirtualMachinePlanOutput

type VirtualMachinePlanOutput struct{ *pulumi.OutputState }

func (VirtualMachinePlanOutput) ElementType

func (VirtualMachinePlanOutput) ElementType() reflect.Type

func (VirtualMachinePlanOutput) Name

Specifies the name of the image from the marketplace.

func (VirtualMachinePlanOutput) Product

Specifies the product of the image from the marketplace.

func (VirtualMachinePlanOutput) Publisher

Specifies the publisher of the image.

func (VirtualMachinePlanOutput) ToVirtualMachinePlanOutput

func (o VirtualMachinePlanOutput) ToVirtualMachinePlanOutput() VirtualMachinePlanOutput

func (VirtualMachinePlanOutput) ToVirtualMachinePlanOutputWithContext

func (o VirtualMachinePlanOutput) ToVirtualMachinePlanOutputWithContext(ctx context.Context) VirtualMachinePlanOutput

func (VirtualMachinePlanOutput) ToVirtualMachinePlanPtrOutput

func (o VirtualMachinePlanOutput) ToVirtualMachinePlanPtrOutput() VirtualMachinePlanPtrOutput

func (VirtualMachinePlanOutput) ToVirtualMachinePlanPtrOutputWithContext

func (o VirtualMachinePlanOutput) ToVirtualMachinePlanPtrOutputWithContext(ctx context.Context) VirtualMachinePlanPtrOutput

type VirtualMachinePlanPtrInput

type VirtualMachinePlanPtrInput interface {
	pulumi.Input

	ToVirtualMachinePlanPtrOutput() VirtualMachinePlanPtrOutput
	ToVirtualMachinePlanPtrOutputWithContext(context.Context) VirtualMachinePlanPtrOutput
}

VirtualMachinePlanPtrInput is an input type that accepts VirtualMachinePlanArgs, VirtualMachinePlanPtr and VirtualMachinePlanPtrOutput values. You can construct a concrete instance of `VirtualMachinePlanPtrInput` via:

        VirtualMachinePlanArgs{...}

or:

        nil

type VirtualMachinePlanPtrOutput

type VirtualMachinePlanPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachinePlanPtrOutput) Elem

func (VirtualMachinePlanPtrOutput) ElementType

func (VirtualMachinePlanPtrOutput) Name

Specifies the name of the image from the marketplace.

func (VirtualMachinePlanPtrOutput) Product

Specifies the product of the image from the marketplace.

func (VirtualMachinePlanPtrOutput) Publisher

Specifies the publisher of the image.

func (VirtualMachinePlanPtrOutput) ToVirtualMachinePlanPtrOutput

func (o VirtualMachinePlanPtrOutput) ToVirtualMachinePlanPtrOutput() VirtualMachinePlanPtrOutput

func (VirtualMachinePlanPtrOutput) ToVirtualMachinePlanPtrOutputWithContext

func (o VirtualMachinePlanPtrOutput) ToVirtualMachinePlanPtrOutputWithContext(ctx context.Context) VirtualMachinePlanPtrOutput

type VirtualMachineScaleSetExtension

type VirtualMachineScaleSetExtension struct {
	pulumi.CustomResourceState

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion pulumi.BoolPtrOutput `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrOutput `pulumi:"automaticUpgradeEnabled"`
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrOutput `pulumi:"failureSuppressionEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag pulumi.StringPtrOutput `pulumi:"forceUpdateTag"`
	// The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings pulumi.StringPtrOutput `pulumi:"protectedSettings"`
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput `pulumi:"protectedSettingsFromKeyVault"`
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions pulumi.StringArrayOutput `pulumi:"provisionAfterExtensions"`
	// Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
	Publisher pulumi.StringOutput `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings pulumi.StringPtrOutput `pulumi:"settings"`
	// Specifies the Type of the Extension. Changing this forces a new resource to be created.
	Type pulumi.StringOutput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:
	TypeHandlerVersion pulumi.StringOutput `pulumi:"typeHandlerVersion"`
	// The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This should be the ID from the `compute.LinuxVirtualMachineScaleSet` or `compute.WindowsVirtualMachineScaleSet` resource - when using the older `compute.ScaleSet` resource extensions should instead be defined inline.
	VirtualMachineScaleSetId pulumi.StringOutput `pulumi:"virtualMachineScaleSetId"`
}

Manages an Extension for a Virtual Machine Scale Set.

> **NOTE:** This resource is not intended to be used with the `compute.ScaleSet` resource - instead it's intended for this to be used with the `compute.LinuxVirtualMachineScaleSet` and `compute.WindowsVirtualMachineScaleSet` resources.

## Example Usage

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"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"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleLinuxVirtualMachineScaleSet, err := compute.NewLinuxVirtualMachineScaleSet(ctx, "example", &compute.LinuxVirtualMachineScaleSetArgs{
			Name:              pulumi.String("example"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Sku:               pulumi.String("Standard_F2"),
			AdminUsername:     pulumi.String("adminuser"),
			Instances:         pulumi.Int(1),
			SourceImageReference: &compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{
				Publisher: pulumi.String("Canonical"),
				Offer:     pulumi.String("0001-com-ubuntu-server-jammy"),
				Sku:       pulumi.String("22_04-lts"),
				Version:   pulumi.String("latest"),
			},
			NetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{
				&compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{
					Name: pulumi.String("example"),
					IpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{
						&compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{
							Name: pulumi.String("internal"),
						},
					},
				},
			},
			OsDisk: &compute.LinuxVirtualMachineScaleSetOsDiskArgs{
				StorageAccountType: pulumi.String("Standard_LRS"),
				Caching:            pulumi.String("ReadWrite"),
			},
		})
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"commandToExecute": "echo $HOSTNAME",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		_, err = compute.NewVirtualMachineScaleSetExtension(ctx, "example", &compute.VirtualMachineScaleSetExtensionArgs{
			Name:                     pulumi.String("example"),
			VirtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.ID(),
			Publisher:                pulumi.String("Microsoft.Azure.Extensions"),
			Type:                     pulumi.String("CustomScript"),
			TypeHandlerVersion:       pulumi.String("2.0"),
			Settings:                 pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Virtual Machine Scale Set Extensions can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/virtualMachineScaleSetExtension:VirtualMachineScaleSetExtension test /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleSet1/extensions/extension1 ```

func GetVirtualMachineScaleSetExtension

func GetVirtualMachineScaleSetExtension(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VirtualMachineScaleSetExtensionState, opts ...pulumi.ResourceOption) (*VirtualMachineScaleSetExtension, error)

GetVirtualMachineScaleSetExtension gets an existing VirtualMachineScaleSetExtension 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 NewVirtualMachineScaleSetExtension

func NewVirtualMachineScaleSetExtension(ctx *pulumi.Context,
	name string, args *VirtualMachineScaleSetExtensionArgs, opts ...pulumi.ResourceOption) (*VirtualMachineScaleSetExtension, error)

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

func (*VirtualMachineScaleSetExtension) ElementType

func (*VirtualMachineScaleSetExtension) ToVirtualMachineScaleSetExtensionOutput

func (i *VirtualMachineScaleSetExtension) ToVirtualMachineScaleSetExtensionOutput() VirtualMachineScaleSetExtensionOutput

func (*VirtualMachineScaleSetExtension) ToVirtualMachineScaleSetExtensionOutputWithContext

func (i *VirtualMachineScaleSetExtension) ToVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionOutput

type VirtualMachineScaleSetExtensionArgs

type VirtualMachineScaleSetExtensionArgs struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrInput
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag pulumi.StringPtrInput
	// The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings pulumi.StringPtrInput
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions pulumi.StringArrayInput
	// Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings pulumi.StringPtrInput
	// Specifies the Type of the Extension. Changing this forces a new resource to be created.
	Type pulumi.StringInput
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:
	TypeHandlerVersion pulumi.StringInput
	// The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This should be the ID from the `compute.LinuxVirtualMachineScaleSet` or `compute.WindowsVirtualMachineScaleSet` resource - when using the older `compute.ScaleSet` resource extensions should instead be defined inline.
	VirtualMachineScaleSetId pulumi.StringInput
}

The set of arguments for constructing a VirtualMachineScaleSetExtension resource.

func (VirtualMachineScaleSetExtensionArgs) ElementType

type VirtualMachineScaleSetExtensionArray

type VirtualMachineScaleSetExtensionArray []VirtualMachineScaleSetExtensionInput

func (VirtualMachineScaleSetExtensionArray) ElementType

func (VirtualMachineScaleSetExtensionArray) ToVirtualMachineScaleSetExtensionArrayOutput

func (i VirtualMachineScaleSetExtensionArray) ToVirtualMachineScaleSetExtensionArrayOutput() VirtualMachineScaleSetExtensionArrayOutput

func (VirtualMachineScaleSetExtensionArray) ToVirtualMachineScaleSetExtensionArrayOutputWithContext

func (i VirtualMachineScaleSetExtensionArray) ToVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionArrayOutput

type VirtualMachineScaleSetExtensionArrayInput

type VirtualMachineScaleSetExtensionArrayInput interface {
	pulumi.Input

	ToVirtualMachineScaleSetExtensionArrayOutput() VirtualMachineScaleSetExtensionArrayOutput
	ToVirtualMachineScaleSetExtensionArrayOutputWithContext(context.Context) VirtualMachineScaleSetExtensionArrayOutput
}

VirtualMachineScaleSetExtensionArrayInput is an input type that accepts VirtualMachineScaleSetExtensionArray and VirtualMachineScaleSetExtensionArrayOutput values. You can construct a concrete instance of `VirtualMachineScaleSetExtensionArrayInput` via:

VirtualMachineScaleSetExtensionArray{ VirtualMachineScaleSetExtensionArgs{...} }

type VirtualMachineScaleSetExtensionArrayOutput

type VirtualMachineScaleSetExtensionArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineScaleSetExtensionArrayOutput) ElementType

func (VirtualMachineScaleSetExtensionArrayOutput) Index

func (VirtualMachineScaleSetExtensionArrayOutput) ToVirtualMachineScaleSetExtensionArrayOutput

func (o VirtualMachineScaleSetExtensionArrayOutput) ToVirtualMachineScaleSetExtensionArrayOutput() VirtualMachineScaleSetExtensionArrayOutput

func (VirtualMachineScaleSetExtensionArrayOutput) ToVirtualMachineScaleSetExtensionArrayOutputWithContext

func (o VirtualMachineScaleSetExtensionArrayOutput) ToVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionArrayOutput

type VirtualMachineScaleSetExtensionInput

type VirtualMachineScaleSetExtensionInput interface {
	pulumi.Input

	ToVirtualMachineScaleSetExtensionOutput() VirtualMachineScaleSetExtensionOutput
	ToVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionOutput
}

type VirtualMachineScaleSetExtensionMap

type VirtualMachineScaleSetExtensionMap map[string]VirtualMachineScaleSetExtensionInput

func (VirtualMachineScaleSetExtensionMap) ElementType

func (VirtualMachineScaleSetExtensionMap) ToVirtualMachineScaleSetExtensionMapOutput

func (i VirtualMachineScaleSetExtensionMap) ToVirtualMachineScaleSetExtensionMapOutput() VirtualMachineScaleSetExtensionMapOutput

func (VirtualMachineScaleSetExtensionMap) ToVirtualMachineScaleSetExtensionMapOutputWithContext

func (i VirtualMachineScaleSetExtensionMap) ToVirtualMachineScaleSetExtensionMapOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionMapOutput

type VirtualMachineScaleSetExtensionMapInput

type VirtualMachineScaleSetExtensionMapInput interface {
	pulumi.Input

	ToVirtualMachineScaleSetExtensionMapOutput() VirtualMachineScaleSetExtensionMapOutput
	ToVirtualMachineScaleSetExtensionMapOutputWithContext(context.Context) VirtualMachineScaleSetExtensionMapOutput
}

VirtualMachineScaleSetExtensionMapInput is an input type that accepts VirtualMachineScaleSetExtensionMap and VirtualMachineScaleSetExtensionMapOutput values. You can construct a concrete instance of `VirtualMachineScaleSetExtensionMapInput` via:

VirtualMachineScaleSetExtensionMap{ "key": VirtualMachineScaleSetExtensionArgs{...} }

type VirtualMachineScaleSetExtensionMapOutput

type VirtualMachineScaleSetExtensionMapOutput struct{ *pulumi.OutputState }

func (VirtualMachineScaleSetExtensionMapOutput) ElementType

func (VirtualMachineScaleSetExtensionMapOutput) MapIndex

func (VirtualMachineScaleSetExtensionMapOutput) ToVirtualMachineScaleSetExtensionMapOutput

func (o VirtualMachineScaleSetExtensionMapOutput) ToVirtualMachineScaleSetExtensionMapOutput() VirtualMachineScaleSetExtensionMapOutput

func (VirtualMachineScaleSetExtensionMapOutput) ToVirtualMachineScaleSetExtensionMapOutputWithContext

func (o VirtualMachineScaleSetExtensionMapOutput) ToVirtualMachineScaleSetExtensionMapOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionMapOutput

type VirtualMachineScaleSetExtensionOutput

type VirtualMachineScaleSetExtensionOutput struct{ *pulumi.OutputState }

func (VirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersion added in v5.5.0

func (o VirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersion() pulumi.BoolPtrOutput

Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.

func (VirtualMachineScaleSetExtensionOutput) AutomaticUpgradeEnabled added in v5.5.0

func (o VirtualMachineScaleSetExtensionOutput) AutomaticUpgradeEnabled() pulumi.BoolPtrOutput

Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?

func (VirtualMachineScaleSetExtensionOutput) ElementType

func (VirtualMachineScaleSetExtensionOutput) FailureSuppressionEnabled added in v5.21.0

func (o VirtualMachineScaleSetExtensionOutput) FailureSuppressionEnabled() pulumi.BoolPtrOutput

Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.

> **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.

func (VirtualMachineScaleSetExtensionOutput) ForceUpdateTag added in v5.5.0

A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.

func (VirtualMachineScaleSetExtensionOutput) Name added in v5.5.0

The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.

func (VirtualMachineScaleSetExtensionOutput) ProtectedSettings added in v5.5.0

A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.

> **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (VirtualMachineScaleSetExtensionOutput) ProtectedSettingsFromKeyVault added in v5.24.0

A `protectedSettingsFromKeyVault` block as defined below.

> **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`

func (VirtualMachineScaleSetExtensionOutput) ProvisionAfterExtensions added in v5.5.0

func (o VirtualMachineScaleSetExtensionOutput) ProvisionAfterExtensions() pulumi.StringArrayOutput

An ordered list of Extension names which this should be provisioned after.

func (VirtualMachineScaleSetExtensionOutput) Publisher added in v5.5.0

Specifies the Publisher of the Extension. Changing this forces a new resource to be created.

func (VirtualMachineScaleSetExtensionOutput) Settings added in v5.5.0

A JSON String which specifies Settings for the Extension.

> **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (VirtualMachineScaleSetExtensionOutput) ToVirtualMachineScaleSetExtensionOutput

func (o VirtualMachineScaleSetExtensionOutput) ToVirtualMachineScaleSetExtensionOutput() VirtualMachineScaleSetExtensionOutput

func (VirtualMachineScaleSetExtensionOutput) ToVirtualMachineScaleSetExtensionOutputWithContext

func (o VirtualMachineScaleSetExtensionOutput) ToVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionOutput

func (VirtualMachineScaleSetExtensionOutput) Type added in v5.5.0

Specifies the Type of the Extension. Changing this forces a new resource to be created.

func (VirtualMachineScaleSetExtensionOutput) TypeHandlerVersion added in v5.5.0

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

> **Note:** The `Publisher` and `Type` of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:

func (VirtualMachineScaleSetExtensionOutput) VirtualMachineScaleSetId added in v5.5.0

func (o VirtualMachineScaleSetExtensionOutput) VirtualMachineScaleSetId() pulumi.StringOutput

The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.

> **NOTE:** This should be the ID from the `compute.LinuxVirtualMachineScaleSet` or `compute.WindowsVirtualMachineScaleSet` resource - when using the older `compute.ScaleSet` resource extensions should instead be defined inline.

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ElementType added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (i VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (i VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput interface {
	pulumi.Input

	ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput() VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
	ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
}

VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput is an input type that accepts VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs and VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput values. You can construct a concrete instance of `VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput` via:

VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput struct{ *pulumi.OutputState }

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ElementType added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (o VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput interface {
	pulumi.Input

	ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput() VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
	ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
}

VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput is an input type that accepts VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs, VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtr and VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput values. You can construct a concrete instance of `VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput` via:

        VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

or:

        nil

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

type VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) Elem added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ElementType added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type VirtualMachineScaleSetExtensionState

type VirtualMachineScaleSetExtensionState struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput
	// Should failures from the extension be suppressed? Possible values are `true` or `false`. Defaults to `false`.
	//
	// > **NOTE:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failureSuppressionEnabled` value.
	FailureSuppressionEnabled pulumi.BoolPtrInput
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag pulumi.StringPtrInput
	// The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings pulumi.StringPtrInput
	// A `protectedSettingsFromKeyVault` block as defined below.
	//
	// > **Note:** `protectedSettingsFromKeyVault` cannot be used with `protectedSettings`
	ProtectedSettingsFromKeyVault VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions pulumi.StringArrayInput
	// Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
	Publisher pulumi.StringPtrInput
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings pulumi.StringPtrInput
	// Specifies the Type of the Extension. Changing this forces a new resource to be created.
	Type pulumi.StringPtrInput
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	//
	// > **Note:** The `Publisher` and `Type` of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:
	TypeHandlerVersion pulumi.StringPtrInput
	// The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This should be the ID from the `compute.LinuxVirtualMachineScaleSet` or `compute.WindowsVirtualMachineScaleSet` resource - when using the older `compute.ScaleSet` resource extensions should instead be defined inline.
	VirtualMachineScaleSetId pulumi.StringPtrInput
}

func (VirtualMachineScaleSetExtensionState) ElementType

type VirtualMachineState

type VirtualMachineState struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities VirtualMachineAdditionalCapabilitiesPtrInput
	// The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics VirtualMachineBootDiagnosticsPtrInput
	// Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteDataDisksOnTermination pulumi.BoolPtrInput
	// Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to `false`.
	//
	// > **Note:** This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
	DeleteOsDiskOnTermination pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity VirtualMachineIdentityPtrInput
	// Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A list of Network Interface IDs which should be associated with the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// An `osProfile` block as defined below. Required when `createOption` in the `storageOsDisk` block is set to `FromImage`.
	OsProfile VirtualMachineOsProfilePtrInput
	// (Required, when a Linux machine) An `osProfileLinuxConfig` block as defined below.
	OsProfileLinuxConfig VirtualMachineOsProfileLinuxConfigPtrInput
	// One or more `osProfileSecrets` blocks as defined below.
	OsProfileSecrets VirtualMachineOsProfileSecretArrayInput
	// (Required, when a Windows machine) An `osProfileWindowsConfig` block as defined below.
	OsProfileWindowsConfig VirtualMachineOsProfileWindowsConfigPtrInput
	// A `plan` block as defined below.
	Plan VirtualMachinePlanPtrInput
	// The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
	PrimaryNetworkInterfaceId pulumi.StringPtrInput
	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
	ProximityPlacementGroupId pulumi.StringPtrInput
	// Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// One or more `storageDataDisk` blocks as defined below.
	//
	// > **Please Note:** Data Disks can also be attached either using this block or the `compute.DataDiskAttachment` resource - but not both.
	StorageDataDisks VirtualMachineStorageDataDiskArrayInput
	// A `storageImageReference` block as defined below. Changing this forces a new resource to be created.
	StorageImageReference VirtualMachineStorageImageReferencePtrInput
	// A `storageOsDisk` block as defined below.
	StorageOsDisk VirtualMachineStorageOsDiskPtrInput
	// A mapping of tags to assign to the Virtual Machine.
	Tags pulumi.StringMapInput
	// Specifies the [size of the Virtual Machine](https://docs.microsoft.com/azure/virtual-machines/sizes-general). See also [Azure VM Naming Conventions](https://docs.microsoft.com/azure/virtual-machines/vm-naming-conventions).
	VmSize pulumi.StringPtrInput
	// A list of a single item of the Availability Zone which the Virtual Machine should be allocated in. Changing this forces a new resource to be created.
	//
	// > **Please Note**: Availability Zones are [only supported in several regions at this time](https://docs.microsoft.com/azure/availability-zones/az-overview).
	//
	// For more information on the different example configurations, please check out the [Azure documentation](https://docs.microsoft.com/en-gb/rest/api/compute/virtualmachines/createorupdate#examples)
	Zones pulumi.StringPtrInput
}

func (VirtualMachineState) ElementType

func (VirtualMachineState) ElementType() reflect.Type

type VirtualMachineStorageDataDisk

type VirtualMachineStorageDataDisk struct {
	// Specifies the caching requirements for the Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching *string `pulumi:"caching"`
	// Specifies how the data disk should be created. Possible values are `Attach`, `FromImage` and `Empty`.
	//
	// > **NOTE:** If using an image that does not have data to be written to the Data Disk, use `Empty` as the create option in order to create the desired disk without any data.
	CreateOption string `pulumi:"createOption"`
	// Specifies the size of the data disk in gigabytes.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
	Lun int `pulumi:"lun"`
	// Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set `createOption` must be set to `Attach`.
	//
	// The following properties apply when using Unmanaged Disks:
	ManagedDiskId *string `pulumi:"managedDiskId"`
	// Specifies the type of managed disk to create. Possible values are either `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS` or `UltraSSD_LRS`.
	//
	// > **Note:** `managedDiskType` of type `UltraSSD_LRS` is currently in preview and are not available to subscriptions that have not [requested](https://aka.ms/UltraSSDPreviewSignUp) onboarding to `Azure Ultra Disk Storage` preview. `Azure Ultra Disk Storage` is only available in `East US 2`, `North Europe`, and `Southeast Asia` regions. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd), [product blog](https://azure.microsoft.com/en-us/blog/announcing-the-general-availability-of-azure-ultra-disk-storage/) and [FAQ](https://docs.microsoft.com/azure/virtual-machines/windows/faq-for-disks#ultra-disks). You must also set `additional_capabilities.ultra_ssd_enabled` to `true`.
	ManagedDiskType *string `pulumi:"managedDiskType"`
	// The name of the Data Disk.
	Name string `pulumi:"name"`
	// Specifies the URI of the VHD file backing this Unmanaged Data Disk.
	VhdUri *string `pulumi:"vhdUri"`
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	//
	// The following properties apply when using Managed Disks:
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type VirtualMachineStorageDataDiskArgs

type VirtualMachineStorageDataDiskArgs struct {
	// Specifies the caching requirements for the Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// Specifies how the data disk should be created. Possible values are `Attach`, `FromImage` and `Empty`.
	//
	// > **NOTE:** If using an image that does not have data to be written to the Data Disk, use `Empty` as the create option in order to create the desired disk without any data.
	CreateOption pulumi.StringInput `pulumi:"createOption"`
	// Specifies the size of the data disk in gigabytes.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
	Lun pulumi.IntInput `pulumi:"lun"`
	// Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set `createOption` must be set to `Attach`.
	//
	// The following properties apply when using Unmanaged Disks:
	ManagedDiskId pulumi.StringPtrInput `pulumi:"managedDiskId"`
	// Specifies the type of managed disk to create. Possible values are either `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS` or `UltraSSD_LRS`.
	//
	// > **Note:** `managedDiskType` of type `UltraSSD_LRS` is currently in preview and are not available to subscriptions that have not [requested](https://aka.ms/UltraSSDPreviewSignUp) onboarding to `Azure Ultra Disk Storage` preview. `Azure Ultra Disk Storage` is only available in `East US 2`, `North Europe`, and `Southeast Asia` regions. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd), [product blog](https://azure.microsoft.com/en-us/blog/announcing-the-general-availability-of-azure-ultra-disk-storage/) and [FAQ](https://docs.microsoft.com/azure/virtual-machines/windows/faq-for-disks#ultra-disks). You must also set `additional_capabilities.ultra_ssd_enabled` to `true`.
	ManagedDiskType pulumi.StringPtrInput `pulumi:"managedDiskType"`
	// The name of the Data Disk.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the URI of the VHD file backing this Unmanaged Data Disk.
	VhdUri pulumi.StringPtrInput `pulumi:"vhdUri"`
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	//
	// The following properties apply when using Managed Disks:
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (VirtualMachineStorageDataDiskArgs) ElementType

func (VirtualMachineStorageDataDiskArgs) ToVirtualMachineStorageDataDiskOutput

func (i VirtualMachineStorageDataDiskArgs) ToVirtualMachineStorageDataDiskOutput() VirtualMachineStorageDataDiskOutput

func (VirtualMachineStorageDataDiskArgs) ToVirtualMachineStorageDataDiskOutputWithContext

func (i VirtualMachineStorageDataDiskArgs) ToVirtualMachineStorageDataDiskOutputWithContext(ctx context.Context) VirtualMachineStorageDataDiskOutput

type VirtualMachineStorageDataDiskArray

type VirtualMachineStorageDataDiskArray []VirtualMachineStorageDataDiskInput

func (VirtualMachineStorageDataDiskArray) ElementType

func (VirtualMachineStorageDataDiskArray) ToVirtualMachineStorageDataDiskArrayOutput

func (i VirtualMachineStorageDataDiskArray) ToVirtualMachineStorageDataDiskArrayOutput() VirtualMachineStorageDataDiskArrayOutput

func (VirtualMachineStorageDataDiskArray) ToVirtualMachineStorageDataDiskArrayOutputWithContext

func (i VirtualMachineStorageDataDiskArray) ToVirtualMachineStorageDataDiskArrayOutputWithContext(ctx context.Context) VirtualMachineStorageDataDiskArrayOutput

type VirtualMachineStorageDataDiskArrayInput

type VirtualMachineStorageDataDiskArrayInput interface {
	pulumi.Input

	ToVirtualMachineStorageDataDiskArrayOutput() VirtualMachineStorageDataDiskArrayOutput
	ToVirtualMachineStorageDataDiskArrayOutputWithContext(context.Context) VirtualMachineStorageDataDiskArrayOutput
}

VirtualMachineStorageDataDiskArrayInput is an input type that accepts VirtualMachineStorageDataDiskArray and VirtualMachineStorageDataDiskArrayOutput values. You can construct a concrete instance of `VirtualMachineStorageDataDiskArrayInput` via:

VirtualMachineStorageDataDiskArray{ VirtualMachineStorageDataDiskArgs{...} }

type VirtualMachineStorageDataDiskArrayOutput

type VirtualMachineStorageDataDiskArrayOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageDataDiskArrayOutput) ElementType

func (VirtualMachineStorageDataDiskArrayOutput) Index

func (VirtualMachineStorageDataDiskArrayOutput) ToVirtualMachineStorageDataDiskArrayOutput

func (o VirtualMachineStorageDataDiskArrayOutput) ToVirtualMachineStorageDataDiskArrayOutput() VirtualMachineStorageDataDiskArrayOutput

func (VirtualMachineStorageDataDiskArrayOutput) ToVirtualMachineStorageDataDiskArrayOutputWithContext

func (o VirtualMachineStorageDataDiskArrayOutput) ToVirtualMachineStorageDataDiskArrayOutputWithContext(ctx context.Context) VirtualMachineStorageDataDiskArrayOutput

type VirtualMachineStorageDataDiskInput

type VirtualMachineStorageDataDiskInput interface {
	pulumi.Input

	ToVirtualMachineStorageDataDiskOutput() VirtualMachineStorageDataDiskOutput
	ToVirtualMachineStorageDataDiskOutputWithContext(context.Context) VirtualMachineStorageDataDiskOutput
}

VirtualMachineStorageDataDiskInput is an input type that accepts VirtualMachineStorageDataDiskArgs and VirtualMachineStorageDataDiskOutput values. You can construct a concrete instance of `VirtualMachineStorageDataDiskInput` via:

VirtualMachineStorageDataDiskArgs{...}

type VirtualMachineStorageDataDiskOutput

type VirtualMachineStorageDataDiskOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageDataDiskOutput) Caching

Specifies the caching requirements for the Data Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.

func (VirtualMachineStorageDataDiskOutput) CreateOption

Specifies how the data disk should be created. Possible values are `Attach`, `FromImage` and `Empty`.

> **NOTE:** If using an image that does not have data to be written to the Data Disk, use `Empty` as the create option in order to create the desired disk without any data.

func (VirtualMachineStorageDataDiskOutput) DiskSizeGb

Specifies the size of the data disk in gigabytes.

func (VirtualMachineStorageDataDiskOutput) ElementType

func (VirtualMachineStorageDataDiskOutput) Lun

Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.

func (VirtualMachineStorageDataDiskOutput) ManagedDiskId

Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set `createOption` must be set to `Attach`.

The following properties apply when using Unmanaged Disks:

func (VirtualMachineStorageDataDiskOutput) ManagedDiskType

Specifies the type of managed disk to create. Possible values are either `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS` or `UltraSSD_LRS`.

> **Note:** `managedDiskType` of type `UltraSSD_LRS` is currently in preview and are not available to subscriptions that have not [requested](https://aka.ms/UltraSSDPreviewSignUp) onboarding to `Azure Ultra Disk Storage` preview. `Azure Ultra Disk Storage` is only available in `East US 2`, `North Europe`, and `Southeast Asia` regions. For more information see the `Azure Ultra Disk Storage` [product documentation](https://docs.microsoft.com/azure/virtual-machines/windows/disks-enable-ultra-ssd), [product blog](https://azure.microsoft.com/en-us/blog/announcing-the-general-availability-of-azure-ultra-disk-storage/) and [FAQ](https://docs.microsoft.com/azure/virtual-machines/windows/faq-for-disks#ultra-disks). You must also set `additional_capabilities.ultra_ssd_enabled` to `true`.

func (VirtualMachineStorageDataDiskOutput) Name

The name of the Data Disk.

func (VirtualMachineStorageDataDiskOutput) ToVirtualMachineStorageDataDiskOutput

func (o VirtualMachineStorageDataDiskOutput) ToVirtualMachineStorageDataDiskOutput() VirtualMachineStorageDataDiskOutput

func (VirtualMachineStorageDataDiskOutput) ToVirtualMachineStorageDataDiskOutputWithContext

func (o VirtualMachineStorageDataDiskOutput) ToVirtualMachineStorageDataDiskOutputWithContext(ctx context.Context) VirtualMachineStorageDataDiskOutput

func (VirtualMachineStorageDataDiskOutput) VhdUri

Specifies the URI of the VHD file backing this Unmanaged Data Disk.

func (VirtualMachineStorageDataDiskOutput) WriteAcceleratorEnabled

func (o VirtualMachineStorageDataDiskOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.

The following properties apply when using Managed Disks:

type VirtualMachineStorageImageReference

type VirtualMachineStorageImageReference struct {
	// Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
	Id *string `pulumi:"id"`
	// Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Offer *string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Publisher *string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Sku *string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
	//
	// To provision a Custom Image, the following fields are applicable:
	Version *string `pulumi:"version"`
}

type VirtualMachineStorageImageReferenceArgs

type VirtualMachineStorageImageReferenceArgs struct {
	// Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Offer pulumi.StringPtrInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Publisher pulumi.StringPtrInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
	Sku pulumi.StringPtrInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
	//
	// To provision a Custom Image, the following fields are applicable:
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (VirtualMachineStorageImageReferenceArgs) ElementType

func (VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferenceOutput

func (i VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferenceOutput() VirtualMachineStorageImageReferenceOutput

func (VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferenceOutputWithContext

func (i VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferenceOutputWithContext(ctx context.Context) VirtualMachineStorageImageReferenceOutput

func (VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferencePtrOutput

func (i VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferencePtrOutput() VirtualMachineStorageImageReferencePtrOutput

func (VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferencePtrOutputWithContext

func (i VirtualMachineStorageImageReferenceArgs) ToVirtualMachineStorageImageReferencePtrOutputWithContext(ctx context.Context) VirtualMachineStorageImageReferencePtrOutput

type VirtualMachineStorageImageReferenceInput

type VirtualMachineStorageImageReferenceInput interface {
	pulumi.Input

	ToVirtualMachineStorageImageReferenceOutput() VirtualMachineStorageImageReferenceOutput
	ToVirtualMachineStorageImageReferenceOutputWithContext(context.Context) VirtualMachineStorageImageReferenceOutput
}

VirtualMachineStorageImageReferenceInput is an input type that accepts VirtualMachineStorageImageReferenceArgs and VirtualMachineStorageImageReferenceOutput values. You can construct a concrete instance of `VirtualMachineStorageImageReferenceInput` via:

VirtualMachineStorageImageReferenceArgs{...}

type VirtualMachineStorageImageReferenceOutput

type VirtualMachineStorageImageReferenceOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageImageReferenceOutput) ElementType

func (VirtualMachineStorageImageReferenceOutput) Id

Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferenceOutput

func (o VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferenceOutput() VirtualMachineStorageImageReferenceOutput

func (VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferenceOutputWithContext

func (o VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferenceOutputWithContext(ctx context.Context) VirtualMachineStorageImageReferenceOutput

func (VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferencePtrOutput

func (o VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferencePtrOutput() VirtualMachineStorageImageReferencePtrOutput

func (VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferencePtrOutputWithContext

func (o VirtualMachineStorageImageReferenceOutput) ToVirtualMachineStorageImageReferencePtrOutputWithContext(ctx context.Context) VirtualMachineStorageImageReferencePtrOutput

func (VirtualMachineStorageImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.

To provision a Custom Image, the following fields are applicable:

type VirtualMachineStorageImageReferencePtrInput

type VirtualMachineStorageImageReferencePtrInput interface {
	pulumi.Input

	ToVirtualMachineStorageImageReferencePtrOutput() VirtualMachineStorageImageReferencePtrOutput
	ToVirtualMachineStorageImageReferencePtrOutputWithContext(context.Context) VirtualMachineStorageImageReferencePtrOutput
}

VirtualMachineStorageImageReferencePtrInput is an input type that accepts VirtualMachineStorageImageReferenceArgs, VirtualMachineStorageImageReferencePtr and VirtualMachineStorageImageReferencePtrOutput values. You can construct a concrete instance of `VirtualMachineStorageImageReferencePtrInput` via:

        VirtualMachineStorageImageReferenceArgs{...}

or:

        nil

type VirtualMachineStorageImageReferencePtrOutput

type VirtualMachineStorageImageReferencePtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageImageReferencePtrOutput) Elem

func (VirtualMachineStorageImageReferencePtrOutput) ElementType

func (VirtualMachineStorageImageReferencePtrOutput) Id

Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.

func (VirtualMachineStorageImageReferencePtrOutput) ToVirtualMachineStorageImageReferencePtrOutput

func (o VirtualMachineStorageImageReferencePtrOutput) ToVirtualMachineStorageImageReferencePtrOutput() VirtualMachineStorageImageReferencePtrOutput

func (VirtualMachineStorageImageReferencePtrOutput) ToVirtualMachineStorageImageReferencePtrOutputWithContext

func (o VirtualMachineStorageImageReferencePtrOutput) ToVirtualMachineStorageImageReferencePtrOutputWithContext(ctx context.Context) VirtualMachineStorageImageReferencePtrOutput

func (VirtualMachineStorageImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.

To provision a Custom Image, the following fields are applicable:

type VirtualMachineStorageOsDisk

type VirtualMachineStorageOsDisk struct {
	// Specifies the caching requirements for the OS Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching *string `pulumi:"caching"`
	// Specifies how the OS Disk should be created. Possible values are `Attach` (managed disks only) and `FromImage`.
	CreateOption string `pulumi:"createOption"`
	// Specifies the size of the OS Disk in gigabytes.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// Specifies the Image URI in the format `publisherName:offer:skus:version`. This field can also specify the [VHD URI](https://docs.microsoft.com/azure/virtual-machines/linux/tutorial-custom-images) of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image the `osType` field must be set.
	ImageUri *string `pulumi:"imageUri"`
	// Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the `createOption` must be set to `Attach`. Changing this forces a new resource to be created.
	ManagedDiskId *string `pulumi:"managedDiskId"`
	// Specifies the type of Managed Disk which should be created. Possible values are `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.
	//
	// The following properties apply when using Unmanaged Disks:
	ManagedDiskType *string `pulumi:"managedDiskType"`
	// Specifies the name of the OS Disk.
	Name string `pulumi:"name"`
	// Specifies the Operating System on the OS Disk. Possible values are `Linux` and `Windows`.
	OsType *string `pulumi:"osType"`
	// Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
	VhdUri *string `pulumi:"vhdUri"`
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	//
	// The following properties apply when using Managed Disks:
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type VirtualMachineStorageOsDiskArgs

type VirtualMachineStorageOsDiskArgs struct {
	// Specifies the caching requirements for the OS Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringPtrInput `pulumi:"caching"`
	// Specifies how the OS Disk should be created. Possible values are `Attach` (managed disks only) and `FromImage`.
	CreateOption pulumi.StringInput `pulumi:"createOption"`
	// Specifies the size of the OS Disk in gigabytes.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// Specifies the Image URI in the format `publisherName:offer:skus:version`. This field can also specify the [VHD URI](https://docs.microsoft.com/azure/virtual-machines/linux/tutorial-custom-images) of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image the `osType` field must be set.
	ImageUri pulumi.StringPtrInput `pulumi:"imageUri"`
	// Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the `createOption` must be set to `Attach`. Changing this forces a new resource to be created.
	ManagedDiskId pulumi.StringPtrInput `pulumi:"managedDiskId"`
	// Specifies the type of Managed Disk which should be created. Possible values are `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.
	//
	// The following properties apply when using Unmanaged Disks:
	ManagedDiskType pulumi.StringPtrInput `pulumi:"managedDiskType"`
	// Specifies the name of the OS Disk.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the Operating System on the OS Disk. Possible values are `Linux` and `Windows`.
	OsType pulumi.StringPtrInput `pulumi:"osType"`
	// Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
	VhdUri pulumi.StringPtrInput `pulumi:"vhdUri"`
	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.
	//
	// The following properties apply when using Managed Disks:
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (VirtualMachineStorageOsDiskArgs) ElementType

func (VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskOutput

func (i VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskOutput() VirtualMachineStorageOsDiskOutput

func (VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskOutputWithContext

func (i VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskOutputWithContext(ctx context.Context) VirtualMachineStorageOsDiskOutput

func (VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskPtrOutput

func (i VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskPtrOutput() VirtualMachineStorageOsDiskPtrOutput

func (VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskPtrOutputWithContext

func (i VirtualMachineStorageOsDiskArgs) ToVirtualMachineStorageOsDiskPtrOutputWithContext(ctx context.Context) VirtualMachineStorageOsDiskPtrOutput

type VirtualMachineStorageOsDiskInput

type VirtualMachineStorageOsDiskInput interface {
	pulumi.Input

	ToVirtualMachineStorageOsDiskOutput() VirtualMachineStorageOsDiskOutput
	ToVirtualMachineStorageOsDiskOutputWithContext(context.Context) VirtualMachineStorageOsDiskOutput
}

VirtualMachineStorageOsDiskInput is an input type that accepts VirtualMachineStorageOsDiskArgs and VirtualMachineStorageOsDiskOutput values. You can construct a concrete instance of `VirtualMachineStorageOsDiskInput` via:

VirtualMachineStorageOsDiskArgs{...}

type VirtualMachineStorageOsDiskOutput

type VirtualMachineStorageOsDiskOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageOsDiskOutput) Caching

Specifies the caching requirements for the OS Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.

func (VirtualMachineStorageOsDiskOutput) CreateOption

Specifies how the OS Disk should be created. Possible values are `Attach` (managed disks only) and `FromImage`.

func (VirtualMachineStorageOsDiskOutput) DiskSizeGb

Specifies the size of the OS Disk in gigabytes.

func (VirtualMachineStorageOsDiskOutput) ElementType

func (VirtualMachineStorageOsDiskOutput) ImageUri

Specifies the Image URI in the format `publisherName:offer:skus:version`. This field can also specify the [VHD URI](https://docs.microsoft.com/azure/virtual-machines/linux/tutorial-custom-images) of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image the `osType` field must be set.

func (VirtualMachineStorageOsDiskOutput) ManagedDiskId

Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the `createOption` must be set to `Attach`. Changing this forces a new resource to be created.

func (VirtualMachineStorageOsDiskOutput) ManagedDiskType

Specifies the type of Managed Disk which should be created. Possible values are `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.

The following properties apply when using Unmanaged Disks:

func (VirtualMachineStorageOsDiskOutput) Name

Specifies the name of the OS Disk.

func (VirtualMachineStorageOsDiskOutput) OsType

Specifies the Operating System on the OS Disk. Possible values are `Linux` and `Windows`.

func (VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskOutput

func (o VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskOutput() VirtualMachineStorageOsDiskOutput

func (VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskOutputWithContext

func (o VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskOutputWithContext(ctx context.Context) VirtualMachineStorageOsDiskOutput

func (VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskPtrOutput

func (o VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskPtrOutput() VirtualMachineStorageOsDiskPtrOutput

func (VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskPtrOutputWithContext

func (o VirtualMachineStorageOsDiskOutput) ToVirtualMachineStorageOsDiskPtrOutputWithContext(ctx context.Context) VirtualMachineStorageOsDiskPtrOutput

func (VirtualMachineStorageOsDiskOutput) VhdUri

Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.

func (VirtualMachineStorageOsDiskOutput) WriteAcceleratorEnabled

func (o VirtualMachineStorageOsDiskOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.

The following properties apply when using Managed Disks:

type VirtualMachineStorageOsDiskPtrInput

type VirtualMachineStorageOsDiskPtrInput interface {
	pulumi.Input

	ToVirtualMachineStorageOsDiskPtrOutput() VirtualMachineStorageOsDiskPtrOutput
	ToVirtualMachineStorageOsDiskPtrOutputWithContext(context.Context) VirtualMachineStorageOsDiskPtrOutput
}

VirtualMachineStorageOsDiskPtrInput is an input type that accepts VirtualMachineStorageOsDiskArgs, VirtualMachineStorageOsDiskPtr and VirtualMachineStorageOsDiskPtrOutput values. You can construct a concrete instance of `VirtualMachineStorageOsDiskPtrInput` via:

        VirtualMachineStorageOsDiskArgs{...}

or:

        nil

type VirtualMachineStorageOsDiskPtrOutput

type VirtualMachineStorageOsDiskPtrOutput struct{ *pulumi.OutputState }

func (VirtualMachineStorageOsDiskPtrOutput) Caching

Specifies the caching requirements for the OS Disk. Possible values include `None`, `ReadOnly` and `ReadWrite`.

func (VirtualMachineStorageOsDiskPtrOutput) CreateOption

Specifies how the OS Disk should be created. Possible values are `Attach` (managed disks only) and `FromImage`.

func (VirtualMachineStorageOsDiskPtrOutput) DiskSizeGb

Specifies the size of the OS Disk in gigabytes.

func (VirtualMachineStorageOsDiskPtrOutput) Elem

func (VirtualMachineStorageOsDiskPtrOutput) ElementType

func (VirtualMachineStorageOsDiskPtrOutput) ImageUri

Specifies the Image URI in the format `publisherName:offer:skus:version`. This field can also specify the [VHD URI](https://docs.microsoft.com/azure/virtual-machines/linux/tutorial-custom-images) of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image the `osType` field must be set.

func (VirtualMachineStorageOsDiskPtrOutput) ManagedDiskId

Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the `createOption` must be set to `Attach`. Changing this forces a new resource to be created.

func (VirtualMachineStorageOsDiskPtrOutput) ManagedDiskType

Specifies the type of Managed Disk which should be created. Possible values are `Standard_LRS`, `StandardSSD_LRS` or `Premium_LRS`.

The following properties apply when using Unmanaged Disks:

func (VirtualMachineStorageOsDiskPtrOutput) Name

Specifies the name of the OS Disk.

func (VirtualMachineStorageOsDiskPtrOutput) OsType

Specifies the Operating System on the OS Disk. Possible values are `Linux` and `Windows`.

func (VirtualMachineStorageOsDiskPtrOutput) ToVirtualMachineStorageOsDiskPtrOutput

func (o VirtualMachineStorageOsDiskPtrOutput) ToVirtualMachineStorageOsDiskPtrOutput() VirtualMachineStorageOsDiskPtrOutput

func (VirtualMachineStorageOsDiskPtrOutput) ToVirtualMachineStorageOsDiskPtrOutputWithContext

func (o VirtualMachineStorageOsDiskPtrOutput) ToVirtualMachineStorageOsDiskPtrOutputWithContext(ctx context.Context) VirtualMachineStorageOsDiskPtrOutput

func (VirtualMachineStorageOsDiskPtrOutput) VhdUri

Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.

func (VirtualMachineStorageOsDiskPtrOutput) WriteAcceleratorEnabled

func (o VirtualMachineStorageOsDiskPtrOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Specifies if Write Accelerator is enabled on the disk. This can only be enabled on `Premium_LRS` managed disks with no caching and [M-Series VMs](https://docs.microsoft.com/azure/virtual-machines/workloads/sap/how-to-enable-write-accelerator). Defaults to `false`.

The following properties apply when using Managed Disks:

type WindowsVirtualMachine

type WindowsVirtualMachine struct {
	pulumi.CustomResourceState

	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineAdditionalUnattendContentArrayOutput `pulumi:"additionalUnattendContents"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringOutput `pulumi:"adminPassword"`
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringOutput `pulumi:"adminUsername"`
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrOutput `pulumi:"allowExtensionOperations"`
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrOutput `pulumi:"availabilitySetId"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrOutput `pulumi:"bypassPlatformSafetyChecksOnUserScheduleEnabled"`
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"capacityReservationGroupId"`
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringOutput `pulumi:"computerName"`
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrOutput `pulumi:"customData"`
	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrOutput `pulumi:"dedicatedHostGroupId"`
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrOutput `pulumi:"dedicatedHostId"`
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringOutput `pulumi:"diskControllerType"`
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	EdgeZone pulumi.StringPtrOutput `pulumi:"edgeZone"`
	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrOutput `pulumi:"enableAutomaticUpdates"`
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrOutput `pulumi:"encryptionAtHostEnabled"`
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrOutput `pulumi:"extensionsTimeBudget"`
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications WindowsVirtualMachineGalleryApplicationArrayOutput `pulumi:"galleryApplications"`
	// Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
	//
	// > **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, and the VM's `size` is set to a Azure generation 2 directory within the GitHub Repository.
	HotpatchingEnabled pulumi.BoolPtrOutput `pulumi:"hotpatchingEnabled"`
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineIdentityPtrOutput `pulumi:"identity"`
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/windows-server/get-started/azure-hybrid-benefit)) which should be used for this Virtual Machine. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrOutput `pulumi:"maxBidPrice"`
	// The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"`
	// A `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineOsDiskOutput `pulumi:"osDisk"`
	// A `osImageNotification` block as defined below.
	OsImageNotification WindowsVirtualMachineOsImageNotificationPtrOutput `pulumi:"osImageNotification"`
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrOutput `pulumi:"patchAssessmentMode"`
	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`. If the Virtual Machine is using a hotpatching enabled image the `patchMode` must always be set to `AutomaticByPlatform`.
	PatchMode pulumi.StringPtrOutput `pulumi:"patchMode"`
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan WindowsVirtualMachinePlanPtrOutput `pulumi:"plan"`
	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrOutput `pulumi:"platformFaultDomain"`
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses pulumi.StringArrayOutput `pulumi:"privateIpAddresses"`
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrOutput `pulumi:"provisionVmAgent"`
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIpAddress pulumi.StringOutput `pulumi:"publicIpAddress"`
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses pulumi.StringArrayOutput `pulumi:"publicIpAddresses"`
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrOutput `pulumi:"rebootSetting"`
	// The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineSecretArrayOutput `pulumi:"secrets"`
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrOutput `pulumi:"secureBootEnabled"`
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringOutput `pulumi:"size"`
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineSourceImageReferencePtrOutput `pulumi:"sourceImageReference"`
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineTerminationNotificationOutput `pulumi:"terminationNotification"`
	// Specifies the Time Zone which should be used by the Virtual Machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.
	Timezone pulumi.StringPtrOutput `pulumi:"timezone"`
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineId pulumi.StringOutput `pulumi:"virtualMachineId"`
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrOutput `pulumi:"virtualMachineScaleSetId"`
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrOutput `pulumi:"vmAgentPlatformUpdatesEnabled"`
	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrOutput `pulumi:"vtpmEnabled"`
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineWinrmListenerArrayOutput `pulumi:"winrmListeners"`
	// * `zones` - (Optional) Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

Manages a Windows Virtual Machine.

## Disclaimers

> **Note** This provider will automatically remove the OS Disk by default - this behaviour can be configured using the `features` setting within the Provider block.

> **Note** All arguments including the administrator login and password will be stored in the raw state as plain-text.

> **Note** This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the `compute.VirtualMachine` resource instead.

> **Note** This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the `compute.VirtualMachine` resource instead.

> In this release there's a known issue where the `publicIpAddress` and `publicIpAddresses` fields may not be fully populated for Dynamic Public IP's.

## Example Usage

This example provisions a basic Windows Virtual Machine on an internal network.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-network"),
			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("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		exampleNetworkInterface, err := network.NewNetworkInterface(ctx, "example", &network.NetworkInterfaceArgs{
			Name:              pulumi.String("example-nic"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("internal"),
					SubnetId:                   exampleSubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewWindowsVirtualMachine(ctx, "example", &compute.WindowsVirtualMachineArgs{
			Name:              pulumi.String("example-machine"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Size:              pulumi.String("Standard_F2"),
			AdminUsername:     pulumi.String("adminuser"),
			AdminPassword:     pulumi.String("P@$$w0rd1234!"),
			NetworkInterfaceIds: pulumi.StringArray{
				exampleNetworkInterface.ID(),
			},
			OsDisk: &compute.WindowsVirtualMachineOsDiskArgs{
				Caching:            pulumi.String("ReadWrite"),
				StorageAccountType: pulumi.String("Standard_LRS"),
			},
			SourceImageReference: &compute.WindowsVirtualMachineSourceImageReferenceArgs{
				Publisher: pulumi.String("MicrosoftWindowsServer"),
				Offer:     pulumi.String("WindowsServer"),
				Sku:       pulumi.String("2016-Datacenter"),
				Version:   pulumi.String("latest"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Windows Virtual Machines can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/windowsVirtualMachine:WindowsVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1 ```

func GetWindowsVirtualMachine

func GetWindowsVirtualMachine(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WindowsVirtualMachineState, opts ...pulumi.ResourceOption) (*WindowsVirtualMachine, error)

GetWindowsVirtualMachine gets an existing WindowsVirtualMachine 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 NewWindowsVirtualMachine

func NewWindowsVirtualMachine(ctx *pulumi.Context,
	name string, args *WindowsVirtualMachineArgs, opts ...pulumi.ResourceOption) (*WindowsVirtualMachine, error)

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

func (*WindowsVirtualMachine) ElementType

func (*WindowsVirtualMachine) ElementType() reflect.Type

func (*WindowsVirtualMachine) ToWindowsVirtualMachineOutput

func (i *WindowsVirtualMachine) ToWindowsVirtualMachineOutput() WindowsVirtualMachineOutput

func (*WindowsVirtualMachine) ToWindowsVirtualMachineOutputWithContext

func (i *WindowsVirtualMachine) ToWindowsVirtualMachineOutputWithContext(ctx context.Context) WindowsVirtualMachineOutput

type WindowsVirtualMachineAdditionalCapabilities

type WindowsVirtualMachineAdditionalCapabilities struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.
	UltraSsdEnabled *bool `pulumi:"ultraSsdEnabled"`
}

type WindowsVirtualMachineAdditionalCapabilitiesArgs

type WindowsVirtualMachineAdditionalCapabilitiesArgs struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.
	UltraSsdEnabled pulumi.BoolPtrInput `pulumi:"ultraSsdEnabled"`
}

func (WindowsVirtualMachineAdditionalCapabilitiesArgs) ElementType

func (WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesOutput

func (i WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesOutput() WindowsVirtualMachineAdditionalCapabilitiesOutput

func (WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesOutputWithContext

func (i WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalCapabilitiesOutput

func (WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (i WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput() WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (i WindowsVirtualMachineAdditionalCapabilitiesArgs) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

type WindowsVirtualMachineAdditionalCapabilitiesInput

type WindowsVirtualMachineAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToWindowsVirtualMachineAdditionalCapabilitiesOutput() WindowsVirtualMachineAdditionalCapabilitiesOutput
	ToWindowsVirtualMachineAdditionalCapabilitiesOutputWithContext(context.Context) WindowsVirtualMachineAdditionalCapabilitiesOutput
}

WindowsVirtualMachineAdditionalCapabilitiesInput is an input type that accepts WindowsVirtualMachineAdditionalCapabilitiesArgs and WindowsVirtualMachineAdditionalCapabilitiesOutput values. You can construct a concrete instance of `WindowsVirtualMachineAdditionalCapabilitiesInput` via:

WindowsVirtualMachineAdditionalCapabilitiesArgs{...}

type WindowsVirtualMachineAdditionalCapabilitiesOutput

type WindowsVirtualMachineAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) ElementType

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesOutput

func (o WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesOutput() WindowsVirtualMachineAdditionalCapabilitiesOutput

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesOutputWithContext

func (o WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalCapabilitiesOutput

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (o WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput() WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o WindowsVirtualMachineAdditionalCapabilitiesOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineAdditionalCapabilitiesOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.

type WindowsVirtualMachineAdditionalCapabilitiesPtrInput

type WindowsVirtualMachineAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput() WindowsVirtualMachineAdditionalCapabilitiesPtrOutput
	ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(context.Context) WindowsVirtualMachineAdditionalCapabilitiesPtrOutput
}

WindowsVirtualMachineAdditionalCapabilitiesPtrInput is an input type that accepts WindowsVirtualMachineAdditionalCapabilitiesArgs, WindowsVirtualMachineAdditionalCapabilitiesPtr and WindowsVirtualMachineAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineAdditionalCapabilitiesPtrInput` via:

        WindowsVirtualMachineAdditionalCapabilitiesArgs{...}

or:

        nil

type WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

type WindowsVirtualMachineAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) Elem

func (WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) ElementType

func (WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext

func (o WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineAdditionalCapabilitiesPtrOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine? Defaults to `false`.

type WindowsVirtualMachineAdditionalUnattendContent

type WindowsVirtualMachineAdditionalUnattendContent struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content string `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting string `pulumi:"setting"`
}

type WindowsVirtualMachineAdditionalUnattendContentArgs

type WindowsVirtualMachineAdditionalUnattendContentArgs struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content pulumi.StringInput `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting pulumi.StringInput `pulumi:"setting"`
}

func (WindowsVirtualMachineAdditionalUnattendContentArgs) ElementType

func (WindowsVirtualMachineAdditionalUnattendContentArgs) ToWindowsVirtualMachineAdditionalUnattendContentOutput

func (i WindowsVirtualMachineAdditionalUnattendContentArgs) ToWindowsVirtualMachineAdditionalUnattendContentOutput() WindowsVirtualMachineAdditionalUnattendContentOutput

func (WindowsVirtualMachineAdditionalUnattendContentArgs) ToWindowsVirtualMachineAdditionalUnattendContentOutputWithContext

func (i WindowsVirtualMachineAdditionalUnattendContentArgs) ToWindowsVirtualMachineAdditionalUnattendContentOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalUnattendContentOutput

type WindowsVirtualMachineAdditionalUnattendContentArray

type WindowsVirtualMachineAdditionalUnattendContentArray []WindowsVirtualMachineAdditionalUnattendContentInput

func (WindowsVirtualMachineAdditionalUnattendContentArray) ElementType

func (WindowsVirtualMachineAdditionalUnattendContentArray) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutput

func (i WindowsVirtualMachineAdditionalUnattendContentArray) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutput() WindowsVirtualMachineAdditionalUnattendContentArrayOutput

func (WindowsVirtualMachineAdditionalUnattendContentArray) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutputWithContext

func (i WindowsVirtualMachineAdditionalUnattendContentArray) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineAdditionalUnattendContentArrayInput

type WindowsVirtualMachineAdditionalUnattendContentArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineAdditionalUnattendContentArrayOutput() WindowsVirtualMachineAdditionalUnattendContentArrayOutput
	ToWindowsVirtualMachineAdditionalUnattendContentArrayOutputWithContext(context.Context) WindowsVirtualMachineAdditionalUnattendContentArrayOutput
}

WindowsVirtualMachineAdditionalUnattendContentArrayInput is an input type that accepts WindowsVirtualMachineAdditionalUnattendContentArray and WindowsVirtualMachineAdditionalUnattendContentArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineAdditionalUnattendContentArrayInput` via:

WindowsVirtualMachineAdditionalUnattendContentArray{ WindowsVirtualMachineAdditionalUnattendContentArgs{...} }

type WindowsVirtualMachineAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineAdditionalUnattendContentArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineAdditionalUnattendContentArrayOutput) ElementType

func (WindowsVirtualMachineAdditionalUnattendContentArrayOutput) Index

func (WindowsVirtualMachineAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutput

func (WindowsVirtualMachineAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutputWithContext

func (o WindowsVirtualMachineAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineAdditionalUnattendContentArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineAdditionalUnattendContentInput

type WindowsVirtualMachineAdditionalUnattendContentInput interface {
	pulumi.Input

	ToWindowsVirtualMachineAdditionalUnattendContentOutput() WindowsVirtualMachineAdditionalUnattendContentOutput
	ToWindowsVirtualMachineAdditionalUnattendContentOutputWithContext(context.Context) WindowsVirtualMachineAdditionalUnattendContentOutput
}

WindowsVirtualMachineAdditionalUnattendContentInput is an input type that accepts WindowsVirtualMachineAdditionalUnattendContentArgs and WindowsVirtualMachineAdditionalUnattendContentOutput values. You can construct a concrete instance of `WindowsVirtualMachineAdditionalUnattendContentInput` via:

WindowsVirtualMachineAdditionalUnattendContentArgs{...}

type WindowsVirtualMachineAdditionalUnattendContentOutput

type WindowsVirtualMachineAdditionalUnattendContentOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineAdditionalUnattendContentOutput) Content

The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.

func (WindowsVirtualMachineAdditionalUnattendContentOutput) ElementType

func (WindowsVirtualMachineAdditionalUnattendContentOutput) Setting

The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineAdditionalUnattendContentOutput) ToWindowsVirtualMachineAdditionalUnattendContentOutput

func (WindowsVirtualMachineAdditionalUnattendContentOutput) ToWindowsVirtualMachineAdditionalUnattendContentOutputWithContext

func (o WindowsVirtualMachineAdditionalUnattendContentOutput) ToWindowsVirtualMachineAdditionalUnattendContentOutputWithContext(ctx context.Context) WindowsVirtualMachineAdditionalUnattendContentOutput

type WindowsVirtualMachineArgs

type WindowsVirtualMachineArgs struct {
	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineAdditionalCapabilitiesPtrInput
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineAdditionalUnattendContentArrayInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringInput
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrInput
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineBootDiagnosticsPtrInput
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrInput
	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrInput
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	EdgeZone pulumi.StringPtrInput
	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications WindowsVirtualMachineGalleryApplicationArrayInput
	// Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
	//
	// > **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, and the VM's `size` is set to a Azure generation 2 directory within the GitHub Repository.
	HotpatchingEnabled pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineIdentityPtrInput
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/windows-server/get-started/azure-hybrid-benefit)) which should be used for this Virtual Machine. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// A `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineOsDiskInput
	// A `osImageNotification` block as defined below.
	OsImageNotification WindowsVirtualMachineOsImageNotificationPtrInput
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput
	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`. If the Virtual Machine is using a hotpatching enabled image the `patchMode` must always be set to `AutomaticByPlatform`.
	PatchMode pulumi.StringPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan WindowsVirtualMachinePlanPtrInput
	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrInput
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrInput
	// The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineSecretArrayInput
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringInput
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineTerminationNotificationPtrInput
	// Specifies the Time Zone which should be used by the Virtual Machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.
	Timezone pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrInput
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrInput
	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineWinrmListenerArrayInput
	// * `zones` - (Optional) Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a WindowsVirtualMachine resource.

func (WindowsVirtualMachineArgs) ElementType

func (WindowsVirtualMachineArgs) ElementType() reflect.Type

type WindowsVirtualMachineArray

type WindowsVirtualMachineArray []WindowsVirtualMachineInput

func (WindowsVirtualMachineArray) ElementType

func (WindowsVirtualMachineArray) ElementType() reflect.Type

func (WindowsVirtualMachineArray) ToWindowsVirtualMachineArrayOutput

func (i WindowsVirtualMachineArray) ToWindowsVirtualMachineArrayOutput() WindowsVirtualMachineArrayOutput

func (WindowsVirtualMachineArray) ToWindowsVirtualMachineArrayOutputWithContext

func (i WindowsVirtualMachineArray) ToWindowsVirtualMachineArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineArrayOutput

type WindowsVirtualMachineArrayInput

type WindowsVirtualMachineArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineArrayOutput() WindowsVirtualMachineArrayOutput
	ToWindowsVirtualMachineArrayOutputWithContext(context.Context) WindowsVirtualMachineArrayOutput
}

WindowsVirtualMachineArrayInput is an input type that accepts WindowsVirtualMachineArray and WindowsVirtualMachineArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineArrayInput` via:

WindowsVirtualMachineArray{ WindowsVirtualMachineArgs{...} }

type WindowsVirtualMachineArrayOutput

type WindowsVirtualMachineArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineArrayOutput) ElementType

func (WindowsVirtualMachineArrayOutput) Index

func (WindowsVirtualMachineArrayOutput) ToWindowsVirtualMachineArrayOutput

func (o WindowsVirtualMachineArrayOutput) ToWindowsVirtualMachineArrayOutput() WindowsVirtualMachineArrayOutput

func (WindowsVirtualMachineArrayOutput) ToWindowsVirtualMachineArrayOutputWithContext

func (o WindowsVirtualMachineArrayOutput) ToWindowsVirtualMachineArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineArrayOutput

type WindowsVirtualMachineBootDiagnostics

type WindowsVirtualMachineBootDiagnostics struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.
	StorageAccountUri *string `pulumi:"storageAccountUri"`
}

type WindowsVirtualMachineBootDiagnosticsArgs

type WindowsVirtualMachineBootDiagnosticsArgs struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.
	StorageAccountUri pulumi.StringPtrInput `pulumi:"storageAccountUri"`
}

func (WindowsVirtualMachineBootDiagnosticsArgs) ElementType

func (WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsOutput

func (i WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsOutput() WindowsVirtualMachineBootDiagnosticsOutput

func (WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsOutputWithContext

func (i WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) WindowsVirtualMachineBootDiagnosticsOutput

func (WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsPtrOutput

func (i WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsPtrOutput() WindowsVirtualMachineBootDiagnosticsPtrOutput

func (WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext

func (i WindowsVirtualMachineBootDiagnosticsArgs) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineBootDiagnosticsPtrOutput

type WindowsVirtualMachineBootDiagnosticsInput

type WindowsVirtualMachineBootDiagnosticsInput interface {
	pulumi.Input

	ToWindowsVirtualMachineBootDiagnosticsOutput() WindowsVirtualMachineBootDiagnosticsOutput
	ToWindowsVirtualMachineBootDiagnosticsOutputWithContext(context.Context) WindowsVirtualMachineBootDiagnosticsOutput
}

WindowsVirtualMachineBootDiagnosticsInput is an input type that accepts WindowsVirtualMachineBootDiagnosticsArgs and WindowsVirtualMachineBootDiagnosticsOutput values. You can construct a concrete instance of `WindowsVirtualMachineBootDiagnosticsInput` via:

WindowsVirtualMachineBootDiagnosticsArgs{...}

type WindowsVirtualMachineBootDiagnosticsOutput

type WindowsVirtualMachineBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineBootDiagnosticsOutput) ElementType

func (WindowsVirtualMachineBootDiagnosticsOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.

func (WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsOutput

func (o WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsOutput() WindowsVirtualMachineBootDiagnosticsOutput

func (WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsOutputWithContext

func (o WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsOutputWithContext(ctx context.Context) WindowsVirtualMachineBootDiagnosticsOutput

func (WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutput

func (o WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutput() WindowsVirtualMachineBootDiagnosticsPtrOutput

func (WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o WindowsVirtualMachineBootDiagnosticsOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineBootDiagnosticsPtrOutput

type WindowsVirtualMachineBootDiagnosticsPtrInput

type WindowsVirtualMachineBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineBootDiagnosticsPtrOutput() WindowsVirtualMachineBootDiagnosticsPtrOutput
	ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext(context.Context) WindowsVirtualMachineBootDiagnosticsPtrOutput
}

WindowsVirtualMachineBootDiagnosticsPtrInput is an input type that accepts WindowsVirtualMachineBootDiagnosticsArgs, WindowsVirtualMachineBootDiagnosticsPtr and WindowsVirtualMachineBootDiagnosticsPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineBootDiagnosticsPtrInput` via:

        WindowsVirtualMachineBootDiagnosticsArgs{...}

or:

        nil

type WindowsVirtualMachineBootDiagnosticsPtrOutput

type WindowsVirtualMachineBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineBootDiagnosticsPtrOutput) Elem

func (WindowsVirtualMachineBootDiagnosticsPtrOutput) ElementType

func (WindowsVirtualMachineBootDiagnosticsPtrOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics.

func (WindowsVirtualMachineBootDiagnosticsPtrOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutput

func (o WindowsVirtualMachineBootDiagnosticsPtrOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutput() WindowsVirtualMachineBootDiagnosticsPtrOutput

func (WindowsVirtualMachineBootDiagnosticsPtrOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext

func (o WindowsVirtualMachineBootDiagnosticsPtrOutput) ToWindowsVirtualMachineBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineBootDiagnosticsPtrOutput

type WindowsVirtualMachineGalleryApplication added in v5.21.0

type WindowsVirtualMachineGalleryApplication struct {
	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.
	AutomaticUpgradeEnabled *bool `pulumi:"automaticUpgradeEnabled"`
	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobUri *string `pulumi:"configurationBlobUri"`
	// Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.
	Order *int `pulumi:"order"`
	// Specifies a passthrough value for more generic context. This field can be any valid `string` value.
	Tag *string `pulumi:"tag"`
	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.
	TreatFailureAsDeploymentFailureEnabled *bool `pulumi:"treatFailureAsDeploymentFailureEnabled"`
	// Specifies the Gallery Application Version resource ID.
	VersionId string `pulumi:"versionId"`
}

type WindowsVirtualMachineGalleryApplicationArgs added in v5.21.0

type WindowsVirtualMachineGalleryApplicationArgs struct {
	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.
	AutomaticUpgradeEnabled pulumi.BoolPtrInput `pulumi:"automaticUpgradeEnabled"`
	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobUri pulumi.StringPtrInput `pulumi:"configurationBlobUri"`
	// Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.
	Order pulumi.IntPtrInput `pulumi:"order"`
	// Specifies a passthrough value for more generic context. This field can be any valid `string` value.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.
	TreatFailureAsDeploymentFailureEnabled pulumi.BoolPtrInput `pulumi:"treatFailureAsDeploymentFailureEnabled"`
	// Specifies the Gallery Application Version resource ID.
	VersionId pulumi.StringInput `pulumi:"versionId"`
}

func (WindowsVirtualMachineGalleryApplicationArgs) ElementType added in v5.21.0

func (WindowsVirtualMachineGalleryApplicationArgs) ToWindowsVirtualMachineGalleryApplicationOutput added in v5.21.0

func (i WindowsVirtualMachineGalleryApplicationArgs) ToWindowsVirtualMachineGalleryApplicationOutput() WindowsVirtualMachineGalleryApplicationOutput

func (WindowsVirtualMachineGalleryApplicationArgs) ToWindowsVirtualMachineGalleryApplicationOutputWithContext added in v5.21.0

func (i WindowsVirtualMachineGalleryApplicationArgs) ToWindowsVirtualMachineGalleryApplicationOutputWithContext(ctx context.Context) WindowsVirtualMachineGalleryApplicationOutput

type WindowsVirtualMachineGalleryApplicationArray added in v5.21.0

type WindowsVirtualMachineGalleryApplicationArray []WindowsVirtualMachineGalleryApplicationInput

func (WindowsVirtualMachineGalleryApplicationArray) ElementType added in v5.21.0

func (WindowsVirtualMachineGalleryApplicationArray) ToWindowsVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

func (i WindowsVirtualMachineGalleryApplicationArray) ToWindowsVirtualMachineGalleryApplicationArrayOutput() WindowsVirtualMachineGalleryApplicationArrayOutput

func (WindowsVirtualMachineGalleryApplicationArray) ToWindowsVirtualMachineGalleryApplicationArrayOutputWithContext added in v5.21.0

func (i WindowsVirtualMachineGalleryApplicationArray) ToWindowsVirtualMachineGalleryApplicationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineGalleryApplicationArrayOutput

type WindowsVirtualMachineGalleryApplicationArrayInput added in v5.21.0

type WindowsVirtualMachineGalleryApplicationArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineGalleryApplicationArrayOutput() WindowsVirtualMachineGalleryApplicationArrayOutput
	ToWindowsVirtualMachineGalleryApplicationArrayOutputWithContext(context.Context) WindowsVirtualMachineGalleryApplicationArrayOutput
}

WindowsVirtualMachineGalleryApplicationArrayInput is an input type that accepts WindowsVirtualMachineGalleryApplicationArray and WindowsVirtualMachineGalleryApplicationArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineGalleryApplicationArrayInput` via:

WindowsVirtualMachineGalleryApplicationArray{ WindowsVirtualMachineGalleryApplicationArgs{...} }

type WindowsVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

type WindowsVirtualMachineGalleryApplicationArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineGalleryApplicationArrayOutput) ElementType added in v5.21.0

func (WindowsVirtualMachineGalleryApplicationArrayOutput) Index added in v5.21.0

func (WindowsVirtualMachineGalleryApplicationArrayOutput) ToWindowsVirtualMachineGalleryApplicationArrayOutput added in v5.21.0

func (o WindowsVirtualMachineGalleryApplicationArrayOutput) ToWindowsVirtualMachineGalleryApplicationArrayOutput() WindowsVirtualMachineGalleryApplicationArrayOutput

func (WindowsVirtualMachineGalleryApplicationArrayOutput) ToWindowsVirtualMachineGalleryApplicationArrayOutputWithContext added in v5.21.0

func (o WindowsVirtualMachineGalleryApplicationArrayOutput) ToWindowsVirtualMachineGalleryApplicationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineGalleryApplicationArrayOutput

type WindowsVirtualMachineGalleryApplicationInput added in v5.21.0

type WindowsVirtualMachineGalleryApplicationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineGalleryApplicationOutput() WindowsVirtualMachineGalleryApplicationOutput
	ToWindowsVirtualMachineGalleryApplicationOutputWithContext(context.Context) WindowsVirtualMachineGalleryApplicationOutput
}

WindowsVirtualMachineGalleryApplicationInput is an input type that accepts WindowsVirtualMachineGalleryApplicationArgs and WindowsVirtualMachineGalleryApplicationOutput values. You can construct a concrete instance of `WindowsVirtualMachineGalleryApplicationInput` via:

WindowsVirtualMachineGalleryApplicationArgs{...}

type WindowsVirtualMachineGalleryApplicationOutput added in v5.21.0

type WindowsVirtualMachineGalleryApplicationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineGalleryApplicationOutput) AutomaticUpgradeEnabled added in v5.68.0

Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to `false`.

func (WindowsVirtualMachineGalleryApplicationOutput) ConfigurationBlobUri added in v5.21.0

Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.

func (WindowsVirtualMachineGalleryApplicationOutput) ElementType added in v5.21.0

func (WindowsVirtualMachineGalleryApplicationOutput) Order added in v5.21.0

Specifies the order in which the packages have to be installed. Possible values are between `0` and `2,147,483,647`.

func (WindowsVirtualMachineGalleryApplicationOutput) Tag added in v5.21.0

Specifies a passthrough value for more generic context. This field can be any valid `string` value.

func (WindowsVirtualMachineGalleryApplicationOutput) ToWindowsVirtualMachineGalleryApplicationOutput added in v5.21.0

func (o WindowsVirtualMachineGalleryApplicationOutput) ToWindowsVirtualMachineGalleryApplicationOutput() WindowsVirtualMachineGalleryApplicationOutput

func (WindowsVirtualMachineGalleryApplicationOutput) ToWindowsVirtualMachineGalleryApplicationOutputWithContext added in v5.21.0

func (o WindowsVirtualMachineGalleryApplicationOutput) ToWindowsVirtualMachineGalleryApplicationOutputWithContext(ctx context.Context) WindowsVirtualMachineGalleryApplicationOutput

func (WindowsVirtualMachineGalleryApplicationOutput) TreatFailureAsDeploymentFailureEnabled added in v5.68.0

func (o WindowsVirtualMachineGalleryApplicationOutput) TreatFailureAsDeploymentFailureEnabled() pulumi.BoolPtrOutput

Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to `false`.

func (WindowsVirtualMachineGalleryApplicationOutput) VersionId added in v5.21.0

Specifies the Gallery Application Version resource ID.

type WindowsVirtualMachineIdentity

type WindowsVirtualMachineIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type WindowsVirtualMachineIdentityArgs

type WindowsVirtualMachineIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (WindowsVirtualMachineIdentityArgs) ElementType

func (WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityOutput

func (i WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityOutput() WindowsVirtualMachineIdentityOutput

func (WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityOutputWithContext

func (i WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityOutputWithContext(ctx context.Context) WindowsVirtualMachineIdentityOutput

func (WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityPtrOutput

func (i WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityPtrOutput() WindowsVirtualMachineIdentityPtrOutput

func (WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityPtrOutputWithContext

func (i WindowsVirtualMachineIdentityArgs) ToWindowsVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineIdentityPtrOutput

type WindowsVirtualMachineIdentityInput

type WindowsVirtualMachineIdentityInput interface {
	pulumi.Input

	ToWindowsVirtualMachineIdentityOutput() WindowsVirtualMachineIdentityOutput
	ToWindowsVirtualMachineIdentityOutputWithContext(context.Context) WindowsVirtualMachineIdentityOutput
}

WindowsVirtualMachineIdentityInput is an input type that accepts WindowsVirtualMachineIdentityArgs and WindowsVirtualMachineIdentityOutput values. You can construct a concrete instance of `WindowsVirtualMachineIdentityInput` via:

WindowsVirtualMachineIdentityArgs{...}

type WindowsVirtualMachineIdentityOutput

type WindowsVirtualMachineIdentityOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineIdentityOutput) ElementType

func (WindowsVirtualMachineIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (WindowsVirtualMachineIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (WindowsVirtualMachineIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityOutput

func (o WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityOutput() WindowsVirtualMachineIdentityOutput

func (WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityOutputWithContext

func (o WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityOutputWithContext(ctx context.Context) WindowsVirtualMachineIdentityOutput

func (WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityPtrOutput

func (o WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityPtrOutput() WindowsVirtualMachineIdentityPtrOutput

func (WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityPtrOutputWithContext

func (o WindowsVirtualMachineIdentityOutput) ToWindowsVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineIdentityPtrOutput

func (WindowsVirtualMachineIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type WindowsVirtualMachineIdentityPtrInput

type WindowsVirtualMachineIdentityPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineIdentityPtrOutput() WindowsVirtualMachineIdentityPtrOutput
	ToWindowsVirtualMachineIdentityPtrOutputWithContext(context.Context) WindowsVirtualMachineIdentityPtrOutput
}

WindowsVirtualMachineIdentityPtrInput is an input type that accepts WindowsVirtualMachineIdentityArgs, WindowsVirtualMachineIdentityPtr and WindowsVirtualMachineIdentityPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineIdentityPtrInput` via:

        WindowsVirtualMachineIdentityArgs{...}

or:

        nil

type WindowsVirtualMachineIdentityPtrOutput

type WindowsVirtualMachineIdentityPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineIdentityPtrOutput) Elem

func (WindowsVirtualMachineIdentityPtrOutput) ElementType

func (WindowsVirtualMachineIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (WindowsVirtualMachineIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (WindowsVirtualMachineIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (WindowsVirtualMachineIdentityPtrOutput) ToWindowsVirtualMachineIdentityPtrOutput

func (o WindowsVirtualMachineIdentityPtrOutput) ToWindowsVirtualMachineIdentityPtrOutput() WindowsVirtualMachineIdentityPtrOutput

func (WindowsVirtualMachineIdentityPtrOutput) ToWindowsVirtualMachineIdentityPtrOutputWithContext

func (o WindowsVirtualMachineIdentityPtrOutput) ToWindowsVirtualMachineIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineIdentityPtrOutput

func (WindowsVirtualMachineIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type WindowsVirtualMachineInput

type WindowsVirtualMachineInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOutput() WindowsVirtualMachineOutput
	ToWindowsVirtualMachineOutputWithContext(ctx context.Context) WindowsVirtualMachineOutput
}

type WindowsVirtualMachineMap

type WindowsVirtualMachineMap map[string]WindowsVirtualMachineInput

func (WindowsVirtualMachineMap) ElementType

func (WindowsVirtualMachineMap) ElementType() reflect.Type

func (WindowsVirtualMachineMap) ToWindowsVirtualMachineMapOutput

func (i WindowsVirtualMachineMap) ToWindowsVirtualMachineMapOutput() WindowsVirtualMachineMapOutput

func (WindowsVirtualMachineMap) ToWindowsVirtualMachineMapOutputWithContext

func (i WindowsVirtualMachineMap) ToWindowsVirtualMachineMapOutputWithContext(ctx context.Context) WindowsVirtualMachineMapOutput

type WindowsVirtualMachineMapInput

type WindowsVirtualMachineMapInput interface {
	pulumi.Input

	ToWindowsVirtualMachineMapOutput() WindowsVirtualMachineMapOutput
	ToWindowsVirtualMachineMapOutputWithContext(context.Context) WindowsVirtualMachineMapOutput
}

WindowsVirtualMachineMapInput is an input type that accepts WindowsVirtualMachineMap and WindowsVirtualMachineMapOutput values. You can construct a concrete instance of `WindowsVirtualMachineMapInput` via:

WindowsVirtualMachineMap{ "key": WindowsVirtualMachineArgs{...} }

type WindowsVirtualMachineMapOutput

type WindowsVirtualMachineMapOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineMapOutput) ElementType

func (WindowsVirtualMachineMapOutput) MapIndex

func (WindowsVirtualMachineMapOutput) ToWindowsVirtualMachineMapOutput

func (o WindowsVirtualMachineMapOutput) ToWindowsVirtualMachineMapOutput() WindowsVirtualMachineMapOutput

func (WindowsVirtualMachineMapOutput) ToWindowsVirtualMachineMapOutputWithContext

func (o WindowsVirtualMachineMapOutput) ToWindowsVirtualMachineMapOutputWithContext(ctx context.Context) WindowsVirtualMachineMapOutput

type WindowsVirtualMachineOsDisk

type WindowsVirtualMachineOsDisk struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)
	DiffDiskSettings *WindowsVirtualMachineOsDiskDiffDiskSettings `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `pulumi:"name"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId *string `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType *string `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type WindowsVirtualMachineOsDiskArgs

type WindowsVirtualMachineOsDiskArgs struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)
	DiffDiskSettings WindowsVirtualMachineOsDiskDiffDiskSettingsPtrInput `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType pulumi.StringPtrInput `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (WindowsVirtualMachineOsDiskArgs) ElementType

func (WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskOutput

func (i WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskOutput() WindowsVirtualMachineOsDiskOutput

func (WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskOutputWithContext

func (i WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskOutput

func (WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskPtrOutput

func (i WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskPtrOutput() WindowsVirtualMachineOsDiskPtrOutput

func (WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskPtrOutputWithContext

func (i WindowsVirtualMachineOsDiskArgs) ToWindowsVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskPtrOutput

type WindowsVirtualMachineOsDiskDiffDiskSettings

type WindowsVirtualMachineOsDiskDiffDiskSettings struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option string `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement *string `pulumi:"placement"`
}

type WindowsVirtualMachineOsDiskDiffDiskSettingsArgs

type WindowsVirtualMachineOsDiskDiffDiskSettingsArgs struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option pulumi.StringInput `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement pulumi.StringPtrInput `pulumi:"placement"`
}

func (WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ElementType

func (WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (i WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutputWithContext

func (i WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (i WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (i WindowsVirtualMachineOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineOsDiskDiffDiskSettingsInput

type WindowsVirtualMachineOsDiskDiffDiskSettingsInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsOutput
	ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsOutput
}

WindowsVirtualMachineOsDiskDiffDiskSettingsInput is an input type that accepts WindowsVirtualMachineOsDiskDiffDiskSettingsArgs and WindowsVirtualMachineOsDiskDiffDiskSettingsOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsDiskDiffDiskSettingsInput` via:

WindowsVirtualMachineOsDiskDiffDiskSettingsArgs{...}

type WindowsVirtualMachineOsDiskDiffDiskSettingsOutput

type WindowsVirtualMachineOsDiskDiffDiskSettingsOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ElementType

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) Placement added in v5.6.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (o WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutputWithContext

func (o WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (o WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (o WindowsVirtualMachineOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineOsDiskDiffDiskSettingsPtrInput

type WindowsVirtualMachineOsDiskDiffDiskSettingsPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput() WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput
	ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput
}

WindowsVirtualMachineOsDiskDiffDiskSettingsPtrInput is an input type that accepts WindowsVirtualMachineOsDiskDiffDiskSettingsArgs, WindowsVirtualMachineOsDiskDiffDiskSettingsPtr and WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsDiskDiffDiskSettingsPtrInput` via:

        WindowsVirtualMachineOsDiskDiffDiskSettingsArgs{...}

or:

        nil

type WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Elem

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ElementType

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) Placement added in v5.6.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext

func (o WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineOsDiskInput

type WindowsVirtualMachineOsDiskInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsDiskOutput() WindowsVirtualMachineOsDiskOutput
	ToWindowsVirtualMachineOsDiskOutputWithContext(context.Context) WindowsVirtualMachineOsDiskOutput
}

WindowsVirtualMachineOsDiskInput is an input type that accepts WindowsVirtualMachineOsDiskArgs and WindowsVirtualMachineOsDiskOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsDiskInput` via:

WindowsVirtualMachineOsDiskArgs{...}

type WindowsVirtualMachineOsDiskOutput

type WindowsVirtualMachineOsDiskOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsDiskOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (WindowsVirtualMachineOsDiskOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

> **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)

func (WindowsVirtualMachineOsDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

func (WindowsVirtualMachineOsDiskOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (WindowsVirtualMachineOsDiskOutput) ElementType

func (WindowsVirtualMachineOsDiskOutput) Name

The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o WindowsVirtualMachineOsDiskOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineOsDiskOutput) SecurityEncryptionType added in v5.8.0

func (o WindowsVirtualMachineOsDiskOutput) SecurityEncryptionType() pulumi.StringPtrOutput

Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineOsDiskOutput) StorageAccountType

func (o WindowsVirtualMachineOsDiskOutput) StorageAccountType() pulumi.StringOutput

The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskOutput

func (o WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskOutput() WindowsVirtualMachineOsDiskOutput

func (WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskOutputWithContext

func (o WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskOutput

func (WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskPtrOutput

func (o WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskPtrOutput() WindowsVirtualMachineOsDiskPtrOutput

func (WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskPtrOutputWithContext

func (o WindowsVirtualMachineOsDiskOutput) ToWindowsVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskPtrOutput

func (WindowsVirtualMachineOsDiskOutput) WriteAcceleratorEnabled

func (o WindowsVirtualMachineOsDiskOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type WindowsVirtualMachineOsDiskPtrInput

type WindowsVirtualMachineOsDiskPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsDiskPtrOutput() WindowsVirtualMachineOsDiskPtrOutput
	ToWindowsVirtualMachineOsDiskPtrOutputWithContext(context.Context) WindowsVirtualMachineOsDiskPtrOutput
}

WindowsVirtualMachineOsDiskPtrInput is an input type that accepts WindowsVirtualMachineOsDiskArgs, WindowsVirtualMachineOsDiskPtr and WindowsVirtualMachineOsDiskPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsDiskPtrInput` via:

        WindowsVirtualMachineOsDiskArgs{...}

or:

        nil

type WindowsVirtualMachineOsDiskPtrOutput

type WindowsVirtualMachineOsDiskPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsDiskPtrOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (WindowsVirtualMachineOsDiskPtrOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

> **NOTE:** `diffDiskSettings` can only be set when `caching` is set to `ReadOnly`. More information can be found [here](https://docs.microsoft.com/azure/virtual-machines/ephemeral-os-disks-deploy#vm-template-deployment)

func (WindowsVirtualMachineOsDiskPtrOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

func (WindowsVirtualMachineOsDiskPtrOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the Virtual Machine is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (WindowsVirtualMachineOsDiskPtrOutput) Elem

func (WindowsVirtualMachineOsDiskPtrOutput) ElementType

func (WindowsVirtualMachineOsDiskPtrOutput) Name

The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskPtrOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o WindowsVirtualMachineOsDiskPtrOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineOsDiskPtrOutput) SecurityEncryptionType added in v5.8.0

func (o WindowsVirtualMachineOsDiskPtrOutput) SecurityEncryptionType() pulumi.StringPtrOutput

Encryption Type when the Virtual Machine is a Confidential VM. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineOsDiskPtrOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values are `Standard_LRS`, `StandardSSD_LRS`, `Premium_LRS`, `StandardSSD_ZRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOsDiskPtrOutput) ToWindowsVirtualMachineOsDiskPtrOutput

func (o WindowsVirtualMachineOsDiskPtrOutput) ToWindowsVirtualMachineOsDiskPtrOutput() WindowsVirtualMachineOsDiskPtrOutput

func (WindowsVirtualMachineOsDiskPtrOutput) ToWindowsVirtualMachineOsDiskPtrOutputWithContext

func (o WindowsVirtualMachineOsDiskPtrOutput) ToWindowsVirtualMachineOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsDiskPtrOutput

func (WindowsVirtualMachineOsDiskPtrOutput) WriteAcceleratorEnabled

func (o WindowsVirtualMachineOsDiskPtrOutput) WriteAcceleratorEnabled() pulumi.BoolPtrOutput

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type WindowsVirtualMachineOsImageNotification added in v5.68.0

type WindowsVirtualMachineOsImageNotification struct {
	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.
	Timeout *string `pulumi:"timeout"`
}

type WindowsVirtualMachineOsImageNotificationArgs added in v5.68.0

type WindowsVirtualMachineOsImageNotificationArgs struct {
	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (WindowsVirtualMachineOsImageNotificationArgs) ElementType added in v5.68.0

func (WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationOutput added in v5.68.0

func (i WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationOutput() WindowsVirtualMachineOsImageNotificationOutput

func (WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationOutputWithContext added in v5.68.0

func (i WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineOsImageNotificationOutput

func (WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (i WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationPtrOutput() WindowsVirtualMachineOsImageNotificationPtrOutput

func (WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (i WindowsVirtualMachineOsImageNotificationArgs) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsImageNotificationPtrOutput

type WindowsVirtualMachineOsImageNotificationInput added in v5.68.0

type WindowsVirtualMachineOsImageNotificationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsImageNotificationOutput() WindowsVirtualMachineOsImageNotificationOutput
	ToWindowsVirtualMachineOsImageNotificationOutputWithContext(context.Context) WindowsVirtualMachineOsImageNotificationOutput
}

WindowsVirtualMachineOsImageNotificationInput is an input type that accepts WindowsVirtualMachineOsImageNotificationArgs and WindowsVirtualMachineOsImageNotificationOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsImageNotificationInput` via:

WindowsVirtualMachineOsImageNotificationArgs{...}

type WindowsVirtualMachineOsImageNotificationOutput added in v5.68.0

type WindowsVirtualMachineOsImageNotificationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsImageNotificationOutput) ElementType added in v5.68.0

func (WindowsVirtualMachineOsImageNotificationOutput) Timeout added in v5.68.0

Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.

func (WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationOutput added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationOutput() WindowsVirtualMachineOsImageNotificationOutput

func (WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationOutputWithContext added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineOsImageNotificationOutput

func (WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutput() WindowsVirtualMachineOsImageNotificationPtrOutput

func (WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsImageNotificationPtrOutput

type WindowsVirtualMachineOsImageNotificationPtrInput added in v5.68.0

type WindowsVirtualMachineOsImageNotificationPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineOsImageNotificationPtrOutput() WindowsVirtualMachineOsImageNotificationPtrOutput
	ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext(context.Context) WindowsVirtualMachineOsImageNotificationPtrOutput
}

WindowsVirtualMachineOsImageNotificationPtrInput is an input type that accepts WindowsVirtualMachineOsImageNotificationArgs, WindowsVirtualMachineOsImageNotificationPtr and WindowsVirtualMachineOsImageNotificationPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineOsImageNotificationPtrInput` via:

        WindowsVirtualMachineOsImageNotificationArgs{...}

or:

        nil

type WindowsVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

type WindowsVirtualMachineOsImageNotificationPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOsImageNotificationPtrOutput) Elem added in v5.68.0

func (WindowsVirtualMachineOsImageNotificationPtrOutput) ElementType added in v5.68.0

func (WindowsVirtualMachineOsImageNotificationPtrOutput) Timeout added in v5.68.0

Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is `PT15M`. Defaults to `PT15M`.

func (WindowsVirtualMachineOsImageNotificationPtrOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutput added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationPtrOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutput() WindowsVirtualMachineOsImageNotificationPtrOutput

func (WindowsVirtualMachineOsImageNotificationPtrOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext added in v5.68.0

func (o WindowsVirtualMachineOsImageNotificationPtrOutput) ToWindowsVirtualMachineOsImageNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineOsImageNotificationPtrOutput

type WindowsVirtualMachineOutput

type WindowsVirtualMachineOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineOutput) AdditionalCapabilities added in v5.5.0

A `additionalCapabilities` block as defined below.

func (WindowsVirtualMachineOutput) AdditionalUnattendContents added in v5.5.0

One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) AdminPassword added in v5.5.0

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) AdminUsername added in v5.5.0

The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) AllowExtensionOperations added in v5.5.0

func (o WindowsVirtualMachineOutput) AllowExtensionOperations() pulumi.BoolPtrOutput

Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.

func (WindowsVirtualMachineOutput) AvailabilitySetId added in v5.5.0

func (o WindowsVirtualMachineOutput) AvailabilitySetId() pulumi.StringPtrOutput

Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (WindowsVirtualMachineOutput) BypassPlatformSafetyChecksOnUserScheduleEnabled added in v5.47.0

func (o WindowsVirtualMachineOutput) BypassPlatformSafetyChecksOnUserScheduleEnabled() pulumi.BoolPtrOutput

Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.

> **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.

func (WindowsVirtualMachineOutput) CapacityReservationGroupId added in v5.12.0

func (o WindowsVirtualMachineOutput) CapacityReservationGroupId() pulumi.StringPtrOutput

Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.

> **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`

func (WindowsVirtualMachineOutput) ComputerName added in v5.5.0

Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) CustomData added in v5.5.0

The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) DedicatedHostGroupId added in v5.5.0

func (o WindowsVirtualMachineOutput) DedicatedHostGroupId() pulumi.StringPtrOutput

The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with `dedicatedHostId`.

func (WindowsVirtualMachineOutput) DedicatedHostId added in v5.5.0

The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.

func (WindowsVirtualMachineOutput) DiskControllerType added in v5.68.0

func (o WindowsVirtualMachineOutput) DiskControllerType() pulumi.StringOutput

Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.

func (WindowsVirtualMachineOutput) EdgeZone added in v5.5.0

Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.

func (WindowsVirtualMachineOutput) ElementType

func (WindowsVirtualMachineOutput) EnableAutomaticUpdates added in v5.5.0

func (o WindowsVirtualMachineOutput) EnableAutomaticUpdates() pulumi.BoolPtrOutput

Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to `true`.

func (WindowsVirtualMachineOutput) EncryptionAtHostEnabled added in v5.5.0

func (o WindowsVirtualMachineOutput) EncryptionAtHostEnabled() pulumi.BoolPtrOutput

Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?

func (WindowsVirtualMachineOutput) EvictionPolicy added in v5.5.0

Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (WindowsVirtualMachineOutput) ExtensionsTimeBudget added in v5.5.0

func (o WindowsVirtualMachineOutput) ExtensionsTimeBudget() pulumi.StringPtrOutput

Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.

func (WindowsVirtualMachineOutput) GalleryApplications added in v5.21.0

One or more `galleryApplication` blocks as defined below.

func (WindowsVirtualMachineOutput) HotpatchingEnabled added in v5.5.0

func (o WindowsVirtualMachineOutput) HotpatchingEnabled() pulumi.BoolPtrOutput

Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).

> **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, and the VM's `size` is set to a Azure generation 2 directory within the GitHub Repository.

func (WindowsVirtualMachineOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (WindowsVirtualMachineOutput) LicenseType added in v5.5.0

Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/windows-server/get-started/azure-hybrid-benefit)) which should be used for this Virtual Machine. Possible values are `None`, `Windows_Client` and `Windows_Server`.

func (WindowsVirtualMachineOutput) Location added in v5.5.0

The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) MaxBidPrice added in v5.5.0

The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (WindowsVirtualMachineOutput) Name added in v5.5.0

The name of the Windows Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) NetworkInterfaceIds added in v5.5.0

func (o WindowsVirtualMachineOutput) NetworkInterfaceIds() pulumi.StringArrayOutput

. A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.

func (WindowsVirtualMachineOutput) OsDisk added in v5.5.0

A `osDisk` block as defined below.

func (WindowsVirtualMachineOutput) OsImageNotification added in v5.68.0

A `osImageNotification` block as defined below.

func (WindowsVirtualMachineOutput) PatchAssessmentMode added in v5.21.0

func (o WindowsVirtualMachineOutput) PatchAssessmentMode() pulumi.StringPtrOutput

Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.

> **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.

func (WindowsVirtualMachineOutput) PatchMode added in v5.5.0

Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).

> **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`. If the Virtual Machine is using a hotpatching enabled image the `patchMode` must always be set to `AutomaticByPlatform`.

func (WindowsVirtualMachineOutput) Plan added in v5.5.0

A `plan` block as defined below. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) PlatformFaultDomain added in v5.5.0

func (o WindowsVirtualMachineOutput) PlatformFaultDomain() pulumi.IntPtrOutput

Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.

func (WindowsVirtualMachineOutput) Priority added in v5.5.0

Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) PrivateIpAddress added in v5.5.0

func (o WindowsVirtualMachineOutput) PrivateIpAddress() pulumi.StringOutput

The Primary Private IP Address assigned to this Virtual Machine.

func (WindowsVirtualMachineOutput) PrivateIpAddresses added in v5.5.0

func (o WindowsVirtualMachineOutput) PrivateIpAddresses() pulumi.StringArrayOutput

A list of Private IP Addresses assigned to this Virtual Machine.

func (WindowsVirtualMachineOutput) ProvisionVmAgent added in v5.5.0

func (o WindowsVirtualMachineOutput) ProvisionVmAgent() pulumi.BoolPtrOutput

Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.

> **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.

func (WindowsVirtualMachineOutput) ProximityPlacementGroupId added in v5.5.0

func (o WindowsVirtualMachineOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.

func (WindowsVirtualMachineOutput) PublicIpAddress added in v5.5.0

func (o WindowsVirtualMachineOutput) PublicIpAddress() pulumi.StringOutput

The Primary Public IP Address assigned to this Virtual Machine.

func (WindowsVirtualMachineOutput) PublicIpAddresses added in v5.5.0

A list of the Public IP Addresses assigned to this Virtual Machine.

func (WindowsVirtualMachineOutput) RebootSetting added in v5.47.0

Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.

> **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.

func (WindowsVirtualMachineOutput) ResourceGroupName added in v5.5.0

func (o WindowsVirtualMachineOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) Secrets added in v5.5.0

One or more `secret` blocks as defined below.

func (WindowsVirtualMachineOutput) SecureBootEnabled added in v5.5.0

func (o WindowsVirtualMachineOutput) SecureBootEnabled() pulumi.BoolPtrOutput

Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) Size added in v5.5.0

The SKU which should be used for this Virtual Machine, such as `Standard_F2`.

func (WindowsVirtualMachineOutput) SourceImageId added in v5.5.0

The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (WindowsVirtualMachineOutput) SourceImageReference added in v5.5.0

A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (WindowsVirtualMachineOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to this Virtual Machine.

func (WindowsVirtualMachineOutput) TerminationNotification added in v5.5.0

A `terminationNotification` block as defined below.

func (WindowsVirtualMachineOutput) Timezone added in v5.5.0

Specifies the Time Zone which should be used by the Virtual Machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) ToWindowsVirtualMachineOutput

func (o WindowsVirtualMachineOutput) ToWindowsVirtualMachineOutput() WindowsVirtualMachineOutput

func (WindowsVirtualMachineOutput) ToWindowsVirtualMachineOutputWithContext

func (o WindowsVirtualMachineOutput) ToWindowsVirtualMachineOutputWithContext(ctx context.Context) WindowsVirtualMachineOutput

func (WindowsVirtualMachineOutput) UserData added in v5.5.0

The Base64-Encoded User Data which should be used for this Virtual Machine.

func (WindowsVirtualMachineOutput) VirtualMachineId added in v5.5.0

func (o WindowsVirtualMachineOutput) VirtualMachineId() pulumi.StringOutput

A 128-bit identifier which uniquely identifies this Virtual Machine.

func (WindowsVirtualMachineOutput) VirtualMachineScaleSetId added in v5.5.0

func (o WindowsVirtualMachineOutput) VirtualMachineScaleSetId() pulumi.StringPtrOutput

Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.

> **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.

> **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).

func (WindowsVirtualMachineOutput) VmAgentPlatformUpdatesEnabled added in v5.68.0

func (o WindowsVirtualMachineOutput) VmAgentPlatformUpdatesEnabled() pulumi.BoolPtrOutput

Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.

func (WindowsVirtualMachineOutput) VtpmEnabled added in v5.5.0

Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) WinrmListeners added in v5.5.0

One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.

func (WindowsVirtualMachineOutput) Zone added in v5.5.0

* `zones` - (Optional) Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.

type WindowsVirtualMachinePlan

type WindowsVirtualMachinePlan struct {
	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product string `pulumi:"product"`
	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If you use the `plan` block with one of Microsoft's marketplace images (e.g. `publisher = "MicrosoftWindowsServer"`). This may prevent the purchase of the offer. An example Azure API error: `The Offer: 'WindowsServer' cannot be purchased by subscription: '12345678-12234-5678-9012-123456789012' as it is not to be sold in market: 'US'. Please choose a subscription which is associated with a different market.`
	Publisher string `pulumi:"publisher"`
}

type WindowsVirtualMachinePlanArgs

type WindowsVirtualMachinePlanArgs struct {
	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If you use the `plan` block with one of Microsoft's marketplace images (e.g. `publisher = "MicrosoftWindowsServer"`). This may prevent the purchase of the offer. An example Azure API error: `The Offer: 'WindowsServer' cannot be purchased by subscription: '12345678-12234-5678-9012-123456789012' as it is not to be sold in market: 'US'. Please choose a subscription which is associated with a different market.`
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (WindowsVirtualMachinePlanArgs) ElementType

func (WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanOutput

func (i WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanOutput() WindowsVirtualMachinePlanOutput

func (WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanOutputWithContext

func (i WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanOutputWithContext(ctx context.Context) WindowsVirtualMachinePlanOutput

func (WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanPtrOutput

func (i WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanPtrOutput() WindowsVirtualMachinePlanPtrOutput

func (WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanPtrOutputWithContext

func (i WindowsVirtualMachinePlanArgs) ToWindowsVirtualMachinePlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachinePlanPtrOutput

type WindowsVirtualMachinePlanInput

type WindowsVirtualMachinePlanInput interface {
	pulumi.Input

	ToWindowsVirtualMachinePlanOutput() WindowsVirtualMachinePlanOutput
	ToWindowsVirtualMachinePlanOutputWithContext(context.Context) WindowsVirtualMachinePlanOutput
}

WindowsVirtualMachinePlanInput is an input type that accepts WindowsVirtualMachinePlanArgs and WindowsVirtualMachinePlanOutput values. You can construct a concrete instance of `WindowsVirtualMachinePlanInput` via:

WindowsVirtualMachinePlanArgs{...}

type WindowsVirtualMachinePlanOutput

type WindowsVirtualMachinePlanOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachinePlanOutput) ElementType

func (WindowsVirtualMachinePlanOutput) Name

Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (WindowsVirtualMachinePlanOutput) Product

Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (WindowsVirtualMachinePlanOutput) Publisher

Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

> **NOTE:** If you use the `plan` block with one of Microsoft's marketplace images (e.g. `publisher = "MicrosoftWindowsServer"`). This may prevent the purchase of the offer. An example Azure API error: `The Offer: 'WindowsServer' cannot be purchased by subscription: '12345678-12234-5678-9012-123456789012' as it is not to be sold in market: 'US'. Please choose a subscription which is associated with a different market.`

func (WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanOutput

func (o WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanOutput() WindowsVirtualMachinePlanOutput

func (WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanOutputWithContext

func (o WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanOutputWithContext(ctx context.Context) WindowsVirtualMachinePlanOutput

func (WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanPtrOutput

func (o WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanPtrOutput() WindowsVirtualMachinePlanPtrOutput

func (WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanPtrOutputWithContext

func (o WindowsVirtualMachinePlanOutput) ToWindowsVirtualMachinePlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachinePlanPtrOutput

type WindowsVirtualMachinePlanPtrInput

type WindowsVirtualMachinePlanPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachinePlanPtrOutput() WindowsVirtualMachinePlanPtrOutput
	ToWindowsVirtualMachinePlanPtrOutputWithContext(context.Context) WindowsVirtualMachinePlanPtrOutput
}

WindowsVirtualMachinePlanPtrInput is an input type that accepts WindowsVirtualMachinePlanArgs, WindowsVirtualMachinePlanPtr and WindowsVirtualMachinePlanPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachinePlanPtrInput` via:

        WindowsVirtualMachinePlanArgs{...}

or:

        nil

type WindowsVirtualMachinePlanPtrOutput

type WindowsVirtualMachinePlanPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachinePlanPtrOutput) Elem

func (WindowsVirtualMachinePlanPtrOutput) ElementType

func (WindowsVirtualMachinePlanPtrOutput) Name

Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (WindowsVirtualMachinePlanPtrOutput) Product

Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

func (WindowsVirtualMachinePlanPtrOutput) Publisher

Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.

> **NOTE:** If you use the `plan` block with one of Microsoft's marketplace images (e.g. `publisher = "MicrosoftWindowsServer"`). This may prevent the purchase of the offer. An example Azure API error: `The Offer: 'WindowsServer' cannot be purchased by subscription: '12345678-12234-5678-9012-123456789012' as it is not to be sold in market: 'US'. Please choose a subscription which is associated with a different market.`

func (WindowsVirtualMachinePlanPtrOutput) ToWindowsVirtualMachinePlanPtrOutput

func (o WindowsVirtualMachinePlanPtrOutput) ToWindowsVirtualMachinePlanPtrOutput() WindowsVirtualMachinePlanPtrOutput

func (WindowsVirtualMachinePlanPtrOutput) ToWindowsVirtualMachinePlanPtrOutputWithContext

func (o WindowsVirtualMachinePlanPtrOutput) ToWindowsVirtualMachinePlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachinePlanPtrOutput

type WindowsVirtualMachineScaleSet

type WindowsVirtualMachineScaleSet struct {
	pulumi.CustomResourceState

	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput `pulumi:"additionalCapabilities"`
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput `pulumi:"additionalUnattendContents"`
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringOutput `pulumi:"adminPassword"`
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringOutput `pulumi:"adminUsername"`
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput `pulumi:"automaticInstanceRepair"`
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput `pulumi:"automaticOsUpgradePolicy"`
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput `pulumi:"bootDiagnostics"`
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"capacityReservationGroupId"`
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringOutput `pulumi:"computerNamePrefix"`
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrOutput `pulumi:"customData"`
	// One or more `dataDisk` blocks as defined below.
	DataDisks WindowsVirtualMachineScaleSetDataDiskArrayOutput `pulumi:"dataDisks"`
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrOutput `pulumi:"doNotRunExtensionsOnOverprovisionedMachines"`
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrOutput `pulumi:"edgeZone"`
	// Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrOutput `pulumi:"enableAutomaticUpdates"`
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrOutput `pulumi:"encryptionAtHostEnabled"`
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrOutput `pulumi:"evictionPolicy"`
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolOutput `pulumi:"extensionOperationsEnabled"`
	// One or more `extension` blocks as defined below
	Extensions WindowsVirtualMachineScaleSetExtensionArrayOutput `pulumi:"extensions"`
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrOutput `pulumi:"extensionsTimeBudget"`
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput `pulumi:"galleryApplication"`
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput `pulumi:"galleryApplications"`
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrOutput `pulumi:"healthProbeId"`
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrOutput `pulumi:"hostGroupId"`
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineScaleSetIdentityPtrOutput `pulumi:"identity"`
	// The number of Virtual Machines in the Scale Set.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntOutput `pulumi:"instances"`
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing)) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrOutput `pulumi:"maxBidPrice"`
	// The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// An `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineScaleSetOsDiskOutput `pulumi:"osDisk"`
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrOutput `pulumi:"overprovision"`
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan WindowsVirtualMachineScaleSetPlanPtrOutput `pulumi:"plan"`
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntOutput `pulumi:"platformFaultDomainCount"`
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrOutput `pulumi:"priority"`
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrOutput `pulumi:"provisionVmAgent"`
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"proximityPlacementGroupId"`
	// The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput `pulumi:"rollingUpgradePolicy"`
	// A `scaleIn` block as defined below.
	ScaleIn WindowsVirtualMachineScaleSetScaleInOutput `pulumi:"scaleIn"`
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringOutput `pulumi:"scaleInPolicy"`
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineScaleSetSecretArrayOutput `pulumi:"secrets"`
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrOutput `pulumi:"secureBootEnabled"`
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrOutput `pulumi:"singlePlacementGroup"`
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringOutput `pulumi:"sku"`
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrOutput `pulumi:"sourceImageId"`
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput `pulumi:"sourceImageReference"`
	// A `spotRestore` block as defined below.
	SpotRestore WindowsVirtualMachineScaleSetSpotRestoreOutput `pulumi:"spotRestore"`
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification WindowsVirtualMachineScaleSetTerminateNotificationOutput `pulumi:"terminateNotification"`
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineScaleSetTerminationNotificationOutput `pulumi:"terminationNotification"`
	// Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
	Timezone pulumi.StringPtrOutput `pulumi:"timezone"`
	// The Unique ID for this Windows Virtual Machine Scale Set.
	UniqueId    pulumi.StringOutput    `pulumi:"uniqueId"`
	UpgradeMode pulumi.StringPtrOutput `pulumi:"upgradeMode"`
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrOutput `pulumi:"vtpmEnabled"`
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineScaleSetWinrmListenerArrayOutput `pulumi:"winrmListeners"`
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrOutput `pulumi:"zoneBalance"`
	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Manages a Windows Virtual Machine Scale Set.

## Disclaimers

> **NOTE:**: All arguments including the administrator login and password will be stored in the raw state as plain-text.

> **NOTE:** This provider will automatically update & reimage the nodes in the Scale Set (if Required) during an Update - this behaviour can be configured using the `features` setting within the Provider block.

[> **NOTE:** This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the `compute.ScaleSet` resource instead

## Example Usage

This example provisions a basic Windows Virtual Machine Scale Set on an internal network.

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-network"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
			Name:               pulumi.String("internal"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewWindowsVirtualMachineScaleSet(ctx, "example", &compute.WindowsVirtualMachineScaleSetArgs{
			Name:               pulumi.String("example-vmss"),
			ResourceGroupName:  example.Name,
			Location:           example.Location,
			Sku:                pulumi.String("Standard_F2"),
			Instances:          pulumi.Int(1),
			AdminPassword:      pulumi.String("P@55w0rd1234!"),
			AdminUsername:      pulumi.String("adminuser"),
			ComputerNamePrefix: pulumi.String("vm-"),
			SourceImageReference: &compute.WindowsVirtualMachineScaleSetSourceImageReferenceArgs{
				Publisher: pulumi.String("MicrosoftWindowsServer"),
				Offer:     pulumi.String("WindowsServer"),
				Sku:       pulumi.String("2016-Datacenter-Server-Core"),
				Version:   pulumi.String("latest"),
			},
			OsDisk: &compute.WindowsVirtualMachineScaleSetOsDiskArgs{
				StorageAccountType: pulumi.String("Standard_LRS"),
				Caching:            pulumi.String("ReadWrite"),
			},
			NetworkInterfaces: compute.WindowsVirtualMachineScaleSetNetworkInterfaceArray{
				&compute.WindowsVirtualMachineScaleSetNetworkInterfaceArgs{
					Name:    pulumi.String("example"),
					Primary: pulumi.Bool(true),
					IpConfigurations: compute.WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{
						&compute.WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{
							Name:     pulumi.String("internal"),
							Primary:  pulumi.Bool(true),
							SubnetId: internal.ID(),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Windows Virtual Machine Scale Sets can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:compute/windowsVirtualMachineScaleSet:WindowsVirtualMachineScaleSet example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1 ```

func GetWindowsVirtualMachineScaleSet

func GetWindowsVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WindowsVirtualMachineScaleSetState, opts ...pulumi.ResourceOption) (*WindowsVirtualMachineScaleSet, error)

GetWindowsVirtualMachineScaleSet gets an existing WindowsVirtualMachineScaleSet 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 NewWindowsVirtualMachineScaleSet

func NewWindowsVirtualMachineScaleSet(ctx *pulumi.Context,
	name string, args *WindowsVirtualMachineScaleSetArgs, opts ...pulumi.ResourceOption) (*WindowsVirtualMachineScaleSet, error)

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

func (*WindowsVirtualMachineScaleSet) ElementType

func (*WindowsVirtualMachineScaleSet) ToWindowsVirtualMachineScaleSetOutput

func (i *WindowsVirtualMachineScaleSet) ToWindowsVirtualMachineScaleSetOutput() WindowsVirtualMachineScaleSetOutput

func (*WindowsVirtualMachineScaleSet) ToWindowsVirtualMachineScaleSetOutputWithContext

func (i *WindowsVirtualMachineScaleSet) ToWindowsVirtualMachineScaleSetOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOutput

type WindowsVirtualMachineScaleSetAdditionalCapabilities

type WindowsVirtualMachineScaleSetAdditionalCapabilities struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `pulumi:"ultraSsdEnabled"`
}

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs struct {
	// Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	UltraSsdEnabled pulumi.BoolPtrInput `pulumi:"ultraSsdEnabled"`
}

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ElementType

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext

func (i WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (i WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput() WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesInput

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput() WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput
	ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput
}

WindowsVirtualMachineScaleSetAdditionalCapabilitiesInput is an input type that accepts WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs and WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAdditionalCapabilitiesInput` via:

WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ElementType

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext

func (o WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput() WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
	ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput
}

WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput is an input type that accepts WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs, WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtr and WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput` via:

        WindowsVirtualMachineScaleSetAdditionalCapabilitiesArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) Elem

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) ToWindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput

func (WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrOutput) UltraSsdEnabled

Should the capacity to enable Data Disks of the `UltraSSD_LRS` storage account type be supported on this Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

type WindowsVirtualMachineScaleSetAdditionalUnattendContent

type WindowsVirtualMachineScaleSetAdditionalUnattendContent struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content string `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting string `pulumi:"setting"`
}

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs struct {
	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	Content pulumi.StringInput `pulumi:"content"`
	// The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.
	Setting pulumi.StringInput `pulumi:"setting"`
}

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs) ElementType

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutput

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutputWithContext

func (i WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArray

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArray []WindowsVirtualMachineScaleSetAdditionalUnattendContentInput

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArray) ElementType

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArray) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArray) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetAdditionalUnattendContentArray) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput() WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput
	ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput
}

WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput is an input type that accepts WindowsVirtualMachineScaleSetAdditionalUnattendContentArray and WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput` via:

WindowsVirtualMachineScaleSetAdditionalUnattendContentArray{ WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs{...} }

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput) Index

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayOutput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentInput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutput() WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput
	ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput
}

WindowsVirtualMachineScaleSetAdditionalUnattendContentInput is an input type that accepts WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs and WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAdditionalUnattendContentInput` via:

WindowsVirtualMachineScaleSetAdditionalUnattendContentArgs{...}

type WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput

type WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) Content

The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) ElementType

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) Setting

The name of the setting to which the content applies. Possible values are `AutoLogon` and `FirstLogonCommands`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutput

func (WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutputWithContext

func (o WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput) ToWindowsVirtualMachineScaleSetAdditionalUnattendContentOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAdditionalUnattendContentOutput

type WindowsVirtualMachineScaleSetArgs

type WindowsVirtualMachineScaleSetArgs struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringInput
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringInput
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrInput
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks WindowsVirtualMachineScaleSetDataDiskArrayInput
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrInput
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrInput
	// Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions WindowsVirtualMachineScaleSetExtensionArrayInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication WindowsVirtualMachineScaleSetGalleryApplicationArrayInput
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications WindowsVirtualMachineScaleSetGalleryApplicationArrayInput
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrInput
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Scale Set.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntInput
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing)) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineScaleSetOsDiskInput
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan WindowsVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntPtrInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput
	// A `scaleIn` block as defined below.
	ScaleIn WindowsVirtualMachineScaleSetScaleInPtrInput
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineScaleSetSecretArrayInput
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineScaleSetSourceImageReferencePtrInput
	// A `spotRestore` block as defined below.
	SpotRestore WindowsVirtualMachineScaleSetSpotRestorePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification WindowsVirtualMachineScaleSetTerminateNotificationPtrInput
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineScaleSetTerminationNotificationPtrInput
	// Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
	Timezone    pulumi.StringPtrInput
	UpgradeMode pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrInput
	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineScaleSetWinrmListenerArrayInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a WindowsVirtualMachineScaleSet resource.

func (WindowsVirtualMachineScaleSetArgs) ElementType

type WindowsVirtualMachineScaleSetArray

type WindowsVirtualMachineScaleSetArray []WindowsVirtualMachineScaleSetInput

func (WindowsVirtualMachineScaleSetArray) ElementType

func (WindowsVirtualMachineScaleSetArray) ToWindowsVirtualMachineScaleSetArrayOutput

func (i WindowsVirtualMachineScaleSetArray) ToWindowsVirtualMachineScaleSetArrayOutput() WindowsVirtualMachineScaleSetArrayOutput

func (WindowsVirtualMachineScaleSetArray) ToWindowsVirtualMachineScaleSetArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetArray) ToWindowsVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetArrayOutput

type WindowsVirtualMachineScaleSetArrayInput

type WindowsVirtualMachineScaleSetArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetArrayOutput() WindowsVirtualMachineScaleSetArrayOutput
	ToWindowsVirtualMachineScaleSetArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetArrayOutput
}

WindowsVirtualMachineScaleSetArrayInput is an input type that accepts WindowsVirtualMachineScaleSetArray and WindowsVirtualMachineScaleSetArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetArrayInput` via:

WindowsVirtualMachineScaleSetArray{ WindowsVirtualMachineScaleSetArgs{...} }

type WindowsVirtualMachineScaleSetArrayOutput

type WindowsVirtualMachineScaleSetArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetArrayOutput) Index

func (WindowsVirtualMachineScaleSetArrayOutput) ToWindowsVirtualMachineScaleSetArrayOutput

func (o WindowsVirtualMachineScaleSetArrayOutput) ToWindowsVirtualMachineScaleSetArrayOutput() WindowsVirtualMachineScaleSetArrayOutput

func (WindowsVirtualMachineScaleSetArrayOutput) ToWindowsVirtualMachineScaleSetArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetArrayOutput) ToWindowsVirtualMachineScaleSetArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetArrayOutput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepair

type WindowsVirtualMachineScaleSetAutomaticInstanceRepair struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.
	GracePeriod *string `pulumi:"gracePeriod"`
}

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs struct {
	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.
	GracePeriod pulumi.StringPtrInput `pulumi:"gracePeriod"`
}

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ElementType

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (i WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (i WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput() WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairInput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput() WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput
	ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput
}

WindowsVirtualMachineScaleSetAutomaticInstanceRepairInput is an input type that accepts WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs and WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAutomaticInstanceRepairInput` via:

WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ElementType

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) GracePeriod

Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticInstanceRepairOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput() WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
	ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput
}

WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput is an input type that accepts WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs, WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtr and WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput` via:

        WindowsVirtualMachineScaleSetAutomaticInstanceRepairArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Elem

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) Enabled

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) GracePeriod

Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to `PT30M`.

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrOutput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicy

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicy struct {
	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback bool `pulumi:"disableAutomaticRollback"`
	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade bool `pulumi:"enableAutomaticOsUpgrade"`
}

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs struct {
	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback pulumi.BoolInput `pulumi:"disableAutomaticRollback"`
	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade pulumi.BoolInput `pulumi:"enableAutomaticOsUpgrade"`
}

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ElementType

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext

func (i WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput() WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput
	ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput
}

WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInput is an input type that accepts WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs and WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInput` via:

WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs{...}

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) DisableAutomaticRollback

Should automatic rollbacks be disabled?

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ElementType

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) EnableAutomaticOsUpgrade

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput() WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput
	ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput
}

WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput is an input type that accepts WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs, WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtr and WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput` via:

        WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) DisableAutomaticRollback

Should automatic rollbacks be disabled?

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) Elem

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) EnableAutomaticOsUpgrade

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetBootDiagnostics

type WindowsVirtualMachineScaleSetBootDiagnostics struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics
	StorageAccountUri *string `pulumi:"storageAccountUri"`
}

type WindowsVirtualMachineScaleSetBootDiagnosticsArgs

type WindowsVirtualMachineScaleSetBootDiagnosticsArgs struct {
	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	//
	// > **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics
	StorageAccountUri pulumi.StringPtrInput `pulumi:"storageAccountUri"`
}

func (WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ElementType

func (WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (i WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutput() WindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (i WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (i WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput() WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetBootDiagnosticsArgs) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

type WindowsVirtualMachineScaleSetBootDiagnosticsInput

type WindowsVirtualMachineScaleSetBootDiagnosticsInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetBootDiagnosticsOutput() WindowsVirtualMachineScaleSetBootDiagnosticsOutput
	ToWindowsVirtualMachineScaleSetBootDiagnosticsOutputWithContext(context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsOutput
}

WindowsVirtualMachineScaleSetBootDiagnosticsInput is an input type that accepts WindowsVirtualMachineScaleSetBootDiagnosticsArgs and WindowsVirtualMachineScaleSetBootDiagnosticsOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetBootDiagnosticsInput` via:

WindowsVirtualMachineScaleSetBootDiagnosticsArgs{...}

type WindowsVirtualMachineScaleSetBootDiagnosticsOutput

type WindowsVirtualMachineScaleSetBootDiagnosticsOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ElementType

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (o WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutput() WindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutputWithContext

func (o WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (o WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput() WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetBootDiagnosticsOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

type WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput

type WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput() WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput
	ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput
}

WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput is an input type that accepts WindowsVirtualMachineScaleSetBootDiagnosticsArgs, WindowsVirtualMachineScaleSetBootDiagnosticsPtr and WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput` via:

        WindowsVirtualMachineScaleSetBootDiagnosticsArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

type WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) Elem

func (WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) StorageAccountUri

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

> **NOTE:** Passing a null value will utilize a Managed Storage Account to store Boot Diagnostics

func (WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

func (WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput) ToWindowsVirtualMachineScaleSetBootDiagnosticsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetBootDiagnosticsPtrOutput

type WindowsVirtualMachineScaleSetDataDisk

type WindowsVirtualMachineScaleSetDataDisk struct {
	// The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).
	CreateOption *string `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created.
	DiskSizeGb int `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun int `pulumi:"lun"`
	// The name of the Data Disk.
	Name *string `pulumi:"name"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	//
	// > **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite *int `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite *int `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type WindowsVirtualMachineScaleSetDataDiskArgs

type WindowsVirtualMachineScaleSetDataDiskArgs struct {
	// The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).
	CreateOption pulumi.StringPtrInput `pulumi:"createOption"`
	// The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The size of the Data Disk which should be created.
	DiskSizeGb pulumi.IntInput `pulumi:"diskSizeGb"`
	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun pulumi.IntInput `pulumi:"lun"`
	// The name of the Data Disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.
	//
	// > **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskIopsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskIopsReadWrite"`
	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.
	UltraSsdDiskMbpsReadWrite pulumi.IntPtrInput `pulumi:"ultraSsdDiskMbpsReadWrite"`
	// Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (WindowsVirtualMachineScaleSetDataDiskArgs) ElementType

func (WindowsVirtualMachineScaleSetDataDiskArgs) ToWindowsVirtualMachineScaleSetDataDiskOutput

func (i WindowsVirtualMachineScaleSetDataDiskArgs) ToWindowsVirtualMachineScaleSetDataDiskOutput() WindowsVirtualMachineScaleSetDataDiskOutput

func (WindowsVirtualMachineScaleSetDataDiskArgs) ToWindowsVirtualMachineScaleSetDataDiskOutputWithContext

func (i WindowsVirtualMachineScaleSetDataDiskArgs) ToWindowsVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetDataDiskOutput

type WindowsVirtualMachineScaleSetDataDiskArray

type WindowsVirtualMachineScaleSetDataDiskArray []WindowsVirtualMachineScaleSetDataDiskInput

func (WindowsVirtualMachineScaleSetDataDiskArray) ElementType

func (WindowsVirtualMachineScaleSetDataDiskArray) ToWindowsVirtualMachineScaleSetDataDiskArrayOutput

func (i WindowsVirtualMachineScaleSetDataDiskArray) ToWindowsVirtualMachineScaleSetDataDiskArrayOutput() WindowsVirtualMachineScaleSetDataDiskArrayOutput

func (WindowsVirtualMachineScaleSetDataDiskArray) ToWindowsVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetDataDiskArray) ToWindowsVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetDataDiskArrayOutput

type WindowsVirtualMachineScaleSetDataDiskArrayInput

type WindowsVirtualMachineScaleSetDataDiskArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetDataDiskArrayOutput() WindowsVirtualMachineScaleSetDataDiskArrayOutput
	ToWindowsVirtualMachineScaleSetDataDiskArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetDataDiskArrayOutput
}

WindowsVirtualMachineScaleSetDataDiskArrayInput is an input type that accepts WindowsVirtualMachineScaleSetDataDiskArray and WindowsVirtualMachineScaleSetDataDiskArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetDataDiskArrayInput` via:

WindowsVirtualMachineScaleSetDataDiskArray{ WindowsVirtualMachineScaleSetDataDiskArgs{...} }

type WindowsVirtualMachineScaleSetDataDiskArrayOutput

type WindowsVirtualMachineScaleSetDataDiskArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetDataDiskArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetDataDiskArrayOutput) Index

func (WindowsVirtualMachineScaleSetDataDiskArrayOutput) ToWindowsVirtualMachineScaleSetDataDiskArrayOutput

func (o WindowsVirtualMachineScaleSetDataDiskArrayOutput) ToWindowsVirtualMachineScaleSetDataDiskArrayOutput() WindowsVirtualMachineScaleSetDataDiskArrayOutput

func (WindowsVirtualMachineScaleSetDataDiskArrayOutput) ToWindowsVirtualMachineScaleSetDataDiskArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetDataDiskArrayOutput) ToWindowsVirtualMachineScaleSetDataDiskArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetDataDiskArrayOutput

type WindowsVirtualMachineScaleSetDataDiskInput

type WindowsVirtualMachineScaleSetDataDiskInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetDataDiskOutput() WindowsVirtualMachineScaleSetDataDiskOutput
	ToWindowsVirtualMachineScaleSetDataDiskOutputWithContext(context.Context) WindowsVirtualMachineScaleSetDataDiskOutput
}

WindowsVirtualMachineScaleSetDataDiskInput is an input type that accepts WindowsVirtualMachineScaleSetDataDiskArgs and WindowsVirtualMachineScaleSetDataDiskOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetDataDiskInput` via:

WindowsVirtualMachineScaleSetDataDiskArgs{...}

type WindowsVirtualMachineScaleSetDataDiskOutput

type WindowsVirtualMachineScaleSetDataDiskOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetDataDiskOutput) Caching

The type of Caching which should be used for this Data Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (WindowsVirtualMachineScaleSetDataDiskOutput) CreateOption

The create option which should be used for this Data Disk. Possible values are `Empty` and `FromImage`. Defaults to `Empty`. (`FromImage` should only be used if the source image includes data disks).

func (WindowsVirtualMachineScaleSetDataDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (WindowsVirtualMachineScaleSetDataDiskOutput) DiskSizeGb

The size of the Data Disk which should be created.

func (WindowsVirtualMachineScaleSetDataDiskOutput) ElementType

func (WindowsVirtualMachineScaleSetDataDiskOutput) Lun

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

func (WindowsVirtualMachineScaleSetDataDiskOutput) Name added in v5.18.0

The name of the Data Disk.

func (WindowsVirtualMachineScaleSetDataDiskOutput) StorageAccountType

The Type of Storage Account which should back this Data Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS`, `PremiumV2_LRS`, `Premium_ZRS` and `UltraSSD_LRS`.

> **NOTE:** `UltraSSD_LRS` is only supported when `ultraSsdEnabled` within the `additionalCapabilities` block is enabled.

func (WindowsVirtualMachineScaleSetDataDiskOutput) ToWindowsVirtualMachineScaleSetDataDiskOutput

func (o WindowsVirtualMachineScaleSetDataDiskOutput) ToWindowsVirtualMachineScaleSetDataDiskOutput() WindowsVirtualMachineScaleSetDataDiskOutput

func (WindowsVirtualMachineScaleSetDataDiskOutput) ToWindowsVirtualMachineScaleSetDataDiskOutputWithContext

func (o WindowsVirtualMachineScaleSetDataDiskOutput) ToWindowsVirtualMachineScaleSetDataDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetDataDiskOutput

func (WindowsVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskIopsReadWrite

func (o WindowsVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskIopsReadWrite() pulumi.IntPtrOutput

Specifies the Read-Write IOPS for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (WindowsVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskMbpsReadWrite

func (o WindowsVirtualMachineScaleSetDataDiskOutput) UltraSsdDiskMbpsReadWrite() pulumi.IntPtrOutput

Specifies the bandwidth in MB per second for this Data Disk. Only settable when `storageAccountType` is `PremiumV2_LRS` or `UltraSSD_LRS`.

func (WindowsVirtualMachineScaleSetDataDiskOutput) WriteAcceleratorEnabled

Should Write Accelerator be enabled for this Data Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type WindowsVirtualMachineScaleSetExtension

type WindowsVirtualMachineScaleSetExtension struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion *bool `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `pulumi:"automaticUpgradeEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `pulumi:"forceUpdateTag"`
	// The name for the Virtual Machine Scale Set Extension.
	Name string `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings             *string                                                              `pulumi:"protectedSettings"`
	ProtectedSettingsFromKeyVault *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault `pulumi:"protectedSettingsFromKeyVault"`
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []string `pulumi:"provisionAfterExtensions"`
	// Specifies the Publisher of the Extension.
	Publisher string `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings *string `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type string `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion string `pulumi:"typeHandlerVersion"`
}

type WindowsVirtualMachineScaleSetExtensionArgs

type WindowsVirtualMachineScaleSetExtensionArgs struct {
	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
	AutoUpgradeMinorVersion pulumi.BoolPtrInput `pulumi:"autoUpgradeMinorVersion"`
	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled pulumi.BoolPtrInput `pulumi:"automaticUpgradeEnabled"`
	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag pulumi.StringPtrInput `pulumi:"forceUpdateTag"`
	// The name for the Virtual Machine Scale Set Extension.
	Name pulumi.StringInput `pulumi:"name"`
	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	//
	// > **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	ProtectedSettings             pulumi.StringPtrInput                                                       `pulumi:"protectedSettings"`
	ProtectedSettingsFromKeyVault WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput `pulumi:"protectedSettingsFromKeyVault"`
	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions pulumi.StringArrayInput `pulumi:"provisionAfterExtensions"`
	// Specifies the Publisher of the Extension.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// A JSON String which specifies Settings for the Extension.
	//
	// > **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
	Settings pulumi.StringPtrInput `pulumi:"settings"`
	// Specifies the Type of the Extension.
	Type pulumi.StringInput `pulumi:"type"`
	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion pulumi.StringInput `pulumi:"typeHandlerVersion"`
}

func (WindowsVirtualMachineScaleSetExtensionArgs) ElementType

func (WindowsVirtualMachineScaleSetExtensionArgs) ToWindowsVirtualMachineScaleSetExtensionOutput

func (i WindowsVirtualMachineScaleSetExtensionArgs) ToWindowsVirtualMachineScaleSetExtensionOutput() WindowsVirtualMachineScaleSetExtensionOutput

func (WindowsVirtualMachineScaleSetExtensionArgs) ToWindowsVirtualMachineScaleSetExtensionOutputWithContext

func (i WindowsVirtualMachineScaleSetExtensionArgs) ToWindowsVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionOutput

type WindowsVirtualMachineScaleSetExtensionArray

type WindowsVirtualMachineScaleSetExtensionArray []WindowsVirtualMachineScaleSetExtensionInput

func (WindowsVirtualMachineScaleSetExtensionArray) ElementType

func (WindowsVirtualMachineScaleSetExtensionArray) ToWindowsVirtualMachineScaleSetExtensionArrayOutput

func (i WindowsVirtualMachineScaleSetExtensionArray) ToWindowsVirtualMachineScaleSetExtensionArrayOutput() WindowsVirtualMachineScaleSetExtensionArrayOutput

func (WindowsVirtualMachineScaleSetExtensionArray) ToWindowsVirtualMachineScaleSetExtensionArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetExtensionArray) ToWindowsVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionArrayOutput

type WindowsVirtualMachineScaleSetExtensionArrayInput

type WindowsVirtualMachineScaleSetExtensionArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetExtensionArrayOutput() WindowsVirtualMachineScaleSetExtensionArrayOutput
	ToWindowsVirtualMachineScaleSetExtensionArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetExtensionArrayOutput
}

WindowsVirtualMachineScaleSetExtensionArrayInput is an input type that accepts WindowsVirtualMachineScaleSetExtensionArray and WindowsVirtualMachineScaleSetExtensionArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetExtensionArrayInput` via:

WindowsVirtualMachineScaleSetExtensionArray{ WindowsVirtualMachineScaleSetExtensionArgs{...} }

type WindowsVirtualMachineScaleSetExtensionArrayOutput

type WindowsVirtualMachineScaleSetExtensionArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetExtensionArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetExtensionArrayOutput) Index

func (WindowsVirtualMachineScaleSetExtensionArrayOutput) ToWindowsVirtualMachineScaleSetExtensionArrayOutput

func (o WindowsVirtualMachineScaleSetExtensionArrayOutput) ToWindowsVirtualMachineScaleSetExtensionArrayOutput() WindowsVirtualMachineScaleSetExtensionArrayOutput

func (WindowsVirtualMachineScaleSetExtensionArrayOutput) ToWindowsVirtualMachineScaleSetExtensionArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetExtensionArrayOutput) ToWindowsVirtualMachineScaleSetExtensionArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionArrayOutput

type WindowsVirtualMachineScaleSetExtensionInput

type WindowsVirtualMachineScaleSetExtensionInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetExtensionOutput() WindowsVirtualMachineScaleSetExtensionOutput
	ToWindowsVirtualMachineScaleSetExtensionOutputWithContext(context.Context) WindowsVirtualMachineScaleSetExtensionOutput
}

WindowsVirtualMachineScaleSetExtensionInput is an input type that accepts WindowsVirtualMachineScaleSetExtensionArgs and WindowsVirtualMachineScaleSetExtensionOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetExtensionInput` via:

WindowsVirtualMachineScaleSetExtensionArgs{...}

type WindowsVirtualMachineScaleSetExtensionOutput

type WindowsVirtualMachineScaleSetExtensionOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetExtensionOutput) AutoUpgradeMinorVersion

Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.

func (WindowsVirtualMachineScaleSetExtensionOutput) AutomaticUpgradeEnabled

Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?

func (WindowsVirtualMachineScaleSetExtensionOutput) ElementType

func (WindowsVirtualMachineScaleSetExtensionOutput) ForceUpdateTag

A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.

func (WindowsVirtualMachineScaleSetExtensionOutput) Name

The name for the Virtual Machine Scale Set Extension.

func (WindowsVirtualMachineScaleSetExtensionOutput) ProtectedSettings

A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.

> **NOTE:** Keys within the `protectedSettings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (WindowsVirtualMachineScaleSetExtensionOutput) ProtectedSettingsFromKeyVault added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionOutput) ProvisionAfterExtensions

An ordered list of Extension names which this should be provisioned after.

func (WindowsVirtualMachineScaleSetExtensionOutput) Publisher

Specifies the Publisher of the Extension.

func (WindowsVirtualMachineScaleSetExtensionOutput) Settings

A JSON String which specifies Settings for the Extension.

> **NOTE:** Keys within the `settings` block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.

func (WindowsVirtualMachineScaleSetExtensionOutput) ToWindowsVirtualMachineScaleSetExtensionOutput

func (o WindowsVirtualMachineScaleSetExtensionOutput) ToWindowsVirtualMachineScaleSetExtensionOutput() WindowsVirtualMachineScaleSetExtensionOutput

func (WindowsVirtualMachineScaleSetExtensionOutput) ToWindowsVirtualMachineScaleSetExtensionOutputWithContext

func (o WindowsVirtualMachineScaleSetExtensionOutput) ToWindowsVirtualMachineScaleSetExtensionOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionOutput

func (WindowsVirtualMachineScaleSetExtensionOutput) Type

Specifies the Type of the Extension.

func (WindowsVirtualMachineScaleSetExtensionOutput) TypeHandlerVersion

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId string `pulumi:"sourceVaultId"`
}

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs struct {
	// The URL to the Key Vault Secret which stores the protected settings.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the source Key Vault.
	SourceVaultId pulumi.StringInput `pulumi:"sourceVaultId"`
}

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ElementType added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (i WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (i WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput() WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
	ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext(context.Context) WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput
}

WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput is an input type that accepts WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs and WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInput` via:

WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ElementType added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutputWithContext added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

func (o WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput() WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
	ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput
}

WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput is an input type that accepts WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs, WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtr and WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrInput` via:

        WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) Elem added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ElementType added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SecretUrl added in v5.24.0

The URL to the Key Vault Secret which stores the protected settings.

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) SourceVaultId added in v5.24.0

The ID of the source Key Vault.

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput added in v5.24.0

func (WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutput) ToWindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultPtrOutputWithContext added in v5.24.0

type WindowsVirtualMachineScaleSetGalleryApplication added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplication struct {
	// Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0
	ConfigurationReferenceBlobUri *string `pulumi:"configurationReferenceBlobUri"`
	Order                         *int    `pulumi:"order"`
	// Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0
	PackageReferenceId string  `pulumi:"packageReferenceId"`
	Tag                *string `pulumi:"tag"`
}

type WindowsVirtualMachineScaleSetGalleryApplicationArgs added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationArgs struct {
	// Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0
	ConfigurationReferenceBlobUri pulumi.StringPtrInput `pulumi:"configurationReferenceBlobUri"`
	Order                         pulumi.IntPtrInput    `pulumi:"order"`
	// Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0
	PackageReferenceId pulumi.StringInput    `pulumi:"packageReferenceId"`
	Tag                pulumi.StringPtrInput `pulumi:"tag"`
}

func (WindowsVirtualMachineScaleSetGalleryApplicationArgs) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationArgs) ToWindowsVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetGalleryApplicationArgs) ToWindowsVirtualMachineScaleSetGalleryApplicationOutput() WindowsVirtualMachineScaleSetGalleryApplicationOutput

func (WindowsVirtualMachineScaleSetGalleryApplicationArgs) ToWindowsVirtualMachineScaleSetGalleryApplicationOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetGalleryApplicationArgs) ToWindowsVirtualMachineScaleSetGalleryApplicationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetGalleryApplicationOutput

type WindowsVirtualMachineScaleSetGalleryApplicationArray added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationArray []WindowsVirtualMachineScaleSetGalleryApplicationInput

func (WindowsVirtualMachineScaleSetGalleryApplicationArray) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationArray) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetGalleryApplicationArray) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutput() WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput

func (WindowsVirtualMachineScaleSetGalleryApplicationArray) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetGalleryApplicationArray) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput

type WindowsVirtualMachineScaleSetGalleryApplicationArrayInput added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutput() WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput
	ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput
}

WindowsVirtualMachineScaleSetGalleryApplicationArrayInput is an input type that accepts WindowsVirtualMachineScaleSetGalleryApplicationArray and WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetGalleryApplicationArrayInput` via:

WindowsVirtualMachineScaleSetGalleryApplicationArray{ WindowsVirtualMachineScaleSetGalleryApplicationArgs{...} }

type WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput) Index added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutput added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetGalleryApplicationArrayOutput

type WindowsVirtualMachineScaleSetGalleryApplicationInput added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetGalleryApplicationOutput() WindowsVirtualMachineScaleSetGalleryApplicationOutput
	ToWindowsVirtualMachineScaleSetGalleryApplicationOutputWithContext(context.Context) WindowsVirtualMachineScaleSetGalleryApplicationOutput
}

WindowsVirtualMachineScaleSetGalleryApplicationInput is an input type that accepts WindowsVirtualMachineScaleSetGalleryApplicationArgs and WindowsVirtualMachineScaleSetGalleryApplicationOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetGalleryApplicationInput` via:

WindowsVirtualMachineScaleSetGalleryApplicationArgs{...}

type WindowsVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

type WindowsVirtualMachineScaleSetGalleryApplicationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) ConfigurationReferenceBlobUri deprecated added in v5.18.0

Deprecated: `configurationReferenceBlobUri` has been renamed to `configurationBlobUri` and will be deprecated in 4.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) Order added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) PackageReferenceId deprecated added in v5.18.0

Deprecated: `packageReferenceId` has been renamed to `versionId` and will be deprecated in 4.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) Tag added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationOutput added in v5.18.0

func (WindowsVirtualMachineScaleSetGalleryApplicationOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetGalleryApplicationOutput) ToWindowsVirtualMachineScaleSetGalleryApplicationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetGalleryApplicationOutput

type WindowsVirtualMachineScaleSetIdentity

type WindowsVirtualMachineScaleSetIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type WindowsVirtualMachineScaleSetIdentityArgs

type WindowsVirtualMachineScaleSetIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (WindowsVirtualMachineScaleSetIdentityArgs) ElementType

func (WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityOutput

func (i WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityOutput() WindowsVirtualMachineScaleSetIdentityOutput

func (WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityOutputWithContext

func (i WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetIdentityOutput

func (WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityPtrOutput

func (i WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityPtrOutput() WindowsVirtualMachineScaleSetIdentityPtrOutput

func (WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetIdentityArgs) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetIdentityPtrOutput

type WindowsVirtualMachineScaleSetIdentityInput

type WindowsVirtualMachineScaleSetIdentityInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetIdentityOutput() WindowsVirtualMachineScaleSetIdentityOutput
	ToWindowsVirtualMachineScaleSetIdentityOutputWithContext(context.Context) WindowsVirtualMachineScaleSetIdentityOutput
}

WindowsVirtualMachineScaleSetIdentityInput is an input type that accepts WindowsVirtualMachineScaleSetIdentityArgs and WindowsVirtualMachineScaleSetIdentityOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetIdentityInput` via:

WindowsVirtualMachineScaleSetIdentityArgs{...}

type WindowsVirtualMachineScaleSetIdentityOutput

type WindowsVirtualMachineScaleSetIdentityOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetIdentityOutput) ElementType

func (WindowsVirtualMachineScaleSetIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (WindowsVirtualMachineScaleSetIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (WindowsVirtualMachineScaleSetIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityOutput

func (o WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityOutput() WindowsVirtualMachineScaleSetIdentityOutput

func (WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityOutputWithContext

func (o WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetIdentityOutput

func (WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutput

func (o WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutput() WindowsVirtualMachineScaleSetIdentityPtrOutput

func (WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetIdentityOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetIdentityPtrOutput

func (WindowsVirtualMachineScaleSetIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type WindowsVirtualMachineScaleSetIdentityPtrInput

type WindowsVirtualMachineScaleSetIdentityPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetIdentityPtrOutput() WindowsVirtualMachineScaleSetIdentityPtrOutput
	ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetIdentityPtrOutput
}

WindowsVirtualMachineScaleSetIdentityPtrInput is an input type that accepts WindowsVirtualMachineScaleSetIdentityArgs, WindowsVirtualMachineScaleSetIdentityPtr and WindowsVirtualMachineScaleSetIdentityPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetIdentityPtrInput` via:

        WindowsVirtualMachineScaleSetIdentityArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetIdentityPtrOutput

type WindowsVirtualMachineScaleSetIdentityPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) Elem

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutput

func (o WindowsVirtualMachineScaleSetIdentityPtrOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutput() WindowsVirtualMachineScaleSetIdentityPtrOutput

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetIdentityPtrOutput) ToWindowsVirtualMachineScaleSetIdentityPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetIdentityPtrOutput

func (WindowsVirtualMachineScaleSetIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type WindowsVirtualMachineScaleSetInput

type WindowsVirtualMachineScaleSetInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetOutput() WindowsVirtualMachineScaleSetOutput
	ToWindowsVirtualMachineScaleSetOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOutput
}

type WindowsVirtualMachineScaleSetMap

type WindowsVirtualMachineScaleSetMap map[string]WindowsVirtualMachineScaleSetInput

func (WindowsVirtualMachineScaleSetMap) ElementType

func (WindowsVirtualMachineScaleSetMap) ToWindowsVirtualMachineScaleSetMapOutput

func (i WindowsVirtualMachineScaleSetMap) ToWindowsVirtualMachineScaleSetMapOutput() WindowsVirtualMachineScaleSetMapOutput

func (WindowsVirtualMachineScaleSetMap) ToWindowsVirtualMachineScaleSetMapOutputWithContext

func (i WindowsVirtualMachineScaleSetMap) ToWindowsVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetMapOutput

type WindowsVirtualMachineScaleSetMapInput

type WindowsVirtualMachineScaleSetMapInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetMapOutput() WindowsVirtualMachineScaleSetMapOutput
	ToWindowsVirtualMachineScaleSetMapOutputWithContext(context.Context) WindowsVirtualMachineScaleSetMapOutput
}

WindowsVirtualMachineScaleSetMapInput is an input type that accepts WindowsVirtualMachineScaleSetMap and WindowsVirtualMachineScaleSetMapOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetMapInput` via:

WindowsVirtualMachineScaleSetMap{ "key": WindowsVirtualMachineScaleSetArgs{...} }

type WindowsVirtualMachineScaleSetMapOutput

type WindowsVirtualMachineScaleSetMapOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetMapOutput) ElementType

func (WindowsVirtualMachineScaleSetMapOutput) MapIndex

func (WindowsVirtualMachineScaleSetMapOutput) ToWindowsVirtualMachineScaleSetMapOutput

func (o WindowsVirtualMachineScaleSetMapOutput) ToWindowsVirtualMachineScaleSetMapOutput() WindowsVirtualMachineScaleSetMapOutput

func (WindowsVirtualMachineScaleSetMapOutput) ToWindowsVirtualMachineScaleSetMapOutputWithContext

func (o WindowsVirtualMachineScaleSetMapOutput) ToWindowsVirtualMachineScaleSetMapOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetMapOutput

type WindowsVirtualMachineScaleSetNetworkInterface

type WindowsVirtualMachineScaleSetNetworkInterface struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers []string `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Defaults to `false`.
	EnableAcceleratedNetworking *bool `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Defaults to `false`.
	EnableIpForwarding *bool `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfiguration `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId *string `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration?
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary *bool `pulumi:"primary"`
}

type WindowsVirtualMachineScaleSetNetworkInterfaceArgs

type WindowsVirtualMachineScaleSetNetworkInterfaceArgs struct {
	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DnsServers pulumi.StringArrayInput `pulumi:"dnsServers"`
	// Does this Network Interface support Accelerated Networking? Defaults to `false`.
	EnableAcceleratedNetworking pulumi.BoolPtrInput `pulumi:"enableAcceleratedNetworking"`
	// Does this Network Interface support IP Forwarding? Defaults to `false`.
	EnableIpForwarding pulumi.BoolPtrInput `pulumi:"enableIpForwarding"`
	// One or more `ipConfiguration` blocks as defined above.
	IpConfigurations WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput `pulumi:"ipConfigurations"`
	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupId pulumi.StringPtrInput `pulumi:"networkSecurityGroupId"`
	// Is this the Primary IP Configuration?
	//
	// > **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
}

func (WindowsVirtualMachineScaleSetNetworkInterfaceArgs) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutput

func (i WindowsVirtualMachineScaleSetNetworkInterfaceArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutput() WindowsVirtualMachineScaleSetNetworkInterfaceOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (i WindowsVirtualMachineScaleSetNetworkInterfaceArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceArray

type WindowsVirtualMachineScaleSetNetworkInterfaceArray []WindowsVirtualMachineScaleSetNetworkInterfaceInput

func (WindowsVirtualMachineScaleSetNetworkInterfaceArray) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (i WindowsVirtualMachineScaleSetNetworkInterfaceArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput() WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetNetworkInterfaceArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput

type WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput() WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceArray and WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceArray{ WindowsVirtualMachineScaleSetNetworkInterfaceArgs{...} }

type WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput) Index

func (WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceInput

type WindowsVirtualMachineScaleSetNetworkInterfaceInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceOutput() WindowsVirtualMachineScaleSetNetworkInterfaceOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceArgs and WindowsVirtualMachineScaleSetNetworkInterfaceOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceArgs{...}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfiguration

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfiguration struct {
	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds []string `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds []string `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:**  When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds []string `pulumi:"loadBalancerBackendAddressPoolIds"`
	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds []string `pulumi:"loadBalancerInboundNatRulesIds"`
	// The Name which should be used for this IP Configuration.
	Name string `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary *bool `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > `subnetId` is required if `version` is set to `IPv4`.
	SubnetId *string `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version *string `pulumi:"version"`
}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs struct {
	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	ApplicationGatewayBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"applicationGatewayBackendAddressPoolIds"`
	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	ApplicationSecurityGroupIds pulumi.StringArrayInput `pulumi:"applicationSecurityGroupIds"`
	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:**  When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerBackendAddressPoolIds pulumi.StringArrayInput `pulumi:"loadBalancerBackendAddressPoolIds"`
	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	//
	// > **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.
	LoadBalancerInboundNatRulesIds pulumi.StringArrayInput `pulumi:"loadBalancerInboundNatRulesIds"`
	// The Name which should be used for this IP Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.
	//
	// > **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.
	Primary pulumi.BoolPtrInput `pulumi:"primary"`
	// A `publicIpAddress` block as defined below.
	PublicIpAddresses WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The ID of the Subnet which this IP Configuration should be connected to.
	//
	// > `subnetId` is required if `version` is set to `IPv4`.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (i WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{ WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...} }

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{...}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationGatewayBackendAddressPoolIds

A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ApplicationSecurityGroupIds

A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerBackendAddressPoolIds

A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.

> **NOTE:** When the Virtual Machine Scale Set is configured to have public IPs per instance are created with a load balancer, the SKU of the Virtual Machine instance IPs is determined by the SKU of the Virtual Machine Scale Sets Load Balancer (e.g. `Basic` or `Standard`). Alternatively, you may use the `publicIpPrefixId` field to generate instance-level IPs in a virtual machine scale set as well. The zonal properties of the prefix will be passed to the Virtual Machine instance IPs, though they will not be shown in the output. To view the public IP addresses assigned to the Virtual Machine Scale Sets Virtual Machine instances use the **az vmss list-instance-public-ips --resource-group `ResourceGroupName` --name `VirtualMachineScaleSetName`** CLI command.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) LoadBalancerInboundNatRulesIds

A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.

> **NOTE:** When using this field you'll also need to configure a Rule for the Load Balancer, and use a `dependsOn` between this resource and the Load Balancer Rule.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Name

The Name which should be used for this IP Configuration.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Primary

Is this the Primary IP Configuration for this Network Interface? Defaults to `false`.

> **NOTE:** One `ipConfiguration` block must be marked as Primary for each Network Interface.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) PublicIpAddresses

A `publicIpAddress` block as defined below.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) SubnetId

The ID of the Subnet which this IP Configuration should be connected to.

> `subnetId` is required if `version` is set to `IPv4`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext

func (o WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationOutput) Version

The Internet Protocol Version which should be used for this IP Configuration. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`.

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name string `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.
	PublicIpPrefixId *string `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version *string `pulumi:"version"`
}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs struct {
	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel pulumi.StringPtrInput `pulumi:"domainNameLabel"`
	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.
	IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"`
	// One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.
	IpTags WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput `pulumi:"ipTags"`
	// The Name of the Public IP Address Configuration.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.
	PublicIpPrefixId pulumi.StringPtrInput `pulumi:"publicIpPrefixId"`
	// The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArray{ WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...} }

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArrayOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs{...}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag string `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type string `pulumi:"type"`
}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs struct {
	// The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.
	Tag pulumi.StringInput `pulumi:"tag"`
	// The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.
	Type pulumi.StringInput `pulumi:"type"`
}

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray []WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArray{ WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...} }

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArrayOutputWithContext

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput() WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
	ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext(context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput
}

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput is an input type that accepts WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs and WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagInput` via:

WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs{...}

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Tag

The IP Tag associated with the Public IP, such as `SQL` or `Storage`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutputWithContext

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagOutput) Type

The Type of IP Tag, such as `FirstPartyUsage`. Changing this forces a new resource to be created.

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) DomainNameLabel

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IdleTimeoutInMinutes

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range `4` to `32`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) IpTags

One or more `ipTag` blocks as defined above. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Name

The Name of the Public IP Address Configuration.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) PublicIpPrefixId

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

> **NOTE:** This functionality is in Preview and must be opted into via `az feature register --namespace Microsoft.Network --name AllowBringYourOwnPublicIpAddress` and then `az provider register -n Microsoft.Network`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutputWithContext

func (WindowsVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressOutput) Version added in v5.18.0

The Internet Protocol Version which should be used for this public IP address. Possible values are `IPv4` and `IPv6`. Defaults to `IPv4`. Changing this forces a new resource to be created.

type WindowsVirtualMachineScaleSetNetworkInterfaceOutput

type WindowsVirtualMachineScaleSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) DnsServers

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) ElementType

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) EnableAcceleratedNetworking

Does this Network Interface support Accelerated Networking? Defaults to `false`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) EnableIpForwarding

Does this Network Interface support IP Forwarding? Defaults to `false`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) IpConfigurations

One or more `ipConfiguration` blocks as defined above.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) Name

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) NetworkSecurityGroupId

The ID of a Network Security Group which should be assigned to this Network Interface.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) Primary

Is this the Primary IP Configuration?

> **NOTE:** If multiple `networkInterface` blocks are specified, one must be set to `primary`.

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutput

func (o WindowsVirtualMachineScaleSetNetworkInterfaceOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutput() WindowsVirtualMachineScaleSetNetworkInterfaceOutput

func (WindowsVirtualMachineScaleSetNetworkInterfaceOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutputWithContext

func (o WindowsVirtualMachineScaleSetNetworkInterfaceOutput) ToWindowsVirtualMachineScaleSetNetworkInterfaceOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetNetworkInterfaceOutput

type WindowsVirtualMachineScaleSetOsDisk

type WindowsVirtualMachineScaleSetOsDisk struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching string `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettings `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId *string `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId *string `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType *string `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType string `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled *bool `pulumi:"writeAcceleratorEnabled"`
}

type WindowsVirtualMachineScaleSetOsDiskArgs

type WindowsVirtualMachineScaleSetOsDiskArgs struct {
	// The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
	Caching pulumi.StringInput `pulumi:"caching"`
	// A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput `pulumi:"diffDiskSettings"`
	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault
	//
	// > **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions
	DiskEncryptionSetId pulumi.StringPtrInput `pulumi:"diskEncryptionSetId"`
	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	//
	// > **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecureVmDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"secureVmDiskEncryptionSetId"`
	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.
	//
	// > **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.
	SecurityEncryptionType pulumi.StringPtrInput `pulumi:"securityEncryptionType"`
	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
	StorageAccountType pulumi.StringInput `pulumi:"storageAccountType"`
	// Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.
	//
	// > **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.
	WriteAcceleratorEnabled pulumi.BoolPtrInput `pulumi:"writeAcceleratorEnabled"`
}

func (WindowsVirtualMachineScaleSetOsDiskArgs) ElementType

func (WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskOutput

func (i WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskOutput() WindowsVirtualMachineScaleSetOsDiskOutput

func (WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskOutputWithContext

func (i WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskOutput

func (WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput

func (i WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput() WindowsVirtualMachineScaleSetOsDiskPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetOsDiskArgs) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskPtrOutput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettings

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettings struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option string `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement *string `pulumi:"placement"`
}

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs struct {
	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.
	Option pulumi.StringInput `pulumi:"option"`
	// Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.
	Placement pulumi.StringPtrInput `pulumi:"placement"`
}

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ElementType

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (i WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (i WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput() WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput() WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
	ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput
}

WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInput is an input type that accepts WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs and WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInput` via:

WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ElementType

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput() WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
	ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput
}

WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput is an input type that accepts WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs, WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtr and WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrInput` via:

        WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Elem

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Option

Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is `Local`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) Placement added in v5.13.0

Specifies where to store the Ephemeral Disk. Possible values are `CacheDisk` and `ResourceDisk`. Defaults to `CacheDisk`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsPtrOutput

type WindowsVirtualMachineScaleSetOsDiskInput

type WindowsVirtualMachineScaleSetOsDiskInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetOsDiskOutput() WindowsVirtualMachineScaleSetOsDiskOutput
	ToWindowsVirtualMachineScaleSetOsDiskOutputWithContext(context.Context) WindowsVirtualMachineScaleSetOsDiskOutput
}

WindowsVirtualMachineScaleSetOsDiskInput is an input type that accepts WindowsVirtualMachineScaleSetOsDiskArgs and WindowsVirtualMachineScaleSetOsDiskOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetOsDiskInput` via:

WindowsVirtualMachineScaleSetOsDiskArgs{...}

type WindowsVirtualMachineScaleSetOsDiskOutput

type WindowsVirtualMachineScaleSetOsDiskOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetOsDiskOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (WindowsVirtualMachineScaleSetOsDiskOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (WindowsVirtualMachineScaleSetOsDiskOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (WindowsVirtualMachineScaleSetOsDiskOutput) ElementType

func (WindowsVirtualMachineScaleSetOsDiskOutput) SecureVmDiskEncryptionSetId added in v5.8.0

func (o WindowsVirtualMachineScaleSetOsDiskOutput) SecureVmDiskEncryptionSetId() pulumi.StringPtrOutput

The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineScaleSetOsDiskOutput) SecurityEncryptionType added in v5.8.0

Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineScaleSetOsDiskOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskOutput

func (o WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskOutput() WindowsVirtualMachineScaleSetOsDiskOutput

func (WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskOutput

func (WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput

func (o WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput() WindowsVirtualMachineScaleSetOsDiskPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskOutput) WriteAcceleratorEnabled

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type WindowsVirtualMachineScaleSetOsDiskPtrInput

type WindowsVirtualMachineScaleSetOsDiskPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetOsDiskPtrOutput() WindowsVirtualMachineScaleSetOsDiskPtrOutput
	ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetOsDiskPtrOutput
}

WindowsVirtualMachineScaleSetOsDiskPtrInput is an input type that accepts WindowsVirtualMachineScaleSetOsDiskArgs, WindowsVirtualMachineScaleSetOsDiskPtr and WindowsVirtualMachineScaleSetOsDiskPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetOsDiskPtrInput` via:

        WindowsVirtualMachineScaleSetOsDiskArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetOsDiskPtrOutput

type WindowsVirtualMachineScaleSetOsDiskPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) Caching

The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) DiffDiskSettings

A `diffDiskSettings` block as defined above. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) DiskEncryptionSetId

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with `secureVmDiskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** The Disk Encryption Set must have the `Reader` Role Assignment scoped on the Key Vault - in addition to an Access Policy to the Key Vault

> **NOTE:** Disk Encryption Sets are in Public Preview in a limited set of regions

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) DiskSizeGb

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

> **NOTE:** If specified this must be equal to or larger than the size of the Image the VM Scale Set is based on. When creating a larger disk than exists in the image you'll need to repartition the disk to use the remaining space.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) Elem

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) SecureVmDiskEncryptionSetId added in v5.8.0

The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with `diskEncryptionSetId`. Changing this forces a new resource to be created.

> **NOTE:** `secureVmDiskEncryptionSetId` can only be specified when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) SecurityEncryptionType added in v5.8.0

Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are `VMGuestStateOnly` and `DiskWithVMGuestState`. Changing this forces a new resource to be created.

> **NOTE:** `vtpmEnabled` must be set to `true` when `securityEncryptionType` is specified.

> **NOTE:** `encryptionAtHostEnabled` cannot be set to `true` when `securityEncryptionType` is set to `DiskWithVMGuestState`.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) StorageAccountType

The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput

func (o WindowsVirtualMachineScaleSetOsDiskPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutput() WindowsVirtualMachineScaleSetOsDiskPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetOsDiskPtrOutput) ToWindowsVirtualMachineScaleSetOsDiskPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOsDiskPtrOutput

func (WindowsVirtualMachineScaleSetOsDiskPtrOutput) WriteAcceleratorEnabled

Should Write Accelerator be Enabled for this OS Disk? Defaults to `false`.

> **NOTE:** This requires that the `storageAccountType` is set to `Premium_LRS` and that `caching` is set to `None`.

type WindowsVirtualMachineScaleSetOutput

type WindowsVirtualMachineScaleSetOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetOutput) AdditionalCapabilities added in v5.5.0

An `additionalCapabilities` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) AdditionalUnattendContents added in v5.5.0

One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) AdminPassword added in v5.5.0

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) AdminUsername added in v5.5.0

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) AutomaticInstanceRepair added in v5.5.0

An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).

> **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).

func (WindowsVirtualMachineScaleSetOutput) AutomaticOsUpgradePolicy added in v5.5.0

An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.

func (WindowsVirtualMachineScaleSetOutput) BootDiagnostics added in v5.5.0

A `bootDiagnostics` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) CapacityReservationGroupId added in v5.13.0

func (o WindowsVirtualMachineScaleSetOutput) CapacityReservationGroupId() pulumi.StringPtrOutput

Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.

> **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`

> **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.

func (WindowsVirtualMachineScaleSetOutput) ComputerNamePrefix added in v5.5.0

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) CustomData added in v5.5.0

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

> **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.

func (WindowsVirtualMachineScaleSetOutput) DataDisks added in v5.5.0

One or more `dataDisk` blocks as defined below.

func (WindowsVirtualMachineScaleSetOutput) DoNotRunExtensionsOnOverprovisionedMachines added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) DoNotRunExtensionsOnOverprovisionedMachines() pulumi.BoolPtrOutput

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.

func (WindowsVirtualMachineScaleSetOutput) EdgeZone added in v5.5.0

Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.

func (WindowsVirtualMachineScaleSetOutput) ElementType

func (WindowsVirtualMachineScaleSetOutput) EnableAutomaticUpdates added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) EnableAutomaticUpdates() pulumi.BoolPtrOutput

Are automatic updates enabled for this Virtual Machine? Defaults to `true`.

func (WindowsVirtualMachineScaleSetOutput) EncryptionAtHostEnabled added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) EncryptionAtHostEnabled() pulumi.BoolPtrOutput

Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?

func (WindowsVirtualMachineScaleSetOutput) EvictionPolicy added in v5.5.0

Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (WindowsVirtualMachineScaleSetOutput) ExtensionOperationsEnabled added in v5.18.0

func (o WindowsVirtualMachineScaleSetOutput) ExtensionOperationsEnabled() pulumi.BoolOutput

Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Windows Virtual Machine Scale Set to be created.

> **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.

func (WindowsVirtualMachineScaleSetOutput) Extensions added in v5.5.0

One or more `extension` blocks as defined below

func (WindowsVirtualMachineScaleSetOutput) ExtensionsTimeBudget added in v5.5.0

Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.

func (WindowsVirtualMachineScaleSetOutput) GalleryApplication added in v5.33.0

One or more `galleryApplication` blocks as defined below.

func (WindowsVirtualMachineScaleSetOutput) GalleryApplications deprecated added in v5.18.0

Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0

func (WindowsVirtualMachineScaleSetOutput) HealthProbeId added in v5.5.0

The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.

func (WindowsVirtualMachineScaleSetOutput) HostGroupId added in v5.18.0

Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) Instances added in v5.5.0

The number of Virtual Machines in the Scale Set.

> **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.

func (WindowsVirtualMachineScaleSetOutput) LicenseType added in v5.5.0

Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing)) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.

func (WindowsVirtualMachineScaleSetOutput) Location added in v5.5.0

The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) MaxBidPrice added in v5.5.0

The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.

> **NOTE:** This can only be configured when `priority` is set to `Spot`.

func (WindowsVirtualMachineScaleSetOutput) Name added in v5.5.0

The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) NetworkInterfaces added in v5.5.0

One or more `networkInterface` blocks as defined below.

func (WindowsVirtualMachineScaleSetOutput) OsDisk added in v5.5.0

An `osDisk` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) Overprovision added in v5.5.0

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.

func (WindowsVirtualMachineScaleSetOutput) Plan added in v5.5.0

A `plan` block as defined below. Changing this forces a new resource to be created.

> **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.

func (WindowsVirtualMachineScaleSetOutput) PlatformFaultDomainCount added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) PlatformFaultDomainCount() pulumi.IntOutput

Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) Priority added in v5.5.0

The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.

> **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.

func (WindowsVirtualMachineScaleSetOutput) ProvisionVmAgent added in v5.5.0

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) ProximityPlacementGroupId added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) ProximityPlacementGroupId() pulumi.StringPtrOutput

The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) ResourceGroupName added in v5.5.0

The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) RollingUpgradePolicy added in v5.5.0

A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) ScaleIn added in v5.18.0

A `scaleIn` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) ScaleInPolicy deprecated added in v5.5.0

Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.

func (WindowsVirtualMachineScaleSetOutput) Secrets added in v5.5.0

One or more `secret` blocks as defined below.

func (WindowsVirtualMachineScaleSetOutput) SecureBootEnabled added in v5.5.0

Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) SinglePlacementGroup added in v5.5.0

func (o WindowsVirtualMachineScaleSetOutput) SinglePlacementGroup() pulumi.BoolPtrOutput

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.

func (WindowsVirtualMachineScaleSetOutput) Sku added in v5.5.0

The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.

func (WindowsVirtualMachineScaleSetOutput) SourceImageId added in v5.5.0

The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (WindowsVirtualMachineScaleSetOutput) SourceImageReference added in v5.5.0

A `sourceImageReference` block as defined below.

> **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.

func (WindowsVirtualMachineScaleSetOutput) SpotRestore added in v5.18.0

A `spotRestore` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

func (WindowsVirtualMachineScaleSetOutput) TerminateNotification deprecated added in v5.5.0

A `terminateNotification` block as defined below.

> **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.

Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.

func (WindowsVirtualMachineScaleSetOutput) TerminationNotification added in v5.5.0

A `terminationNotification` block as defined below.

func (WindowsVirtualMachineScaleSetOutput) Timezone added in v5.5.0

Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).

func (WindowsVirtualMachineScaleSetOutput) ToWindowsVirtualMachineScaleSetOutput

func (o WindowsVirtualMachineScaleSetOutput) ToWindowsVirtualMachineScaleSetOutput() WindowsVirtualMachineScaleSetOutput

func (WindowsVirtualMachineScaleSetOutput) ToWindowsVirtualMachineScaleSetOutputWithContext

func (o WindowsVirtualMachineScaleSetOutput) ToWindowsVirtualMachineScaleSetOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetOutput

func (WindowsVirtualMachineScaleSetOutput) UniqueId added in v5.5.0

The Unique ID for this Windows Virtual Machine Scale Set.

func (WindowsVirtualMachineScaleSetOutput) UpgradeMode added in v5.5.0

func (WindowsVirtualMachineScaleSetOutput) UserData added in v5.5.0

The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.

func (WindowsVirtualMachineScaleSetOutput) VtpmEnabled added in v5.5.0

Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) WinrmListeners added in v5.5.0

One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetOutput) ZoneBalance added in v5.5.0

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.

> **NOTE:** This can only be set to `true` when one or more `zones` are configured.

func (WindowsVirtualMachineScaleSetOutput) Zones added in v5.5.0

Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.

type WindowsVirtualMachineScaleSetPlan

type WindowsVirtualMachineScaleSetPlan struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product string `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
}

type WindowsVirtualMachineScaleSetPlanArgs

type WindowsVirtualMachineScaleSetPlanArgs struct {
	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product pulumi.StringInput `pulumi:"product"`
	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
}

func (WindowsVirtualMachineScaleSetPlanArgs) ElementType

func (WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanOutput

func (i WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanOutput() WindowsVirtualMachineScaleSetPlanOutput

func (WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanOutputWithContext

func (i WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetPlanOutput

func (WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanPtrOutput

func (i WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanPtrOutput() WindowsVirtualMachineScaleSetPlanPtrOutput

func (WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetPlanArgs) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetPlanPtrOutput

type WindowsVirtualMachineScaleSetPlanInput

type WindowsVirtualMachineScaleSetPlanInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetPlanOutput() WindowsVirtualMachineScaleSetPlanOutput
	ToWindowsVirtualMachineScaleSetPlanOutputWithContext(context.Context) WindowsVirtualMachineScaleSetPlanOutput
}

WindowsVirtualMachineScaleSetPlanInput is an input type that accepts WindowsVirtualMachineScaleSetPlanArgs and WindowsVirtualMachineScaleSetPlanOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetPlanInput` via:

WindowsVirtualMachineScaleSetPlanArgs{...}

type WindowsVirtualMachineScaleSetPlanOutput

type WindowsVirtualMachineScaleSetPlanOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetPlanOutput) ElementType

func (WindowsVirtualMachineScaleSetPlanOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanOutput

func (o WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanOutput() WindowsVirtualMachineScaleSetPlanOutput

func (WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanOutputWithContext

func (o WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetPlanOutput

func (WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutput

func (o WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutput() WindowsVirtualMachineScaleSetPlanPtrOutput

func (WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetPlanOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetPlanPtrOutput

type WindowsVirtualMachineScaleSetPlanPtrInput

type WindowsVirtualMachineScaleSetPlanPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetPlanPtrOutput() WindowsVirtualMachineScaleSetPlanPtrOutput
	ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetPlanPtrOutput
}

WindowsVirtualMachineScaleSetPlanPtrInput is an input type that accepts WindowsVirtualMachineScaleSetPlanArgs, WindowsVirtualMachineScaleSetPlanPtr and WindowsVirtualMachineScaleSetPlanPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetPlanPtrInput` via:

        WindowsVirtualMachineScaleSetPlanArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetPlanPtrOutput

type WindowsVirtualMachineScaleSetPlanPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetPlanPtrOutput) Elem

func (WindowsVirtualMachineScaleSetPlanPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetPlanPtrOutput) Name

Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanPtrOutput) Product

Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanPtrOutput) Publisher

Specifies the publisher of the image. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetPlanPtrOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutput

func (o WindowsVirtualMachineScaleSetPlanPtrOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutput() WindowsVirtualMachineScaleSetPlanPtrOutput

func (WindowsVirtualMachineScaleSetPlanPtrOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetPlanPtrOutput) ToWindowsVirtualMachineScaleSetPlanPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetPlanPtrOutput

type WindowsVirtualMachineScaleSetRollingUpgradePolicy

type WindowsVirtualMachineScaleSetRollingUpgradePolicy struct {
	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.
	CrossZoneUpgradesEnabled *bool `pulumi:"crossZoneUpgradesEnabled"`
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent int `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent int `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent int `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches string `pulumi:"pauseTimeBetweenBatches"`
	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.
	PrioritizeUnhealthyInstancesEnabled *bool `pulumi:"prioritizeUnhealthyInstancesEnabled"`
}

type WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs

type WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs struct {
	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.
	CrossZoneUpgradesEnabled pulumi.BoolPtrInput `pulumi:"crossZoneUpgradesEnabled"`
	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent pulumi.IntInput `pulumi:"maxBatchInstancePercent"`
	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent pulumi.IntInput `pulumi:"maxUnhealthyInstancePercent"`
	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent pulumi.IntInput `pulumi:"maxUnhealthyUpgradedInstancePercent"`
	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches pulumi.StringInput `pulumi:"pauseTimeBetweenBatches"`
	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.
	PrioritizeUnhealthyInstancesEnabled pulumi.BoolPtrInput `pulumi:"prioritizeUnhealthyInstancesEnabled"`
}

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ElementType

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

func (i WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutput() WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext

func (i WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (i WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput() WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyInput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutput() WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput
	ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput
}

WindowsVirtualMachineScaleSetRollingUpgradePolicyInput is an input type that accepts WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs and WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetRollingUpgradePolicyInput` via:

WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs{...}

type WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) CrossZoneUpgradesEnabled added in v5.18.0

Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ElementType

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxBatchInstancePercent

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyInstancePercent

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) PauseTimeBetweenBatches

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) PrioritizeUnhealthyInstancesEnabled added in v5.18.0

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) PrioritizeUnhealthyInstancesEnabled() pulumi.BoolPtrOutput

Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput() WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput
	ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput
}

WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput is an input type that accepts WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs, WindowsVirtualMachineScaleSetRollingUpgradePolicyPtr and WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput` via:

        WindowsVirtualMachineScaleSetRollingUpgradePolicyArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) CrossZoneUpgradesEnabled added in v5.18.0

Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are `true` or `false`.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) Elem

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxBatchInstancePercent

The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyInstancePercent

The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) MaxUnhealthyUpgradedInstancePercent() pulumi.IntPtrOutput

The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) PauseTimeBetweenBatches

The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) PrioritizeUnhealthyInstancesEnabled added in v5.18.0

Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are `true` or `false`.

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

func (WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput) ToWindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrOutput

type WindowsVirtualMachineScaleSetScaleIn added in v5.18.0

type WindowsVirtualMachineScaleSetScaleIn struct {
	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.
	ForceDeletionEnabled *bool `pulumi:"forceDeletionEnabled"`
	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).
	Rule *string `pulumi:"rule"`
}

type WindowsVirtualMachineScaleSetScaleInArgs added in v5.18.0

type WindowsVirtualMachineScaleSetScaleInArgs struct {
	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.
	ForceDeletionEnabled pulumi.BoolPtrInput `pulumi:"forceDeletionEnabled"`
	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).
	Rule pulumi.StringPtrInput `pulumi:"rule"`
}

func (WindowsVirtualMachineScaleSetScaleInArgs) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInOutput() WindowsVirtualMachineScaleSetScaleInOutput

func (WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetScaleInOutput

func (WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInPtrOutput() WindowsVirtualMachineScaleSetScaleInPtrOutput

func (WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetScaleInArgs) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetScaleInPtrOutput

type WindowsVirtualMachineScaleSetScaleInInput added in v5.18.0

type WindowsVirtualMachineScaleSetScaleInInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetScaleInOutput() WindowsVirtualMachineScaleSetScaleInOutput
	ToWindowsVirtualMachineScaleSetScaleInOutputWithContext(context.Context) WindowsVirtualMachineScaleSetScaleInOutput
}

WindowsVirtualMachineScaleSetScaleInInput is an input type that accepts WindowsVirtualMachineScaleSetScaleInArgs and WindowsVirtualMachineScaleSetScaleInOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetScaleInInput` via:

WindowsVirtualMachineScaleSetScaleInArgs{...}

type WindowsVirtualMachineScaleSetScaleInOutput added in v5.18.0

type WindowsVirtualMachineScaleSetScaleInOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetScaleInOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetScaleInOutput) ForceDeletionEnabled added in v5.18.0

Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.

func (WindowsVirtualMachineScaleSetScaleInOutput) Rule added in v5.18.0

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).

func (WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInOutput() WindowsVirtualMachineScaleSetScaleInOutput

func (WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetScaleInOutput

func (WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutput() WindowsVirtualMachineScaleSetScaleInPtrOutput

func (WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetScaleInPtrOutput

type WindowsVirtualMachineScaleSetScaleInPtrInput added in v5.18.0

type WindowsVirtualMachineScaleSetScaleInPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetScaleInPtrOutput() WindowsVirtualMachineScaleSetScaleInPtrOutput
	ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetScaleInPtrOutput
}

WindowsVirtualMachineScaleSetScaleInPtrInput is an input type that accepts WindowsVirtualMachineScaleSetScaleInArgs, WindowsVirtualMachineScaleSetScaleInPtr and WindowsVirtualMachineScaleSetScaleInPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetScaleInPtrInput` via:

        WindowsVirtualMachineScaleSetScaleInArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

type WindowsVirtualMachineScaleSetScaleInPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) Elem added in v5.18.0

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) ForceDeletionEnabled added in v5.18.0

Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are `true` or `false`. Defaults to `false`.

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) Rule added in v5.18.0

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are `Default`, `NewestVM` and `OldestVM`, defaults to `Default`. For more information about scale in policy, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-scale-in-policy).

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInPtrOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutput() WindowsVirtualMachineScaleSetScaleInPtrOutput

func (WindowsVirtualMachineScaleSetScaleInPtrOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetScaleInPtrOutput) ToWindowsVirtualMachineScaleSetScaleInPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetScaleInPtrOutput

type WindowsVirtualMachineScaleSetSecret

type WindowsVirtualMachineScaleSetSecret struct {
	// One or more `certificate` blocks as defined above.
	Certificates []WindowsVirtualMachineScaleSetSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type WindowsVirtualMachineScaleSetSecretArgs

type WindowsVirtualMachineScaleSetSecretArgs struct {
	// One or more `certificate` blocks as defined above.
	Certificates WindowsVirtualMachineScaleSetSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (WindowsVirtualMachineScaleSetSecretArgs) ElementType

func (WindowsVirtualMachineScaleSetSecretArgs) ToWindowsVirtualMachineScaleSetSecretOutput

func (i WindowsVirtualMachineScaleSetSecretArgs) ToWindowsVirtualMachineScaleSetSecretOutput() WindowsVirtualMachineScaleSetSecretOutput

func (WindowsVirtualMachineScaleSetSecretArgs) ToWindowsVirtualMachineScaleSetSecretOutputWithContext

func (i WindowsVirtualMachineScaleSetSecretArgs) ToWindowsVirtualMachineScaleSetSecretOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretOutput

type WindowsVirtualMachineScaleSetSecretArray

type WindowsVirtualMachineScaleSetSecretArray []WindowsVirtualMachineScaleSetSecretInput

func (WindowsVirtualMachineScaleSetSecretArray) ElementType

func (WindowsVirtualMachineScaleSetSecretArray) ToWindowsVirtualMachineScaleSetSecretArrayOutput

func (i WindowsVirtualMachineScaleSetSecretArray) ToWindowsVirtualMachineScaleSetSecretArrayOutput() WindowsVirtualMachineScaleSetSecretArrayOutput

func (WindowsVirtualMachineScaleSetSecretArray) ToWindowsVirtualMachineScaleSetSecretArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetSecretArray) ToWindowsVirtualMachineScaleSetSecretArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretArrayOutput

type WindowsVirtualMachineScaleSetSecretArrayInput

type WindowsVirtualMachineScaleSetSecretArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSecretArrayOutput() WindowsVirtualMachineScaleSetSecretArrayOutput
	ToWindowsVirtualMachineScaleSetSecretArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSecretArrayOutput
}

WindowsVirtualMachineScaleSetSecretArrayInput is an input type that accepts WindowsVirtualMachineScaleSetSecretArray and WindowsVirtualMachineScaleSetSecretArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSecretArrayInput` via:

WindowsVirtualMachineScaleSetSecretArray{ WindowsVirtualMachineScaleSetSecretArgs{...} }

type WindowsVirtualMachineScaleSetSecretArrayOutput

type WindowsVirtualMachineScaleSetSecretArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSecretArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetSecretArrayOutput) Index

func (WindowsVirtualMachineScaleSetSecretArrayOutput) ToWindowsVirtualMachineScaleSetSecretArrayOutput

func (o WindowsVirtualMachineScaleSetSecretArrayOutput) ToWindowsVirtualMachineScaleSetSecretArrayOutput() WindowsVirtualMachineScaleSetSecretArrayOutput

func (WindowsVirtualMachineScaleSetSecretArrayOutput) ToWindowsVirtualMachineScaleSetSecretArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetSecretArrayOutput) ToWindowsVirtualMachineScaleSetSecretArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretArrayOutput

type WindowsVirtualMachineScaleSetSecretCertificate

type WindowsVirtualMachineScaleSetSecretCertificate struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store string `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url string `pulumi:"url"`
}

type WindowsVirtualMachineScaleSetSecretCertificateArgs

type WindowsVirtualMachineScaleSetSecretCertificateArgs struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store pulumi.StringInput `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url pulumi.StringInput `pulumi:"url"`
}

func (WindowsVirtualMachineScaleSetSecretCertificateArgs) ElementType

func (WindowsVirtualMachineScaleSetSecretCertificateArgs) ToWindowsVirtualMachineScaleSetSecretCertificateOutput

func (i WindowsVirtualMachineScaleSetSecretCertificateArgs) ToWindowsVirtualMachineScaleSetSecretCertificateOutput() WindowsVirtualMachineScaleSetSecretCertificateOutput

func (WindowsVirtualMachineScaleSetSecretCertificateArgs) ToWindowsVirtualMachineScaleSetSecretCertificateOutputWithContext

func (i WindowsVirtualMachineScaleSetSecretCertificateArgs) ToWindowsVirtualMachineScaleSetSecretCertificateOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretCertificateOutput

type WindowsVirtualMachineScaleSetSecretCertificateArray

type WindowsVirtualMachineScaleSetSecretCertificateArray []WindowsVirtualMachineScaleSetSecretCertificateInput

func (WindowsVirtualMachineScaleSetSecretCertificateArray) ElementType

func (WindowsVirtualMachineScaleSetSecretCertificateArray) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutput

func (i WindowsVirtualMachineScaleSetSecretCertificateArray) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutput() WindowsVirtualMachineScaleSetSecretCertificateArrayOutput

func (WindowsVirtualMachineScaleSetSecretCertificateArray) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetSecretCertificateArray) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretCertificateArrayOutput

type WindowsVirtualMachineScaleSetSecretCertificateArrayInput

type WindowsVirtualMachineScaleSetSecretCertificateArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutput() WindowsVirtualMachineScaleSetSecretCertificateArrayOutput
	ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSecretCertificateArrayOutput
}

WindowsVirtualMachineScaleSetSecretCertificateArrayInput is an input type that accepts WindowsVirtualMachineScaleSetSecretCertificateArray and WindowsVirtualMachineScaleSetSecretCertificateArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSecretCertificateArrayInput` via:

WindowsVirtualMachineScaleSetSecretCertificateArray{ WindowsVirtualMachineScaleSetSecretCertificateArgs{...} }

type WindowsVirtualMachineScaleSetSecretCertificateArrayOutput

type WindowsVirtualMachineScaleSetSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSecretCertificateArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetSecretCertificateArrayOutput) Index

func (WindowsVirtualMachineScaleSetSecretCertificateArrayOutput) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutput

func (WindowsVirtualMachineScaleSetSecretCertificateArrayOutput) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetSecretCertificateArrayOutput) ToWindowsVirtualMachineScaleSetSecretCertificateArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretCertificateArrayOutput

type WindowsVirtualMachineScaleSetSecretCertificateInput

type WindowsVirtualMachineScaleSetSecretCertificateInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSecretCertificateOutput() WindowsVirtualMachineScaleSetSecretCertificateOutput
	ToWindowsVirtualMachineScaleSetSecretCertificateOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSecretCertificateOutput
}

WindowsVirtualMachineScaleSetSecretCertificateInput is an input type that accepts WindowsVirtualMachineScaleSetSecretCertificateArgs and WindowsVirtualMachineScaleSetSecretCertificateOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSecretCertificateInput` via:

WindowsVirtualMachineScaleSetSecretCertificateArgs{...}

type WindowsVirtualMachineScaleSetSecretCertificateOutput

type WindowsVirtualMachineScaleSetSecretCertificateOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSecretCertificateOutput) ElementType

func (WindowsVirtualMachineScaleSetSecretCertificateOutput) Store

The certificate store on the Virtual Machine where the certificate should be added.

func (WindowsVirtualMachineScaleSetSecretCertificateOutput) ToWindowsVirtualMachineScaleSetSecretCertificateOutput

func (WindowsVirtualMachineScaleSetSecretCertificateOutput) ToWindowsVirtualMachineScaleSetSecretCertificateOutputWithContext

func (o WindowsVirtualMachineScaleSetSecretCertificateOutput) ToWindowsVirtualMachineScaleSetSecretCertificateOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretCertificateOutput

func (WindowsVirtualMachineScaleSetSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

type WindowsVirtualMachineScaleSetSecretInput

type WindowsVirtualMachineScaleSetSecretInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSecretOutput() WindowsVirtualMachineScaleSetSecretOutput
	ToWindowsVirtualMachineScaleSetSecretOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSecretOutput
}

WindowsVirtualMachineScaleSetSecretInput is an input type that accepts WindowsVirtualMachineScaleSetSecretArgs and WindowsVirtualMachineScaleSetSecretOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSecretInput` via:

WindowsVirtualMachineScaleSetSecretArgs{...}

type WindowsVirtualMachineScaleSetSecretOutput

type WindowsVirtualMachineScaleSetSecretOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSecretOutput) Certificates

One or more `certificate` blocks as defined above.

func (WindowsVirtualMachineScaleSetSecretOutput) ElementType

func (WindowsVirtualMachineScaleSetSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (WindowsVirtualMachineScaleSetSecretOutput) ToWindowsVirtualMachineScaleSetSecretOutput

func (o WindowsVirtualMachineScaleSetSecretOutput) ToWindowsVirtualMachineScaleSetSecretOutput() WindowsVirtualMachineScaleSetSecretOutput

func (WindowsVirtualMachineScaleSetSecretOutput) ToWindowsVirtualMachineScaleSetSecretOutputWithContext

func (o WindowsVirtualMachineScaleSetSecretOutput) ToWindowsVirtualMachineScaleSetSecretOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSecretOutput

type WindowsVirtualMachineScaleSetSourceImageReference

type WindowsVirtualMachineScaleSetSourceImageReference struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version string `pulumi:"version"`
}

type WindowsVirtualMachineScaleSetSourceImageReferenceArgs

type WindowsVirtualMachineScaleSetSourceImageReferenceArgs struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines.
	Sku pulumi.StringInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines.
	Version pulumi.StringInput `pulumi:"version"`
}

func (WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ElementType

func (WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutput

func (i WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutput() WindowsVirtualMachineScaleSetSourceImageReferenceOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (i WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSourceImageReferenceOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (i WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutput() WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (i WindowsVirtualMachineScaleSetSourceImageReferenceArgs) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

type WindowsVirtualMachineScaleSetSourceImageReferenceInput

type WindowsVirtualMachineScaleSetSourceImageReferenceInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSourceImageReferenceOutput() WindowsVirtualMachineScaleSetSourceImageReferenceOutput
	ToWindowsVirtualMachineScaleSetSourceImageReferenceOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSourceImageReferenceOutput
}

WindowsVirtualMachineScaleSetSourceImageReferenceInput is an input type that accepts WindowsVirtualMachineScaleSetSourceImageReferenceArgs and WindowsVirtualMachineScaleSetSourceImageReferenceOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSourceImageReferenceInput` via:

WindowsVirtualMachineScaleSetSourceImageReferenceArgs{...}

type WindowsVirtualMachineScaleSetSourceImageReferenceOutput

type WindowsVirtualMachineScaleSetSourceImageReferenceOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ElementType

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutputWithContext

func (o WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferenceOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSourceImageReferenceOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o WindowsVirtualMachineScaleSetSourceImageReferenceOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (WindowsVirtualMachineScaleSetSourceImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines.

type WindowsVirtualMachineScaleSetSourceImageReferencePtrInput

type WindowsVirtualMachineScaleSetSourceImageReferencePtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutput() WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput
	ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput
}

WindowsVirtualMachineScaleSetSourceImageReferencePtrInput is an input type that accepts WindowsVirtualMachineScaleSetSourceImageReferenceArgs, WindowsVirtualMachineScaleSetSourceImageReferencePtr and WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSourceImageReferencePtrInput` via:

        WindowsVirtualMachineScaleSetSourceImageReferenceArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

type WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) Elem

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) ElementType

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines.

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext

func (o WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) ToWindowsVirtualMachineScaleSetSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput

func (WindowsVirtualMachineScaleSetSourceImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines.

type WindowsVirtualMachineScaleSetSpotRestore added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestore struct {
	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	Enabled *bool `pulumi:"enabled"`
	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.
	Timeout *string `pulumi:"timeout"`
}

type WindowsVirtualMachineScaleSetSpotRestoreArgs added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestoreArgs struct {
	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (WindowsVirtualMachineScaleSetSpotRestoreArgs) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestoreOutput() WindowsVirtualMachineScaleSetSpotRestoreOutput

func (WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestoreOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestoreOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSpotRestoreOutput

func (WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (i WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput() WindowsVirtualMachineScaleSetSpotRestorePtrOutput

func (WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (i WindowsVirtualMachineScaleSetSpotRestoreArgs) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSpotRestorePtrOutput

type WindowsVirtualMachineScaleSetSpotRestoreInput added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestoreInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSpotRestoreOutput() WindowsVirtualMachineScaleSetSpotRestoreOutput
	ToWindowsVirtualMachineScaleSetSpotRestoreOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSpotRestoreOutput
}

WindowsVirtualMachineScaleSetSpotRestoreInput is an input type that accepts WindowsVirtualMachineScaleSetSpotRestoreArgs and WindowsVirtualMachineScaleSetSpotRestoreOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSpotRestoreInput` via:

WindowsVirtualMachineScaleSetSpotRestoreArgs{...}

type WindowsVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestoreOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) Enabled added in v5.18.0

Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) Timeout added in v5.18.0

The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestoreOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestoreOutput() WindowsVirtualMachineScaleSetSpotRestoreOutput

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestoreOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestoreOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSpotRestoreOutput

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput() WindowsVirtualMachineScaleSetSpotRestorePtrOutput

func (WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestoreOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSpotRestorePtrOutput

type WindowsVirtualMachineScaleSetSpotRestorePtrInput added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestorePtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput() WindowsVirtualMachineScaleSetSpotRestorePtrOutput
	ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetSpotRestorePtrOutput
}

WindowsVirtualMachineScaleSetSpotRestorePtrInput is an input type that accepts WindowsVirtualMachineScaleSetSpotRestoreArgs, WindowsVirtualMachineScaleSetSpotRestorePtr and WindowsVirtualMachineScaleSetSpotRestorePtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetSpotRestorePtrInput` via:

        WindowsVirtualMachineScaleSetSpotRestoreArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

type WindowsVirtualMachineScaleSetSpotRestorePtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) Elem added in v5.18.0

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) ElementType added in v5.18.0

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) Enabled added in v5.18.0

Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are `true` or `false`. Defaults to `false`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) Timeout added in v5.18.0

The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between `15` minutes and `120` minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to `PT1H`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestorePtrOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutput() WindowsVirtualMachineScaleSetSpotRestorePtrOutput

func (WindowsVirtualMachineScaleSetSpotRestorePtrOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext added in v5.18.0

func (o WindowsVirtualMachineScaleSetSpotRestorePtrOutput) ToWindowsVirtualMachineScaleSetSpotRestorePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetSpotRestorePtrOutput

type WindowsVirtualMachineScaleSetState

type WindowsVirtualMachineScaleSetState struct {
	// An `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineScaleSetAdditionalCapabilitiesPtrInput
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineScaleSetAdditionalUnattendContentArrayInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringPtrInput
	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringPtrInput
	// An `automaticInstanceRepair` block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid `healthProbeId` or an [Application Health Extension](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension).
	//
	// > **NOTE:** For more information about Automatic Instance Repair, please refer to [this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-instance-repairs).
	AutomaticInstanceRepair WindowsVirtualMachineScaleSetAutomaticInstanceRepairPtrInput
	// An `automaticOsUpgradePolicy` block as defined below. This can only be specified when `upgradeMode` is set to either `Automatic` or `Rolling`.
	AutomaticOsUpgradePolicy WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineScaleSetBootDiagnosticsPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `proximityPlacementGroupId`
	//
	// > **NOTE:** `singlePlacementGroup` must be set to `false` when `capacityReservationGroupId` is specified.
	CapacityReservationGroupId pulumi.StringPtrInput
	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerNamePrefix`, then you must specify `computerNamePrefix`. Changing this forces a new resource to be created.
	ComputerNamePrefix pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	//
	// > **NOTE:** When Custom Data has been configured, it's not possible to remove it without tainting the Virtual Machine Scale Set, due to a limitation of the Azure API.
	CustomData pulumi.StringPtrInput
	// One or more `dataDisk` blocks as defined below.
	DataDisks WindowsVirtualMachineScaleSetDataDiskArrayInput
	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to `false`.
	DoNotRunExtensionsOnOverprovisionedMachines pulumi.BoolPtrInput
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	EdgeZone pulumi.StringPtrInput
	// Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are `true` or `false`. Defaults to `true`. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	//
	// > **NOTE:** `extensionOperationsEnabled` may only be set to `false` if there are no extensions defined in the `extension` field.
	ExtensionOperationsEnabled pulumi.BoolPtrInput
	// One or more `extension` blocks as defined below
	Extensions WindowsVirtualMachineScaleSetExtensionArrayInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between `15` minutes and `120` minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplication WindowsVirtualMachineScaleSetGalleryApplicationArrayInput
	// Deprecated: `galleryApplications` has been renamed to `galleryApplication` and will be deprecated in 4.0
	GalleryApplications WindowsVirtualMachineScaleSetGalleryApplicationArrayInput
	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`.
	HealthProbeId pulumi.StringPtrInput
	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupId pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineScaleSetIdentityPtrInput
	// The number of Virtual Machines in the Scale Set.
	//
	// > **NOTE:** If you're using AutoScaling, you may wish to use [`Ignore Changes` functionality](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to ignore changes to this field.
	Instances pulumi.IntPtrInput
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing)) which should be used for this Virtual Machine Scale Set. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` blocks as defined below.
	NetworkInterfaces WindowsVirtualMachineScaleSetNetworkInterfaceArrayInput
	// An `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineScaleSetOsDiskPtrInput
	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to `true`.
	Overprovision pulumi.BoolPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** When using an image from Azure Marketplace a `plan` must be specified.
	Plan WindowsVirtualMachineScaleSetPlanPtrInput
	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount pulumi.IntPtrInput
	// The Priority of this Virtual Machine Scale Set. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this value forces a new resource.
	//
	// > **NOTE:** When `priority` is set to `Spot` an `evictionPolicy` must be specified.
	Priority pulumi.StringPtrInput
	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A `rollingUpgradePolicy` block as defined below. This is Required and can only be specified when `upgradeMode` is set to `Automatic` or `Rolling`. Changing this forces a new resource to be created.
	RollingUpgradePolicy WindowsVirtualMachineScaleSetRollingUpgradePolicyPtrInput
	// A `scaleIn` block as defined below.
	ScaleIn WindowsVirtualMachineScaleSetScaleInPtrInput
	// Deprecated: `scaleInPolicy` will be removed in favour of the `scaleIn` code block in version 4.0 of the AzureRM Provider.
	ScaleInPolicy pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineScaleSetSecretArrayInput
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to `true`.
	SinglePlacementGroup pulumi.BoolPtrInput
	// The Virtual Machine SKU for the Scale Set, such as `Standard_F2`.
	Sku pulumi.StringPtrInput
	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include `Image ID`, `Shared Image ID`, `Shared Image Version ID`, `Community Gallery Image ID`, `Community Gallery Image Version ID`, `Shared Gallery Image ID` and `Shared Gallery Image Version ID`.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineScaleSetSourceImageReferencePtrInput
	// A `spotRestore` block as defined below.
	SpotRestore WindowsVirtualMachineScaleSetSpotRestorePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	Tags pulumi.StringMapInput
	// A `terminateNotification` block as defined below.
	//
	// > **Note:** This property has been deprecated in favour of the `terminationNotification` property and will be removed in version 4.0 of the provider.
	//
	// Deprecated: `terminateNotification` has been renamed to `terminationNotification` and will be removed in 4.0.
	TerminateNotification WindowsVirtualMachineScaleSetTerminateNotificationPtrInput
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineScaleSetTerminationNotificationPtrInput
	// Specifies the time zone of the virtual machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
	Timezone pulumi.StringPtrInput
	// The Unique ID for this Windows Virtual Machine Scale Set.
	UniqueId    pulumi.StringPtrInput
	UpgradeMode pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData pulumi.StringPtrInput
	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineScaleSetWinrmListenerArrayInput
	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to `false`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be set to `true` when one or more `zones` are configured.
	ZoneBalance pulumi.BoolPtrInput
	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	Zones pulumi.StringArrayInput
}

func (WindowsVirtualMachineScaleSetState) ElementType

type WindowsVirtualMachineScaleSetTerminateNotification

type WindowsVirtualMachineScaleSetTerminateNotification struct {
	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type WindowsVirtualMachineScaleSetTerminateNotificationArgs

type WindowsVirtualMachineScaleSetTerminateNotificationArgs struct {
	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (WindowsVirtualMachineScaleSetTerminateNotificationArgs) ElementType

func (WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationOutputWithContext

func (i WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminateNotificationOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

func (i WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutput() WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (i WindowsVirtualMachineScaleSetTerminateNotificationArgs) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminateNotificationInput

type WindowsVirtualMachineScaleSetTerminateNotificationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetTerminateNotificationOutput() WindowsVirtualMachineScaleSetTerminateNotificationOutput
	ToWindowsVirtualMachineScaleSetTerminateNotificationOutputWithContext(context.Context) WindowsVirtualMachineScaleSetTerminateNotificationOutput
}

WindowsVirtualMachineScaleSetTerminateNotificationInput is an input type that accepts WindowsVirtualMachineScaleSetTerminateNotificationArgs and WindowsVirtualMachineScaleSetTerminateNotificationOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetTerminateNotificationInput` via:

WindowsVirtualMachineScaleSetTerminateNotificationArgs{...}

type WindowsVirtualMachineScaleSetTerminateNotificationOutput

type WindowsVirtualMachineScaleSetTerminateNotificationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) ElementType

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) Enabled

Should the terminate notification be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) Timeout

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationOutputWithContext

func (o WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminateNotificationOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetTerminateNotificationOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminateNotificationPtrInput

type WindowsVirtualMachineScaleSetTerminateNotificationPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutput() WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput
	ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput
}

WindowsVirtualMachineScaleSetTerminateNotificationPtrInput is an input type that accepts WindowsVirtualMachineScaleSetTerminateNotificationArgs, WindowsVirtualMachineScaleSetTerminateNotificationPtr and WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetTerminateNotificationPtrInput` via:

        WindowsVirtualMachineScaleSetTerminateNotificationArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) Elem

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) ElementType

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) Enabled

Should the terminate notification be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) Timeout

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> For more information about the terminate notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

func (WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext

func (o WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminateNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminateNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminationNotification added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotification struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type WindowsVirtualMachineScaleSetTerminationNotificationArgs added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotificationArgs struct {
	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (WindowsVirtualMachineScaleSetTerminationNotificationArgs) ElementType added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationOutputWithContext added in v5.4.0

func (i WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminationNotificationOutput

func (WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (i WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutput() WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput

func (WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (i WindowsVirtualMachineScaleSetTerminationNotificationArgs) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminationNotificationInput added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotificationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetTerminationNotificationOutput() WindowsVirtualMachineScaleSetTerminationNotificationOutput
	ToWindowsVirtualMachineScaleSetTerminationNotificationOutputWithContext(context.Context) WindowsVirtualMachineScaleSetTerminationNotificationOutput
}

WindowsVirtualMachineScaleSetTerminationNotificationInput is an input type that accepts WindowsVirtualMachineScaleSetTerminationNotificationArgs and WindowsVirtualMachineScaleSetTerminationNotificationOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetTerminationNotificationInput` via:

WindowsVirtualMachineScaleSetTerminationNotificationArgs{...}

type WindowsVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotificationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) ElementType added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) Enabled added in v5.4.0

Should the termination notification be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) Timeout added in v5.4.0

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationOutput added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationOutputWithContext added in v5.4.0

func (o WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminationNotificationOutput

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (o WindowsVirtualMachineScaleSetTerminationNotificationOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput

type WindowsVirtualMachineScaleSetTerminationNotificationPtrInput added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotificationPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutput() WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput
	ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(context.Context) WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput
}

WindowsVirtualMachineScaleSetTerminationNotificationPtrInput is an input type that accepts WindowsVirtualMachineScaleSetTerminationNotificationArgs, WindowsVirtualMachineScaleSetTerminationNotificationPtr and WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetTerminationNotificationPtrInput` via:

        WindowsVirtualMachineScaleSetTerminationNotificationArgs{...}

or:

        nil

type WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

type WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) Elem added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) ElementType added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) Enabled added in v5.4.0

Should the termination notification be enabled on this Virtual Machine Scale Set?

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) Timeout added in v5.4.0

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutput added in v5.4.0

func (WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext added in v5.4.0

func (o WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput) ToWindowsVirtualMachineScaleSetTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetTerminationNotificationPtrOutput

type WindowsVirtualMachineScaleSetWinrmListener

type WindowsVirtualMachineScaleSetWinrmListener struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	CertificateUrl *string `pulumi:"certificateUrl"`
	// The Protocol of the WinRM Listener. Possible values are `Http` and `Https`. Changing this forces a new resource to be created.
	Protocol string `pulumi:"protocol"`
}

type WindowsVirtualMachineScaleSetWinrmListenerArgs

type WindowsVirtualMachineScaleSetWinrmListenerArgs struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	CertificateUrl pulumi.StringPtrInput `pulumi:"certificateUrl"`
	// The Protocol of the WinRM Listener. Possible values are `Http` and `Https`. Changing this forces a new resource to be created.
	Protocol pulumi.StringInput `pulumi:"protocol"`
}

func (WindowsVirtualMachineScaleSetWinrmListenerArgs) ElementType

func (WindowsVirtualMachineScaleSetWinrmListenerArgs) ToWindowsVirtualMachineScaleSetWinrmListenerOutput

func (i WindowsVirtualMachineScaleSetWinrmListenerArgs) ToWindowsVirtualMachineScaleSetWinrmListenerOutput() WindowsVirtualMachineScaleSetWinrmListenerOutput

func (WindowsVirtualMachineScaleSetWinrmListenerArgs) ToWindowsVirtualMachineScaleSetWinrmListenerOutputWithContext

func (i WindowsVirtualMachineScaleSetWinrmListenerArgs) ToWindowsVirtualMachineScaleSetWinrmListenerOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetWinrmListenerOutput

type WindowsVirtualMachineScaleSetWinrmListenerArray

type WindowsVirtualMachineScaleSetWinrmListenerArray []WindowsVirtualMachineScaleSetWinrmListenerInput

func (WindowsVirtualMachineScaleSetWinrmListenerArray) ElementType

func (WindowsVirtualMachineScaleSetWinrmListenerArray) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutput

func (i WindowsVirtualMachineScaleSetWinrmListenerArray) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutput() WindowsVirtualMachineScaleSetWinrmListenerArrayOutput

func (WindowsVirtualMachineScaleSetWinrmListenerArray) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutputWithContext

func (i WindowsVirtualMachineScaleSetWinrmListenerArray) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetWinrmListenerArrayOutput

type WindowsVirtualMachineScaleSetWinrmListenerArrayInput

type WindowsVirtualMachineScaleSetWinrmListenerArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutput() WindowsVirtualMachineScaleSetWinrmListenerArrayOutput
	ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutputWithContext(context.Context) WindowsVirtualMachineScaleSetWinrmListenerArrayOutput
}

WindowsVirtualMachineScaleSetWinrmListenerArrayInput is an input type that accepts WindowsVirtualMachineScaleSetWinrmListenerArray and WindowsVirtualMachineScaleSetWinrmListenerArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetWinrmListenerArrayInput` via:

WindowsVirtualMachineScaleSetWinrmListenerArray{ WindowsVirtualMachineScaleSetWinrmListenerArgs{...} }

type WindowsVirtualMachineScaleSetWinrmListenerArrayOutput

type WindowsVirtualMachineScaleSetWinrmListenerArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetWinrmListenerArrayOutput) ElementType

func (WindowsVirtualMachineScaleSetWinrmListenerArrayOutput) Index

func (WindowsVirtualMachineScaleSetWinrmListenerArrayOutput) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutput

func (WindowsVirtualMachineScaleSetWinrmListenerArrayOutput) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutputWithContext

func (o WindowsVirtualMachineScaleSetWinrmListenerArrayOutput) ToWindowsVirtualMachineScaleSetWinrmListenerArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetWinrmListenerArrayOutput

type WindowsVirtualMachineScaleSetWinrmListenerInput

type WindowsVirtualMachineScaleSetWinrmListenerInput interface {
	pulumi.Input

	ToWindowsVirtualMachineScaleSetWinrmListenerOutput() WindowsVirtualMachineScaleSetWinrmListenerOutput
	ToWindowsVirtualMachineScaleSetWinrmListenerOutputWithContext(context.Context) WindowsVirtualMachineScaleSetWinrmListenerOutput
}

WindowsVirtualMachineScaleSetWinrmListenerInput is an input type that accepts WindowsVirtualMachineScaleSetWinrmListenerArgs and WindowsVirtualMachineScaleSetWinrmListenerOutput values. You can construct a concrete instance of `WindowsVirtualMachineScaleSetWinrmListenerInput` via:

WindowsVirtualMachineScaleSetWinrmListenerArgs{...}

type WindowsVirtualMachineScaleSetWinrmListenerOutput

type WindowsVirtualMachineScaleSetWinrmListenerOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineScaleSetWinrmListenerOutput) CertificateUrl

The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

func (WindowsVirtualMachineScaleSetWinrmListenerOutput) ElementType

func (WindowsVirtualMachineScaleSetWinrmListenerOutput) Protocol

The Protocol of the WinRM Listener. Possible values are `Http` and `Https`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineScaleSetWinrmListenerOutput) ToWindowsVirtualMachineScaleSetWinrmListenerOutput

func (o WindowsVirtualMachineScaleSetWinrmListenerOutput) ToWindowsVirtualMachineScaleSetWinrmListenerOutput() WindowsVirtualMachineScaleSetWinrmListenerOutput

func (WindowsVirtualMachineScaleSetWinrmListenerOutput) ToWindowsVirtualMachineScaleSetWinrmListenerOutputWithContext

func (o WindowsVirtualMachineScaleSetWinrmListenerOutput) ToWindowsVirtualMachineScaleSetWinrmListenerOutputWithContext(ctx context.Context) WindowsVirtualMachineScaleSetWinrmListenerOutput

type WindowsVirtualMachineSecret

type WindowsVirtualMachineSecret struct {
	// One or more `certificate` blocks as defined above.
	Certificates []WindowsVirtualMachineSecretCertificate `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId string `pulumi:"keyVaultId"`
}

type WindowsVirtualMachineSecretArgs

type WindowsVirtualMachineSecretArgs struct {
	// One or more `certificate` blocks as defined above.
	Certificates WindowsVirtualMachineSecretCertificateArrayInput `pulumi:"certificates"`
	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultId pulumi.StringInput `pulumi:"keyVaultId"`
}

func (WindowsVirtualMachineSecretArgs) ElementType

func (WindowsVirtualMachineSecretArgs) ToWindowsVirtualMachineSecretOutput

func (i WindowsVirtualMachineSecretArgs) ToWindowsVirtualMachineSecretOutput() WindowsVirtualMachineSecretOutput

func (WindowsVirtualMachineSecretArgs) ToWindowsVirtualMachineSecretOutputWithContext

func (i WindowsVirtualMachineSecretArgs) ToWindowsVirtualMachineSecretOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretOutput

type WindowsVirtualMachineSecretArray

type WindowsVirtualMachineSecretArray []WindowsVirtualMachineSecretInput

func (WindowsVirtualMachineSecretArray) ElementType

func (WindowsVirtualMachineSecretArray) ToWindowsVirtualMachineSecretArrayOutput

func (i WindowsVirtualMachineSecretArray) ToWindowsVirtualMachineSecretArrayOutput() WindowsVirtualMachineSecretArrayOutput

func (WindowsVirtualMachineSecretArray) ToWindowsVirtualMachineSecretArrayOutputWithContext

func (i WindowsVirtualMachineSecretArray) ToWindowsVirtualMachineSecretArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretArrayOutput

type WindowsVirtualMachineSecretArrayInput

type WindowsVirtualMachineSecretArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSecretArrayOutput() WindowsVirtualMachineSecretArrayOutput
	ToWindowsVirtualMachineSecretArrayOutputWithContext(context.Context) WindowsVirtualMachineSecretArrayOutput
}

WindowsVirtualMachineSecretArrayInput is an input type that accepts WindowsVirtualMachineSecretArray and WindowsVirtualMachineSecretArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineSecretArrayInput` via:

WindowsVirtualMachineSecretArray{ WindowsVirtualMachineSecretArgs{...} }

type WindowsVirtualMachineSecretArrayOutput

type WindowsVirtualMachineSecretArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSecretArrayOutput) ElementType

func (WindowsVirtualMachineSecretArrayOutput) Index

func (WindowsVirtualMachineSecretArrayOutput) ToWindowsVirtualMachineSecretArrayOutput

func (o WindowsVirtualMachineSecretArrayOutput) ToWindowsVirtualMachineSecretArrayOutput() WindowsVirtualMachineSecretArrayOutput

func (WindowsVirtualMachineSecretArrayOutput) ToWindowsVirtualMachineSecretArrayOutputWithContext

func (o WindowsVirtualMachineSecretArrayOutput) ToWindowsVirtualMachineSecretArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretArrayOutput

type WindowsVirtualMachineSecretCertificate

type WindowsVirtualMachineSecretCertificate struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store string `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url string `pulumi:"url"`
}

type WindowsVirtualMachineSecretCertificateArgs

type WindowsVirtualMachineSecretCertificateArgs struct {
	// The certificate store on the Virtual Machine where the certificate should be added.
	Store pulumi.StringInput `pulumi:"store"`
	// The Secret URL of a Key Vault Certificate.
	//
	// > **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.
	Url pulumi.StringInput `pulumi:"url"`
}

func (WindowsVirtualMachineSecretCertificateArgs) ElementType

func (WindowsVirtualMachineSecretCertificateArgs) ToWindowsVirtualMachineSecretCertificateOutput

func (i WindowsVirtualMachineSecretCertificateArgs) ToWindowsVirtualMachineSecretCertificateOutput() WindowsVirtualMachineSecretCertificateOutput

func (WindowsVirtualMachineSecretCertificateArgs) ToWindowsVirtualMachineSecretCertificateOutputWithContext

func (i WindowsVirtualMachineSecretCertificateArgs) ToWindowsVirtualMachineSecretCertificateOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretCertificateOutput

type WindowsVirtualMachineSecretCertificateArray

type WindowsVirtualMachineSecretCertificateArray []WindowsVirtualMachineSecretCertificateInput

func (WindowsVirtualMachineSecretCertificateArray) ElementType

func (WindowsVirtualMachineSecretCertificateArray) ToWindowsVirtualMachineSecretCertificateArrayOutput

func (i WindowsVirtualMachineSecretCertificateArray) ToWindowsVirtualMachineSecretCertificateArrayOutput() WindowsVirtualMachineSecretCertificateArrayOutput

func (WindowsVirtualMachineSecretCertificateArray) ToWindowsVirtualMachineSecretCertificateArrayOutputWithContext

func (i WindowsVirtualMachineSecretCertificateArray) ToWindowsVirtualMachineSecretCertificateArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretCertificateArrayOutput

type WindowsVirtualMachineSecretCertificateArrayInput

type WindowsVirtualMachineSecretCertificateArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSecretCertificateArrayOutput() WindowsVirtualMachineSecretCertificateArrayOutput
	ToWindowsVirtualMachineSecretCertificateArrayOutputWithContext(context.Context) WindowsVirtualMachineSecretCertificateArrayOutput
}

WindowsVirtualMachineSecretCertificateArrayInput is an input type that accepts WindowsVirtualMachineSecretCertificateArray and WindowsVirtualMachineSecretCertificateArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineSecretCertificateArrayInput` via:

WindowsVirtualMachineSecretCertificateArray{ WindowsVirtualMachineSecretCertificateArgs{...} }

type WindowsVirtualMachineSecretCertificateArrayOutput

type WindowsVirtualMachineSecretCertificateArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSecretCertificateArrayOutput) ElementType

func (WindowsVirtualMachineSecretCertificateArrayOutput) Index

func (WindowsVirtualMachineSecretCertificateArrayOutput) ToWindowsVirtualMachineSecretCertificateArrayOutput

func (o WindowsVirtualMachineSecretCertificateArrayOutput) ToWindowsVirtualMachineSecretCertificateArrayOutput() WindowsVirtualMachineSecretCertificateArrayOutput

func (WindowsVirtualMachineSecretCertificateArrayOutput) ToWindowsVirtualMachineSecretCertificateArrayOutputWithContext

func (o WindowsVirtualMachineSecretCertificateArrayOutput) ToWindowsVirtualMachineSecretCertificateArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretCertificateArrayOutput

type WindowsVirtualMachineSecretCertificateInput

type WindowsVirtualMachineSecretCertificateInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSecretCertificateOutput() WindowsVirtualMachineSecretCertificateOutput
	ToWindowsVirtualMachineSecretCertificateOutputWithContext(context.Context) WindowsVirtualMachineSecretCertificateOutput
}

WindowsVirtualMachineSecretCertificateInput is an input type that accepts WindowsVirtualMachineSecretCertificateArgs and WindowsVirtualMachineSecretCertificateOutput values. You can construct a concrete instance of `WindowsVirtualMachineSecretCertificateInput` via:

WindowsVirtualMachineSecretCertificateArgs{...}

type WindowsVirtualMachineSecretCertificateOutput

type WindowsVirtualMachineSecretCertificateOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSecretCertificateOutput) ElementType

func (WindowsVirtualMachineSecretCertificateOutput) Store

The certificate store on the Virtual Machine where the certificate should be added.

func (WindowsVirtualMachineSecretCertificateOutput) ToWindowsVirtualMachineSecretCertificateOutput

func (o WindowsVirtualMachineSecretCertificateOutput) ToWindowsVirtualMachineSecretCertificateOutput() WindowsVirtualMachineSecretCertificateOutput

func (WindowsVirtualMachineSecretCertificateOutput) ToWindowsVirtualMachineSecretCertificateOutputWithContext

func (o WindowsVirtualMachineSecretCertificateOutput) ToWindowsVirtualMachineSecretCertificateOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretCertificateOutput

func (WindowsVirtualMachineSecretCertificateOutput) Url

The Secret URL of a Key Vault Certificate.

> **NOTE:** This can be sourced from the `secretId` field within the `keyvault.Certificate` Resource.

type WindowsVirtualMachineSecretInput

type WindowsVirtualMachineSecretInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSecretOutput() WindowsVirtualMachineSecretOutput
	ToWindowsVirtualMachineSecretOutputWithContext(context.Context) WindowsVirtualMachineSecretOutput
}

WindowsVirtualMachineSecretInput is an input type that accepts WindowsVirtualMachineSecretArgs and WindowsVirtualMachineSecretOutput values. You can construct a concrete instance of `WindowsVirtualMachineSecretInput` via:

WindowsVirtualMachineSecretArgs{...}

type WindowsVirtualMachineSecretOutput

type WindowsVirtualMachineSecretOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSecretOutput) Certificates

One or more `certificate` blocks as defined above.

func (WindowsVirtualMachineSecretOutput) ElementType

func (WindowsVirtualMachineSecretOutput) KeyVaultId

The ID of the Key Vault from which all Secrets should be sourced.

func (WindowsVirtualMachineSecretOutput) ToWindowsVirtualMachineSecretOutput

func (o WindowsVirtualMachineSecretOutput) ToWindowsVirtualMachineSecretOutput() WindowsVirtualMachineSecretOutput

func (WindowsVirtualMachineSecretOutput) ToWindowsVirtualMachineSecretOutputWithContext

func (o WindowsVirtualMachineSecretOutput) ToWindowsVirtualMachineSecretOutputWithContext(ctx context.Context) WindowsVirtualMachineSecretOutput

type WindowsVirtualMachineSourceImageReference

type WindowsVirtualMachineSourceImageReference struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer string `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher string `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku string `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version string `pulumi:"version"`
}

type WindowsVirtualMachineSourceImageReferenceArgs

type WindowsVirtualMachineSourceImageReferenceArgs struct {
	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer pulumi.StringInput `pulumi:"offer"`
	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher pulumi.StringInput `pulumi:"publisher"`
	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku pulumi.StringInput `pulumi:"sku"`
	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version pulumi.StringInput `pulumi:"version"`
}

func (WindowsVirtualMachineSourceImageReferenceArgs) ElementType

func (WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferenceOutput

func (i WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferenceOutput() WindowsVirtualMachineSourceImageReferenceOutput

func (WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferenceOutputWithContext

func (i WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferenceOutputWithContext(ctx context.Context) WindowsVirtualMachineSourceImageReferenceOutput

func (WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferencePtrOutput

func (i WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferencePtrOutput() WindowsVirtualMachineSourceImageReferencePtrOutput

func (WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext

func (i WindowsVirtualMachineSourceImageReferenceArgs) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineSourceImageReferencePtrOutput

type WindowsVirtualMachineSourceImageReferenceInput

type WindowsVirtualMachineSourceImageReferenceInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSourceImageReferenceOutput() WindowsVirtualMachineSourceImageReferenceOutput
	ToWindowsVirtualMachineSourceImageReferenceOutputWithContext(context.Context) WindowsVirtualMachineSourceImageReferenceOutput
}

WindowsVirtualMachineSourceImageReferenceInput is an input type that accepts WindowsVirtualMachineSourceImageReferenceArgs and WindowsVirtualMachineSourceImageReferenceOutput values. You can construct a concrete instance of `WindowsVirtualMachineSourceImageReferenceInput` via:

WindowsVirtualMachineSourceImageReferenceArgs{...}

type WindowsVirtualMachineSourceImageReferenceOutput

type WindowsVirtualMachineSourceImageReferenceOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSourceImageReferenceOutput) ElementType

func (WindowsVirtualMachineSourceImageReferenceOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferenceOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferenceOutput) Sku

Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferenceOutput

func (o WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferenceOutput() WindowsVirtualMachineSourceImageReferenceOutput

func (WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferenceOutputWithContext

func (o WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferenceOutputWithContext(ctx context.Context) WindowsVirtualMachineSourceImageReferenceOutput

func (WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutput

func (o WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutput() WindowsVirtualMachineSourceImageReferencePtrOutput

func (WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext

func (o WindowsVirtualMachineSourceImageReferenceOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineSourceImageReferencePtrOutput

func (WindowsVirtualMachineSourceImageReferenceOutput) Version

Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.

type WindowsVirtualMachineSourceImageReferencePtrInput

type WindowsVirtualMachineSourceImageReferencePtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineSourceImageReferencePtrOutput() WindowsVirtualMachineSourceImageReferencePtrOutput
	ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext(context.Context) WindowsVirtualMachineSourceImageReferencePtrOutput
}

WindowsVirtualMachineSourceImageReferencePtrInput is an input type that accepts WindowsVirtualMachineSourceImageReferenceArgs, WindowsVirtualMachineSourceImageReferencePtr and WindowsVirtualMachineSourceImageReferencePtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineSourceImageReferencePtrInput` via:

        WindowsVirtualMachineSourceImageReferenceArgs{...}

or:

        nil

type WindowsVirtualMachineSourceImageReferencePtrOutput

type WindowsVirtualMachineSourceImageReferencePtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineSourceImageReferencePtrOutput) Elem

func (WindowsVirtualMachineSourceImageReferencePtrOutput) ElementType

func (WindowsVirtualMachineSourceImageReferencePtrOutput) Offer

Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferencePtrOutput) Publisher

Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferencePtrOutput) Sku

Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.

func (WindowsVirtualMachineSourceImageReferencePtrOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutput

func (o WindowsVirtualMachineSourceImageReferencePtrOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutput() WindowsVirtualMachineSourceImageReferencePtrOutput

func (WindowsVirtualMachineSourceImageReferencePtrOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext

func (o WindowsVirtualMachineSourceImageReferencePtrOutput) ToWindowsVirtualMachineSourceImageReferencePtrOutputWithContext(ctx context.Context) WindowsVirtualMachineSourceImageReferencePtrOutput

func (WindowsVirtualMachineSourceImageReferencePtrOutput) Version

Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.

type WindowsVirtualMachineState

type WindowsVirtualMachineState struct {
	// A `additionalCapabilities` block as defined below.
	AdditionalCapabilities WindowsVirtualMachineAdditionalCapabilitiesPtrInput
	// One or more `additionalUnattendContent` blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContents WindowsVirtualMachineAdditionalUnattendContentArrayInput
	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	AdminPassword pulumi.StringPtrInput
	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername pulumi.StringPtrInput
	// Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
	AllowExtensionOperations pulumi.BoolPtrInput
	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetId pulumi.StringPtrInput
	// A `bootDiagnostics` block as defined below.
	BootDiagnostics WindowsVirtualMachineBootDiagnosticsPtrInput
	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to `false`.
	//
	// > **NOTE:** `bypassPlatformSafetyChecksOnUserScheduleEnabled` can only be set to `true` when `patchMode` is set to `AutomaticByPlatform`.
	BypassPlatformSafetyChecksOnUserScheduleEnabled pulumi.BoolPtrInput
	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	//
	// > **NOTE:** `capacityReservationGroupId` cannot be used with `availabilitySetId` or `proximityPlacementGroupId`
	CapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computerName`, then you must specify `computerName`. Changing this forces a new resource to be created.
	ComputerName pulumi.StringPtrInput
	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	CustomData pulumi.StringPtrInput
	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with `dedicatedHostId`.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The ID of a Dedicated Host where this machine should be run on. Conflicts with `dedicatedHostGroupId`.
	DedicatedHostId pulumi.StringPtrInput
	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are `SCSI` and `NVMe`.
	DiskControllerType pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	EdgeZone pulumi.StringPtrInput
	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to `true`.
	EnableAutomaticUpdates pulumi.BoolPtrInput
	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled pulumi.BoolPtrInput
	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are `Deallocate` and `Delete`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	EvictionPolicy pulumi.StringPtrInput
	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to `PT1H30M`.
	ExtensionsTimeBudget pulumi.StringPtrInput
	// One or more `galleryApplication` blocks as defined below.
	GalleryApplications WindowsVirtualMachineGalleryApplicationArrayInput
	// Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
	//
	// > **NOTE:** Hotpatching can only be enabled if the `patchMode` is set to `AutomaticByPlatform`, the `provisionVmAgent` is set to `true`, your `sourceImageReference` references a hotpatching enabled image, and the VM's `size` is set to a Azure generation 2 directory within the GitHub Repository.
	HotpatchingEnabled pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity WindowsVirtualMachineIdentityPtrInput
	// Specifies the type of on-premise license (also known as [Azure Hybrid Use Benefit](https://docs.microsoft.com/windows-server/get-started/azure-hybrid-benefit)) which should be used for this Virtual Machine. Possible values are `None`, `Windows_Client` and `Windows_Server`.
	LicenseType pulumi.StringPtrInput
	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the `evictionPolicy`. Defaults to `-1`, which means that the Virtual Machine should not be evicted for price reasons.
	//
	// > **NOTE:** This can only be configured when `priority` is set to `Spot`.
	MaxBidPrice pulumi.Float64PtrInput
	// The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds pulumi.StringArrayInput
	// A `osDisk` block as defined below.
	OsDisk WindowsVirtualMachineOsDiskPtrInput
	// A `osImageNotification` block as defined below.
	OsImageNotification WindowsVirtualMachineOsImageNotificationPtrInput
	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
	//
	// > **NOTE:** If the `patchAssessmentMode` is set to `AutomaticByPlatform` then the `provisionVmAgent` field must be set to `true`.
	PatchAssessmentMode pulumi.StringPtrInput
	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
	//
	// > **NOTE:** If `patchMode` is set to `AutomaticByPlatform` then `provisionVmAgent` must also be set to `true`. If the Virtual Machine is using a hotpatching enabled image the `patchMode` must always be set to `AutomaticByPlatform`.
	PatchMode pulumi.StringPtrInput
	// A `plan` block as defined below. Changing this forces a new resource to be created.
	Plan WindowsVirtualMachinePlanPtrInput
	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to `-1`, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	PlatformFaultDomain pulumi.IntPtrInput
	// Specifies the priority of this Virtual Machine. Possible values are `Regular` and `Spot`. Defaults to `Regular`. Changing this forces a new resource to be created.
	Priority pulumi.StringPtrInput
	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIpAddress pulumi.StringPtrInput
	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIpAddresses pulumi.StringArrayInput
	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** If `provisionVmAgent` is set to `false` then `allowExtensionOperations` must also be set to `false`.
	ProvisionVmAgent pulumi.BoolPtrInput
	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupId pulumi.StringPtrInput
	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIpAddress pulumi.StringPtrInput
	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIpAddresses pulumi.StringArrayInput
	// Specifies the reboot setting for platform scheduled patching. Possible values are `Always`, `IfRequired` and `Never`.
	//
	// > **NOTE:** `rebootSetting` can only be set when `patchMode` is set to `AutomaticByPlatform`.
	RebootSetting pulumi.StringPtrInput
	// The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// One or more `secret` blocks as defined below.
	Secrets WindowsVirtualMachineSecretArrayInput
	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled pulumi.BoolPtrInput
	// The SKU which should be used for this Virtual Machine, such as `Standard_F2`.
	Size pulumi.StringPtrInput
	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include `Image ID`s, `Shared Image ID`s, `Shared Image Version ID`s, `Community Gallery Image ID`s, `Community Gallery Image Version ID`s, `Shared Gallery Image ID`s and `Shared Gallery Image Version ID`s.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageId pulumi.StringPtrInput
	// A `sourceImageReference` block as defined below. Changing this forces a new resource to be created.
	//
	// > **NOTE:** One of either `sourceImageId` or `sourceImageReference` must be set.
	SourceImageReference WindowsVirtualMachineSourceImageReferencePtrInput
	// A mapping of tags which should be assigned to this Virtual Machine.
	Tags pulumi.StringMapInput
	// A `terminationNotification` block as defined below.
	TerminationNotification WindowsVirtualMachineTerminationNotificationPtrInput
	// Specifies the Time Zone which should be used by the Virtual Machine, [the possible values are defined here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Changing this forces a new resource to be created.
	Timezone pulumi.StringPtrInput
	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData pulumi.StringPtrInput
	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineId pulumi.StringPtrInput
	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	//
	// > **NOTE:** To update `virtualMachineScaleSetId` the Preview Feature `Microsoft.Compute/SingleFDAttachDetachVMToVmss` needs to be enabled, see [the documentation](https://review.learn.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-attach-detach-vm#enroll-in-the-preview) for more information.
	//
	// > **NOTE:** Orchestrated Virtual Machine Scale Sets can be provisioned using [the `compute.OrchestratedVirtualMachineScaleSet` resource](https://www.terraform.io/docs/providers/azurerm/r/orchestrated_virtual_machine_scale_set.html).
	VirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies whether VMAgent Platform Updates is enabled. Defaults to `false`.
	VmAgentPlatformUpdatesEnabled pulumi.BoolPtrInput
	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled pulumi.BoolPtrInput
	// One or more `winrmListener` blocks as defined below. Changing this forces a new resource to be created.
	WinrmListeners WindowsVirtualMachineWinrmListenerArrayInput
	// * `zones` - (Optional) Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	Zone pulumi.StringPtrInput
}

func (WindowsVirtualMachineState) ElementType

func (WindowsVirtualMachineState) ElementType() reflect.Type

type WindowsVirtualMachineTerminationNotification

type WindowsVirtualMachineTerminationNotification struct {
	// Should the termination notification be enabled on this Virtual Machine?
	Enabled bool `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout *string `pulumi:"timeout"`
}

type WindowsVirtualMachineTerminationNotificationArgs

type WindowsVirtualMachineTerminationNotificationArgs struct {
	// Should the termination notification be enabled on this Virtual Machine?
	Enabled pulumi.BoolInput `pulumi:"enabled"`
	// Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.
	//
	// > **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).
	Timeout pulumi.StringPtrInput `pulumi:"timeout"`
}

func (WindowsVirtualMachineTerminationNotificationArgs) ElementType

func (WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationOutput

func (i WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationOutput() WindowsVirtualMachineTerminationNotificationOutput

func (WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationOutputWithContext

func (i WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineTerminationNotificationOutput

func (WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationPtrOutput

func (i WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationPtrOutput() WindowsVirtualMachineTerminationNotificationPtrOutput

func (WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext

func (i WindowsVirtualMachineTerminationNotificationArgs) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineTerminationNotificationPtrOutput

type WindowsVirtualMachineTerminationNotificationInput

type WindowsVirtualMachineTerminationNotificationInput interface {
	pulumi.Input

	ToWindowsVirtualMachineTerminationNotificationOutput() WindowsVirtualMachineTerminationNotificationOutput
	ToWindowsVirtualMachineTerminationNotificationOutputWithContext(context.Context) WindowsVirtualMachineTerminationNotificationOutput
}

WindowsVirtualMachineTerminationNotificationInput is an input type that accepts WindowsVirtualMachineTerminationNotificationArgs and WindowsVirtualMachineTerminationNotificationOutput values. You can construct a concrete instance of `WindowsVirtualMachineTerminationNotificationInput` via:

WindowsVirtualMachineTerminationNotificationArgs{...}

type WindowsVirtualMachineTerminationNotificationOutput

type WindowsVirtualMachineTerminationNotificationOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineTerminationNotificationOutput) ElementType

func (WindowsVirtualMachineTerminationNotificationOutput) Enabled

Should the termination notification be enabled on this Virtual Machine?

func (WindowsVirtualMachineTerminationNotificationOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationOutput

func (o WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationOutput() WindowsVirtualMachineTerminationNotificationOutput

func (WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationOutputWithContext

func (o WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationOutputWithContext(ctx context.Context) WindowsVirtualMachineTerminationNotificationOutput

func (WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutput

func (o WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutput() WindowsVirtualMachineTerminationNotificationPtrOutput

func (WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext

func (o WindowsVirtualMachineTerminationNotificationOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineTerminationNotificationPtrOutput

type WindowsVirtualMachineTerminationNotificationPtrInput

type WindowsVirtualMachineTerminationNotificationPtrInput interface {
	pulumi.Input

	ToWindowsVirtualMachineTerminationNotificationPtrOutput() WindowsVirtualMachineTerminationNotificationPtrOutput
	ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext(context.Context) WindowsVirtualMachineTerminationNotificationPtrOutput
}

WindowsVirtualMachineTerminationNotificationPtrInput is an input type that accepts WindowsVirtualMachineTerminationNotificationArgs, WindowsVirtualMachineTerminationNotificationPtr and WindowsVirtualMachineTerminationNotificationPtrOutput values. You can construct a concrete instance of `WindowsVirtualMachineTerminationNotificationPtrInput` via:

        WindowsVirtualMachineTerminationNotificationArgs{...}

or:

        nil

type WindowsVirtualMachineTerminationNotificationPtrOutput

type WindowsVirtualMachineTerminationNotificationPtrOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineTerminationNotificationPtrOutput) Elem

func (WindowsVirtualMachineTerminationNotificationPtrOutput) ElementType

func (WindowsVirtualMachineTerminationNotificationPtrOutput) Enabled

Should the termination notification be enabled on this Virtual Machine?

func (WindowsVirtualMachineTerminationNotificationPtrOutput) Timeout

Length of time (in minutes, between `5` and `15`) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to `PT5M`.

> **NOTE:** For more information about the termination notification, please [refer to this doc](https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-terminate-notification).

func (WindowsVirtualMachineTerminationNotificationPtrOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutput

func (WindowsVirtualMachineTerminationNotificationPtrOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext

func (o WindowsVirtualMachineTerminationNotificationPtrOutput) ToWindowsVirtualMachineTerminationNotificationPtrOutputWithContext(ctx context.Context) WindowsVirtualMachineTerminationNotificationPtrOutput

type WindowsVirtualMachineWinrmListener

type WindowsVirtualMachineWinrmListener struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.
	CertificateUrl *string `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.
	Protocol string `pulumi:"protocol"`
}

type WindowsVirtualMachineWinrmListenerArgs

type WindowsVirtualMachineWinrmListenerArgs struct {
	// The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.
	CertificateUrl pulumi.StringPtrInput `pulumi:"certificateUrl"`
	// Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.
	Protocol pulumi.StringInput `pulumi:"protocol"`
}

func (WindowsVirtualMachineWinrmListenerArgs) ElementType

func (WindowsVirtualMachineWinrmListenerArgs) ToWindowsVirtualMachineWinrmListenerOutput

func (i WindowsVirtualMachineWinrmListenerArgs) ToWindowsVirtualMachineWinrmListenerOutput() WindowsVirtualMachineWinrmListenerOutput

func (WindowsVirtualMachineWinrmListenerArgs) ToWindowsVirtualMachineWinrmListenerOutputWithContext

func (i WindowsVirtualMachineWinrmListenerArgs) ToWindowsVirtualMachineWinrmListenerOutputWithContext(ctx context.Context) WindowsVirtualMachineWinrmListenerOutput

type WindowsVirtualMachineWinrmListenerArray

type WindowsVirtualMachineWinrmListenerArray []WindowsVirtualMachineWinrmListenerInput

func (WindowsVirtualMachineWinrmListenerArray) ElementType

func (WindowsVirtualMachineWinrmListenerArray) ToWindowsVirtualMachineWinrmListenerArrayOutput

func (i WindowsVirtualMachineWinrmListenerArray) ToWindowsVirtualMachineWinrmListenerArrayOutput() WindowsVirtualMachineWinrmListenerArrayOutput

func (WindowsVirtualMachineWinrmListenerArray) ToWindowsVirtualMachineWinrmListenerArrayOutputWithContext

func (i WindowsVirtualMachineWinrmListenerArray) ToWindowsVirtualMachineWinrmListenerArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineWinrmListenerArrayOutput

type WindowsVirtualMachineWinrmListenerArrayInput

type WindowsVirtualMachineWinrmListenerArrayInput interface {
	pulumi.Input

	ToWindowsVirtualMachineWinrmListenerArrayOutput() WindowsVirtualMachineWinrmListenerArrayOutput
	ToWindowsVirtualMachineWinrmListenerArrayOutputWithContext(context.Context) WindowsVirtualMachineWinrmListenerArrayOutput
}

WindowsVirtualMachineWinrmListenerArrayInput is an input type that accepts WindowsVirtualMachineWinrmListenerArray and WindowsVirtualMachineWinrmListenerArrayOutput values. You can construct a concrete instance of `WindowsVirtualMachineWinrmListenerArrayInput` via:

WindowsVirtualMachineWinrmListenerArray{ WindowsVirtualMachineWinrmListenerArgs{...} }

type WindowsVirtualMachineWinrmListenerArrayOutput

type WindowsVirtualMachineWinrmListenerArrayOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineWinrmListenerArrayOutput) ElementType

func (WindowsVirtualMachineWinrmListenerArrayOutput) Index

func (WindowsVirtualMachineWinrmListenerArrayOutput) ToWindowsVirtualMachineWinrmListenerArrayOutput

func (o WindowsVirtualMachineWinrmListenerArrayOutput) ToWindowsVirtualMachineWinrmListenerArrayOutput() WindowsVirtualMachineWinrmListenerArrayOutput

func (WindowsVirtualMachineWinrmListenerArrayOutput) ToWindowsVirtualMachineWinrmListenerArrayOutputWithContext

func (o WindowsVirtualMachineWinrmListenerArrayOutput) ToWindowsVirtualMachineWinrmListenerArrayOutputWithContext(ctx context.Context) WindowsVirtualMachineWinrmListenerArrayOutput

type WindowsVirtualMachineWinrmListenerInput

type WindowsVirtualMachineWinrmListenerInput interface {
	pulumi.Input

	ToWindowsVirtualMachineWinrmListenerOutput() WindowsVirtualMachineWinrmListenerOutput
	ToWindowsVirtualMachineWinrmListenerOutputWithContext(context.Context) WindowsVirtualMachineWinrmListenerOutput
}

WindowsVirtualMachineWinrmListenerInput is an input type that accepts WindowsVirtualMachineWinrmListenerArgs and WindowsVirtualMachineWinrmListenerOutput values. You can construct a concrete instance of `WindowsVirtualMachineWinrmListenerInput` via:

WindowsVirtualMachineWinrmListenerArgs{...}

type WindowsVirtualMachineWinrmListenerOutput

type WindowsVirtualMachineWinrmListenerOutput struct{ *pulumi.OutputState }

func (WindowsVirtualMachineWinrmListenerOutput) CertificateUrl

The Secret URL of a Key Vault Certificate, which must be specified when `protocol` is set to `Https`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineWinrmListenerOutput) ElementType

func (WindowsVirtualMachineWinrmListenerOutput) Protocol

Specifies the protocol of listener. Possible values are `Http` or `Https`. Changing this forces a new resource to be created.

func (WindowsVirtualMachineWinrmListenerOutput) ToWindowsVirtualMachineWinrmListenerOutput

func (o WindowsVirtualMachineWinrmListenerOutput) ToWindowsVirtualMachineWinrmListenerOutput() WindowsVirtualMachineWinrmListenerOutput

func (WindowsVirtualMachineWinrmListenerOutput) ToWindowsVirtualMachineWinrmListenerOutputWithContext

func (o WindowsVirtualMachineWinrmListenerOutput) ToWindowsVirtualMachineWinrmListenerOutputWithContext(ctx context.Context) WindowsVirtualMachineWinrmListenerOutput

Jump to

Keyboard shortcuts

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