1. Packages
  2. Azure Native v2
  3. API Docs
  4. compute
  5. VirtualMachineExtension
These are the docs for Azure Native v2. We recommenend using the latest version, Azure Native v3.
Azure Native v2 v2.90.0 published on Thursday, Mar 27, 2025 by Pulumi

azure-native-v2.compute.VirtualMachineExtension

Explore with Pulumi AI

Describes a Virtual Machine Extension. Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01.

Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01.

Example Usage

VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var virtualMachineExtension = new AzureNative.Compute.VirtualMachineExtension("virtualMachineExtension", new()
    {
        AutoUpgradeMinorVersion = true,
        EnableAutomaticUpgrade = true,
        ForceUpdateTag = "a",
        InstanceView = new AzureNative.Compute.Inputs.VirtualMachineExtensionInstanceViewArgs
        {
            Name = "aaaaaaaaaaaaaaaaa",
            Statuses = new[]
            {
                new AzureNative.Compute.Inputs.InstanceViewStatusArgs
                {
                    Code = "aaaaaaaaaaaaaaaaaaaaaaa",
                    DisplayStatus = "aaaaaa",
                    Level = AzureNative.Compute.StatusLevelTypes.Info,
                    Message = "a",
                    Time = "2021-11-30T12:58:26.522Z",
                },
            },
            Substatuses = new[]
            {
                new AzureNative.Compute.Inputs.InstanceViewStatusArgs
                {
                    Code = "aaaaaaaaaaaaaaaaaaaaaaa",
                    DisplayStatus = "aaaaaa",
                    Level = AzureNative.Compute.StatusLevelTypes.Info,
                    Message = "a",
                    Time = "2021-11-30T12:58:26.522Z",
                },
            },
            Type = "aaaaaaaaa",
            TypeHandlerVersion = "aaaaaaaaaaaaaaaaaaaaaaaaaa",
        },
        Location = "westus",
        ProtectedSettings = null,
        Publisher = "extPublisher",
        ResourceGroupName = "rgcompute",
        Settings = null,
        SuppressFailures = true,
        Tags = 
        {
            { "key9183", "aa" },
        },
        Type = "extType",
        TypeHandlerVersion = "1.2",
        VmExtensionName = "aaaaaaaaaaaaa",
        VmName = "aaaaaaaaaaaaaaaaaaaaaaaa",
    });

});
Copy
package main

