variable "proxmox_api_url" { description = "Base URL for Proxmox API, e.g. https://nodito:8006/api2/json" type = string } variable "proxmox_api_token_id" { description = "Proxmox API token ID, e.g. root@pam!tofu" type = string sensitive = true } variable "proxmox_api_token_secret" { description = "Proxmox API token secret" type = string sensitive = true } variable "proxmox_node" { description = "Target Proxmox node name" type = string default = "nodito" } variable "zfs_storage_name" { description = "Proxmox storage name backed by ZFS (from Ansible: zfs_pool_name)" type = string default = "proxmox-tank-1" } variable "template_name" { description = "Cloud-init template to clone (created by Ansible)" type = string default = "debian-13-cloud-init" } variable "cloud_init_user" { description = "Default cloud-init user" type = string default = "counterweight" } variable "ssh_authorized_keys" { description = "SSH public key content to inject via cloud-init" type = string sensitive = true } variable "vms" { description = "Map of VMs to create" type = map(object({ name = string vmid = optional(number) cores = number memory_mb = number disk_size_gb = number vlan_tag = optional(number) ipconfig0 = optional(string) # e.g. "ip=dhcp" or "ip=192.168.1.50/24,gw=192.168.1.1" })) default = {} }