1. Packages
  2. Proxmox Virtual Environment (Proxmox VE)
  3. API Docs
  4. VM
  5. ClonedVirtualMachine
Proxmox Virtual Environment (Proxmox VE) v7.13.0 published on Tuesday, Feb 10, 2026 by Daniel Muehlbachler-Pietrzykowski
proxmoxve logo
Proxmox Virtual Environment (Proxmox VE) v7.13.0 published on Tuesday, Feb 10, 2026 by Daniel Muehlbachler-Pietrzykowski

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    // Example 1: Basic clone with minimal management
    const basicClone = new proxmoxve.vm.ClonedVirtualMachine("basic_clone", {
        nodeName: "pve",
        name: "basic-clone",
        clone: {
            sourceVmId: 100,
            full: true,
        },
        cpu: {
            cores: 4,
        },
    });
    // Example 2: Clone with explicit network management
    const networkManaged = new proxmoxve.vm.ClonedVirtualMachine("network_managed", {
        nodeName: "pve",
        name: "network-clone",
        clone: {
            sourceVmId: 100,
        },
        network: {
            net0: {
                bridge: "vmbr0",
                model: "virtio",
                tag: 100,
            },
            net1: {
                bridge: "vmbr1",
                model: "virtio",
                firewall: true,
                macAddress: "BC:24:11:2E:C5:00",
            },
        },
        cpu: {
            cores: 2,
        },
    });
    // Example 3: Clone with disk management
    const diskManaged = new proxmoxve.vm.ClonedVirtualMachine("disk_managed", {
        nodeName: "pve",
        name: "disk-clone",
        clone: {
            sourceVmId: 100,
            targetDatastore: "local-lvm",
        },
        disk: {
            scsi0: {
                datastoreId: "local-lvm",
                sizeGb: 50,
                discard: "on",
                ssd: true,
            },
            scsi1: {
                datastoreId: "local-lvm",
                sizeGb: 100,
                backup: false,
            },
        },
    });
    // Example 4: Clone with explicit device deletion
    const selectiveDelete = new proxmoxve.vm.ClonedVirtualMachine("selective_delete", {
        nodeName: "pve",
        name: "minimal-clone",
        clone: {
            sourceVmId: 100,
        },
        network: {
            net0: {
                bridge: "vmbr0",
                model: "virtio",
            },
        },
        "delete": {
            networks: [
                "net1",
                "net2",
            ],
        },
    });
    // Example 5: Full-featured clone with multiple settings
    const fullFeatured = new proxmoxve.vm.ClonedVirtualMachine("full_featured", {
        nodeName: "pve",
        name: "production-vm",
        description: "Production VM cloned from template",
        tags: [
            "production",
            "web",
        ],
        clone: {
            sourceVmId: 100,
            sourceNodeName: "pve",
            full: true,
            targetDatastore: "local-lvm",
            retries: 3,
        },
        cpu: {
            cores: 8,
            sockets: 1,
            architecture: "x86_64",
            type: "host",
        },
        memory: {
            size: 8192,
            balloon: 2048,
            shares: 2000,
        },
        network: {
            net0: {
                bridge: "vmbr0",
                model: "virtio",
                tag: 100,
                firewall: true,
                rateLimit: 100,
            },
        },
        disk: {
            scsi0: {
                datastoreId: "local-lvm",
                sizeGb: 100,
                discard: "on",
                iothread: true,
                ssd: true,
                cache: "writethrough",
            },
        },
        vga: {
            type: "std",
            memory: 16,
        },
        "delete": {
            disks: ["ide2"],
        },
        stopOnDestroy: false,
        purgeOnDestroy: true,
        deleteUnreferencedDisksOnDestroy: false,
        timeouts: {
            create: "30m",
            update: "30m",
            "delete": "10m",
        },
    });
    // Example 6: Linked clone for testing
    const testClone = new proxmoxve.vm.ClonedVirtualMachine("test_clone", {
        nodeName: "pve",
        name: "test-vm",
        clone: {
            sourceVmId: 100,
            full: false,
        },
        cpu: {
            cores: 2,
        },
        network: {
            net0: {
                bridge: "vmbr0",
                model: "virtio",
            },
        },
    });
    // Example 7: Clone with pool assignment
    const pooledClone = new proxmoxve.vm.ClonedVirtualMachine("pooled_clone", {
        nodeName: "pve",
        name: "pooled-vm",
        clone: {
            sourceVmId: 100,
            poolId: "production",
        },
        cpu: {
            cores: 4,
        },
    });
    // Example 8: Import existing cloned VM
    const imported = new proxmoxve.vm.ClonedVirtualMachine("imported", {
        vmId: "123",
        nodeName: "pve",
        clone: {
            sourceVmId: 100,
        },
        cpu: {
            cores: 4,
        },
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    # Example 1: Basic clone with minimal management
    basic_clone = proxmoxve.vm.ClonedVirtualMachine("basic_clone",
        node_name="pve",
        name="basic-clone",
        clone={
            "source_vm_id": 100,
            "full": True,
        },
        cpu={
            "cores": 4,
        })
    # Example 2: Clone with explicit network management
    network_managed = proxmoxve.vm.ClonedVirtualMachine("network_managed",
        node_name="pve",
        name="network-clone",
        clone={
            "source_vm_id": 100,
        },
        network={
            "net0": {
                "bridge": "vmbr0",
                "model": "virtio",
                "tag": 100,
            },
            "net1": {
                "bridge": "vmbr1",
                "model": "virtio",
                "firewall": True,
                "mac_address": "BC:24:11:2E:C5:00",
            },
        },
        cpu={
            "cores": 2,
        })
    # Example 3: Clone with disk management
    disk_managed = proxmoxve.vm.ClonedVirtualMachine("disk_managed",
        node_name="pve",
        name="disk-clone",
        clone={
            "source_vm_id": 100,
            "target_datastore": "local-lvm",
        },
        disk={
            "scsi0": {
                "datastore_id": "local-lvm",
                "size_gb": 50,
                "discard": "on",
                "ssd": True,
            },
            "scsi1": {
                "datastore_id": "local-lvm",
                "size_gb": 100,
                "backup": False,
            },
        })
    # Example 4: Clone with explicit device deletion
    selective_delete = proxmoxve.vm.ClonedVirtualMachine("selective_delete",
        node_name="pve",
        name="minimal-clone",
        clone={
            "source_vm_id": 100,
        },
        network={
            "net0": {
                "bridge": "vmbr0",
                "model": "virtio",
            },
        },
        delete={
            "networks": [
                "net1",
                "net2",
            ],
        })
    # Example 5: Full-featured clone with multiple settings
    full_featured = proxmoxve.vm.ClonedVirtualMachine("full_featured",
        node_name="pve",
        name="production-vm",
        description="Production VM cloned from template",
        tags=[
            "production",
            "web",
        ],
        clone={
            "source_vm_id": 100,
            "source_node_name": "pve",
            "full": True,
            "target_datastore": "local-lvm",
            "retries": 3,
        },
        cpu={
            "cores": 8,
            "sockets": 1,
            "architecture": "x86_64",
            "type": "host",
        },
        memory={
            "size": 8192,
            "balloon": 2048,
            "shares": 2000,
        },
        network={
            "net0": {
                "bridge": "vmbr0",
                "model": "virtio",
                "tag": 100,
                "firewall": True,
                "rate_limit": 100,
            },
        },
        disk={
            "scsi0": {
                "datastore_id": "local-lvm",
                "size_gb": 100,
                "discard": "on",
                "iothread": True,
                "ssd": True,
                "cache": "writethrough",
            },
        },
        vga={
            "type": "std",
            "memory": 16,
        },
        delete={
            "disks": ["ide2"],
        },
        stop_on_destroy=False,
        purge_on_destroy=True,
        delete_unreferenced_disks_on_destroy=False,
        timeouts={
            "create": "30m",
            "update": "30m",
            "delete": "10m",
        })
    # Example 6: Linked clone for testing
    test_clone = proxmoxve.vm.ClonedVirtualMachine("test_clone",
        node_name="pve",
        name="test-vm",
        clone={
            "source_vm_id": 100,
            "full": False,
        },
        cpu={
            "cores": 2,
        },
        network={
            "net0": {
                "bridge": "vmbr0",
                "model": "virtio",
            },
        })
    # Example 7: Clone with pool assignment
    pooled_clone = proxmoxve.vm.ClonedVirtualMachine("pooled_clone",
        node_name="pve",
        name="pooled-vm",
        clone={
            "source_vm_id": 100,
            "pool_id": "production",
        },
        cpu={
            "cores": 4,
        })
    # Example 8: Import existing cloned VM
    imported = proxmoxve.vm.ClonedVirtualMachine("imported",
        vm_id="123",
        node_name="pve",
        clone={
            "source_vm_id": 100,
        },
        cpu={
            "cores": 4,
        })
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v7/go/proxmoxve/vm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Example 1: Basic clone with minimal management
    		_, err := vm.NewClonedVirtualMachine(ctx, "basic_clone", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("basic-clone"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    				Full:       pulumi.Bool(true),
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores: pulumi.Int(4),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 2: Clone with explicit network management
    		_, err = vm.NewClonedVirtualMachine(ctx, "network_managed", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("network-clone"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    			},
    			Network: vm.ClonedVirtualMachineNetworkMap{
    				"net0": &vm.ClonedVirtualMachineNetworkArgs{
    					Bridge: pulumi.String("vmbr0"),
    					Model:  pulumi.String("virtio"),
    					Tag:    pulumi.Int(100),
    				},
    				"net1": &vm.ClonedVirtualMachineNetworkArgs{
    					Bridge:     pulumi.String("vmbr1"),
    					Model:      pulumi.String("virtio"),
    					Firewall:   pulumi.Bool(true),
    					MacAddress: pulumi.String("BC:24:11:2E:C5:00"),
    				},
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores: pulumi.Int(2),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 3: Clone with disk management
    		_, err = vm.NewClonedVirtualMachine(ctx, "disk_managed", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("disk-clone"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId:      pulumi.Int(100),
    				TargetDatastore: pulumi.String("local-lvm"),
    			},
    			Disk: vm.ClonedVirtualMachineDiskMap{
    				"scsi0": &vm.ClonedVirtualMachineDiskArgs{
    					DatastoreId: pulumi.String("local-lvm"),
    					SizeGb:      pulumi.Int(50),
    					Discard:     pulumi.String("on"),
    					Ssd:         pulumi.Bool(true),
    				},
    				"scsi1": &vm.ClonedVirtualMachineDiskArgs{
    					DatastoreId: pulumi.String("local-lvm"),
    					SizeGb:      pulumi.Int(100),
    					Backup:      pulumi.Bool(false),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 4: Clone with explicit device deletion
    		_, err = vm.NewClonedVirtualMachine(ctx, "selective_delete", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("minimal-clone"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    			},
    			Network: vm.ClonedVirtualMachineNetworkMap{
    				"net0": &vm.ClonedVirtualMachineNetworkArgs{
    					Bridge: pulumi.String("vmbr0"),
    					Model:  pulumi.String("virtio"),
    				},
    			},
    			Delete: &vm.ClonedVirtualMachineDeleteArgs{
    				Networks: pulumi.StringArray{
    					pulumi.String("net1"),
    					pulumi.String("net2"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 5: Full-featured clone with multiple settings
    		_, err = vm.NewClonedVirtualMachine(ctx, "full_featured", &vm.ClonedVirtualMachineArgs{
    			NodeName:    pulumi.String("pve"),
    			Name:        pulumi.String("production-vm"),
    			Description: pulumi.String("Production VM cloned from template"),
    			Tags: pulumi.StringArray{
    				pulumi.String("production"),
    				pulumi.String("web"),
    			},
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId:      pulumi.Int(100),
    				SourceNodeName:  pulumi.String("pve"),
    				Full:            pulumi.Bool(true),
    				TargetDatastore: pulumi.String("local-lvm"),
    				Retries:         pulumi.Int(3),
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores:        pulumi.Int(8),
    				Sockets:      pulumi.Int(1),
    				Architecture: pulumi.String("x86_64"),
    				Type:         pulumi.String("host"),
    			},
    			Memory: &vm.ClonedVirtualMachineMemoryArgs{
    				Size:    pulumi.Int(8192),
    				Balloon: pulumi.Int(2048),
    				Shares:  pulumi.Int(2000),
    			},
    			Network: vm.ClonedVirtualMachineNetworkMap{
    				"net0": &vm.ClonedVirtualMachineNetworkArgs{
    					Bridge:    pulumi.String("vmbr0"),
    					Model:     pulumi.String("virtio"),
    					Tag:       pulumi.Int(100),
    					Firewall:  pulumi.Bool(true),
    					RateLimit: pulumi.Float64(100),
    				},
    			},
    			Disk: vm.ClonedVirtualMachineDiskMap{
    				"scsi0": &vm.ClonedVirtualMachineDiskArgs{
    					DatastoreId: pulumi.String("local-lvm"),
    					SizeGb:      pulumi.Int(100),
    					Discard:     pulumi.String("on"),
    					Iothread:    pulumi.Bool(true),
    					Ssd:         pulumi.Bool(true),
    					Cache:       pulumi.String("writethrough"),
    				},
    			},
    			Vga: &vm.ClonedVirtualMachineVgaArgs{
    				Type:   pulumi.String("std"),
    				Memory: pulumi.Int(16),
    			},
    			Delete: &vm.ClonedVirtualMachineDeleteArgs{
    				Disks: pulumi.StringArray{
    					pulumi.String("ide2"),
    				},
    			},
    			StopOnDestroy:                    pulumi.Bool(false),
    			PurgeOnDestroy:                   pulumi.Bool(true),
    			DeleteUnreferencedDisksOnDestroy: pulumi.Bool(false),
    			Timeouts: &vm.ClonedVirtualMachineTimeoutsArgs{
    				Create: pulumi.String("30m"),
    				Update: pulumi.String("30m"),
    				Delete: pulumi.String("10m"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 6: Linked clone for testing
    		_, err = vm.NewClonedVirtualMachine(ctx, "test_clone", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("test-vm"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    				Full:       pulumi.Bool(false),
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores: pulumi.Int(2),
    			},
    			Network: vm.ClonedVirtualMachineNetworkMap{
    				"net0": &vm.ClonedVirtualMachineNetworkArgs{
    					Bridge: pulumi.String("vmbr0"),
    					Model:  pulumi.String("virtio"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 7: Clone with pool assignment
    		_, err = vm.NewClonedVirtualMachine(ctx, "pooled_clone", &vm.ClonedVirtualMachineArgs{
    			NodeName: pulumi.String("pve"),
    			Name:     pulumi.String("pooled-vm"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    				PoolId:     pulumi.String("production"),
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores: pulumi.Int(4),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Example 8: Import existing cloned VM
    		_, err = vm.NewClonedVirtualMachine(ctx, "imported", &vm.ClonedVirtualMachineArgs{
    			VmId:     pulumi.String("123"),
    			NodeName: pulumi.String("pve"),
    			Clone: &vm.ClonedVirtualMachineCloneArgs{
    				SourceVmId: pulumi.Int(100),
    			},
    			Cpu: &vm.ClonedVirtualMachineCpuArgs{
    				Cores: pulumi.Int(4),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        // Example 1: Basic clone with minimal management
        var basicClone = new ProxmoxVE.VM.ClonedVirtualMachine("basic_clone", new()
        {
            NodeName = "pve",
            Name = "basic-clone",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
                Full = true,
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 4,
            },
        });
    
        // Example 2: Clone with explicit network management
        var networkManaged = new ProxmoxVE.VM.ClonedVirtualMachine("network_managed", new()
        {
            NodeName = "pve",
            Name = "network-clone",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
            },
            Network = 
            {
                { "net0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
                {
                    Bridge = "vmbr0",
                    Model = "virtio",
                    Tag = 100,
                } },
                { "net1", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
                {
                    Bridge = "vmbr1",
                    Model = "virtio",
                    Firewall = true,
                    MacAddress = "BC:24:11:2E:C5:00",
                } },
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 2,
            },
        });
    
        // Example 3: Clone with disk management
        var diskManaged = new ProxmoxVE.VM.ClonedVirtualMachine("disk_managed", new()
        {
            NodeName = "pve",
            Name = "disk-clone",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
                TargetDatastore = "local-lvm",
            },
            Disk = 
            {
                { "scsi0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs
                {
                    DatastoreId = "local-lvm",
                    SizeGb = 50,
                    Discard = "on",
                    Ssd = true,
                } },
                { "scsi1", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs
                {
                    DatastoreId = "local-lvm",
                    SizeGb = 100,
                    Backup = false,
                } },
            },
        });
    
        // Example 4: Clone with explicit device deletion
        var selectiveDelete = new ProxmoxVE.VM.ClonedVirtualMachine("selective_delete", new()
        {
            NodeName = "pve",
            Name = "minimal-clone",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
            },
            Network = 
            {
                { "net0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
                {
                    Bridge = "vmbr0",
                    Model = "virtio",
                } },
            },
            Delete = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDeleteArgs
            {
                Networks = new[]
                {
                    "net1",
                    "net2",
                },
            },
        });
    
        // Example 5: Full-featured clone with multiple settings
        var fullFeatured = new ProxmoxVE.VM.ClonedVirtualMachine("full_featured", new()
        {
            NodeName = "pve",
            Name = "production-vm",
            Description = "Production VM cloned from template",
            Tags = new[]
            {
                "production",
                "web",
            },
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
                SourceNodeName = "pve",
                Full = true,
                TargetDatastore = "local-lvm",
                Retries = 3,
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 8,
                Sockets = 1,
                Architecture = "x86_64",
                Type = "host",
            },
            Memory = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineMemoryArgs
            {
                Size = 8192,
                Balloon = 2048,
                Shares = 2000,
            },
            Network = 
            {
                { "net0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
                {
                    Bridge = "vmbr0",
                    Model = "virtio",
                    Tag = 100,
                    Firewall = true,
                    RateLimit = 100,
                } },
            },
            Disk = 
            {
                { "scsi0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs
                {
                    DatastoreId = "local-lvm",
                    SizeGb = 100,
                    Discard = "on",
                    Iothread = true,
                    Ssd = true,
                    Cache = "writethrough",
                } },
            },
            Vga = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineVgaArgs
            {
                Type = "std",
                Memory = 16,
            },
            Delete = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDeleteArgs
            {
                Disks = new[]
                {
                    "ide2",
                },
            },
            StopOnDestroy = false,
            PurgeOnDestroy = true,
            DeleteUnreferencedDisksOnDestroy = false,
            Timeouts = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineTimeoutsArgs
            {
                Create = "30m",
                Update = "30m",
                Delete = "10m",
            },
        });
    
        // Example 6: Linked clone for testing
        var testClone = new ProxmoxVE.VM.ClonedVirtualMachine("test_clone", new()
        {
            NodeName = "pve",
            Name = "test-vm",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
                Full = false,
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 2,
            },
            Network = 
            {
                { "net0", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
                {
                    Bridge = "vmbr0",
                    Model = "virtio",
                } },
            },
        });
    
        // Example 7: Clone with pool assignment
        var pooledClone = new ProxmoxVE.VM.ClonedVirtualMachine("pooled_clone", new()
        {
            NodeName = "pve",
            Name = "pooled-vm",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
                PoolId = "production",
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 4,
            },
        });
    
        // Example 8: Import existing cloned VM
        var imported = new ProxmoxVE.VM.ClonedVirtualMachine("imported", new()
        {
            VmId = "123",
            NodeName = "pve",
            Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
            {
                SourceVmId = 100,
            },
            Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
            {
                Cores = 4,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.VM.ClonedVirtualMachine;
    import io.muehlbachler.pulumi.proxmoxve.VM.ClonedVirtualMachineArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineCloneArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineCpuArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineDeleteArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineMemoryArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineVgaArgs;
    import com.pulumi.proxmoxve.VM.inputs.ClonedVirtualMachineTimeoutsArgs;
    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) {
            // Example 1: Basic clone with minimal management
            var basicClone = new ClonedVirtualMachine("basicClone", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("basic-clone")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .full(true)
                    .build())
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(4)
                    .build())
                .build());
    
            // Example 2: Clone with explicit network management
            var networkManaged = new ClonedVirtualMachine("networkManaged", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("network-clone")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .build())
                .network(Map.ofEntries(
                    Map.entry("net0", ClonedVirtualMachineNetworkArgs.builder()
                        .bridge("vmbr0")
                        .model("virtio")
                        .tag(100)
                        .build()),
                    Map.entry("net1", ClonedVirtualMachineNetworkArgs.builder()
                        .bridge("vmbr1")
                        .model("virtio")
                        .firewall(true)
                        .macAddress("BC:24:11:2E:C5:00")
                        .build())
                ))
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(2)
                    .build())
                .build());
    
            // Example 3: Clone with disk management
            var diskManaged = new ClonedVirtualMachine("diskManaged", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("disk-clone")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .targetDatastore("local-lvm")
                    .build())
                .disk(Map.ofEntries(
                    Map.entry("scsi0", ClonedVirtualMachineDiskArgs.builder()
                        .datastoreId("local-lvm")
                        .sizeGb(50)
                        .discard("on")
                        .ssd(true)
                        .build()),
                    Map.entry("scsi1", ClonedVirtualMachineDiskArgs.builder()
                        .datastoreId("local-lvm")
                        .sizeGb(100)
                        .backup(false)
                        .build())
                ))
                .build());
    
            // Example 4: Clone with explicit device deletion
            var selectiveDelete = new ClonedVirtualMachine("selectiveDelete", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("minimal-clone")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .build())
                .network(Map.of("net0", ClonedVirtualMachineNetworkArgs.builder()
                    .bridge("vmbr0")
                    .model("virtio")
                    .build()))
                .delete(ClonedVirtualMachineDeleteArgs.builder()
                    .networks(                
                        "net1",
                        "net2")
                    .build())
                .build());
    
            // Example 5: Full-featured clone with multiple settings
            var fullFeatured = new ClonedVirtualMachine("fullFeatured", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("production-vm")
                .description("Production VM cloned from template")
                .tags(            
                    "production",
                    "web")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .sourceNodeName("pve")
                    .full(true)
                    .targetDatastore("local-lvm")
                    .retries(3)
                    .build())
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(8)
                    .sockets(1)
                    .architecture("x86_64")
                    .type("host")
                    .build())
                .memory(ClonedVirtualMachineMemoryArgs.builder()
                    .size(8192)
                    .balloon(2048)
                    .shares(2000)
                    .build())
                .network(Map.of("net0", ClonedVirtualMachineNetworkArgs.builder()
                    .bridge("vmbr0")
                    .model("virtio")
                    .tag(100)
                    .firewall(true)
                    .rateLimit(100.0)
                    .build()))
                .disk(Map.of("scsi0", ClonedVirtualMachineDiskArgs.builder()
                    .datastoreId("local-lvm")
                    .sizeGb(100)
                    .discard("on")
                    .iothread(true)
                    .ssd(true)
                    .cache("writethrough")
                    .build()))
                .vga(ClonedVirtualMachineVgaArgs.builder()
                    .type("std")
                    .memory(16)
                    .build())
                .delete(ClonedVirtualMachineDeleteArgs.builder()
                    .disks("ide2")
                    .build())
                .stopOnDestroy(false)
                .purgeOnDestroy(true)
                .deleteUnreferencedDisksOnDestroy(false)
                .timeouts(ClonedVirtualMachineTimeoutsArgs.builder()
                    .create("30m")
                    .update("30m")
                    .delete("10m")
                    .build())
                .build());
    
            // Example 6: Linked clone for testing
            var testClone = new ClonedVirtualMachine("testClone", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("test-vm")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .full(false)
                    .build())
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(2)
                    .build())
                .network(Map.of("net0", ClonedVirtualMachineNetworkArgs.builder()
                    .bridge("vmbr0")
                    .model("virtio")
                    .build()))
                .build());
    
            // Example 7: Clone with pool assignment
            var pooledClone = new ClonedVirtualMachine("pooledClone", ClonedVirtualMachineArgs.builder()
                .nodeName("pve")
                .name("pooled-vm")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .poolId("production")
                    .build())
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(4)
                    .build())
                .build());
    
            // Example 8: Import existing cloned VM
            var imported = new ClonedVirtualMachine("imported", ClonedVirtualMachineArgs.builder()
                .vmId("123")
                .nodeName("pve")
                .clone(ClonedVirtualMachineCloneArgs.builder()
                    .sourceVmId(100)
                    .build())
                .cpu(ClonedVirtualMachineCpuArgs.builder()
                    .cores(4)
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Example 1: Basic clone with minimal management
      basicClone:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: basic_clone
        properties:
          nodeName: pve
          name: basic-clone
          clone:
            sourceVmId: 100
            full: true
          cpu:
            cores: 4
      # Example 2: Clone with explicit network management
      networkManaged:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: network_managed
        properties:
          nodeName: pve
          name: network-clone
          clone:
            sourceVmId: 100
          network:
            net0:
              bridge: vmbr0
              model: virtio
              tag: 100
            net1:
              bridge: vmbr1
              model: virtio
              firewall: true
              macAddress: BC:24:11:2E:C5:00
          cpu:
            cores: 2
      # Example 3: Clone with disk management
      diskManaged:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: disk_managed
        properties:
          nodeName: pve
          name: disk-clone
          clone:
            sourceVmId: 100
            targetDatastore: local-lvm
          disk:
            scsi0:
              datastoreId: local-lvm
              sizeGb: 50
              discard: on
              ssd: true
            scsi1:
              datastoreId: local-lvm
              sizeGb: 100
              backup: false
      # Example 4: Clone with explicit device deletion
      selectiveDelete:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: selective_delete
        properties:
          nodeName: pve
          name: minimal-clone
          clone:
            sourceVmId: 100
          network:
            net0:
              bridge: vmbr0
              model: virtio
          delete:
            networks:
              - net1
              - net2
      # Example 5: Full-featured clone with multiple settings
      fullFeatured:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: full_featured
        properties:
          nodeName: pve
          name: production-vm
          description: Production VM cloned from template
          tags:
            - production
            - web
          clone:
            sourceVmId: 100
            sourceNodeName: pve
            full: true
            targetDatastore: local-lvm
            retries: 3
          cpu:
            cores: 8
            sockets: 1
            architecture: x86_64
            type: host
          memory:
            size: 8192
            balloon: 2048
            shares: 2000
          network:
            net0:
              bridge: vmbr0
              model: virtio
              tag: 100
              firewall: true
              rateLimit: 100
          disk:
            scsi0:
              datastoreId: local-lvm
              sizeGb: 100
              discard: on
              iothread: true
              ssd: true
              cache: writethrough
          vga:
            type: std
            memory: 16
          delete:
            disks:
              - ide2
          stopOnDestroy: false # Shutdown gracefully instead of force stop
          purgeOnDestroy: true
          deleteUnreferencedDisksOnDestroy: false # Safety: don't delete unmanaged disks
          timeouts:
            create: 30m
            update: 30m
            delete: 10m
      # Example 6: Linked clone for testing
      testClone:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: test_clone
        properties:
          nodeName: pve
          name: test-vm
          clone:
            sourceVmId: 100
            full: false
          cpu:
            cores: 2
          network:
            net0:
              bridge: vmbr0
              model: virtio
      # Example 7: Clone with pool assignment
      pooledClone:
        type: proxmoxve:VM:ClonedVirtualMachine
        name: pooled_clone
        properties:
          nodeName: pve
          name: pooled-vm
          clone:
            sourceVmId: 100
            poolId: production
          cpu:
            cores: 4
      # Example 8: Import existing cloned VM
      imported:
        type: proxmoxve:VM:ClonedVirtualMachine
        properties:
          vmId: 123 # VM ID to manage
          nodeName: pve
          clone:
            sourceVmId: 100
          cpu:
            cores: 4
    

    Create ClonedVirtualMachine Resource

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

    Constructor syntax

    new ClonedVirtualMachine(name: string, args: ClonedVirtualMachineArgs, opts?: CustomResourceOptions);
    @overload
    def ClonedVirtualMachine(resource_name: str,
                             args: ClonedVirtualMachineArgs,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def ClonedVirtualMachine(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             node_name: Optional[str] = None,
                             clone: Optional[ClonedVirtualMachineCloneArgs] = None,
                             name: Optional[str] = None,
                             network: Optional[Mapping[str, ClonedVirtualMachineNetworkArgs]] = None,
                             delete_unreferenced_disks_on_destroy: Optional[bool] = None,
                             description: Optional[str] = None,
                             disk: Optional[Mapping[str, ClonedVirtualMachineDiskArgs]] = None,
                             memory: Optional[ClonedVirtualMachineMemoryArgs] = None,
                             cdrom: Optional[Mapping[str, ClonedVirtualMachineCdromArgs]] = None,
                             delete: Optional[ClonedVirtualMachineDeleteArgs] = None,
                             cpu: Optional[ClonedVirtualMachineCpuArgs] = None,
                             purge_on_destroy: Optional[bool] = None,
                             rng: Optional[ClonedVirtualMachineRngArgs] = None,
                             stop_on_destroy: Optional[bool] = None,
                             tags: Optional[Sequence[str]] = None,
                             timeouts: Optional[ClonedVirtualMachineTimeoutsArgs] = None,
                             vga: Optional[ClonedVirtualMachineVgaArgs] = None,
                             vm_id: Optional[str] = None)
    func NewClonedVirtualMachine(ctx *Context, name string, args ClonedVirtualMachineArgs, opts ...ResourceOption) (*ClonedVirtualMachine, error)
    public ClonedVirtualMachine(string name, ClonedVirtualMachineArgs args, CustomResourceOptions? opts = null)
    public ClonedVirtualMachine(String name, ClonedVirtualMachineArgs args)
    public ClonedVirtualMachine(String name, ClonedVirtualMachineArgs args, CustomResourceOptions options)
    
    type: proxmoxve:VM:ClonedVirtualMachine
    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 ClonedVirtualMachineArgs
    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 ClonedVirtualMachineArgs
    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 ClonedVirtualMachineArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ClonedVirtualMachineArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ClonedVirtualMachineArgs
    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 clonedVirtualMachineResource = new ProxmoxVE.VM.ClonedVirtualMachine("clonedVirtualMachineResource", new()
    {
        NodeName = "string",
        Clone = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCloneArgs
        {
            SourceVmId = 0,
            BandwidthLimit = 0,
            Full = false,
            PoolId = "string",
            Retries = 0,
            SnapshotName = "string",
            SourceNodeName = "string",
            TargetDatastore = "string",
            TargetFormat = "string",
        },
        Name = "string",
        Network = 
        {
            { "string", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs
            {
                Bridge = "string",
                Firewall = false,
                LinkDown = false,
                MacAddress = "string",
                Model = "string",
                Mtu = 0,
                Queues = 0,
                RateLimit = 0,
                Tag = 0,
                Trunks = new[]
                {
                    0,
                },
            } },
        },
        DeleteUnreferencedDisksOnDestroy = false,
        Description = "string",
        Disk = 
        {
            { "string", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs
            {
                Aio = "string",
                Backup = false,
                Cache = "string",
                DatastoreId = "string",
                Discard = "string",
                File = "string",
                Format = "string",
                ImportFrom = "string",
                Iothread = false,
                Media = "string",
                Replicate = false,
                Serial = "string",
                SizeGb = 0,
                Ssd = false,
            } },
        },
        Memory = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineMemoryArgs
        {
            Balloon = 0,
            Hugepages = "string",
            KeepHugepages = false,
            Shares = 0,
            Size = 0,
        },
        Cdrom = 
        {
            { "string", new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCdromArgs
            {
                FileId = "string",
            } },
        },
        Delete = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineDeleteArgs
        {
            Disks = new[]
            {
                "string",
            },
            Networks = new[]
            {
                "string",
            },
        },
        Cpu = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpuArgs
        {
            Affinity = "string",
            Architecture = "string",
            Cores = 0,
            Flags = new[]
            {
                "string",
            },
            Hotplugged = 0,
            Limit = 0,
            Numa = false,
            Sockets = 0,
            Type = "string",
            Units = 0,
        },
        PurgeOnDestroy = false,
        Rng = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineRngArgs
        {
            MaxBytes = 0,
            Period = 0,
            Source = "string",
        },
        StopOnDestroy = false,
        Tags = new[]
        {
            "string",
        },
        Timeouts = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Read = "string",
            Update = "string",
        },
        Vga = new ProxmoxVE.VM.Inputs.ClonedVirtualMachineVgaArgs
        {
            Clipboard = "string",
            Memory = 0,
            Type = "string",
        },
        VmId = "string",
    });
    
    example, err := vm.NewClonedVirtualMachine(ctx, "clonedVirtualMachineResource", &vm.ClonedVirtualMachineArgs{
    	NodeName: pulumi.String("string"),
    	Clone: &vm.ClonedVirtualMachineCloneArgs{
    		SourceVmId:      pulumi.Int(0),
    		BandwidthLimit:  pulumi.Int(0),
    		Full:            pulumi.Bool(false),
    		PoolId:          pulumi.String("string"),
    		Retries:         pulumi.Int(0),
    		SnapshotName:    pulumi.String("string"),
    		SourceNodeName:  pulumi.String("string"),
    		TargetDatastore: pulumi.String("string"),
    		TargetFormat:    pulumi.String("string"),
    	},
    	Name: pulumi.String("string"),
    	Network: vm.ClonedVirtualMachineNetworkMap{
    		"string": &vm.ClonedVirtualMachineNetworkArgs{
    			Bridge:     pulumi.String("string"),
    			Firewall:   pulumi.Bool(false),
    			LinkDown:   pulumi.Bool(false),
    			MacAddress: pulumi.String("string"),
    			Model:      pulumi.String("string"),
    			Mtu:        pulumi.Int(0),
    			Queues:     pulumi.Int(0),
    			RateLimit:  pulumi.Float64(0),
    			Tag:        pulumi.Int(0),
    			Trunks: pulumi.IntArray{
    				pulumi.Int(0),
    			},
    		},
    	},
    	DeleteUnreferencedDisksOnDestroy: pulumi.Bool(false),
    	Description:                      pulumi.String("string"),
    	Disk: vm.ClonedVirtualMachineDiskMap{
    		"string": &vm.ClonedVirtualMachineDiskArgs{
    			Aio:         pulumi.String("string"),
    			Backup:      pulumi.Bool(false),
    			Cache:       pulumi.String("string"),
    			DatastoreId: pulumi.String("string"),
    			Discard:     pulumi.String("string"),
    			File:        pulumi.String("string"),
    			Format:      pulumi.String("string"),
    			ImportFrom:  pulumi.String("string"),
    			Iothread:    pulumi.Bool(false),
    			Media:       pulumi.String("string"),
    			Replicate:   pulumi.Bool(false),
    			Serial:      pulumi.String("string"),
    			SizeGb:      pulumi.Int(0),
    			Ssd:         pulumi.Bool(false),
    		},
    	},
    	Memory: &vm.ClonedVirtualMachineMemoryArgs{
    		Balloon:       pulumi.Int(0),
    		Hugepages:     pulumi.String("string"),
    		KeepHugepages: pulumi.Bool(false),
    		Shares:        pulumi.Int(0),
    		Size:          pulumi.Int(0),
    	},
    	Cdrom: vm.ClonedVirtualMachineCdromMap{
    		"string": &vm.ClonedVirtualMachineCdromArgs{
    			FileId: pulumi.String("string"),
    		},
    	},
    	Delete: &vm.ClonedVirtualMachineDeleteArgs{
    		Disks: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Networks: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	Cpu: &vm.ClonedVirtualMachineCpuArgs{
    		Affinity:     pulumi.String("string"),
    		Architecture: pulumi.String("string"),
    		Cores:        pulumi.Int(0),
    		Flags: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Hotplugged: pulumi.Int(0),
    		Limit:      pulumi.Int(0),
    		Numa:       pulumi.Bool(false),
    		Sockets:    pulumi.Int(0),
    		Type:       pulumi.String("string"),
    		Units:      pulumi.Int(0),
    	},
    	PurgeOnDestroy: pulumi.Bool(false),
    	Rng: &vm.ClonedVirtualMachineRngArgs{
    		MaxBytes: pulumi.Int(0),
    		Period:   pulumi.Int(0),
    		Source:   pulumi.String("string"),
    	},
    	StopOnDestroy: pulumi.Bool(false),
    	Tags: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Timeouts: &vm.ClonedVirtualMachineTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Read:   pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    	Vga: &vm.ClonedVirtualMachineVgaArgs{
    		Clipboard: pulumi.String("string"),
    		Memory:    pulumi.Int(0),
    		Type:      pulumi.String("string"),
    	},
    	VmId: pulumi.String("string"),
    })
    
    var clonedVirtualMachineResource = new ClonedVirtualMachine("clonedVirtualMachineResource", ClonedVirtualMachineArgs.builder()
        .nodeName("string")
        .clone(ClonedVirtualMachineCloneArgs.builder()
            .sourceVmId(0)
            .bandwidthLimit(0)
            .full(false)
            .poolId("string")
            .retries(0)
            .snapshotName("string")
            .sourceNodeName("string")
            .targetDatastore("string")
            .targetFormat("string")
            .build())
        .name("string")
        .network(Map.of("string", ClonedVirtualMachineNetworkArgs.builder()
            .bridge("string")
            .firewall(false)
            .linkDown(false)
            .macAddress("string")
            .model("string")
            .mtu(0)
            .queues(0)
            .rateLimit(0.0)
            .tag(0)
            .trunks(0)
            .build()))
        .deleteUnreferencedDisksOnDestroy(false)
        .description("string")
        .disk(Map.of("string", ClonedVirtualMachineDiskArgs.builder()
            .aio("string")
            .backup(false)
            .cache("string")
            .datastoreId("string")
            .discard("string")
            .file("string")
            .format("string")
            .importFrom("string")
            .iothread(false)
            .media("string")
            .replicate(false)
            .serial("string")
            .sizeGb(0)
            .ssd(false)
            .build()))
        .memory(ClonedVirtualMachineMemoryArgs.builder()
            .balloon(0)
            .hugepages("string")
            .keepHugepages(false)
            .shares(0)
            .size(0)
            .build())
        .cdrom(Map.of("string", ClonedVirtualMachineCdromArgs.builder()
            .fileId("string")
            .build()))
        .delete(ClonedVirtualMachineDeleteArgs.builder()
            .disks("string")
            .networks("string")
            .build())
        .cpu(ClonedVirtualMachineCpuArgs.builder()
            .affinity("string")
            .architecture("string")
            .cores(0)
            .flags("string")
            .hotplugged(0)
            .limit(0)
            .numa(false)
            .sockets(0)
            .type("string")
            .units(0)
            .build())
        .purgeOnDestroy(false)
        .rng(ClonedVirtualMachineRngArgs.builder()
            .maxBytes(0)
            .period(0)
            .source("string")
            .build())
        .stopOnDestroy(false)
        .tags("string")
        .timeouts(ClonedVirtualMachineTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .read("string")
            .update("string")
            .build())
        .vga(ClonedVirtualMachineVgaArgs.builder()
            .clipboard("string")
            .memory(0)
            .type("string")
            .build())
        .vmId("string")
        .build());
    
    cloned_virtual_machine_resource = proxmoxve.vm.ClonedVirtualMachine("clonedVirtualMachineResource",
        node_name="string",
        clone={
            "source_vm_id": 0,
            "bandwidth_limit": 0,
            "full": False,
            "pool_id": "string",
            "retries": 0,
            "snapshot_name": "string",
            "source_node_name": "string",
            "target_datastore": "string",
            "target_format": "string",
        },
        name="string",
        network={
            "string": {
                "bridge": "string",
                "firewall": False,
                "link_down": False,
                "mac_address": "string",
                "model": "string",
                "mtu": 0,
                "queues": 0,
                "rate_limit": 0,
                "tag": 0,
                "trunks": [0],
            },
        },
        delete_unreferenced_disks_on_destroy=False,
        description="string",
        disk={
            "string": {
                "aio": "string",
                "backup": False,
                "cache": "string",
                "datastore_id": "string",
                "discard": "string",
                "file": "string",
                "format": "string",
                "import_from": "string",
                "iothread": False,
                "media": "string",
                "replicate": False,
                "serial": "string",
                "size_gb": 0,
                "ssd": False,
            },
        },
        memory={
            "balloon": 0,
            "hugepages": "string",
            "keep_hugepages": False,
            "shares": 0,
            "size": 0,
        },
        cdrom={
            "string": {
                "file_id": "string",
            },
        },
        delete={
            "disks": ["string"],
            "networks": ["string"],
        },
        cpu={
            "affinity": "string",
            "architecture": "string",
            "cores": 0,
            "flags": ["string"],
            "hotplugged": 0,
            "limit": 0,
            "numa": False,
            "sockets": 0,
            "type": "string",
            "units": 0,
        },
        purge_on_destroy=False,
        rng={
            "max_bytes": 0,
            "period": 0,
            "source": "string",
        },
        stop_on_destroy=False,
        tags=["string"],
        timeouts={
            "create": "string",
            "delete": "string",
            "read": "string",
            "update": "string",
        },
        vga={
            "clipboard": "string",
            "memory": 0,
            "type": "string",
        },
        vm_id="string")
    
    const clonedVirtualMachineResource = new proxmoxve.vm.ClonedVirtualMachine("clonedVirtualMachineResource", {
        nodeName: "string",
        clone: {
            sourceVmId: 0,
            bandwidthLimit: 0,
            full: false,
            poolId: "string",
            retries: 0,
            snapshotName: "string",
            sourceNodeName: "string",
            targetDatastore: "string",
            targetFormat: "string",
        },
        name: "string",
        network: {
            string: {
                bridge: "string",
                firewall: false,
                linkDown: false,
                macAddress: "string",
                model: "string",
                mtu: 0,
                queues: 0,
                rateLimit: 0,
                tag: 0,
                trunks: [0],
            },
        },
        deleteUnreferencedDisksOnDestroy: false,
        description: "string",
        disk: {
            string: {
                aio: "string",
                backup: false,
                cache: "string",
                datastoreId: "string",
                discard: "string",
                file: "string",
                format: "string",
                importFrom: "string",
                iothread: false,
                media: "string",
                replicate: false,
                serial: "string",
                sizeGb: 0,
                ssd: false,
            },
        },
        memory: {
            balloon: 0,
            hugepages: "string",
            keepHugepages: false,
            shares: 0,
            size: 0,
        },
        cdrom: {
            string: {
                fileId: "string",
            },
        },
        "delete": {
            disks: ["string"],
            networks: ["string"],
        },
        cpu: {
            affinity: "string",
            architecture: "string",
            cores: 0,
            flags: ["string"],
            hotplugged: 0,
            limit: 0,
            numa: false,
            sockets: 0,
            type: "string",
            units: 0,
        },
        purgeOnDestroy: false,
        rng: {
            maxBytes: 0,
            period: 0,
            source: "string",
        },
        stopOnDestroy: false,
        tags: ["string"],
        timeouts: {
            create: "string",
            "delete": "string",
            read: "string",
            update: "string",
        },
        vga: {
            clipboard: "string",
            memory: 0,
            type: "string",
        },
        vmId: "string",
    });
    
    type: proxmoxve:VM:ClonedVirtualMachine
    properties:
        cdrom:
            string:
                fileId: string
        clone:
            bandwidthLimit: 0
            full: false
            poolId: string
            retries: 0
            snapshotName: string
            sourceNodeName: string
            sourceVmId: 0
            targetDatastore: string
            targetFormat: string
        cpu:
            affinity: string
            architecture: string
            cores: 0
            flags:
                - string
            hotplugged: 0
            limit: 0
            numa: false
            sockets: 0
            type: string
            units: 0
        delete:
            disks:
                - string
            networks:
                - string
        deleteUnreferencedDisksOnDestroy: false
        description: string
        disk:
            string:
                aio: string
                backup: false
                cache: string
                datastoreId: string
                discard: string
                file: string
                format: string
                importFrom: string
                iothread: false
                media: string
                replicate: false
                serial: string
                sizeGb: 0
                ssd: false
        memory:
            balloon: 0
            hugepages: string
            keepHugepages: false
            shares: 0
            size: 0
        name: string
        network:
            string:
                bridge: string
                firewall: false
                linkDown: false
                macAddress: string
                model: string
                mtu: 0
                queues: 0
                rateLimit: 0
                tag: 0
                trunks:
                    - 0
        nodeName: string
        purgeOnDestroy: false
        rng:
            maxBytes: 0
            period: 0
            source: string
        stopOnDestroy: false
        tags:
            - string
        timeouts:
            create: string
            delete: string
            read: string
            update: string
        vga:
            clipboard: string
            memory: 0
            type: string
        vmId: string
    

    ClonedVirtualMachine 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 ClonedVirtualMachine resource accepts the following input properties:

    Clone Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    NodeName string
    Target node for the cloned VM.
    Cdrom Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineCdromArgs>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    Cpu Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpu
    The CPU configuration.
    Delete Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    DeleteUnreferencedDisksOnDestroy bool
    Description string
    Optional VM description applied after cloning.
    Disk Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    Memory Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    Name string
    Optional VM name override applied after cloning.
    Network Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    PurgeOnDestroy bool
    Purge backup configuration on destroy.
    Rng Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    StopOnDestroy bool
    Stop the VM on destroy (instead of shutdown).
    Tags List<string>
    Tags applied after cloning.
    Timeouts Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineTimeouts
    Vga Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    VmId string
    The VM identifier in the Proxmox cluster.
    Clone ClonedVirtualMachineCloneArgs
    Clone settings. Changes require recreation.
    NodeName string
    Target node for the cloned VM.
    Cdrom map[string]ClonedVirtualMachineCdromArgs
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    Cpu ClonedVirtualMachineCpuArgs
    The CPU configuration.
    Delete ClonedVirtualMachineDeleteArgs
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    DeleteUnreferencedDisksOnDestroy bool
    Description string
    Optional VM description applied after cloning.
    Disk map[string]ClonedVirtualMachineDiskArgs
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    Memory ClonedVirtualMachineMemoryArgs
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    Name string
    Optional VM name override applied after cloning.
    Network map[string]ClonedVirtualMachineNetworkArgs
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    PurgeOnDestroy bool
    Purge backup configuration on destroy.
    Rng ClonedVirtualMachineRngArgs
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    StopOnDestroy bool
    Stop the VM on destroy (instead of shutdown).
    Tags []string
    Tags applied after cloning.
    Timeouts ClonedVirtualMachineTimeoutsArgs
    Vga ClonedVirtualMachineVgaArgs
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    VmId string
    The VM identifier in the Proxmox cluster.
    clone_ ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    nodeName String
    Target node for the cloned VM.
    cdrom Map<String,ClonedVirtualMachineCdromArgs>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    cpu ClonedVirtualMachineCpu
    The CPU configuration.
    delete ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy Boolean
    description String
    Optional VM description applied after cloning.
    disk Map<String,ClonedVirtualMachineDiskArgs>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name String
    Optional VM name override applied after cloning.
    network Map<String,ClonedVirtualMachineNetworkArgs>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    purgeOnDestroy Boolean
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy Boolean
    Stop the VM on destroy (instead of shutdown).
    tags List<String>
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeouts
    vga ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId String
    The VM identifier in the Proxmox cluster.
    clone ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    nodeName string
    Target node for the cloned VM.
    cdrom {[key: string]: ClonedVirtualMachineCdromArgs}
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    cpu ClonedVirtualMachineCpu
    The CPU configuration.
    delete ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy boolean
    description string
    Optional VM description applied after cloning.
    disk {[key: string]: ClonedVirtualMachineDiskArgs}
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name string
    Optional VM name override applied after cloning.
    network {[key: string]: ClonedVirtualMachineNetworkArgs}
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    purgeOnDestroy boolean
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy boolean
    Stop the VM on destroy (instead of shutdown).
    tags string[]
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeouts
    vga ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId string
    The VM identifier in the Proxmox cluster.
    clone ClonedVirtualMachineCloneArgs
    Clone settings. Changes require recreation.
    node_name str
    Target node for the cloned VM.
    cdrom Mapping[str, ClonedVirtualMachineCdromArgs]
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    cpu ClonedVirtualMachineCpuArgs
    The CPU configuration.
    delete ClonedVirtualMachineDeleteArgs
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    delete_unreferenced_disks_on_destroy bool
    description str
    Optional VM description applied after cloning.
    disk Mapping[str, ClonedVirtualMachineDiskArgs]
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemoryArgs
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name str
    Optional VM name override applied after cloning.
    network Mapping[str, ClonedVirtualMachineNetworkArgs]
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    purge_on_destroy bool
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRngArgs
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stop_on_destroy bool
    Stop the VM on destroy (instead of shutdown).
    tags Sequence[str]
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeoutsArgs
    vga ClonedVirtualMachineVgaArgs
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vm_id str
    The VM identifier in the Proxmox cluster.
    clone Property Map
    Clone settings. Changes require recreation.
    nodeName String
    Target node for the cloned VM.
    cdrom Map<Property Map>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    cpu Property Map
    The CPU configuration.
    delete Property Map
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy Boolean
    description String
    Optional VM description applied after cloning.
    disk Map<Property Map>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory Property Map
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name String
    Optional VM name override applied after cloning.
    network Map<Property Map>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    purgeOnDestroy Boolean
    Purge backup configuration on destroy.
    rng Property Map
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy Boolean
    Stop the VM on destroy (instead of shutdown).
    tags List<String>
    Tags applied after cloning.
    timeouts Property Map
    vga Property Map
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId String
    The VM identifier in the Proxmox cluster.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ClonedVirtualMachine Resource

    Get an existing ClonedVirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ClonedVirtualMachineState, opts?: CustomResourceOptions): ClonedVirtualMachine
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cdrom: Optional[Mapping[str, ClonedVirtualMachineCdromArgs]] = None,
            clone: Optional[ClonedVirtualMachineCloneArgs] = None,
            cpu: Optional[ClonedVirtualMachineCpuArgs] = None,
            delete: Optional[ClonedVirtualMachineDeleteArgs] = None,
            delete_unreferenced_disks_on_destroy: Optional[bool] = None,
            description: Optional[str] = None,
            disk: Optional[Mapping[str, ClonedVirtualMachineDiskArgs]] = None,
            memory: Optional[ClonedVirtualMachineMemoryArgs] = None,
            name: Optional[str] = None,
            network: Optional[Mapping[str, ClonedVirtualMachineNetworkArgs]] = None,
            node_name: Optional[str] = None,
            purge_on_destroy: Optional[bool] = None,
            rng: Optional[ClonedVirtualMachineRngArgs] = None,
            stop_on_destroy: Optional[bool] = None,
            tags: Optional[Sequence[str]] = None,
            timeouts: Optional[ClonedVirtualMachineTimeoutsArgs] = None,
            vga: Optional[ClonedVirtualMachineVgaArgs] = None,
            vm_id: Optional[str] = None) -> ClonedVirtualMachine
    func GetClonedVirtualMachine(ctx *Context, name string, id IDInput, state *ClonedVirtualMachineState, opts ...ResourceOption) (*ClonedVirtualMachine, error)
    public static ClonedVirtualMachine Get(string name, Input<string> id, ClonedVirtualMachineState? state, CustomResourceOptions? opts = null)
    public static ClonedVirtualMachine get(String name, Output<String> id, ClonedVirtualMachineState state, CustomResourceOptions options)
    resources:  _:    type: proxmoxve:VM:ClonedVirtualMachine    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Cdrom Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineCdromArgs>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    Clone Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    Cpu Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineCpu
    The CPU configuration.
    Delete Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    DeleteUnreferencedDisksOnDestroy bool
    Description string
    Optional VM description applied after cloning.
    Disk Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineDiskArgs>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    Memory Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    Name string
    Optional VM name override applied after cloning.
    Network Dictionary<string, Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineNetworkArgs>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    NodeName string
    Target node for the cloned VM.
    PurgeOnDestroy bool
    Purge backup configuration on destroy.
    Rng Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    StopOnDestroy bool
    Stop the VM on destroy (instead of shutdown).
    Tags List<string>
    Tags applied after cloning.
    Timeouts Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineTimeouts
    Vga Pulumi.ProxmoxVE.VM.Inputs.ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    VmId string
    The VM identifier in the Proxmox cluster.
    Cdrom map[string]ClonedVirtualMachineCdromArgs
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    Clone ClonedVirtualMachineCloneArgs
    Clone settings. Changes require recreation.
    Cpu ClonedVirtualMachineCpuArgs
    The CPU configuration.
    Delete ClonedVirtualMachineDeleteArgs
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    DeleteUnreferencedDisksOnDestroy bool
    Description string
    Optional VM description applied after cloning.
    Disk map[string]ClonedVirtualMachineDiskArgs
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    Memory ClonedVirtualMachineMemoryArgs
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    Name string
    Optional VM name override applied after cloning.
    Network map[string]ClonedVirtualMachineNetworkArgs
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    NodeName string
    Target node for the cloned VM.
    PurgeOnDestroy bool
    Purge backup configuration on destroy.
    Rng ClonedVirtualMachineRngArgs
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    StopOnDestroy bool
    Stop the VM on destroy (instead of shutdown).
    Tags []string
    Tags applied after cloning.
    Timeouts ClonedVirtualMachineTimeoutsArgs
    Vga ClonedVirtualMachineVgaArgs
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    VmId string
    The VM identifier in the Proxmox cluster.
    cdrom Map<String,ClonedVirtualMachineCdromArgs>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    clone_ ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    cpu ClonedVirtualMachineCpu
    The CPU configuration.
    delete ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy Boolean
    description String
    Optional VM description applied after cloning.
    disk Map<String,ClonedVirtualMachineDiskArgs>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name String
    Optional VM name override applied after cloning.
    network Map<String,ClonedVirtualMachineNetworkArgs>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    nodeName String
    Target node for the cloned VM.
    purgeOnDestroy Boolean
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy Boolean
    Stop the VM on destroy (instead of shutdown).
    tags List<String>
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeouts
    vga ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId String
    The VM identifier in the Proxmox cluster.
    cdrom {[key: string]: ClonedVirtualMachineCdromArgs}
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    clone ClonedVirtualMachineClone
    Clone settings. Changes require recreation.
    cpu ClonedVirtualMachineCpu
    The CPU configuration.
    delete ClonedVirtualMachineDelete
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy boolean
    description string
    Optional VM description applied after cloning.
    disk {[key: string]: ClonedVirtualMachineDiskArgs}
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemory
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name string
    Optional VM name override applied after cloning.
    network {[key: string]: ClonedVirtualMachineNetworkArgs}
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    nodeName string
    Target node for the cloned VM.
    purgeOnDestroy boolean
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRng
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy boolean
    Stop the VM on destroy (instead of shutdown).
    tags string[]
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeouts
    vga ClonedVirtualMachineVga
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId string
    The VM identifier in the Proxmox cluster.
    cdrom Mapping[str, ClonedVirtualMachineCdromArgs]
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    clone ClonedVirtualMachineCloneArgs
    Clone settings. Changes require recreation.
    cpu ClonedVirtualMachineCpuArgs
    The CPU configuration.
    delete ClonedVirtualMachineDeleteArgs
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    delete_unreferenced_disks_on_destroy bool
    description str
    Optional VM description applied after cloning.
    disk Mapping[str, ClonedVirtualMachineDiskArgs]
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory ClonedVirtualMachineMemoryArgs
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name str
    Optional VM name override applied after cloning.
    network Mapping[str, ClonedVirtualMachineNetworkArgs]
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    node_name str
    Target node for the cloned VM.
    purge_on_destroy bool
    Purge backup configuration on destroy.
    rng ClonedVirtualMachineRngArgs
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stop_on_destroy bool
    Stop the VM on destroy (instead of shutdown).
    tags Sequence[str]
    Tags applied after cloning.
    timeouts ClonedVirtualMachineTimeoutsArgs
    vga ClonedVirtualMachineVgaArgs
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vm_id str
    The VM identifier in the Proxmox cluster.
    cdrom Map<Property Map>
    The CD-ROM configuration. The key is the interface of the CD-ROM, could be one of ideN, sataN, scsiN, where N is the index of the interface. Note that q35 machine type only supports ide0 and ide2 of IDE interfaces.
    clone Property Map
    Clone settings. Changes require recreation.
    cpu Property Map
    The CPU configuration.
    delete Property Map
    Explicit deletions to perform after cloning/updating. Entries persist across applies.
    deleteUnreferencedDisksOnDestroy Boolean
    description String
    Optional VM description applied after cloning.
    disk Map<Property Map>
    Disks keyed by slot (scsi0, virtio0, sata0, ide0, ...). Only listed keys are managed.
    memory Property Map
    Memory configuration for the VM. Uses Proxmox memory ballooning to allow dynamic memory allocation. The size sets the total available RAM, while balloon sets the guaranteed floor. The host can reclaim memory between these values when needed.
    name String
    Optional VM name override applied after cloning.
    network Map<Property Map>
    Network devices keyed by slot (net0, net1, ...). Only listed keys are managed.
    nodeName String
    Target node for the cloned VM.
    purgeOnDestroy Boolean
    Purge backup configuration on destroy.
    rng Property Map
    Configure the RNG (Random Number Generator) device. The RNG device provides entropy to guests to ensure good quality random numbers for guest applications that require them. Can only be set by root@pam. See the Proxmox documentation for more information.
    stopOnDestroy Boolean
    Stop the VM on destroy (instead of shutdown).
    tags List<String>
    Tags applied after cloning.
    timeouts Property Map
    vga Property Map
    Configure the VGA Hardware. If you want to use high resolution modes (>= 1280x1024x16) you may need to increase the vga memory option. Since QEMU 2.9 the default VGA display type is std for all OS types besides some Windows versions (XP and older) which use cirrus. The qxl option enables the SPICE display server. For win* OS you can select how many independent displays you want, Linux guests can add displays themself. You can also run without any graphic card, using a serial device as terminal. See the Proxmox documentation section 10.2.8 for more information and available configuration parameters.
    vmId String
    The VM identifier in the Proxmox cluster.

    Supporting Types

    ClonedVirtualMachineCdrom, ClonedVirtualMachineCdromArgs

    FileId string
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.
    FileId string
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.
    fileId String
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.
    fileId string
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.
    file_id str
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.
    fileId String
    The file ID of the CD-ROM, or cdrom|none. Defaults to none to leave the CD-ROM empty. Use cdrom to connect to the physical drive.

    ClonedVirtualMachineClone, ClonedVirtualMachineCloneArgs

    SourceVmId int
    Source VM/template ID to clone from.
    BandwidthLimit int
    Clone bandwidth limit in MB/s.
    Full bool
    Perform a full clone (true) or linked clone (false).
    PoolId string
    Pool to assign the cloned VM to.
    Retries int
    Number of retries for clone operations.
    SnapshotName string
    Snapshot name to clone from.
    SourceNodeName string
    Source node of the VM/template. Defaults to target node if unset.
    TargetDatastore string
    Target datastore for cloned disks.
    TargetFormat string
    Target disk format for clone (e.g., raw, qcow2).
    SourceVmId int
    Source VM/template ID to clone from.
    BandwidthLimit int
    Clone bandwidth limit in MB/s.
    Full bool
    Perform a full clone (true) or linked clone (false).
    PoolId string
    Pool to assign the cloned VM to.
    Retries int
    Number of retries for clone operations.
    SnapshotName string
    Snapshot name to clone from.
    SourceNodeName string
    Source node of the VM/template. Defaults to target node if unset.
    TargetDatastore string
    Target datastore for cloned disks.
    TargetFormat string
    Target disk format for clone (e.g., raw, qcow2).
    sourceVmId Integer
    Source VM/template ID to clone from.
    bandwidthLimit Integer
    Clone bandwidth limit in MB/s.
    full Boolean
    Perform a full clone (true) or linked clone (false).
    poolId String
    Pool to assign the cloned VM to.
    retries Integer
    Number of retries for clone operations.
    snapshotName String
    Snapshot name to clone from.
    sourceNodeName String
    Source node of the VM/template. Defaults to target node if unset.
    targetDatastore String
    Target datastore for cloned disks.
    targetFormat String
    Target disk format for clone (e.g., raw, qcow2).
    sourceVmId number
    Source VM/template ID to clone from.
    bandwidthLimit number
    Clone bandwidth limit in MB/s.
    full boolean
    Perform a full clone (true) or linked clone (false).
    poolId string
    Pool to assign the cloned VM to.
    retries number
    Number of retries for clone operations.
    snapshotName string
    Snapshot name to clone from.
    sourceNodeName string
    Source node of the VM/template. Defaults to target node if unset.
    targetDatastore string
    Target datastore for cloned disks.
    targetFormat string
    Target disk format for clone (e.g., raw, qcow2).
    source_vm_id int
    Source VM/template ID to clone from.
    bandwidth_limit int
    Clone bandwidth limit in MB/s.
    full bool
    Perform a full clone (true) or linked clone (false).
    pool_id str
    Pool to assign the cloned VM to.
    retries int
    Number of retries for clone operations.
    snapshot_name str
    Snapshot name to clone from.
    source_node_name str
    Source node of the VM/template. Defaults to target node if unset.
    target_datastore str
    Target datastore for cloned disks.
    target_format str
    Target disk format for clone (e.g., raw, qcow2).
    sourceVmId Number
    Source VM/template ID to clone from.
    bandwidthLimit Number
    Clone bandwidth limit in MB/s.
    full Boolean
    Perform a full clone (true) or linked clone (false).
    poolId String
    Pool to assign the cloned VM to.
    retries Number
    Number of retries for clone operations.
    snapshotName String
    Snapshot name to clone from.
    sourceNodeName String
    Source node of the VM/template. Defaults to target node if unset.
    targetDatastore String
    Target datastore for cloned disks.
    targetFormat String
    Target disk format for clone (e.g., raw, qcow2).

    ClonedVirtualMachineCpu, ClonedVirtualMachineCpuArgs

    Affinity string
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    Architecture string
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    Cores int
    The number of CPU cores per socket (defaults to 1).
    Flags List<string>
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    Hotplugged int
    The number of hotplugged vCPUs (defaults to 0).
    Limit int
    Limit of CPU usage (defaults to 0 which means no limit).
    Numa bool
    Enable NUMA (defaults to false).
    Sockets int
    The number of CPU sockets (defaults to 1).
    Type string
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    Units int
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.
    Affinity string
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    Architecture string
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    Cores int
    The number of CPU cores per socket (defaults to 1).
    Flags []string
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    Hotplugged int
    The number of hotplugged vCPUs (defaults to 0).
    Limit int
    Limit of CPU usage (defaults to 0 which means no limit).
    Numa bool
    Enable NUMA (defaults to false).
    Sockets int
    The number of CPU sockets (defaults to 1).
    Type string
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    Units int
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.
    affinity String
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    architecture String
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    cores Integer
    The number of CPU cores per socket (defaults to 1).
    flags List<String>
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    hotplugged Integer
    The number of hotplugged vCPUs (defaults to 0).
    limit Integer
    Limit of CPU usage (defaults to 0 which means no limit).
    numa Boolean
    Enable NUMA (defaults to false).
    sockets Integer
    The number of CPU sockets (defaults to 1).
    type String
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    units Integer
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.
    affinity string
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    architecture string
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    cores number
    The number of CPU cores per socket (defaults to 1).
    flags string[]
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    hotplugged number
    The number of hotplugged vCPUs (defaults to 0).
    limit number
    Limit of CPU usage (defaults to 0 which means no limit).
    numa boolean
    Enable NUMA (defaults to false).
    sockets number
    The number of CPU sockets (defaults to 1).
    type string
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    units number
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.
    affinity str
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    architecture str
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    cores int
    The number of CPU cores per socket (defaults to 1).
    flags Sequence[str]
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    hotplugged int
    The number of hotplugged vCPUs (defaults to 0).
    limit int
    Limit of CPU usage (defaults to 0 which means no limit).
    numa bool
    Enable NUMA (defaults to false).
    sockets int
    The number of CPU sockets (defaults to 1).
    type str
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    units int
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.
    affinity String
    The CPU cores that are used to run the VM’s vCPU. The value is a list of CPU IDs, separated by commas. The CPU IDs are zero-based. For example, 0,1,2,3 (which also can be shortened to 0-3) means that the VM’s vCPUs are run on the first four CPU cores. Setting affinity is only allowed for root@pam authenticated user.
    architecture String
    The CPU architecture <aarch64 | x86_64> (defaults to the host). Setting architecture is only allowed for root@pam authenticated user.
    cores Number
    The number of CPU cores per socket (defaults to 1).
    flags List<String>
    Set of additional CPU flags. Use +FLAG to enable, -FLAG to disable a flag. Custom CPU models can specify any flag supported by QEMU/KVM, VM-specific flags must be from the following set for security reasons: pcid, spec-ctrl, ibpb, ssbd, virt-ssbd, amd-ssbd, amd-no-ssb, pdpe1gb, md-clear, hv-tlbflush, hv-evmcs, aes.
    hotplugged Number
    The number of hotplugged vCPUs (defaults to 0).
    limit Number
    Limit of CPU usage (defaults to 0 which means no limit).
    numa Boolean
    Enable NUMA (defaults to false).
    sockets Number
    The number of CPU sockets (defaults to 1).
    type String
    Emulated CPU type, it's recommended to use x86-64-v2-AES or higher (defaults to kvm64). See https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qmvirtualmachines_settings for more information.
    units Number
    CPU weight for a VM. Argument is used in the kernel fair scheduler. The larger the number is, the more CPU time this VM gets. Number is relative to weights of all the other running VMs.

    ClonedVirtualMachineDelete, ClonedVirtualMachineDeleteArgs

    Disks List<string>
    Disk slots to delete (e.g., scsi2).
    Networks List<string>
    Network slots to delete (e.g., net1).
    Disks []string
    Disk slots to delete (e.g., scsi2).
    Networks []string
    Network slots to delete (e.g., net1).
    disks List<String>
    Disk slots to delete (e.g., scsi2).
    networks List<String>
    Network slots to delete (e.g., net1).
    disks string[]
    Disk slots to delete (e.g., scsi2).
    networks string[]
    Network slots to delete (e.g., net1).
    disks Sequence[str]
    Disk slots to delete (e.g., scsi2).
    networks Sequence[str]
    Network slots to delete (e.g., net1).
    disks List<String>
    Disk slots to delete (e.g., scsi2).
    networks List<String>
    Network slots to delete (e.g., net1).

    ClonedVirtualMachineDisk, ClonedVirtualMachineDiskArgs

    Aio string
    AIO mode (io_uring, native, threads).
    Backup bool
    Include disk in backups.
    Cache string
    Cache mode.
    DatastoreId string
    Target datastore for new disks when file is not provided.
    Discard string
    Discard/trim behavior.
    File string
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    Format string
    Disk format (raw, qcow2, vmdk).
    ImportFrom string
    Import source volume/file id.
    Iothread bool
    Use IO thread.
    Media string
    Disk media (e.g., disk, cdrom).
    Replicate bool
    Consider disk for replication.
    Serial string
    Disk serial number.
    SizeGb int
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    Ssd bool
    Mark disk as SSD.
    Aio string
    AIO mode (io_uring, native, threads).
    Backup bool
    Include disk in backups.
    Cache string
    Cache mode.
    DatastoreId string
    Target datastore for new disks when file is not provided.
    Discard string
    Discard/trim behavior.
    File string
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    Format string
    Disk format (raw, qcow2, vmdk).
    ImportFrom string
    Import source volume/file id.
    Iothread bool
    Use IO thread.
    Media string
    Disk media (e.g., disk, cdrom).
    Replicate bool
    Consider disk for replication.
    Serial string
    Disk serial number.
    SizeGb int
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    Ssd bool
    Mark disk as SSD.
    aio String
    AIO mode (io_uring, native, threads).
    backup Boolean
    Include disk in backups.
    cache String
    Cache mode.
    datastoreId String
    Target datastore for new disks when file is not provided.
    discard String
    Discard/trim behavior.
    file String
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    format String
    Disk format (raw, qcow2, vmdk).
    importFrom String
    Import source volume/file id.
    iothread Boolean
    Use IO thread.
    media String
    Disk media (e.g., disk, cdrom).
    replicate Boolean
    Consider disk for replication.
    serial String
    Disk serial number.
    sizeGb Integer
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    ssd Boolean
    Mark disk as SSD.
    aio string
    AIO mode (io_uring, native, threads).
    backup boolean
    Include disk in backups.
    cache string
    Cache mode.
    datastoreId string
    Target datastore for new disks when file is not provided.
    discard string
    Discard/trim behavior.
    file string
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    format string
    Disk format (raw, qcow2, vmdk).
    importFrom string
    Import source volume/file id.
    iothread boolean
    Use IO thread.
    media string
    Disk media (e.g., disk, cdrom).
    replicate boolean
    Consider disk for replication.
    serial string
    Disk serial number.
    sizeGb number
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    ssd boolean
    Mark disk as SSD.
    aio str
    AIO mode (io_uring, native, threads).
    backup bool
    Include disk in backups.
    cache str
    Cache mode.
    datastore_id str
    Target datastore for new disks when file is not provided.
    discard str
    Discard/trim behavior.
    file str
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    format str
    Disk format (raw, qcow2, vmdk).
    import_from str
    Import source volume/file id.
    iothread bool
    Use IO thread.
    media str
    Disk media (e.g., disk, cdrom).
    replicate bool
    Consider disk for replication.
    serial str
    Disk serial number.
    size_gb int
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    ssd bool
    Mark disk as SSD.
    aio String
    AIO mode (io_uring, native, threads).
    backup Boolean
    Include disk in backups.
    cache String
    Cache mode.
    datastoreId String
    Target datastore for new disks when file is not provided.
    discard String
    Discard/trim behavior.
    file String
    Existing volume reference (e.g., local-lvm:vm-100-disk-0).
    format String
    Disk format (raw, qcow2, vmdk).
    importFrom String
    Import source volume/file id.
    iothread Boolean
    Use IO thread.
    media String
    Disk media (e.g., disk, cdrom).
    replicate Boolean
    Consider disk for replication.
    serial String
    Disk serial number.
    sizeGb Number
    Disk size (GiB) when creating new disks. Note: Disk shrinking is not supported. Attempting to set size_gb to a value smaller than the current disk size will result in an error. Only disk expansion is allowed.
    ssd Boolean
    Mark disk as SSD.

    ClonedVirtualMachineMemory, ClonedVirtualMachineMemoryArgs

    Balloon int
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    Hugepages string

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    KeepHugepages bool
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    Shares int
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    Size int
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).
    Balloon int
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    Hugepages string

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    KeepHugepages bool
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    Shares int
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    Size int
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).
    balloon Integer
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    hugepages String

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    keepHugepages Boolean
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    shares Integer
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    size Integer
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).
    balloon number
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    hugepages string

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    keepHugepages boolean
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    shares number
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    size number
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).
    balloon int
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    hugepages str

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    keep_hugepages bool
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    shares int
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    size int
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).
    balloon Number
    Minimum guaranteed memory in MiB via balloon device. This is the floor amount of RAM that is always guaranteed to the VM. Setting to 0 disables the balloon driver entirely (defaults to 0).
    hugepages String

    Enable hugepages for VM memory allocation. Hugepages can improve performance for memory-intensive workloads by reducing TLB misses.

    Options:

    • 2 - Use 2 MiB hugepages
    • 1024 - Use 1 GiB hugepages
    • any - Use any available hugepage size
    keepHugepages Boolean
    Don't release hugepages when the VM shuts down. By default, hugepages are released back to the host when the VM stops. Setting this to true keeps them allocated for faster VM startup (defaults to false).
    shares Number
    CPU scheduler priority for memory ballooning. This is used by the kernel fair scheduler. Higher values mean this VM gets more CPU time during memory ballooning operations. The value is relative to other running VMs (defaults to 1000).
    size Number
    Total memory available to the VM in MiB. This is the total RAM the VM can use. When ballooning is enabled (balloon > 0), memory between balloon and size can be reclaimed by the host. When ballooning is disabled (balloon = 0), this is the fixed amount of RAM allocated to the VM (defaults to 512 MiB).

    ClonedVirtualMachineNetwork, ClonedVirtualMachineNetworkArgs

    Bridge string
    Bridge name.
    Firewall bool
    Enable firewall on this interface.
    LinkDown bool
    Keep link down.
    MacAddress string
    MAC address (computed if omitted).
    Model string
    NIC model (e.g., virtio, e1000).
    Mtu int
    Interface MTU.
    Queues int
    Number of multiqueue NIC queues.
    RateLimit double
    Rate limit (MB/s).
    Tag int
    VLAN tag.
    Trunks List<int>
    Trunk VLAN IDs.
    Bridge string
    Bridge name.
    Firewall bool
    Enable firewall on this interface.
    LinkDown bool
    Keep link down.
    MacAddress string
    MAC address (computed if omitted).
    Model string
    NIC model (e.g., virtio, e1000).
    Mtu int
    Interface MTU.
    Queues int
    Number of multiqueue NIC queues.
    RateLimit float64
    Rate limit (MB/s).
    Tag int
    VLAN tag.
    Trunks []int
    Trunk VLAN IDs.
    bridge String
    Bridge name.
    firewall Boolean
    Enable firewall on this interface.
    linkDown Boolean
    Keep link down.
    macAddress String
    MAC address (computed if omitted).
    model String
    NIC model (e.g., virtio, e1000).
    mtu Integer
    Interface MTU.
    queues Integer
    Number of multiqueue NIC queues.
    rateLimit Double
    Rate limit (MB/s).
    tag Integer
    VLAN tag.
    trunks List<Integer>
    Trunk VLAN IDs.
    bridge string
    Bridge name.
    firewall boolean
    Enable firewall on this interface.
    linkDown boolean
    Keep link down.
    macAddress string
    MAC address (computed if omitted).
    model string
    NIC model (e.g., virtio, e1000).
    mtu number
    Interface MTU.
    queues number
    Number of multiqueue NIC queues.
    rateLimit number
    Rate limit (MB/s).
    tag number
    VLAN tag.
    trunks number[]
    Trunk VLAN IDs.
    bridge str
    Bridge name.
    firewall bool
    Enable firewall on this interface.
    link_down bool
    Keep link down.
    mac_address str
    MAC address (computed if omitted).
    model str
    NIC model (e.g., virtio, e1000).
    mtu int
    Interface MTU.
    queues int
    Number of multiqueue NIC queues.
    rate_limit float
    Rate limit (MB/s).
    tag int
    VLAN tag.
    trunks Sequence[int]
    Trunk VLAN IDs.
    bridge String
    Bridge name.
    firewall Boolean
    Enable firewall on this interface.
    linkDown Boolean
    Keep link down.
    macAddress String
    MAC address (computed if omitted).
    model String
    NIC model (e.g., virtio, e1000).
    mtu Number
    Interface MTU.
    queues Number
    Number of multiqueue NIC queues.
    rateLimit Number
    Rate limit (MB/s).
    tag Number
    VLAN tag.
    trunks List<Number>
    Trunk VLAN IDs.

    ClonedVirtualMachineRng, ClonedVirtualMachineRngArgs

    MaxBytes int
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    Period int
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    Source string
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.
    MaxBytes int
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    Period int
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    Source string
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.
    maxBytes Integer
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    period Integer
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    source String
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.
    maxBytes number
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    period number
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    source string
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.
    max_bytes int
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    period int
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    source str
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.
    maxBytes Number
    Maximum bytes of entropy allowed to get injected into the guest every period. Use 0 to disable limiting (potentially dangerous).
    period Number
    Period in milliseconds to limit entropy injection to the guest. Use 0 to disable limiting (potentially dangerous).
    source String
    The file on the host to gather entropy from. In most cases, /dev/urandom should be preferred over /dev/random to avoid entropy-starvation issues on the host.

    ClonedVirtualMachineTimeouts, ClonedVirtualMachineTimeoutsArgs

    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Read string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Read string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    read String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    read string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    read str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    update str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    read String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

    ClonedVirtualMachineVga, ClonedVirtualMachineVgaArgs

    Clipboard string
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    Memory int
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    Type string
    The VGA type (defaults to std).
    Clipboard string
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    Memory int
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    Type string
    The VGA type (defaults to std).
    clipboard String
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    memory Integer
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    type String
    The VGA type (defaults to std).
    clipboard string
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    memory number
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    type string
    The VGA type (defaults to std).
    clipboard str
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    memory int
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    type str
    The VGA type (defaults to std).
    clipboard String
    Enable a specific clipboard. If not set, depending on the display type the SPICE one will be added. Currently only vnc is available. Migration with VNC clipboard is not supported by Proxmox.
    memory Number
    The VGA memory in megabytes (4-512 MB). Has no effect with serial display.
    type String
    The VGA type (defaults to std).

    Package Details

    Repository
    proxmoxve muhlba91/pulumi-proxmoxve
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the proxmox Terraform Provider.
    proxmoxve logo
    Proxmox Virtual Environment (Proxmox VE) v7.13.0 published on Tuesday, Feb 10, 2026 by Daniel Muehlbachler-Pietrzykowski
      Meet Neo: Your AI Platform Teammate