variable "vm_name" {
  description = "Domain name, e.g. \"dc1-compute-01\"."
  type        = string
}

variable "memory_mib" {
  description = "Memory in MiB. Sizing is a Phase-0 host/disk-budget decision (buildout-design Section 3) -- no default, pass explicitly."
  type        = number
}

variable "vcpu" {
  description = "Virtual CPU count. No default -- pass explicitly, per the measured Phase-0 CPU budget."
  type        = number
}

variable "pool_name" {
  description = "libvirt_pool name this VM's disk lives in (output of modules/dc-storage-pool)."
  type        = string
}

variable "disk_size_bytes" {
  description = "Blank boot-disk size in bytes. No default -- pass explicitly."
  type        = number
}

variable "network_names" {
  description = <<-EOT
    Ordered list of libvirt_network names (outputs of modules/dc-planes) this
    VM attaches to. Order matters for boot priority -- the FIRST entry is
    given PXE boot priority (see main.tf's boot-order note; MAAS-managed
    node VMs PXE-boot per D-103, they are not given a pre-built OS image).
  EOT
  type = list(string)
}
