variable "vmid" { description = "The VM ID of the Proxmox VM." type = number } variable "name" { description = "The name of the Proxmox VM." type = string } variable "target_node" { description = "The Proxmox node to provision the VM on." type = string } variable "agent" { description = "Enable QEMU Guest Agent (1 for enabled, 0 for disabled)." type = number default = 1 } variable "cpu_cores" { description = "Number of CPU cores for the VM." type = number default = 2 } variable "memory" { description = "Memory in MB for the VM." type = number default = 1024 } variable "boot" { description = "Boot order for the VM (e.g., 'order=scsi0')." type = string default = " " # Proxmox expects a space for default if not specified } variable "clone_id" { description = "The VM ID of the template to clone from." type = number default = 9000 } variable "full_clone" { description = "Whether to perform a full clone or linked clone." type = bool default = true } variable "scsihw" { description = "SCSI controller hardware type." type = string default = "virtio-scsi-single" } variable "vm_state" { description = "Desired state of the VM ('running', 'stopped', etc.)." type = string default = "running" } variable "automatic_reboot" { description = "Automatically reboot the VM on configuration changes." type = bool default = true } variable "ciupgrade" { description = "Upgrade Cloud-Init tools on first boot." type = bool default = true } variable "ipconfig0" { description = "Cloud-Init IP configuration for network interface 0." type = string default = "ip=dhcp" } variable "skip_ipv6" { description = "Skip IPv6 configuration for Cloud-Init." type = bool default = true } variable "ciuser" { description = "Cloud-Init user for the VM." type = string default = "root" } variable "cipassword" { description = "Cloud-Init password for the VM." type = string default = "Enter123!" } variable "sshkeys" { description = "Public SSH key(s) to be added to the VM." type = string } variable "disk_storage" { description = "Storage for the primary OS disk." type = string default = "pv1" } variable "disk_size" { description = "Size of the primary OS disk (e.g., '5G')." type = string default = "5G" } variable "cloudinit_storage" { description = "Storage for the Cloud-Init disk." type = string default = "local-lvm" } variable "network_bridge" { description = "Bridge for the network interface." type = string default = "vmbr0" } variable "network_model" { description = "Model for the network interface." type = string default = "virtio" }