fix: usar meraki_network_devices y nombres correctos de recursos

- data meraki_devices → data meraki_network_devices
- meraki_networks_switch_settings → meraki_switch_settings
- meraki_networks_switch_stacks_routing_interfaces → meraki_switch_stack_routing_interface
- switch_named_port_configs vuelve a usar switch_name (lookup dinámico)
This commit is contained in:
Jose Martinez
2026-03-25 18:33:50 +01:00
parent c86569436b
commit f55a54064d
3 changed files with 15 additions and 13 deletions
+11 -11
View File
@@ -22,7 +22,7 @@ data "meraki_switch_stacks" "stacks" {
}
# Dispositivos de la red (para resolución dinámica de serial por nombre de switch)
data "meraki_devices" "devices" {
data "meraki_network_devices" "devices" {
network_id = local.network_id
}
@@ -58,7 +58,7 @@ locals {
# Mapa de nombre de dispositivo -> serial
device_serials = {
for d in data.meraki_devices.devices.items :
for d in data.meraki_network_devices.devices.items :
d.name => d.serial
if d.name != null && d.name != ""
}
@@ -100,7 +100,7 @@ locals {
]
])
# Expande switch_named_port_configs (por nombre de switch) en entradas individuales
# Expande switch_named_port_configs (por nombre de switch, resolución dinámica de serial)
named_ports_expanded = flatten([
for config in var.switch_named_port_configs : [
for port_id in local._expand_range["${config.switch_name}:${config.port_range}"] : {
@@ -221,15 +221,15 @@ resource "meraki_switch_port" "ports" {
}
# 7. VLAN de gestión de los switches del site
resource "meraki_networks_switch_settings" "mgmt_vlan" {
resource "meraki_switch_settings" "mgmt_vlan" {
count = var.switch_management_vlan != null ? 1 : 0
network_id = local.network_id
management_vlan = var.switch_management_vlan
vlan = var.switch_management_vlan
}
# 8. Interfaces de enrutamiento L3 en stacks (SVIs para acceso de gestión al Dashboard)
resource "meraki_networks_switch_stacks_routing_interfaces" "stack_interfaces" {
resource "meraki_switch_stack_routing_interface" "stack_interfaces" {
for_each = {
for i in var.stack_routing_interfaces :
"${i.stack_name}:${i.vlan_id}" => i
@@ -238,12 +238,12 @@ resource "meraki_networks_switch_stacks_routing_interfaces" "stack_interfaces" {
network_id = local.network_id
switch_stack_id = local.stack_ids[each.value.stack_name]
name = each.value.name
vlan_id = each.value.vlan_id
ip_address = each.value.ip_address
subnet = each.value.subnet
name = each.value.name
vlan_id = each.value.vlan_id
interface_ip = each.value.ip_address
subnet = each.value.subnet
default_gateway_ip = each.value.default_gateway
default_gateway = each.value.default_gateway
}
# 9. Puertos del firewall MX
+2 -1
View File
@@ -136,7 +136,8 @@ variable "switch_stack_port_configs" {
description = "Puertos de stack a configurar por nombre. Terraform resuelve los seriales de todos los miembros automáticamente."
}
# Configuración de puertos por nombre de switch (resolución dinámica de serial por nombre)
# Configuración de puertos por nombre de switch (resolución dinámica de serial)
# Útil para configurar un miembro específico de un stack sin conocer el serial
variable "switch_named_port_configs" {
type = list(object({
switch_name = string # nombre exacto del switch en Meraki Dashboard