azure-native.compute.Image
Explore with Pulumi AI
The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist. Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01.
Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01.
Example Usage
Create a virtual machine image from a blob with DiskEncryptionSet resource.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                BlobUri = "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
                DiskEncryptionSet = new AzureNative.Compute.Inputs.DiskEncryptionSetParametersArgs
                {
                    Id = "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
                },
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					BlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"),
					DiskEncryptionSet: &compute.DiskEncryptionSetParametersArgs{
						Id: pulumi.String("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
					},
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.DiskEncryptionSetParametersArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .blobUri("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd")
                    .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
                        .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}")
                        .build())
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            blobUri: "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            diskEncryptionSet: {
                id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "blob_uri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            "disk_encryption_set": {
                "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          blobUri: https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd
          diskEncryptionSet:
            id: /subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}
          osState: Generalized
          osType: Linux
Create a virtual machine image from a blob.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                BlobUri = "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
            ZoneResilient = true,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					BlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"),
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
				ZoneResilient: pulumi.Bool(true),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .blobUri("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd")
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .zoneResilient(true)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            blobUri: "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
        zoneResilient: true,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "blob_uri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
        "zone_resilient": True,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          blobUri: https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd
          osState: Generalized
          osType: Linux
        zoneResilient: true
Create a virtual machine image from a managed disk with DiskEncryptionSet resource.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                DiskEncryptionSet = new AzureNative.Compute.Inputs.DiskEncryptionSetParametersArgs
                {
                    Id = "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
                },
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
                Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
                },
            },
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					DiskEncryptionSet: &compute.DiskEncryptionSetParametersArgs{
						Id: pulumi.String("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
					},
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
					Snapshot: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"),
					},
				},
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.DiskEncryptionSetParametersArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
                        .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}")
                        .build())
                    .osState("Generalized")
                    .osType("Linux")
                    .snapshot(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot")
                        .build())
                    .build())
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            diskEncryptionSet: {
                id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
            snapshot: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "disk_encryption_set": {
                "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
            "snapshot": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          diskEncryptionSet:
            id: /subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}
          osState: Generalized
          osType: Linux
          snapshot:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot
Create a virtual machine image from a managed disk.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
                },
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
            ZoneResilient = true,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					ManagedDisk: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"),
					},
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
				ZoneResilient: pulumi.Bool(true),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .managedDisk(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk")
                        .build())
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .zoneResilient(true)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            managedDisk: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
        zoneResilient: true,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "managed_disk": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
        "zone_resilient": True,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          managedDisk:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk
          osState: Generalized
          osType: Linux
        zoneResilient: true
Create a virtual machine image from a snapshot with DiskEncryptionSet resource.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                DiskEncryptionSet = new AzureNative.Compute.Inputs.DiskEncryptionSetParametersArgs
                {
                    Id = "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
                },
                ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
                },
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					DiskEncryptionSet: &compute.DiskEncryptionSetParametersArgs{
						Id: pulumi.String("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
					},
					ManagedDisk: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"),
					},
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.DiskEncryptionSetParametersArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
                        .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}")
                        .build())
                    .managedDisk(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk")
                        .build())
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            diskEncryptionSet: {
                id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            managedDisk: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "disk_encryption_set": {
                "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
            },
            "managed_disk": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          diskEncryptionSet:
            id: /subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}
          managedDisk:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk
          osState: Generalized
          osType: Linux
