Files
dev/main.tf
2025-11-05 18:37:58 +00:00

42 lines
1016 B
HCL

terraform {
required_version = ">= 1.6.0"
}
provider "null" {}
# Crear múltiples contenedores en Incus
resource "null_resource" "incus_containers" {
for_each = toset(var.containers)
provisioner "local-exec" {
command = <<EOT
echo "[INFO] Creando contenedor ${each.key}..."
incus launch images:ubuntu/24.04/cloud ${each.key} --config=user.user-data="$(cat cloud-init.yaml)"
EOT
}
provisioner "local-exec" {
when = destroy
command = "incus delete ${each.key} --force || true"
}
}
# Actualiza los contenedores
resource "null_resource" "update_containers" {
depends_on = [null_resource.incus_containers]
for_each = toset(var.containers)
provisioner "local-exec" {
command = <<EOT
echo "[INFO] Actualizando contenedor ${each.key}..."
sleep 10
incus exec ${each.key} -- bash -c "apt update -y && apt upgrade -y && apt autoremove -y"
EOT
}
}
output "containers" {
description = "Contenedores creados"
value = var.containers
}