Machine Extension
    Describes a Machine Extension. Azure REST API version: 2022-12-27. Prior API version in Azure Native 1.x: 2020-08-02. Other available API versions: 2019-08-02-preview, 2020-08-15-preview, 2022-05-10-preview, 2023-06-20-preview, 2023-10-03-preview.
Example Usage
Create or Update a Machine Extension
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
    var machineExtension = new AzureNative.HybridCompute.MachineExtension("machineExtension", new()
    {
        ExtensionName = "CustomScriptExtension",
        Location = "eastus2euap",
        MachineName = "myMachine",
        Properties = new AzureNative.HybridCompute.Inputs.MachineExtensionPropertiesArgs
        {
            Publisher = "Microsoft.Compute",
            Settings =
            {
                { "commandToExecute", "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" },
            },
            Type = "CustomScriptExtension",
            TypeHandlerVersion = "1.10",
        },
        ResourceGroupName = "myResourceGroup",
    });
});Content copied to clipboard
package main
import (
	"github.com/pulumi/pulumi-azure-native-sdk/hybridcompute/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := hybridcompute.NewMachineExtension(ctx, "machineExtension", &hybridcompute.MachineExtensionArgs{
			ExtensionName: pulumi.String("CustomScriptExtension"),
			Location:      pulumi.String("eastus2euap"),
			MachineName:   pulumi.String("myMachine"),
			Properties: &hybridcompute.MachineExtensionPropertiesArgs{
				Publisher: pulumi.String("Microsoft.Compute"),
				Settings: pulumi.Any{
					CommandToExecute: "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"",
				},
				Type:               pulumi.String("CustomScriptExtension"),
				TypeHandlerVersion: pulumi.String("1.10"),
			},
			ResourceGroupName: pulumi.String("myResourceGroup"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.hybridcompute.MachineExtension;
import com.pulumi.azurenative.hybridcompute.MachineExtensionArgs;
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 machineExtension = new MachineExtension("machineExtension", MachineExtensionArgs.builder()
            .extensionName("CustomScriptExtension")
            .location("eastus2euap")
            .machineName("myMachine")
            .properties(Map.ofEntries(
                Map.entry("publisher", "Microsoft.Compute"),
                Map.entry("settings", Map.of("commandToExecute", "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"")),
                Map.entry("type", "CustomScriptExtension"),
                Map.entry("typeHandlerVersion", "1.10")
            ))
            .resourceGroupName("myResourceGroup")
            .build());
    }
}Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:hybridcompute:MachineExtension CustomScriptExtension /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}Content copied to clipboard