diff --git a/terraform/projects/kubernetes_vms/main.tf b/terraform/projects/kubernetes_vms/main.tf index 4653221..e4a05d3 100644 --- a/terraform/projects/kubernetes_vms/main.tf +++ b/terraform/projects/kubernetes_vms/main.tf @@ -6,7 +6,7 @@ module "pve_vm" { vm_cpu = each.value.vm_cpu vm_ram = each.value.vm_ram vm_vlan = each.value.vm_vlan - vm_tags = var.vm_tags + vm_tags = ["${var.vm_env}"] } locals { @@ -21,7 +21,7 @@ locals { max_free_mib = length(local.node_stats) > 0 ? max([for node in local.node_stats : node.free_mib]...) : 0 # Online nodes ordered by available memory, most available first (name as tie-break) - node_order = var.target_node != "" ? [var.target_node] : [ + node_order = [ for key in sort([ for node in local.node_stats : "${format("%012d", local.max_free_mib - node.free_mib)}|${node.name}" ]) : split("|", key)[1] diff --git a/terraform/projects/kubernetes_vms/provider.tf b/terraform/projects/kubernetes_vms/provider.tf index 0b2729c..5a0be7a 100644 --- a/terraform/projects/kubernetes_vms/provider.tf +++ b/terraform/projects/kubernetes_vms/provider.tf @@ -15,7 +15,7 @@ provider "proxmox" { insecure = false ssh { agent = false - private_key = file("~/.ssh/id_ed25519") - username = "root" + username = var.proxmox_ssh_username + password = var.proxmox_ssh_password } } \ No newline at end of file diff --git a/terraform/projects/kubernetes_vms/variables.tf b/terraform/projects/kubernetes_vms/variables.tf index e94d4df..1525310 100644 --- a/terraform/projects/kubernetes_vms/variables.tf +++ b/terraform/projects/kubernetes_vms/variables.tf @@ -9,10 +9,16 @@ variable "proxmox_api_token" { sensitive = true } -variable "target_node" { - description = "Node which hosts the VMs when set; otherwise a node is selected based on available resources" +variable "proxmox_ssh_username" { + description = "Proxmox SSH username" type = string - default = "" + sensitive = true +} + +variable "proxmox_ssh_password" { + description = "Proxmox SSH password" + type = string + sensitive = true } variable "master_count" { @@ -55,9 +61,3 @@ variable "vm_env" { type = string default = "prod" } - -variable "vm_tags" { - description = "Tags for the VM" - type = list(any) - default = ["prod"] -} \ No newline at end of file