From 6d7a0e64ab778a96c1968a6b4f44c1e1c2ee567c Mon Sep 17 00:00:00 2001 From: darnodo Date: Thu, 11 Dec 2025 19:12:31 +0100 Subject: [PATCH] feat(vm): enable qemu-guest-agent and set stop_on_destroy - Add `qemu-guest-agent` enable/start command to `user-data.yml.tftpl` to ensure the agent is active immediately after provisioning. - Set `stop_on_destroy = true` in the Proxmox VM resource definition to ensure graceful shutdown during Terraform destroy operations. --- cloud-init/user-data.yml.tftpl | 3 +++ terraform/prod/01-virtual-machines.tf | 9 +++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cloud-init/user-data.yml.tftpl b/cloud-init/user-data.yml.tftpl index 044769c..be76cc9 100644 --- a/cloud-init/user-data.yml.tftpl +++ b/cloud-init/user-data.yml.tftpl @@ -25,5 +25,8 @@ packages: # 5. Installation et configuration de Tailscale runcmd: + # Enable and start qemu-guest-agent (systemd) + - [ systemctl, enable, qemu-guest-agent, --now ] + # Install and configure Tailscale - [ sh, -c, "curl -fsSL https://tailscale.com/install.sh | sh" ] - [ tailscale, up, --authkey=${tailscale_auth_key}, --hostname=${vm_name} ] diff --git a/terraform/prod/01-virtual-machines.tf b/terraform/prod/01-virtual-machines.tf index 170f3bf..9944902 100644 --- a/terraform/prod/01-virtual-machines.tf +++ b/terraform/prod/01-virtual-machines.tf @@ -24,10 +24,11 @@ locals { resource "proxmox_virtual_environment_vm" "vms" { for_each = var.virtual_machines - name = "${each.key}.${var.domain_suffix}" - node_name = var.target_node - tags = concat(["terraform-managed", "vm"], each.value.tags) - on_boot = lookup(each.value, "on_boot", true) + name = "${each.key}.${var.domain_suffix}" + node_name = var.target_node + tags = concat(["terraform-managed", "vm"], each.value.tags) + on_boot = lookup(each.value, "on_boot", true) + stop_on_destroy = true # Configuration de l'agent QEMU agent {