variable "instance_mode" { type = string default = "single" } variable "instance" { description = "Single instance definition" type = object({ service_name = string vm_name = string node_name = string vm_cpu = optional(number) vm_ram = optional(number) vm_size = optional(string) app_port = number app_image = string vm_tags = optional(list(string)) }) default = null } variable "instances" { description = "Multiple instance definitions" type = map(object({ service_name = string vm_name = string node_name = string vm_cpu = optional(number) vm_ram = optional(number) vm_size = optional(string) app_port = number app_image = string vm_tags = optional(list(string)) })) default = {} } variable "vm_defaults" { type = object({ node_datastore = string vm_bios = string vm_machine = string vm_user_sshkey = string bridge = string vm_cpu = number vm_ram = number vm_size = string }) default = { node_datastore = "hlst" vm_bios = "ovmf" vm_machine = "q35" vm_user_sshkey = "" bridge = "vmbr0" vm_cpu = 1 vm_ram = 2048 vm_size = "20G" } }