This commit is contained in:
2025-08-27 10:14:14 +00:00
parent 95b9e4490b
commit 017865126d

View File

@ -35,6 +35,15 @@ resource "proxmox_virtual_environment_file" "cloud_init_yaml" {
}
data "external" "merged_yaml" {
program = ["python3", "${path.module}/merge_yaml.py"]
query = {
file1 = "${path.module}/cloud-init-base.yaml"
file2 = "${path.module}/cloud-init-extra.yaml"
}
}
# Gerar um snippet cloud-init por VM
resource "proxmox_virtual_environment_file" "vm_user_data" {
@ -43,30 +52,10 @@ resource "proxmox_virtual_environment_file" "vm_user_data" {
node_name = "fenix"
datastore_id = "local-snippets"
content_type = "snippets"
source_raw {
file_name = "cloud-init-iac-k8s-${each.key}.yaml"
data = yamlencode(
merge(
yamldecode(file("${path.module}/cloud-init-base.yaml")),
{
packages = concat(
try(yamldecode(file("${path.module}/cloud-init-base.yaml")).packages, []),
try(each.value.extra_packages, [])
),
users = concat(
try(yamldecode(file("${path.module}/cloud-init-base.yaml")).users, []),
try(each.value.extra_users, [])
),
runcmd = concat(
try(yamldecode(file("${path.module}/cloud-init-base.yaml")).runcmd, []),
try(each.value.extra_runcmd, [])
)
data = data.external.merged_yaml.result["merged_yaml"]
}
)
)
}
}