azure-native.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",
    });
});
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
	})
}
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());
    }
}
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",
});
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")
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
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",
    });
});
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
	})
}
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());
    }
}
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",
});
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")
resources:
  virtualMachineExtension:
    type: azure-native:compute:VirtualMachineExtension
    properties:
      location: westus
      resourceGroupName: rgcompute
      vmExtensionName: myVMExtension
      vmName: myVM
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 string
- The unique name of the resource.
- args VirtualMachineExtensionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args 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 string
- The unique name of the resource.
- args VirtualMachineExtensionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VirtualMachineExtensionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args 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 = new AzureNative.Compute.Inputs.KeyVaultSecretReferenceArgs
    {
        SecretUrl = "string",
        SourceVault = new AzureNative.Compute.Inputs.SubResourceArgs
        {
            Id = "string",
        },
    },
    ProvisionAfterExtensions = new[]
    {
        "string",
    },
    AutoUpgradeMinorVersion = false,
    InstanceView = new AzureNative.Compute.Inputs.VirtualMachineExtensionInstanceViewArgs
    {
        Name = "string",
        Statuses = new[]
        {
            new AzureNative.Compute.Inputs.InstanceViewStatusArgs
            {
                Code = "string",
                DisplayStatus = "string",
                Level = AzureNative.Compute.StatusLevelTypes.Info,
                Message = "string",
                Time = "string",
            },
        },
        Substatuses = new[]
        {
            new AzureNative.Compute.Inputs.InstanceViewStatusArgs
            {
                Code = "string",
                DisplayStatus = "string",
                Level = AzureNative.Compute.StatusLevelTypes.Info,
                Message = "string",
                Time = "string",
            },
        },
        Type = "string",
        TypeHandlerVersion = "string",
    },
    Settings = "any",
    SuppressFailures = false,
    Tags = 
    {
        { "string", "string" },
    },
    Type = "string",
    TypeHandlerVersion = "string",
    VmExtensionName = "string",
    EnableAutomaticUpgrade = false,
});
example, err := compute.NewVirtualMachineExtension(ctx, "virtualMachineExtensionResource", &compute.VirtualMachineExtensionArgs{
	ResourceGroupName: pulumi.String("string"),
	VmName:            pulumi.String("string"),
	Publisher:         pulumi.String("string"),
	ForceUpdateTag:    pulumi.String("string"),
	Location:          pulumi.String("string"),
	ProtectedSettings: pulumi.Any("any"),
	ProtectedSettingsFromKeyVault: &compute.KeyVaultSecretReferenceArgs{
		SecretUrl: pulumi.String("string"),
		SourceVault: &compute.SubResourceArgs{
			Id: pulumi.String("string"),
		},
	},
	ProvisionAfterExtensions: pulumi.StringArray{
		pulumi.String("string"),
	},
	AutoUpgradeMinorVersion: pulumi.Bool(false),
	InstanceView: &compute.VirtualMachineExtensionInstanceViewArgs{
		Name: pulumi.String("string"),
		Statuses: compute.InstanceViewStatusArray{
			&compute.InstanceViewStatusArgs{
				Code:          pulumi.String("string"),
				DisplayStatus: pulumi.String("string"),
				Level:         compute.StatusLevelTypesInfo,
				Message:       pulumi.String("string"),
				Time:          pulumi.String("string"),
			},
		},
		Substatuses: compute.InstanceViewStatusArray{
			&compute.InstanceViewStatusArgs{
				Code:          pulumi.String("string"),
				DisplayStatus: pulumi.String("string"),
				Level:         compute.StatusLevelTypesInfo,
				Message:       pulumi.String("string"),
				Time:          pulumi.String("string"),
			},
		},
		Type:               pulumi.String("string"),
		TypeHandlerVersion: pulumi.String("string"),
	},
	Settings:         pulumi.Any("any"),
	SuppressFailures: pulumi.Bool(false),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Type:                   pulumi.String("string"),
	TypeHandlerVersion:     pulumi.String("string"),
	VmExtensionName:        pulumi.String("string"),
	EnableAutomaticUpgrade: pulumi.Bool(false),
})
var virtualMachineExtensionResource = new VirtualMachineExtension("virtualMachineExtensionResource", VirtualMachineExtensionArgs.builder()
    .resourceGroupName("string")
    .vmName("string")
    .publisher("string")
    .forceUpdateTag("string")
    .location("string")
    .protectedSettings("any")
    .protectedSettingsFromKeyVault(KeyVaultSecretReferenceArgs.builder()
        .secretUrl("string")
        .sourceVault(SubResourceArgs.builder()
            .id("string")
            .build())
        .build())
    .provisionAfterExtensions("string")
    .autoUpgradeMinorVersion(false)
    .instanceView(VirtualMachineExtensionInstanceViewArgs.builder()
        .name("string")
        .statuses(InstanceViewStatusArgs.builder()
            .code("string")
            .displayStatus("string")
            .level("Info")
            .message("string")
            .time("string")
            .build())
        .substatuses(InstanceViewStatusArgs.builder()
            .code("string")
            .displayStatus("string")
            .level("Info")
            .message("string")
            .time("string")
            .build())
        .type("string")
        .typeHandlerVersion("string")
        .build())
    .settings("any")
    .suppressFailures(false)
    .tags(Map.of("string", "string"))
    .type("string")
    .typeHandlerVersion("string")
    .vmExtensionName("string")
    .enableAutomaticUpgrade(false)
    .build());
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={
        "secret_url": "string",
        "source_vault": {
            "id": "string",
        },
    },
    provision_after_extensions=["string"],
    auto_upgrade_minor_version=False,
    instance_view={
        "name": "string",
        "statuses": [{
            "code": "string",
            "display_status": "string",
            "level": azure_native.compute.StatusLevelTypes.INFO,
            "message": "string",
            "time": "string",
        }],
        "substatuses": [{
            "code": "string",
            "display_status": "string",
            "level": azure_native.compute.StatusLevelTypes.INFO,
            "message": "string",
            "time": "string",
        }],
        "type": "string",
        "type_handler_version": "string",
    },
    settings="any",
    suppress_failures=False,
    tags={
        "string": "string",
    },
    type="string",
    type_handler_version="string",
    vm_extension_name="string",
    enable_automatic_upgrade=False)
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: azure_native.compute.StatusLevelTypes.Info,
            message: "string",
            time: "string",
        }],
        substatuses: [{
            code: "string",
            displayStatus: "string",
            level: azure_native.compute.StatusLevelTypes.Info,
            message: "string",
            time: "string",
        }],
        type: "string",
        typeHandlerVersion: "string",
    },
    settings: "any",
    suppressFailures: false,
    tags: {
        string: "string",
    },
    type: "string",
    typeHandlerVersion: "string",
    vmExtensionName: "string",
    enableAutomaticUpgrade: false,
});
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
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:
- ResourceGroup stringName 
- The name of the resource group.
- VmName string
- The name of the virtual machine where the extension should be created or updated.
- AutoUpgrade boolMinor Version 
- 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.
- EnableAutomatic boolUpgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- ForceUpdate stringTag 
- How the extension handler should be forced to update even if the extension configuration has not changed.
- InstanceView Pulumi.Azure Native. Compute. Inputs. Virtual Machine Extension Instance View 
- 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.
- ProtectedSettings Pulumi.From Key Vault Azure Native. Compute. Inputs. Key Vault Secret Reference 
- The extensions protected settings that are passed by reference, and consumed from key vault
- ProvisionAfter List<string>Extensions 
- 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.
- Dictionary<string, string>
- Resource tags
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- VmExtension stringName 
- The name of the virtual machine extension.
- ResourceGroup stringName 
- The name of the resource group.
- VmName string
- The name of the virtual machine where the extension should be created or updated.
- AutoUpgrade boolMinor Version 
- 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.
- EnableAutomatic boolUpgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- ForceUpdate stringTag 
- How the extension handler should be forced to update even if the extension configuration has not changed.
- InstanceView VirtualMachine Extension Instance View Args 
- 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.
- ProtectedSettings KeyFrom Key Vault Vault Secret Reference Args 
- The extensions protected settings that are passed by reference, and consumed from key vault
- ProvisionAfter []stringExtensions 
- 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.
- map[string]string
- Resource tags
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- VmExtension stringName 
- The name of the virtual machine extension.
- resourceGroup StringName 
- The name of the resource group.
- vmName String
- The name of the virtual machine where the extension should be created or updated.
- autoUpgrade BooleanMinor Version 
- 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.
- enableAutomatic BooleanUpgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- forceUpdate StringTag 
- How the extension handler should be forced to update even if the extension configuration has not changed.
- instanceView VirtualMachine Extension Instance View 
- 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.
- protectedSettings KeyFrom Key Vault Vault Secret Reference 
- The extensions protected settings that are passed by reference, and consumed from key vault
- provisionAfter List<String>Extensions 
- 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.
- Map<String,String>
- Resource tags
- type String
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler StringVersion 
- Specifies the version of the script handler.
- vmExtension StringName 
- The name of the virtual machine extension.
- resourceGroup stringName 
- The name of the resource group.
- vmName string
- The name of the virtual machine where the extension should be created or updated.
- autoUpgrade booleanMinor Version 
- 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.
- enableAutomatic booleanUpgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- forceUpdate stringTag 
- How the extension handler should be forced to update even if the extension configuration has not changed.
- instanceView VirtualMachine Extension Instance View 
- 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.
- protectedSettings KeyFrom Key Vault Vault Secret Reference 
- The extensions protected settings that are passed by reference, and consumed from key vault
- provisionAfter string[]Extensions 
- 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.
- {[key: string]: string}
- Resource tags
- type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler stringVersion 
- Specifies the version of the script handler.
- vmExtension stringName 
- The name of the virtual machine extension.
- resource_group_ strname 
- The name of the resource group.
- vm_name str
- The name of the virtual machine where the extension should be created or updated.
- auto_upgrade_ boolminor_ version 
- 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_ boolupgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- force_update_ strtag 
- How the extension handler should be forced to update even if the extension configuration has not changed.
- instance_view VirtualMachine Extension Instance View Args 
- 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_ Keyfrom_ key_ vault Vault Secret Reference Args 
- The extensions protected settings that are passed by reference, and consumed from key vault
- provision_after_ Sequence[str]extensions 
- 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.
- Mapping[str, str]
- Resource tags
- type str
- Specifies the type of the extension; an example is "CustomScriptExtension".
- type_handler_ strversion 
- Specifies the version of the script handler.
- vm_extension_ strname 
- The name of the virtual machine extension.
- resourceGroup StringName 
- The name of the resource group.
- vmName String
- The name of the virtual machine where the extension should be created or updated.
- autoUpgrade BooleanMinor Version 
- 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.
- enableAutomatic BooleanUpgrade 
- Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
- forceUpdate StringTag 
- 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.
- protectedSettings Property MapFrom Key Vault 
- The extensions protected settings that are passed by reference, and consumed from key vault
- provisionAfter List<String>Extensions 
- 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.
- Map<String>
- Resource tags
- type String
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler StringVersion 
- Specifies the version of the script handler.
- vmExtension StringName 
- 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.Azure Native. Compute. Status Level Types 
- 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
StatusLevel Types 
- 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
StatusLevel Types 
- 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
StatusLevel Types 
- 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
StatusLevel Types 
- 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 string
- The URL referencing a secret in a Key Vault.
- SourceVault Pulumi.Azure Native. Compute. Inputs. Sub Resource 
- The relative URL of the Key Vault containing the secret.
- SecretUrl string
- The URL referencing a secret in a Key Vault.
- SourceVault SubResource 
- The relative URL of the Key Vault containing the secret.
- secretUrl String
- The URL referencing a secret in a Key Vault.
- sourceVault SubResource 
- The relative URL of the Key Vault containing the secret.
- secretUrl string
- The URL referencing a secret in a Key Vault.
- sourceVault SubResource 
- The relative URL of the Key Vault containing the secret.
- secret_url str
- The URL referencing a secret in a Key Vault.
- source_vault SubResource 
- The relative URL of the Key Vault containing the secret.
- secretUrl String
- The URL referencing a secret in a Key Vault.
- sourceVault Property Map
- The relative URL of the Key Vault containing the secret.
KeyVaultSecretReferenceResponse, KeyVaultSecretReferenceResponseArgs          
- SecretUrl string
- The URL referencing a secret in a Key Vault.
- SourceVault Pulumi.Azure Native. Compute. Inputs. Sub Resource Response 
- The relative URL of the Key Vault containing the secret.
- SecretUrl string
- The URL referencing a secret in a Key Vault.
- SourceVault SubResource Response 
- The relative URL of the Key Vault containing the secret.
- secretUrl String
- The URL referencing a secret in a Key Vault.
- sourceVault SubResource Response 
- The relative URL of the Key Vault containing the secret.
- secretUrl string
- The URL referencing a secret in a Key Vault.
- sourceVault SubResource Response 
- The relative URL of the Key Vault containing the secret.
- secret_url str
- The URL referencing a secret in a Key Vault.
- source_vault SubResource Response 
- The relative URL of the Key Vault containing the secret.
- secretUrl String
- The URL referencing a secret in a Key Vault.
- sourceVault Property Map
- The relative URL of the Key Vault containing the secret.
StatusLevelTypes, StatusLevelTypesArgs      
- Info
- Info
- Warning
- Warning
- Error
- Error
- StatusLevel Types Info 
- Info
- StatusLevel Types Warning 
- Warning
- StatusLevel Types Error 
- 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.Azure Native. Compute. Inputs. Instance View Status> 
- The resource status information.
- Substatuses
List<Pulumi.Azure Native. Compute. Inputs. Instance View Status> 
- The resource status information.
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- Name string
- The virtual machine extension name.
- Statuses
[]InstanceView Status 
- The resource status information.
- Substatuses
[]InstanceView Status 
- The resource status information.
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- name String
- The virtual machine extension name.
- statuses
List<InstanceView Status> 
- The resource status information.
- substatuses
List<InstanceView Status> 
- The resource status information.
- type String
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler StringVersion 
- Specifies the version of the script handler.
- name string
- The virtual machine extension name.
- statuses
InstanceView Status[] 
- The resource status information.
- substatuses
InstanceView Status[] 
- The resource status information.
- type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler stringVersion 
- Specifies the version of the script handler.
- name str
- The virtual machine extension name.
- statuses
Sequence[InstanceView Status] 
- The resource status information.
- substatuses
Sequence[InstanceView Status] 
- The resource status information.
- type str
- Specifies the type of the extension; an example is "CustomScriptExtension".
- type_handler_ strversion 
- 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".
- typeHandler StringVersion 
- Specifies the version of the script handler.
VirtualMachineExtensionInstanceViewResponse, VirtualMachineExtensionInstanceViewResponseArgs            
- Name string
- The virtual machine extension name.
- Statuses
List<Pulumi.Azure Native. Compute. Inputs. Instance View Status Response> 
- The resource status information.
- Substatuses
List<Pulumi.Azure Native. Compute. Inputs. Instance View Status Response> 
- The resource status information.
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- Name string
- The virtual machine extension name.
- Statuses
[]InstanceView Status Response 
- The resource status information.
- Substatuses
[]InstanceView Status Response 
- The resource status information.
- Type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- TypeHandler stringVersion 
- Specifies the version of the script handler.
- name String
- The virtual machine extension name.
- statuses
List<InstanceView Status Response> 
- The resource status information.
- substatuses
List<InstanceView Status Response> 
- The resource status information.
- type String
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler StringVersion 
- Specifies the version of the script handler.
- name string
- The virtual machine extension name.
- statuses
InstanceView Status Response[] 
- The resource status information.
- substatuses
InstanceView Status Response[] 
- The resource status information.
- type string
- Specifies the type of the extension; an example is "CustomScriptExtension".
- typeHandler stringVersion 
- Specifies the version of the script handler.
- name str
- The virtual machine extension name.
- statuses
Sequence[InstanceView Status Response] 
- The resource status information.
- substatuses
Sequence[InstanceView Status Response] 
- The resource status information.
- type str
- Specifies the type of the extension; an example is "CustomScriptExtension".
- type_handler_ strversion 
- 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".
- typeHandler StringVersion 
- 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} 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Native pulumi/pulumi-azure-native
- License
- Apache-2.0