Create a virtual machine image from a snapshot.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
                Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
                },
            },
            ZoneResilient = false,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				OsDisk: &compute.ImageOSDiskArgs{
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
					Snapshot: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"),
					},
				},
				ZoneResilient: pulumi.Bool(false),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .osDisk(ImageOSDiskArgs.builder()
                    .osState("Generalized")
                    .osType("Linux")
                    .snapshot(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot")
                        .build())
                    .build())
                .zoneResilient(false)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        osDisk: {
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
            snapshot: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
        zoneResilient: false,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "os_disk": {
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
            "snapshot": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
        "zone_resilient": False,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        osDisk:
          osState: Generalized
          osType: Linux
          snapshot:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot
        zoneResilient: false
Create a virtual machine image from an existing virtual machine.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        SourceVirtualMachine = new AzureNative.Compute.Inputs.SubResourceArgs
        {
            Id = "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			SourceVirtualMachine: &compute.SubResourceArgs{
				Id: pulumi.String("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .sourceVirtualMachine(SubResourceArgs.builder()
                .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM")
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    sourceVirtualMachine: {
        id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    source_virtual_machine={
        "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      sourceVirtualMachine:
        id: /subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM
Create a virtual machine image that includes a data disk from a blob.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            DataDisks = new[]
            {
                new AzureNative.Compute.Inputs.ImageDataDiskArgs
                {
                    BlobUri = "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
                    Lun = 1,
                },
            },
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                BlobUri = "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
            ZoneResilient = false,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				DataDisks: compute.ImageDataDiskArray{
					&compute.ImageDataDiskArgs{
						BlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd"),
						Lun:     pulumi.Int(1),
					},
				},
				OsDisk: &compute.ImageOSDiskArgs{
					BlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"),
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
				ZoneResilient: pulumi.Bool(false),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .dataDisks(ImageDataDiskArgs.builder()
                    .blobUri("https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd")
                    .lun(1)
                    .build())
                .osDisk(ImageOSDiskArgs.builder()
                    .blobUri("https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd")
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .zoneResilient(false)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        dataDisks: [{
            blobUri: "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
            lun: 1,
        }],
        osDisk: {
            blobUri: "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
        zoneResilient: false,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "data_disks": [{
            "blob_uri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
            "lun": 1,
        }],
        "os_disk": {
            "blob_uri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
        "zone_resilient": False,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        dataDisks:
          - blobUri: https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd
            lun: 1
        osDisk:
          blobUri: https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd
          osState: Generalized
          osType: Linux
        zoneResilient: false
Create a virtual machine image that includes a data disk from a managed disk.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            DataDisks = new[]
            {
                new AzureNative.Compute.Inputs.ImageDataDiskArgs
                {
                    Lun = 1,
                    ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
                    {
                        Id = "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2",
                    },
                },
            },
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
                },
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
            },
            ZoneResilient = false,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				DataDisks: compute.ImageDataDiskArray{
					&compute.ImageDataDiskArgs{
						Lun: pulumi.Int(1),
						ManagedDisk: &compute.SubResourceArgs{
							Id: pulumi.String("subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"),
						},
					},
				},
				OsDisk: &compute.ImageOSDiskArgs{
					ManagedDisk: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"),
					},
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
				},
				ZoneResilient: pulumi.Bool(false),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .dataDisks(ImageDataDiskArgs.builder()
                    .lun(1)
                    .managedDisk(SubResourceArgs.builder()
                        .id("subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2")
                        .build())
                    .build())
                .osDisk(ImageOSDiskArgs.builder()
                    .managedDisk(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk")
                        .build())
                    .osState("Generalized")
                    .osType("Linux")
                    .build())
                .zoneResilient(false)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        dataDisks: [{
            lun: 1,
            managedDisk: {
                id: "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2",
            },
        }],
        osDisk: {
            managedDisk: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
        },
        zoneResilient: false,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "data_disks": [{
            "lun": 1,
            "managed_disk": {
                "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2",
            },
        }],
        "os_disk": {
            "managed_disk": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
            },
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
        },
        "zone_resilient": False,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        dataDisks:
          - lun: 1
            managedDisk:
              id: subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2
        osDisk:
          managedDisk:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk
          osState: Generalized
          osType: Linux
        zoneResilient: false
Create a virtual machine image that includes a data disk from a snapshot.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var image = new AzureNative.Compute.Image("image", new()
    {
        ImageName = "myImage",
        Location = "West US",
        ResourceGroupName = "myResourceGroup",
        StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
        {
            DataDisks = new[]
            {
                new AzureNative.Compute.Inputs.ImageDataDiskArgs
                {
                    Lun = 1,
                    Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
                    {
                        Id = "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
                    },
                },
            },
            OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
            {
                OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
                OsType = AzureNative.Compute.OperatingSystemTypes.Linux,
                Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
                },
            },
            ZoneResilient = true,
        },
    });
});
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.NewImage(ctx, "image", &compute.ImageArgs{
			ImageName:         pulumi.String("myImage"),
			Location:          pulumi.String("West US"),
			ResourceGroupName: pulumi.String("myResourceGroup"),
			StorageProfile: &compute.ImageStorageProfileArgs{
				DataDisks: compute.ImageDataDiskArray{
					&compute.ImageDataDiskArgs{
						Lun: pulumi.Int(1),
						Snapshot: &compute.SubResourceArgs{
							Id: pulumi.String("subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"),
						},
					},
				},
				OsDisk: &compute.ImageOSDiskArgs{
					OsState: compute.OperatingSystemStateTypesGeneralized,
					OsType:  compute.OperatingSystemTypesLinux,
					Snapshot: &compute.SubResourceArgs{
						Id: pulumi.String("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"),
					},
				},
				ZoneResilient: pulumi.Bool(true),
			},
		})
		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.Image;
import com.pulumi.azurenative.compute.ImageArgs;
import com.pulumi.azurenative.compute.inputs.ImageStorageProfileArgs;
import com.pulumi.azurenative.compute.inputs.ImageOSDiskArgs;
import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
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 image = new Image("image", ImageArgs.builder()
            .imageName("myImage")
            .location("West US")
            .resourceGroupName("myResourceGroup")
            .storageProfile(ImageStorageProfileArgs.builder()
                .dataDisks(ImageDataDiskArgs.builder()
                    .lun(1)
                    .snapshot(SubResourceArgs.builder()
                        .id("subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2")
                        .build())
                    .build())
                .osDisk(ImageOSDiskArgs.builder()
                    .osState("Generalized")
                    .osType("Linux")
                    .snapshot(SubResourceArgs.builder()
                        .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot")
                        .build())
                    .build())
                .zoneResilient(true)
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const image = new azure_native.compute.Image("image", {
    imageName: "myImage",
    location: "West US",
    resourceGroupName: "myResourceGroup",
    storageProfile: {
        dataDisks: [{
            lun: 1,
            snapshot: {
                id: "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
            },
        }],
        osDisk: {
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Linux,
            snapshot: {
                id: "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
        zoneResilient: true,
    },
});
import pulumi
import pulumi_azure_native as azure_native
image = azure_native.compute.Image("image",
    image_name="myImage",
    location="West US",
    resource_group_name="myResourceGroup",
    storage_profile={
        "data_disks": [{
            "lun": 1,
            "snapshot": {
                "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
            },
        }],
        "os_disk": {
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.LINUX,
            "snapshot": {
                "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
            },
        },
        "zone_resilient": True,
    })
resources:
  image:
    type: azure-native:compute:Image
    properties:
      imageName: myImage
      location: West US
      resourceGroupName: myResourceGroup
      storageProfile:
        dataDisks:
          - lun: 1
            snapshot:
              id: subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2
        osDisk:
          osState: Generalized
          osType: Linux
          snapshot:
            id: subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot
        zoneResilient: true
Create Image Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Image(name: string, args: ImageArgs, opts?: CustomResourceOptions);@overload
def Image(resource_name: str,
          args: ImageArgs,
          opts: Optional[ResourceOptions] = None)
@overload
def Image(resource_name: str,
          opts: Optional[ResourceOptions] = None,
          resource_group_name: Optional[str] = None,
          extended_location: Optional[ExtendedLocationArgs] = None,
          hyper_v_generation: Optional[Union[str, HyperVGenerationTypes]] = None,
          image_name: Optional[str] = None,
          location: Optional[str] = None,
          source_virtual_machine: Optional[SubResourceArgs] = None,
          storage_profile: Optional[ImageStorageProfileArgs] = None,
          tags: Optional[Mapping[str, str]] = None)func NewImage(ctx *Context, name string, args ImageArgs, opts ...ResourceOption) (*Image, error)public Image(string name, ImageArgs args, CustomResourceOptions? opts = null)type: azure-native:compute:Image
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 ImageArgs
- 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 ImageArgs
- 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 ImageArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ImageArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ImageArgs
- 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 azure_nativeImageResource = new AzureNative.Compute.Image("azure-nativeImageResource", new()
{
    ResourceGroupName = "string",
    ExtendedLocation = new AzureNative.Compute.Inputs.ExtendedLocationArgs
    {
        Name = "string",
        Type = "string",
    },
    HyperVGeneration = "string",
    ImageName = "string",
    Location = "string",
    SourceVirtualMachine = new AzureNative.Compute.Inputs.SubResourceArgs
    {
        Id = "string",
    },
    StorageProfile = new AzureNative.Compute.Inputs.ImageStorageProfileArgs
    {
        DataDisks = new[]
        {
            new AzureNative.Compute.Inputs.ImageDataDiskArgs
            {
                Lun = 0,
                BlobUri = "string",
                Caching = AzureNative.Compute.CachingTypes.None,
                DiskEncryptionSet = new AzureNative.Compute.Inputs.DiskEncryptionSetParametersArgs
                {
                    Id = "string",
                },
                DiskSizeGB = 0,
                ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "string",
                },
                Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
                {
                    Id = "string",
                },
                StorageAccountType = "string",
            },
        },
        OsDisk = new AzureNative.Compute.Inputs.ImageOSDiskArgs
        {
            OsState = AzureNative.Compute.OperatingSystemStateTypes.Generalized,
            OsType = AzureNative.Compute.OperatingSystemTypes.Windows,
            BlobUri = "string",
            Caching = AzureNative.Compute.CachingTypes.None,
            DiskEncryptionSet = new AzureNative.Compute.Inputs.DiskEncryptionSetParametersArgs
            {
                Id = "string",
            },
            DiskSizeGB = 0,
            ManagedDisk = new AzureNative.Compute.Inputs.SubResourceArgs
            {
                Id = "string",
            },
            Snapshot = new AzureNative.Compute.Inputs.SubResourceArgs
            {
                Id = "string",
            },
            StorageAccountType = "string",
        },
        ZoneResilient = false,
    },
    Tags = 
    {
        { "string", "string" },
    },
});
example, err := compute.NewImage(ctx, "azure-nativeImageResource", &compute.ImageArgs{
	ResourceGroupName: pulumi.String("string"),
	ExtendedLocation: &compute.ExtendedLocationArgs{
		Name: pulumi.String("string"),
		Type: pulumi.String("string"),
	},
	HyperVGeneration: pulumi.String("string"),
	ImageName:        pulumi.String("string"),
	Location:         pulumi.String("string"),
	SourceVirtualMachine: &compute.SubResourceArgs{
		Id: pulumi.String("string"),
	},
	StorageProfile: &compute.ImageStorageProfileArgs{
		DataDisks: compute.ImageDataDiskArray{
			&compute.ImageDataDiskArgs{
				Lun:     pulumi.Int(0),
				BlobUri: pulumi.String("string"),
				Caching: compute.CachingTypesNone,
				DiskEncryptionSet: &compute.DiskEncryptionSetParametersArgs{
					Id: pulumi.String("string"),
				},
				DiskSizeGB: pulumi.Int(0),
				ManagedDisk: &compute.SubResourceArgs{
					Id: pulumi.String("string"),
				},
				Snapshot: &compute.SubResourceArgs{
					Id: pulumi.String("string"),
				},
				StorageAccountType: pulumi.String("string"),
			},
		},
		OsDisk: &compute.ImageOSDiskArgs{
			OsState: compute.OperatingSystemStateTypesGeneralized,
			OsType:  compute.OperatingSystemTypesWindows,
			BlobUri: pulumi.String("string"),
			Caching: compute.CachingTypesNone,
			DiskEncryptionSet: &compute.DiskEncryptionSetParametersArgs{
				Id: pulumi.String("string"),
			},
			DiskSizeGB: pulumi.Int(0),
			ManagedDisk: &compute.SubResourceArgs{
				Id: pulumi.String("string"),
			},
			Snapshot: &compute.SubResourceArgs{
				Id: pulumi.String("string"),
			},
			StorageAccountType: pulumi.String("string"),
		},
		ZoneResilient: pulumi.Bool(false),
	},
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
var azure_nativeImageResource = new Image("azure-nativeImageResource", ImageArgs.builder()
    .resourceGroupName("string")
    .extendedLocation(ExtendedLocationArgs.builder()
        .name("string")
        .type("string")
        .build())
    .hyperVGeneration("string")
    .imageName("string")
    .location("string")
    .sourceVirtualMachine(SubResourceArgs.builder()
        .id("string")
        .build())
    .storageProfile(ImageStorageProfileArgs.builder()
        .dataDisks(ImageDataDiskArgs.builder()
            .lun(0)
            .blobUri("string")
            .caching("None")
            .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
                .id("string")
                .build())
            .diskSizeGB(0)
            .managedDisk(SubResourceArgs.builder()
                .id("string")
                .build())
            .snapshot(SubResourceArgs.builder()
                .id("string")
                .build())
            .storageAccountType("string")
            .build())
        .osDisk(ImageOSDiskArgs.builder()
            .osState("Generalized")
            .osType("Windows")
            .blobUri("string")
            .caching("None")
            .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
                .id("string")
                .build())
            .diskSizeGB(0)
            .managedDisk(SubResourceArgs.builder()
                .id("string")
                .build())
            .snapshot(SubResourceArgs.builder()
                .id("string")
                .build())
            .storageAccountType("string")
            .build())
        .zoneResilient(false)
        .build())
    .tags(Map.of("string", "string"))
    .build());
azure_native_image_resource = azure_native.compute.Image("azure-nativeImageResource",
    resource_group_name="string",
    extended_location={
        "name": "string",
        "type": "string",
    },
    hyper_v_generation="string",
    image_name="string",
    location="string",
    source_virtual_machine={
        "id": "string",
    },
    storage_profile={
        "data_disks": [{
            "lun": 0,
            "blob_uri": "string",
            "caching": azure_native.compute.CachingTypes.NONE,
            "disk_encryption_set": {
                "id": "string",
            },
            "disk_size_gb": 0,
            "managed_disk": {
                "id": "string",
            },
            "snapshot": {
                "id": "string",
            },
            "storage_account_type": "string",
        }],
        "os_disk": {
            "os_state": azure_native.compute.OperatingSystemStateTypes.GENERALIZED,
            "os_type": azure_native.compute.OperatingSystemTypes.WINDOWS,
            "blob_uri": "string",
            "caching": azure_native.compute.CachingTypes.NONE,
            "disk_encryption_set": {
                "id": "string",
            },
            "disk_size_gb": 0,
            "managed_disk": {
                "id": "string",
            },
            "snapshot": {
                "id": "string",
            },
            "storage_account_type": "string",
        },
        "zone_resilient": False,
    },
    tags={
        "string": "string",
    })
const azure_nativeImageResource = new azure_native.compute.Image("azure-nativeImageResource", {
    resourceGroupName: "string",
    extendedLocation: {
        name: "string",
        type: "string",
    },
    hyperVGeneration: "string",
    imageName: "string",
    location: "string",
    sourceVirtualMachine: {
        id: "string",
    },
    storageProfile: {
        dataDisks: [{
            lun: 0,
            blobUri: "string",
            caching: azure_native.compute.CachingTypes.None,
            diskEncryptionSet: {
                id: "string",
            },
            diskSizeGB: 0,
            managedDisk: {
                id: "string",
            },
            snapshot: {
                id: "string",
            },
            storageAccountType: "string",
        }],
        osDisk: {
            osState: azure_native.compute.OperatingSystemStateTypes.Generalized,
            osType: azure_native.compute.OperatingSystemTypes.Windows,
            blobUri: "string",
            caching: azure_native.compute.CachingTypes.None,
            diskEncryptionSet: {
                id: "string",
            },
            diskSizeGB: 0,
            managedDisk: {
                id: "string",
            },
            snapshot: {
                id: "string",
            },
            storageAccountType: "string",
        },
        zoneResilient: false,
    },
    tags: {
        string: "string",
    },
});
type: azure-native:compute:Image
properties:
    extendedLocation:
        name: string
        type: string
    hyperVGeneration: string
    imageName: string
    location: string
    resourceGroupName: string
    sourceVirtualMachine:
        id: string
    storageProfile:
        dataDisks:
            - blobUri: string
              caching: None
              diskEncryptionSet:
                id: string
              diskSizeGB: 0
              lun: 0
              managedDisk:
                id: string
              snapshot:
                id: string
              storageAccountType: string
        osDisk:
            blobUri: string
            caching: None
            diskEncryptionSet:
                id: string
            diskSizeGB: 0
            managedDisk:
                id: string
            osState: Generalized
            osType: Windows
            snapshot:
                id: string
            storageAccountType: string
        zoneResilient: false
    tags:
        string: string
Image 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 Image resource accepts the following input properties:
- ResourceGroup stringName 
- The name of the resource group.
- ExtendedLocation Pulumi.Azure Native. Compute. Inputs. Extended Location 
- The extended location of the Image.
- HyperVGeneration string | Pulumi.Azure Native. Compute. Hyper VGeneration Types 
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- ImageName string
- The name of the image.
- Location string
- Resource location
- SourceVirtual Pulumi.Machine Azure Native. Compute. Inputs. Sub Resource 
- The source virtual machine from which Image is created.
- StorageProfile Pulumi.Azure Native. Compute. Inputs. Image Storage Profile 
- Specifies the storage settings for the virtual machine disks.
- Dictionary<string, string>
- Resource tags
- ResourceGroup stringName 
- The name of the resource group.
- ExtendedLocation ExtendedLocation Args 
- The extended location of the Image.
- HyperVGeneration string | HyperVGeneration Types 
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- ImageName string
- The name of the image.
- Location string
- Resource location
- SourceVirtual SubMachine Resource Args 
- The source virtual machine from which Image is created.
- StorageProfile ImageStorage Profile Args 
- Specifies the storage settings for the virtual machine disks.
- map[string]string
- Resource tags
- resourceGroup StringName 
- The name of the resource group.
- extendedLocation ExtendedLocation 
- The extended location of the Image.
- hyperVGeneration String | HyperVGeneration Types 
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- imageName String
- The name of the image.
- location String
- Resource location
- sourceVirtual SubMachine Resource 
- The source virtual machine from which Image is created.
- storageProfile ImageStorage Profile 
- Specifies the storage settings for the virtual machine disks.
- Map<String,String>
- Resource tags
- resourceGroup stringName 
- The name of the resource group.
- extendedLocation ExtendedLocation 
- The extended location of the Image.
- hyperVGeneration string | HyperVGeneration Types 
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- imageName string
- The name of the image.
- location string
- Resource location
- sourceVirtual SubMachine Resource 
- The source virtual machine from which Image is created.
- storageProfile ImageStorage Profile 
- Specifies the storage settings for the virtual machine disks.
- {[key: string]: string}
- Resource tags
- resource_group_ strname 
- The name of the resource group.
- extended_location ExtendedLocation Args 
- The extended location of the Image.
- hyper_v_ str | Hypergeneration VGeneration Types 
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- image_name str
- The name of the image.
- location str
- Resource location
- source_virtual_ Submachine Resource Args 
- The source virtual machine from which Image is created.
- storage_profile ImageStorage Profile Args 
- Specifies the storage settings for the virtual machine disks.
- Mapping[str, str]
- Resource tags
- resourceGroup StringName 
- The name of the resource group.
- extendedLocation Property Map
- The extended location of the Image.
- hyperVGeneration String | "V1" | "V2"
- Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource.
- imageName String
- The name of the image.
- location String
- Resource location
- sourceVirtual Property MapMachine 
- The source virtual machine from which Image is created.
- storageProfile Property Map
- Specifies the storage settings for the virtual machine disks.
- Map<String>
- Resource tags
Outputs
All input properties are implicitly available as output properties. Additionally, the Image 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.
- Type string
- Resource type
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Resource name
- ProvisioningState string
- The provisioning state.
- Type string
- Resource type
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- Resource name
- provisioningState String
- The provisioning state.
- type String
- Resource type
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- Resource name
- provisioningState string
- The provisioning state.
- type string
- Resource type
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- Resource name
- provisioning_state str
- The provisioning state.
- type str
- Resource type
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- Resource name
- provisioningState String
- The provisioning state.
- type String
- Resource type
Supporting Types
CachingTypes, CachingTypesArgs    
- None
- None
- ReadOnly 
- ReadOnly
- ReadWrite 
- ReadWrite
- CachingTypes None 
- None
- CachingTypes Read Only 
- ReadOnly
- CachingTypes Read Write 
- ReadWrite
- None
- None
- ReadOnly 
- ReadOnly
- ReadWrite 
- ReadWrite
- None
- None
- ReadOnly 
- ReadOnly
- ReadWrite 
- ReadWrite
- NONE
- None
- READ_ONLY
- ReadOnly
- READ_WRITE
- ReadWrite
- "None"
- None
- "ReadOnly" 
- ReadOnly
- "ReadWrite" 
- ReadWrite
DiskEncryptionSetParameters, DiskEncryptionSetParametersArgs        
- Id string
- Resource Id
- Id string
- Resource Id
- id String
- Resource Id
- id string
- Resource Id
- id str
- Resource Id
- id String
- Resource Id
DiskEncryptionSetParametersResponse, DiskEncryptionSetParametersResponseArgs          
- Id string
- Resource Id
- Id string
- Resource Id
- id String
- Resource Id
- id string
- Resource Id
- id str
- Resource Id
- id String
- Resource Id
ExtendedLocation, ExtendedLocationArgs    
- Name string
- The name of the extended location.
- Type
string | Pulumi.Azure Native. Compute. Extended Location Types 
- The type of the extended location.
- Name string
- The name of the extended location.
- Type
string | ExtendedLocation Types 
- The type of the extended location.
- name String
- The name of the extended location.
- type
String | ExtendedLocation Types 
- The type of the extended location.
- name string
- The name of the extended location.
- type
string | ExtendedLocation Types 
- The type of the extended location.
- name str
- The name of the extended location.
- type
str | ExtendedLocation Types 
- The type of the extended location.
- name String
- The name of the extended location.
- type
String | "EdgeZone" 
- The type of the extended location.
ExtendedLocationResponse, ExtendedLocationResponseArgs      
ExtendedLocationTypes, ExtendedLocationTypesArgs      
- EdgeZone 
- EdgeZone
- ExtendedLocation Types Edge Zone 
- EdgeZone
- EdgeZone 
- EdgeZone
- EdgeZone 
- EdgeZone
- EDGE_ZONE
- EdgeZone
- "EdgeZone" 
- EdgeZone
HyperVGenerationTypes, HyperVGenerationTypesArgs      
- V1
- V1
- V2
- V2
- HyperVGeneration Types V1 
- V1
- HyperVGeneration Types V2 
- V2
- V1
- V1
- V2
- V2
- V1
- V1
- V2
- V2
- V1
- V1
- V2
- V2
- "V1"
- V1
- "V2"
- V2
ImageDataDisk, ImageDataDiskArgs      
- Lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- BlobUri string
- The Virtual Hard Disk.
- Caching
Pulumi.Azure Native. Compute. Caching Types 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption Pulumi.Set Azure Native. Compute. Inputs. Disk Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk Pulumi.Azure Native. Compute. Inputs. Sub Resource 
- The managedDisk.
- Snapshot
Pulumi.Azure Native. Compute. Inputs. Sub Resource 
- The snapshot.
- StorageAccount string | Pulumi.Type Azure Native. Compute. Storage Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- Lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- BlobUri string
- The Virtual Hard Disk.
- Caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk SubResource 
- The managedDisk.
- Snapshot
SubResource 
- The snapshot.
- StorageAccount string | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun Integer
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri String
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize IntegerGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storageAccount String | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun number
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri string
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize numberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storageAccount string | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blob_uri str
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- disk_encryption_ Diskset Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- disk_size_ intgb 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managed_disk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storage_account_ str | Storagetype Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun Number
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri String
- The Virtual Hard Disk.
- caching
"None" | "ReadOnly" | "Read Write" 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption Property MapSet 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize NumberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk Property Map
- The managedDisk.
- snapshot Property Map
- The snapshot.
- storageAccount String | "Standard_LRS" | "Premium_LRS" | "StandardType SSD_LRS" | "Ultra SSD_LRS" | "Premium_ZRS" | "Standard SSD_ZRS" | "Premium V2_LRS" 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
ImageDataDiskResponse, ImageDataDiskResponseArgs        
- Lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- BlobUri string
- The Virtual Hard Disk.
- Caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption Pulumi.Set Azure Native. Compute. Inputs. Disk Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk Pulumi.Azure Native. Compute. Inputs. Sub Resource Response 
- The managedDisk.
- Snapshot
Pulumi.Azure Native. Compute. Inputs. Sub Resource Response 
- The snapshot.
- StorageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- Lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- BlobUri string
- The Virtual Hard Disk.
- Caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk SubResource Response 
- The managedDisk.
- Snapshot
SubResource Response 
- The snapshot.
- StorageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun Integer
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri String
- The Virtual Hard Disk.
- caching String
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize IntegerGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storageAccount StringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun number
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri string
- The Virtual Hard Disk.
- caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize numberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun int
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blob_uri str
- The Virtual Hard Disk.
- caching str
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- disk_encryption_ Diskset Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- disk_size_ intgb 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managed_disk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storage_account_ strtype 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- lun Number
- Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
- blobUri String
- The Virtual Hard Disk.
- caching String
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption Property MapSet 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize NumberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk Property Map
- The managedDisk.
- snapshot Property Map
- The snapshot.
- storageAccount StringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
ImageOSDisk, ImageOSDiskArgs    
- OsState Pulumi.Azure Native. Compute. Operating System State Types 
- The OS State. For managed images, use Generalized.
- OsType Pulumi.Azure Native. Compute. Operating System Types 
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- BlobUri string
- The Virtual Hard Disk.
- Caching
Pulumi.Azure Native. Compute. Caching Types 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption Pulumi.Set Azure Native. Compute. Inputs. Disk Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk Pulumi.Azure Native. Compute. Inputs. Sub Resource 
- The managedDisk.
- Snapshot
Pulumi.Azure Native. Compute. Inputs. Sub Resource 
- The snapshot.
- StorageAccount string | Pulumi.Type Azure Native. Compute. Storage Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- OsState OperatingSystem State Types 
- The OS State. For managed images, use Generalized.
- OsType OperatingSystem Types 
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- BlobUri string
- The Virtual Hard Disk.
- Caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk SubResource 
- The managedDisk.
- Snapshot
SubResource 
- The snapshot.
- StorageAccount string | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState OperatingSystem State Types 
- The OS State. For managed images, use Generalized.
- osType OperatingSystem Types 
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri String
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize IntegerGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storageAccount String | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState OperatingSystem State Types 
- The OS State. For managed images, use Generalized.
- osType OperatingSystem Types 
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri string
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize numberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storageAccount string | StorageType Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- os_state OperatingSystem State Types 
- The OS State. For managed images, use Generalized.
- os_type OperatingSystem Types 
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blob_uri str
- The Virtual Hard Disk.
- caching
CachingTypes 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- disk_encryption_ Diskset Encryption Set Parameters 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- disk_size_ intgb 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managed_disk SubResource 
- The managedDisk.
- snapshot
SubResource 
- The snapshot.
- storage_account_ str | Storagetype Account Types 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState "Generalized" | "Specialized"
- The OS State. For managed images, use Generalized.
- osType "Windows" | "Linux"
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri String
- The Virtual Hard Disk.
- caching
"None" | "ReadOnly" | "Read Write" 
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption Property MapSet 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize NumberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk Property Map
- The managedDisk.
- snapshot Property Map
- The snapshot.
- storageAccount String | "Standard_LRS" | "Premium_LRS" | "StandardType SSD_LRS" | "Ultra SSD_LRS" | "Premium_ZRS" | "Standard SSD_ZRS" | "Premium V2_LRS" 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
ImageOSDiskResponse, ImageOSDiskResponseArgs      
- OsState string
- The OS State. For managed images, use Generalized.
- OsType string
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- BlobUri string
- The Virtual Hard Disk.
- Caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption Pulumi.Set Azure Native. Compute. Inputs. Disk Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk Pulumi.Azure Native. Compute. Inputs. Sub Resource Response 
- The managedDisk.
- Snapshot
Pulumi.Azure Native. Compute. Inputs. Sub Resource Response 
- The snapshot.
- StorageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- OsState string
- The OS State. For managed images, use Generalized.
- OsType string
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- BlobUri string
- The Virtual Hard Disk.
- Caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- DiskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- DiskSize intGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- ManagedDisk SubResource Response 
- The managedDisk.
- Snapshot
SubResource Response 
- The snapshot.
- StorageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState String
- The OS State. For managed images, use Generalized.
- osType String
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri String
- The Virtual Hard Disk.
- caching String
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize IntegerGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storageAccount StringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState string
- The OS State. For managed images, use Generalized.
- osType string
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri string
- The Virtual Hard Disk.
- caching string
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption DiskSet Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize numberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storageAccount stringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- os_state str
- The OS State. For managed images, use Generalized.
- os_type str
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blob_uri str
- The Virtual Hard Disk.
- caching str
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- disk_encryption_ Diskset Encryption Set Parameters Response 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- disk_size_ intgb 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managed_disk SubResource Response 
- The managedDisk.
- snapshot
SubResource Response 
- The snapshot.
- storage_account_ strtype 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
- osState String
- The OS State. For managed images, use Generalized.
- osType String
- This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: Windows, Linux.
- blobUri String
- The Virtual Hard Disk.
- caching String
- Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
- diskEncryption Property MapSet 
- Specifies the customer managed disk encryption set resource id for the managed image disk.
- diskSize NumberGB 
- Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB.
- managedDisk Property Map
- The managedDisk.
- snapshot Property Map
- The snapshot.
- storageAccount StringType 
- Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.
ImageStorageProfile, ImageStorageProfileArgs      
- DataDisks List<Pulumi.Azure Native. Compute. Inputs. Image Data Disk> 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- OsDisk Pulumi.Azure Native. Compute. Inputs. Image OSDisk 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- ZoneResilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- DataDisks []ImageData Disk 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- OsDisk ImageOSDisk 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- ZoneResilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks List<ImageData Disk> 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk ImageOSDisk 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient Boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks ImageData Disk[] 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk ImageOSDisk 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- data_disks Sequence[ImageData Disk] 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- os_disk ImageOSDisk 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zone_resilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks List<Property Map>
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk Property Map
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient Boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
ImageStorageProfileResponse, ImageStorageProfileResponseArgs        
- DataDisks List<Pulumi.Azure Native. Compute. Inputs. Image Data Disk Response> 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- OsDisk Pulumi.Azure Native. Compute. Inputs. Image OSDisk Response 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- ZoneResilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- DataDisks []ImageData Disk Response 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- OsDisk ImageOSDisk Response 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- ZoneResilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks List<ImageData Disk Response> 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk ImageOSDisk Response 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient Boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks ImageData Disk Response[] 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk ImageOSDisk Response 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- data_disks Sequence[ImageData Disk Response] 
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- os_disk ImageOSDisk Response 
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zone_resilient bool
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
- dataDisks List<Property Map>
- Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- osDisk Property Map
- Specifies information about the operating system disk used by the virtual machine. For more information about disks, see About disks and VHDs for Azure virtual machines.
- zoneResilient Boolean
- Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS).
OperatingSystemStateTypes, OperatingSystemStateTypesArgs        
- Generalized
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- Specialized
- SpecializedSpecialized image. Contains already provisioned OS Disk.
- OperatingSystem State Types Generalized 
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- OperatingSystem State Types Specialized 
- SpecializedSpecialized image. Contains already provisioned OS Disk.
- Generalized
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- Specialized
- SpecializedSpecialized image. Contains already provisioned OS Disk.
- Generalized
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- Specialized
- SpecializedSpecialized image. Contains already provisioned OS Disk.
- GENERALIZED
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- SPECIALIZED
- SpecializedSpecialized image. Contains already provisioned OS Disk.
- "Generalized"
- GeneralizedGeneralized image. Needs to be provisioned during deployment time.
- "Specialized"
- SpecializedSpecialized image. Contains already provisioned OS Disk.
OperatingSystemTypes, OperatingSystemTypesArgs      
- Windows
- Windows
- Linux
- Linux
- OperatingSystem Types Windows 
- Windows
- OperatingSystem Types Linux 
- Linux
- Windows
- Windows
- Linux
- Linux
- Windows
- Windows
- Linux
- Linux
- WINDOWS
- Windows
- LINUX
- Linux
- "Windows"
- Windows
- "Linux"
- Linux
StorageAccountTypes, StorageAccountTypesArgs      
- Standard_LRS
- Standard_LRS
- Premium_LRS
- Premium_LRS
- StandardSSD_LRS 
- StandardSSD_LRS
- UltraSSD_LRS 
- UltraSSD_LRS
- Premium_ZRS
- Premium_ZRS
- StandardSSD_ZRS 
- StandardSSD_ZRS
- PremiumV2_LRS 
- PremiumV2_LRS
- StorageAccount Types_Standard_LRS 
- Standard_LRS
- StorageAccount Types_Premium_LRS 
- Premium_LRS
- StorageAccount Types_Standard SSD_LRS 
- StandardSSD_LRS
- StorageAccount Types_Ultra SSD_LRS 
- UltraSSD_LRS
- StorageAccount Types_Premium_ZRS 
- Premium_ZRS
- StorageAccount Types_Standard SSD_ZRS 
- StandardSSD_ZRS
- StorageAccount Types_Premium V2_LRS 
- PremiumV2_LRS
- Standard_LRS
- Standard_LRS
- Premium_LRS
- Premium_LRS
- StandardSSD_LRS 
- StandardSSD_LRS
- UltraSSD_LRS 
- UltraSSD_LRS
- Premium_ZRS
- Premium_ZRS
- StandardSSD_ZRS 
- StandardSSD_ZRS
- PremiumV2_LRS 
- PremiumV2_LRS
- Standard_LRS
- Standard_LRS
- Premium_LRS
- Premium_LRS
- StandardSSD_LRS 
- StandardSSD_LRS
- UltraSSD_LRS 
- UltraSSD_LRS
- Premium_ZRS
- Premium_ZRS
- StandardSSD_ZRS 
- StandardSSD_ZRS
- PremiumV2_LRS 
- PremiumV2_LRS
- STANDARD_LRS
- Standard_LRS
- PREMIUM_LRS
- Premium_LRS
- STANDARD_SS_D_LRS
- StandardSSD_LRS
- ULTRA_SS_D_LRS
- UltraSSD_LRS
- PREMIUM_ZRS
- Premium_ZRS
- STANDARD_SS_D_ZRS
- StandardSSD_ZRS
- PREMIUM_V2_LRS
- PremiumV2_LRS
- "Standard_LRS"
- Standard_LRS
- "Premium_LRS"
- Premium_LRS
- "StandardSSD_LRS" 
- StandardSSD_LRS
- "UltraSSD_LRS" 
- UltraSSD_LRS
- "Premium_ZRS"
- Premium_ZRS
- "StandardSSD_ZRS" 
- StandardSSD_ZRS
- "PremiumV2_LRS" 
- PremiumV2_LRS
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
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:compute:Image myImage /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName} 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Native pulumi/pulumi-azure-native
- License
- Apache-2.0