initial template v1

This commit is contained in:
CC
2026-05-20 23:24:33 +01:00
parent b45851e888
commit 7f84f1b2b6
7 changed files with 303 additions and 45 deletions

View File

@@ -1,13 +1,59 @@
variable "vm_name" { type = string }
variable "node_name" { type = string }
variable "node_datastore" { type = string }
variable "bridge" { type = string, default = "vmbr0" }
variable "vm_cpu" { type = number, default = 2 }
variable "vm_ram" { type = number, default = 4096 }
variable "vm_size" { type = string, default = "20G" }
variable "vm_bios" { type = string, default = "ovmf" }
variable "vm_machine" { type = string, default = "q35" }
variable "vm_tags" { type = list(string), default = ["terraform"] }
variable "vm_user_sshkey" { type = string }
variable "app_name" { type = string, default = "myservice" }
variable "app_port" { type = number, default = 8080 }
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"
}
}