Încerc să creez un router cloud, cu două intervale de rețea fiind afișate din el, cu toate acestea, primesc niște erori foarte vagi de la terraform și nu prea pot pune degetul pe ce este în neregulă.
resursă „google_compute_router” „router1” {
nume = "${var.alias}-prod1-ha-vpn-cloud-router-1"
proiect = var.nume_proiect
network = var.network1
regiune = var.region1
bgp {
asn = var.asn
advertise_mode = „PERSONALIZAT”
dinamic „advertised_ip_ranges” {
for_each = var.advertised_ip_ranges_prod1
continut {
interval = advertised_ip_ranges_prod1.value["cidr"]
description = advertised_ip_ranges_prod1.value["desc"]
}
}
}
}
Și codul real al modulului:
modul „vpn-ha-gateway” {
sursa = "-----"
nume_proiect = var.nume_proiect
client = var.client
alias = var.alias
regiune1 = var.regiune1
count = (var.vpn_type == "ha-vpn" ? 1 : 0) ## Construiți dacă vpn_type este ha-vpn
network1 = module.prod1-vpc.self_link
customer_redundancy = var.customer_redundancy
customer_ha_vpn_peers = var.customer_ha_vpn_peers
shared_secret = var.shared_secret
asn = var.asn
cust_asn = var.cust_asn
advertised_ip_ranges_prod1 = var.advertised_ip_ranges_prod1
}
Definim advertised_ip_ranges_prod1 ca o hartă, deoarece nu știm câte vor fi pe modul:
variabila „advertised_ip_ranges_prod1” {
tip = listă(hartă(șir))
description = „anunțat de BGP pe prod1”
implicit = [
{
cidr = "1.2.3.4/28" ## Gama promovată Prod1
desc = „gamă secundară anunțată prin BGP”
},
{
cidr = "5.6.7.8/28" # Testați intervalul de publicitate
desc = „Interval de testare anunțat prin BGP”
},
]
}
Și în timp ce am alte module construite în același mod (cu for_each) funcționând corect, acesta continuă să arunce aceste erori vagi:
Eroare: referire la resursa nedeclarată
pe .terraform\modules\vpn-ha\main.tf linia 36, în resursa „google_compute_router” „router1”:
36: interval = advertised_ip_ranges_prod1.value["cidr"]
O resursă gestionată „advertised_ip_ranges_prod1” „valoare” nu a fost declarată
în module.vpn-ha-gateway.
Eroare: referire la resursa nedeclarată
pe .terraform\modules\vpn-ha-gateway\main.tf linia 37, în resursa „google_compute_router” „router1”:
37: description = advertised_ip_ranges_prod1.value["desc"]
O resursă gestionată „advertised_ip_ranges_prod1” „valoare” nu a fost declarată
în module.vpn-ha-gateway.```