import (
	compute "github.com/pulumi/pulumi-azure-native-sdk/compute/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewVirtualMachineExtension(ctx, "virtualMachineExtension", &compute.VirtualMachineExtensionArgs{
			AutoUpgradeMinorVersion: pulumi.Bool(true),
			EnableAutomaticUpgrade:  pulumi.Bool(true),
			ForceUpdateTag:          pulumi.String("a"),
			InstanceView: &compute.VirtualMachineExtensionInstanceViewArgs{
				Name: pulumi.String("aaaaaaaaaaaaaaaaa"),
				Statuses: compute.InstanceViewStatusArray{
					&compute.InstanceViewStatusArgs{
						Code:          pulumi.String("aaaaaaaaaaaaaaaaaaaaaaa"),
						DisplayStatus: pulumi.String("aaaaaa"),
						Level:         compute.StatusLevelTypesInfo,
						Message:       pulumi.String("a"),
						Time:          pulumi.String("2021-11-30T12:58:26.522Z"),
					},
				},
				Substatuses: compute.InstanceViewStatusArray{
					&compute.InstanceViewStatusArgs{
						Code:          pulumi.String("aaaaaaaaaaaaaaaaaaaaaaa"),
						DisplayStatus: pulumi.String("aaaaaa"),
						Level:         compute.StatusLevelTypesInfo,
						Message:       pulumi.String("a"),
						Time:          pulumi.String("2021-11-30T12:58:26.522Z"),
					},
				},
				Type:               pulumi.String("aaaaaaaaa"),
				TypeHandlerVersion: pulumi.String("aaaaaaaaaaaaaaaaaaaaaaaaaa"),
			},
			Location:          pulumi.String("westus"),
			ProtectedSettings: pulumi.Any(map[string]interface{}{}),
			Publisher:         pulumi.String("extPublisher"),
			ResourceGroupName: pulumi.String("rgcompute"),
			Settings:          pulumi.Any(map[string]interface{}{}),
			SuppressFailures:  pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"key9183": pulumi.String("aa"),
			},
			Type:               pulumi.String("extType"),
			TypeHandlerVersion: pulumi.String("1.2"),
			VmExtensionName:    pulumi.String("aaaaaaaaaaaaa"),
			VmName:             pulumi.String("aaaaaaaaaaaaaaaaaaaaaaaa"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.compute.VirtualMachineExtension;
import com.pulumi.azurenative.compute.VirtualMachineExtensionArgs;
import com.pulumi.azurenative.compute.inputs.VirtualMachineExtensionInstanceViewArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var virtualMachineExtension = new VirtualMachineExtension("virtualMachineExtension", VirtualMachineExtensionArgs.builder()
            .autoUpgradeMinorVersion(true)
            .enableAutomaticUpgrade(true)
            .forceUpdateTag("a")
            .instanceView(VirtualMachineExtensionInstanceViewArgs.builder()
                .name("aaaaaaaaaaaaaaaaa")
                .statuses(InstanceViewStatusArgs.builder()
                    .code("aaaaaaaaaaaaaaaaaaaaaaa")
                    .displayStatus("aaaaaa")
                    .level("Info")
                    .message("a")
                    .time("2021-11-30T12:58:26.522Z")
                    .build())
                .substatuses(InstanceViewStatusArgs.builder()
                    .code("aaaaaaaaaaaaaaaaaaaaaaa")
                    .displayStatus("aaaaaa")
                    .level("Info")
                    .message("a")
                    .time("2021-11-30T12:58:26.522Z")
                    .build())
                .type("aaaaaaaaa")
                .typeHandlerVersion("aaaaaaaaaaaaaaaaaaaaaaaaaa")
                .build())
            .location("westus")
            .protectedSettings()
            .publisher("extPublisher")
            .resourceGroupName("rgcompute")
            .settings()
            .suppressFailures(true)
            .tags(Map.of("key9183", "aa"))
            .type("extType")
            .typeHandlerVersion("1.2")
            .vmExtensionName("aaaaaaaaaaaaa")
            .vmName("aaaaaaaaaaaaaaaaaaaaaaaa")
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const virtualMachineExtension = new azure_native.compute.VirtualMachineExtension("virtualMachineExtension", {
    autoUpgradeMinorVersion: true,
    enableAutomaticUpgrade: true,
    forceUpdateTag: "a",
    instanceView: {
        name: "aaaaaaaaaaaaaaaaa",
        statuses: [{
            code: "aaaaaaaaaaaaaaaaaaaaaaa",
            displayStatus: "aaaaaa",
            level: azure_native.compute.StatusLevelTypes.Info,
            message: "a",
            time: "2021-11-30T12:58:26.522Z",
        }],
        substatuses: [{
            code: "aaaaaaaaaaaaaaaaaaaaaaa",
            displayStatus: "aaaaaa",
            level: azure_native.compute.StatusLevelTypes.Info,
            message: "a",
            time: "2021-11-30T12:58:26.522Z",
        }],
        type: "aaaaaaaaa",
        typeHandlerVersion: "aaaaaaaaaaaaaaaaaaaaaaaaaa",
    },
    location: "westus",
    protectedSettings: {},
    publisher: "extPublisher",
    resourceGroupName: "rgcompute",
    settings: {},
    suppressFailures: true,
    tags: {
        key9183: "aa",
    },
    type: "extType",
    typeHandlerVersion: "1.2",
    vmExtensionName: "aaaaaaaaaaaaa",
    vmName: "aaaaaaaaaaaaaaaaaaaaaaaa",
});
Copy
import pulumi
import pulumi_azure_native as azure_native

virtual_machine_extension = azure_native.compute.VirtualMachineExtension("virtualMachineExtension",
    auto_upgrade_minor_version=True,
    enable_automatic_upgrade=True,
    force_update_tag="a",
    instance_view={
        "name": "aaaaaaaaaaaaaaaaa",
        "statuses": [{
            "code": "aaaaaaaaaaaaaaaaaaaaaaa",
            "display_status": "aaaaaa",
            "level": azure_native.compute.StatusLevelTypes.INFO,
            "message": "a",
            "time": "2021-11-30T12:58:26.522Z",
        }],
        "substatuses": [{
            "code": "aaaaaaaaaaaaaaaaaaaaaaa",
            "display_status": "aaaaaa",
            "level": azure_native.compute.StatusLevelTypes.INFO,
            "message": "a",
            "time": "2021-11-30T12:58:26.522Z",
        }],
        "type": "aaaaaaaaa",
        "type_handler_version": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
    },
    location="westus",
    protected_settings={},
    publisher="extPublisher",
    resource_group_name="rgcompute",
    settings={},
    suppress_failures=True,
    tags={
        "key9183": "aa",
    },
    type="extType",
    type_handler_version="1.2",
    vm_extension_name="aaaaaaaaaaaaa",
    vm_name="aaaaaaaaaaaaaaaaaaaaaaaa")
Copy
resources:
  virtualMachineExtension:
    type: azure-native:compute:VirtualMachineExtension
    properties:
      autoUpgradeMinorVersion: true
      enableAutomaticUpgrade: true
      forceUpdateTag: a
      instanceView:
        name: aaaaaaaaaaaaaaaaa
        statuses:
          - code: aaaaaaaaaaaaaaaaaaaaaaa
            displayStatus: aaaaaa
            level: Info
            message: a
            time: 2021-11-30T12:58:26.522Z
        substatuses:
          - code: aaaaaaaaaaaaaaaaaaaaaaa
            displayStatus: aaaaaa
            level: Info
            message: a
            time: 2021-11-30T12:58:26.522Z
        type: aaaaaaaaa
        typeHandlerVersion: aaaaaaaaaaaaaaaaaaaaaaaaaa
      location: westus
      protectedSettings: {}
      publisher: extPublisher
      resourceGroupName: rgcompute
      settings: {}
      suppressFailures: true
      tags:
        key9183: aa
      type: extType
      typeHandlerVersion: '1.2'
      vmExtensionName: aaaaaaaaaaaaa
      vmName: aaaaaaaaaaaaaaaaaaaaaaaa
Copy

VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var virtualMachineExtension = new AzureNative.Compute.VirtualMachineExtension("virtualMachineExtension", new()
    {
        Location = "westus",
        ResourceGroupName = "rgcompute",
        VmExtensionName = "myVMExtension",
        VmName = "myVM",
    });

});
Copy
package main

