Refactor network module to accept free-form config maps

Replace hypervisor_parent/witness_parent strings with hypervisor_config
and witness_config map(string) variables, matching the pattern already
used by the storage module. incus_networks in the root module is updated
from map(number) to map(object) carrying type and the two config maps.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-15 14:05:40 +01:00
parent 6b53db3ad9
commit 36eaa727ab
5 changed files with 30 additions and 19 deletions

View File

@@ -1,8 +1,11 @@
module "network" {
source = "./modules/network"
for_each = var.incus_networks
name = each.key
hypervisors = toset(keys(var.incus_hypervisors))
witnesses = toset(keys(var.incus_witnesses))
source = "./modules/network"
for_each = var.incus_networks
name = each.key
type = each.value.type
hypervisors = toset(keys(var.incus_hypervisors))
witnesses = toset(keys(var.incus_witnesses))
hypervisor_config = each.value.hypervisor_config
witness_config = each.value.witness_config
}