import (
	compute "github.com/pulumi/pulumi-azure-native-sdk/compute/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewVirtualMachineExtension(ctx, "virtualMachineExtension", &compute.VirtualMachineExtensionArgs{
			Location:          pulumi.String("westus"),
			ResourceGroupName: pulumi.String("rgcompute"),
			VmExtensionName:   pulumi.String("myVMExtension"),
			VmName:            pulumi.String("myVM"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.compute.VirtualMachineExtension;
import com.pulumi.azurenative.compute.VirtualMachineExtensionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var virtualMachineExtension = new VirtualMachineExtension("virtualMachineExtension", VirtualMachineExtensionArgs.builder()
            .location("westus")
            .resourceGroupName("rgcompute")
            .vmExtensionName("myVMExtension")
            .vmName("myVM")
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const virtualMachineExtension = new azure_native.compute.VirtualMachineExtension("virtualMachineExtension", {
    location: "westus",
    resourceGroupName: "rgcompute",
    vmExtensionName: "myVMExtension",
    vmName: "myVM",
});
Copy
import pulumi
import pulumi_azure_native as azure_native

virtual_machine_extension = azure_native.compute.VirtualMachineExtension("virtualMachineExtension",
    location="westus",
    resource_group_name="rgcompute",
    vm_extension_name="myVMExtension",
    vm_name="myVM")
Copy
resources:
  virtualMachineExtension:
    type: azure-native:compute:VirtualMachineExtension
    properties:
      location: westus
      resourceGroupName: rgcompute
      vmExtensionName: myVMExtension
      vmName: myVM
Copy

Create VirtualMachineExtension Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new VirtualMachineExtension(name: string, args: VirtualMachineExtensionArgs, opts?: CustomResourceOptions);
@overload
def VirtualMachineExtension(resource_name: str,
                            args: VirtualMachineExtensionInitArgs,
                            opts: Optional[ResourceOptions] = None)

@overload
def VirtualMachineExtension(resource_name: str,
                            opts: Optional[ResourceOptions] = None,
                            resource_group_name: Optional[str] = None,
                            vm_name: Optional[str] = None,
                            publisher: Optional[str] = None,
                            force_update_tag: Optional[str] = None,
                            location: Optional[str] = None,
                            protected_settings: Optional[Any] = None,
                            protected_settings_from_key_vault: Optional[KeyVaultSecretReferenceArgs] = None,
                            provision_after_extensions: Optional[Sequence[str]] = None,
                            auto_upgrade_minor_version: Optional[bool] = None,
                            instance_view: Optional[VirtualMachineExtensionInstanceViewArgs] = None,
                            settings: Optional[Any] = None,
                            suppress_failures: Optional[bool] = None,
                            tags: Optional[Mapping[str, str]] = None,
                            type: Optional[str] = None,
                            type_handler_version: Optional[str] = None,
                            vm_extension_name: Optional[str] = None,
                            enable_automatic_upgrade: Optional[bool] = None)
func NewVirtualMachineExtension(ctx *Context, name string, args VirtualMachineExtensionArgs, opts ...ResourceOption) (*VirtualMachineExtension, error)
public VirtualMachineExtension(string name, VirtualMachineExtensionArgs args, CustomResourceOptions? opts = null)
public VirtualMachineExtension(String name, VirtualMachineExtensionArgs args)
public VirtualMachineExtension(String name, VirtualMachineExtensionArgs args, CustomResourceOptions options)
type: azure-native:compute:VirtualMachineExtension
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineExtensionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. VirtualMachineExtensionInitArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineExtensionArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineExtensionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. VirtualMachineExtensionArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var virtualMachineExtensionResource = new AzureNative.Compute.VirtualMachineExtension("virtualMachineExtensionResource", new()
{
    ResourceGroupName = "string",
    VmName = "string",
    Publisher = "string",
    ForceUpdateTag = "string",
    Location = "string",
    ProtectedSettings = "any",
    ProtectedSettingsFromKeyVault = 
    {
        { "secretUrl", "string" },
        { "sourceVault", 
        {
            { "id", "string" },
        } },
    },
    ProvisionAfterExtensions = new[]
    {
        "string",
    },
    AutoUpgradeMinorVersion = false,
    InstanceView = 
    {
        { "name", "string" },
        { "statuses", new[]
        {
            
            {
                { "code", "string" },
                { "displayStatus", "string" },
                { "level", "Info" },
                { "message", "string" },
                { "time", "string" },
            },
        } },
        { "substatuses", new[]
        {
            
            {
                { "code", "string" },
                { "displayStatus", "string" },
                { "level", "Info" },
                { "message", "string" },
                { "time", "string" },
            },
        } },
        { "type", "string" },
        { "typeHandlerVersion", "string" },
    },
    Settings = "any",
    SuppressFailures = false,
    Tags = 
    {
        { "string", "string" },
    },
    Type = "string",
    TypeHandlerVersion = "string",
    VmExtensionName = "string",
    EnableAutomaticUpgrade = false,
});
Copy
example, err := compute.NewVirtualMachineExtension(ctx, "virtualMachineExtensionResource", &compute.VirtualMachineExtensionArgs{
	ResourceGroupName: "string",
	VmName:            "string",
	Publisher:         "string",
	ForceUpdateTag:    "string",
	Location:          "string",
	ProtectedSettings: "any",
	ProtectedSettingsFromKeyVault: map[string]interface{}{
		"secretUrl": "string",
		"sourceVault": map[string]interface{}{
			"id": "string",
		},
	},
	ProvisionAfterExtensions: []string{
		"string",
	},
	AutoUpgradeMinorVersion: false,
	InstanceView: map[string]interface{}{
		"name": "string",
		"statuses": []map[string]interface{}{
			map[string]interface{}{
				"code":          "string",
				"displayStatus": "string",
				"level":         "Info",
				"message":       "string",
				"time":          "string",
			},
		},
		"substatuses": []map[string]interface{}{
			map[string]interface{}{
				"code":          "string",
				"displayStatus": "string",
				"level":         "Info",
				"message":       "string",
				"time":          "string",
			},
		},
		"type":               "string",
		"typeHandlerVersion": "string",
	},
	Settings:         "any",
	SuppressFailures: false,
	Tags: map[string]interface{}{
		"string": "string",
	},
	Type:                   "string",
	TypeHandlerVersion:     "string",
	VmExtensionName:        "string",
	EnableAutomaticUpgrade: false,
})
Copy
var virtualMachineExtensionResource = new VirtualMachineExtension("virtualMachineExtensionResource", VirtualMachineExtensionArgs.builder()
    .resourceGroupName("string")
    .vmName("string")
    .publisher("string")
    .forceUpdateTag("string")
    .location("string")
    .protectedSettings("any")
    .protectedSettingsFromKeyVault(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .provisionAfterExtensions("string")
    .autoUpgradeMinorVersion(false)
    .instanceView(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .settings("any")
    .suppressFailures(false)
    .tags(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .type("string")
    .typeHandlerVersion("string")
    .vmExtensionName("string")
    .enableAutomaticUpgrade(false)
    .build());
Copy
virtual_machine_extension_resource = azure_native.compute.VirtualMachineExtension("virtualMachineExtensionResource",
    resource_group_name=string,
    vm_name=string,
    publisher=string,
    force_update_tag=string,
    location=string,
    protected_settings=any,
    protected_settings_from_key_vault={
        secretUrl: string,
        sourceVault: {
            id: string,
        },
    },
    provision_after_extensions=[string],
    auto_upgrade_minor_version=False,
    instance_view={
        name: string,
        statuses: [{
            code: string,
            displayStatus: string,
            level: Info,
            message: string,
            time: string,
        }],
        substatuses: [{
            code: string,
            displayStatus: string,
            level: Info,
            message: string,
            time: string,
        }],
        type: string,
        typeHandlerVersion: string,
    },
    settings=any,
    suppress_failures=False,
    tags={
        string: string,
    },
    type=string,
    type_handler_version=string,
    vm_extension_name=string,
    enable_automatic_upgrade=False)
Copy
const virtualMachineExtensionResource = new azure_native.compute.VirtualMachineExtension("virtualMachineExtensionResource", {
    resourceGroupName: "string",
    vmName: "string",
    publisher: "string",
    forceUpdateTag: "string",
    location: "string",
    protectedSettings: "any",
    protectedSettingsFromKeyVault: {
        secretUrl: "string",
        sourceVault: {
            id: "string",
        },
    },
    provisionAfterExtensions: ["string"],
    autoUpgradeMinorVersion: false,
    instanceView: {
        name: "string",
        statuses: [{
            code: "string",
            displayStatus: "string",
            level: "Info",
            message: "string",
            time: "string",
        }],
        substatuses: [{
            code: "string",
            displayStatus: "string",
            level: "Info",
            message: "string",
            time: "string",
        }],
        type: "string",
        typeHandlerVersion: "string",
    },
    settings: "any",
    suppressFailures: false,
    tags: {
        string: "string",
    },
    type: "string",
    typeHandlerVersion: "string",
    vmExtensionName: "string",
    enableAutomaticUpgrade: false,
});
Copy
type: azure-native:compute:VirtualMachineExtension
properties:
    autoUpgradeMinorVersion: false
    enableAutomaticUpgrade: false
    forceUpdateTag: string
    instanceView:
        name: string
        statuses:
            - code: string
              displayStatus: string
              level: Info
              message: string
              time: string
        substatuses:
            - code: string
              displayStatus: string
              level: Info
              message: string
              time: string
        type: string
        typeHandlerVersion: string
    location: string
    protectedSettings: any
    protectedSettingsFromKeyVault:
        secretUrl: string
        sourceVault:
            id: string
    provisionAfterExtensions:
        - string
    publisher: string
    resourceGroupName: string
    settings: any
    suppressFailures: false
    tags:
        string: string
    type: string
    typeHandlerVersion: string
    vmExtensionName: string
    vmName: string
Copy

VirtualMachineExtension Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The VirtualMachineExtension resource accepts the following input properties:

ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
VmName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine where the extension should be created or updated.
AutoUpgradeMinorVersion bool
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
EnableAutomaticUpgrade bool
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
ForceUpdateTag string
How the extension handler should be forced to update even if the extension configuration has not changed.
InstanceView Pulumi.AzureNative.Compute.Inputs.VirtualMachineExtensionInstanceView
The virtual machine extension instance view.
Location string
Resource location
ProtectedSettings object
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
ProtectedSettingsFromKeyVault Pulumi.AzureNative.Compute.Inputs.KeyVaultSecretReference
The extensions protected settings that are passed by reference, and consumed from key vault
ProvisionAfterExtensions List<string>
Collection of extension names after which this extension needs to be provisioned.
Publisher string
The name of the extension handler publisher.
Settings object
Json formatted public settings for the extension.
SuppressFailures bool
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
Tags Dictionary<string, string>
Resource tags
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
VmExtensionName Changes to this property will trigger replacement. string
The name of the virtual machine extension.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
VmName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine where the extension should be created or updated.
AutoUpgradeMinorVersion bool
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
EnableAutomaticUpgrade bool
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
ForceUpdateTag string
How the extension handler should be forced to update even if the extension configuration has not changed.
InstanceView VirtualMachineExtensionInstanceViewArgs
The virtual machine extension instance view.
Location string
Resource location
ProtectedSettings interface{}
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
ProtectedSettingsFromKeyVault KeyVaultSecretReferenceArgs
The extensions protected settings that are passed by reference, and consumed from key vault
ProvisionAfterExtensions []string
Collection of extension names after which this extension needs to be provisioned.
Publisher string
The name of the extension handler publisher.
Settings interface{}
Json formatted public settings for the extension.
SuppressFailures bool
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
Tags map[string]string
Resource tags
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
VmExtensionName Changes to this property will trigger replacement. string
The name of the virtual machine extension.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group.
vmName
This property is required.
Changes to this property will trigger replacement.
String
The name of the virtual machine where the extension should be created or updated.
autoUpgradeMinorVersion Boolean
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
enableAutomaticUpgrade Boolean
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
forceUpdateTag String
How the extension handler should be forced to update even if the extension configuration has not changed.
instanceView VirtualMachineExtensionInstanceView
The virtual machine extension instance view.
location String
Resource location
protectedSettings Object
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
protectedSettingsFromKeyVault KeyVaultSecretReference
The extensions protected settings that are passed by reference, and consumed from key vault
provisionAfterExtensions List<String>
Collection of extension names after which this extension needs to be provisioned.
publisher String
The name of the extension handler publisher.
settings Object
Json formatted public settings for the extension.
suppressFailures Boolean
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
tags Map<String,String>
Resource tags
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.
vmExtensionName Changes to this property will trigger replacement. String
The name of the virtual machine extension.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
vmName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine where the extension should be created or updated.
autoUpgradeMinorVersion boolean
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
enableAutomaticUpgrade boolean
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
forceUpdateTag string
How the extension handler should be forced to update even if the extension configuration has not changed.
instanceView VirtualMachineExtensionInstanceView
The virtual machine extension instance view.
location string
Resource location
protectedSettings any
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
protectedSettingsFromKeyVault KeyVaultSecretReference
The extensions protected settings that are passed by reference, and consumed from key vault
provisionAfterExtensions string[]
Collection of extension names after which this extension needs to be provisioned.
publisher string
The name of the extension handler publisher.
settings any
Json formatted public settings for the extension.
suppressFailures boolean
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
tags {[key: string]: string}
Resource tags
type string
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion string
Specifies the version of the script handler.
vmExtensionName Changes to this property will trigger replacement. string
The name of the virtual machine extension.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the resource group.
vm_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the virtual machine where the extension should be created or updated.
auto_upgrade_minor_version bool
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
enable_automatic_upgrade bool
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
force_update_tag str
How the extension handler should be forced to update even if the extension configuration has not changed.
instance_view VirtualMachineExtensionInstanceViewArgs
The virtual machine extension instance view.
location str
Resource location
protected_settings Any
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
protected_settings_from_key_vault KeyVaultSecretReferenceArgs
The extensions protected settings that are passed by reference, and consumed from key vault
provision_after_extensions Sequence[str]
Collection of extension names after which this extension needs to be provisioned.
publisher str
The name of the extension handler publisher.
settings Any
Json formatted public settings for the extension.
suppress_failures bool
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
tags Mapping[str, str]
Resource tags
type str
Specifies the type of the extension; an example is "CustomScriptExtension".
type_handler_version str
Specifies the version of the script handler.
vm_extension_name Changes to this property will trigger replacement. str
The name of the virtual machine extension.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group.
vmName
This property is required.
Changes to this property will trigger replacement.
String
The name of the virtual machine where the extension should be created or updated.
autoUpgradeMinorVersion Boolean
Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
enableAutomaticUpgrade Boolean
Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
forceUpdateTag String
How the extension handler should be forced to update even if the extension configuration has not changed.
instanceView Property Map
The virtual machine extension instance view.
location String
Resource location
protectedSettings Any
The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
protectedSettingsFromKeyVault Property Map
The extensions protected settings that are passed by reference, and consumed from key vault
provisionAfterExtensions List<String>
Collection of extension names after which this extension needs to be provisioned.
publisher String
The name of the extension handler publisher.
settings Any
Json formatted public settings for the extension.
suppressFailures Boolean
Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false.
tags Map<String>
Resource tags
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.
vmExtensionName Changes to this property will trigger replacement. String
The name of the virtual machine extension.

Outputs

All input properties are implicitly available as output properties. Additionally, the VirtualMachineExtension resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Name string
Resource name
ProvisioningState string
The provisioning state, which only appears in the response.
Id string
The provider-assigned unique ID for this managed resource.
Name string
Resource name
ProvisioningState string
The provisioning state, which only appears in the response.
id String
The provider-assigned unique ID for this managed resource.
name String
Resource name
provisioningState String
The provisioning state, which only appears in the response.
id string
The provider-assigned unique ID for this managed resource.
name string
Resource name
provisioningState string
The provisioning state, which only appears in the response.
id str
The provider-assigned unique ID for this managed resource.
name str
Resource name
provisioning_state str
The provisioning state, which only appears in the response.
id String
The provider-assigned unique ID for this managed resource.
name String
Resource name
provisioningState String
The provisioning state, which only appears in the response.

Supporting Types

InstanceViewStatus
, InstanceViewStatusArgs

Code string
The status code.
DisplayStatus string
The short localizable label for the status.
Level Pulumi.AzureNative.Compute.StatusLevelTypes
The level code.
Message string
The detailed status message, including for alerts and error messages.
Time string
The time of the status.
Code string
The status code.
DisplayStatus string
The short localizable label for the status.
Level StatusLevelTypes
The level code.
Message string
The detailed status message, including for alerts and error messages.
Time string
The time of the status.
code String
The status code.
displayStatus String
The short localizable label for the status.
level StatusLevelTypes
The level code.
message String
The detailed status message, including for alerts and error messages.
time String
The time of the status.
code string
The status code.
displayStatus string
The short localizable label for the status.
level StatusLevelTypes
The level code.
message string
The detailed status message, including for alerts and error messages.
time string
The time of the status.
code str
The status code.
display_status str
The short localizable label for the status.
level StatusLevelTypes
The level code.
message str
The detailed status message, including for alerts and error messages.
time str
The time of the status.
code String
The status code.
displayStatus String
The short localizable label for the status.
level "Info" | "Warning" | "Error"
The level code.
message String
The detailed status message, including for alerts and error messages.
time String
The time of the status.

InstanceViewStatusResponse
, InstanceViewStatusResponseArgs

Code string
The status code.
DisplayStatus string
The short localizable label for the status.
Level string
The level code.
Message string
The detailed status message, including for alerts and error messages.
Time string
The time of the status.
Code string
The status code.
DisplayStatus string
The short localizable label for the status.
Level string
The level code.
Message string
The detailed status message, including for alerts and error messages.
Time string
The time of the status.
code String
The status code.
displayStatus String
The short localizable label for the status.
level String
The level code.
message String
The detailed status message, including for alerts and error messages.
time String
The time of the status.
code string
The status code.
displayStatus string
The short localizable label for the status.
level string
The level code.
message string
The detailed status message, including for alerts and error messages.
time string
The time of the status.
code str
The status code.
display_status str
The short localizable label for the status.
level str
The level code.
message str
The detailed status message, including for alerts and error messages.
time str
The time of the status.
code String
The status code.
displayStatus String
The short localizable label for the status.
level String
The level code.
message String
The detailed status message, including for alerts and error messages.
time String
The time of the status.

KeyVaultSecretReference
, KeyVaultSecretReferenceArgs

SecretUrl This property is required. string
The URL referencing a secret in a Key Vault.
SourceVault This property is required. Pulumi.AzureNative.Compute.Inputs.SubResource
The relative URL of the Key Vault containing the secret.
SecretUrl This property is required. string
The URL referencing a secret in a Key Vault.
SourceVault This property is required. SubResource
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. String
The URL referencing a secret in a Key Vault.
sourceVault This property is required. SubResource
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. string
The URL referencing a secret in a Key Vault.
sourceVault This property is required. SubResource
The relative URL of the Key Vault containing the secret.
secret_url This property is required. str
The URL referencing a secret in a Key Vault.
source_vault This property is required. SubResource
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. String
The URL referencing a secret in a Key Vault.
sourceVault This property is required. Property Map
The relative URL of the Key Vault containing the secret.

KeyVaultSecretReferenceResponse
, KeyVaultSecretReferenceResponseArgs

SecretUrl This property is required. string
The URL referencing a secret in a Key Vault.
SourceVault This property is required. Pulumi.AzureNative.Compute.Inputs.SubResourceResponse
The relative URL of the Key Vault containing the secret.
SecretUrl This property is required. string
The URL referencing a secret in a Key Vault.
SourceVault This property is required. SubResourceResponse
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. String
The URL referencing a secret in a Key Vault.
sourceVault This property is required. SubResourceResponse
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. string
The URL referencing a secret in a Key Vault.
sourceVault This property is required. SubResourceResponse
The relative URL of the Key Vault containing the secret.
secret_url This property is required. str
The URL referencing a secret in a Key Vault.
source_vault This property is required. SubResourceResponse
The relative URL of the Key Vault containing the secret.
secretUrl This property is required. String
The URL referencing a secret in a Key Vault.
sourceVault This property is required. Property Map
The relative URL of the Key Vault containing the secret.

StatusLevelTypes
, StatusLevelTypesArgs

Info
Info
Warning
Warning
Error
Error
StatusLevelTypesInfo
Info
StatusLevelTypesWarning
Warning
StatusLevelTypesError
Error
Info
Info
Warning
Warning
Error
Error
Info
Info
Warning
Warning
Error
Error
INFO
Info
WARNING
Warning
ERROR
Error
"Info"
Info
"Warning"
Warning
"Error"
Error

SubResource
, SubResourceArgs

Id string
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.
Id string
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.
id String
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.
id string
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.
id str
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.
id String
Sub-resource ID. Both absolute resource ID and a relative resource ID are accepted. An absolute ID starts with /subscriptions/ and contains the entire ID of the parent resource and the ID of the sub-resource in the end. A relative ID replaces the ID of the parent resource with a token '$self', followed by the sub-resource ID itself. Example of a relative ID: $self/frontEndConfigurations/my-frontend.

SubResourceResponse
, SubResourceResponseArgs

Id string
Resource Id
Id string
Resource Id
id String
Resource Id
id string
Resource Id
id str
Resource Id
id String
Resource Id

VirtualMachineExtensionInstanceView
, VirtualMachineExtensionInstanceViewArgs

Name string
The virtual machine extension name.
Statuses List<Pulumi.AzureNative.Compute.Inputs.InstanceViewStatus>
The resource status information.
Substatuses List<Pulumi.AzureNative.Compute.Inputs.InstanceViewStatus>
The resource status information.
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
Name string
The virtual machine extension name.
Statuses []InstanceViewStatus
The resource status information.
Substatuses []InstanceViewStatus
The resource status information.
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
name String
The virtual machine extension name.
statuses List<InstanceViewStatus>
The resource status information.
substatuses List<InstanceViewStatus>
The resource status information.
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.
name string
The virtual machine extension name.
statuses InstanceViewStatus[]
The resource status information.
substatuses InstanceViewStatus[]
The resource status information.
type string
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion string
Specifies the version of the script handler.
name str
The virtual machine extension name.
statuses Sequence[InstanceViewStatus]
The resource status information.
substatuses Sequence[InstanceViewStatus]
The resource status information.
type str
Specifies the type of the extension; an example is "CustomScriptExtension".
type_handler_version str
Specifies the version of the script handler.
name String
The virtual machine extension name.
statuses List<Property Map>
The resource status information.
substatuses List<Property Map>
The resource status information.
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.

VirtualMachineExtensionInstanceViewResponse
, VirtualMachineExtensionInstanceViewResponseArgs

Name string
The virtual machine extension name.
Statuses List<Pulumi.AzureNative.Compute.Inputs.InstanceViewStatusResponse>
The resource status information.
Substatuses List<Pulumi.AzureNative.Compute.Inputs.InstanceViewStatusResponse>
The resource status information.
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
Name string
The virtual machine extension name.
Statuses []InstanceViewStatusResponse
The resource status information.
Substatuses []InstanceViewStatusResponse
The resource status information.
Type string
Specifies the type of the extension; an example is "CustomScriptExtension".
TypeHandlerVersion string
Specifies the version of the script handler.
name String
The virtual machine extension name.
statuses List<InstanceViewStatusResponse>
The resource status information.
substatuses List<InstanceViewStatusResponse>
The resource status information.
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.
name string
The virtual machine extension name.
statuses InstanceViewStatusResponse[]
The resource status information.
substatuses InstanceViewStatusResponse[]
The resource status information.
type string
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion string
Specifies the version of the script handler.
name str
The virtual machine extension name.
statuses Sequence[InstanceViewStatusResponse]
The resource status information.
substatuses Sequence[InstanceViewStatusResponse]
The resource status information.
type str
Specifies the type of the extension; an example is "CustomScriptExtension".
type_handler_version str
Specifies the version of the script handler.
name String
The virtual machine extension name.
statuses List<Property Map>
The resource status information.
substatuses List<Property Map>
The resource status information.
type String
Specifies the type of the extension; an example is "CustomScriptExtension".
typeHandlerVersion String
Specifies the version of the script handler.

Import

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

$ pulumi import azure-native:compute:VirtualMachineExtension myVMExtension /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName} 
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
azure-native-v2 pulumi/pulumi-azure-native
License
Apache-2.0