fix(objects): wrap all relation references as HFID lists — refs #52

All relation values now use the HFID list-of-strings format required
by infrahubctl:
- Cardinality one: device: ["spine1"], platform: ["arista_eos"]
- Cardinality many: devices: - ["leaf1"], networks: - ["10.0.250.1/32"]
- Composite HFIDs unchanged: peer_group: ["10.0.250.1", "evpn"]

Files modified: 02-fabric, 03-devices, 04-interfaces, 06-vlans-vxlan,
07-bgp, 08-vrfs, 09-mlag (05-ipam already correct).
This commit is contained in:
Damien
2026-02-15 15:37:20 +01:00
parent 77b39027a3
commit 30885b5a19
7 changed files with 522 additions and 522 deletions

View File

@@ -10,6 +10,6 @@ spec:
underlay_protocol: ebgp underlay_protocol: ebgp
overlay_protocol: evpn overlay_protocol: evpn
anycast_gateway_mac: "c001.cafe.babe" anycast_gateway_mac: "c001.cafe.babe"
spine_asn: "65000" spine_asn: ["65000"]
sites: sites:
- dc1 - ["dc1"]

View File

@@ -11,73 +11,73 @@ spec:
description: Spine1 - BGP EVPN Spine description: Spine1 - BGP EVPN Spine
role: spine role: spine
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65000" asn: ["65000"]
- name: spine2 - name: spine2
description: Spine2 - BGP EVPN Spine description: Spine2 - BGP EVPN Spine
role: spine role: spine
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65000" asn: ["65000"]
# Leaf pair 1 (VTEP1) # Leaf pair 1 (VTEP1)
- name: leaf1 - name: leaf1
description: Leaf1 - VTEP1 description: Leaf1 - VTEP1
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65001" asn: ["65001"]
- name: leaf2 - name: leaf2
description: Leaf2 - VTEP1 description: Leaf2 - VTEP1
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65001" asn: ["65001"]
# Leaf pair 2 (VTEP2) # Leaf pair 2 (VTEP2)
- name: leaf3 - name: leaf3
description: Leaf3 - VTEP2 description: Leaf3 - VTEP2
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65002" asn: ["65002"]
- name: leaf4 - name: leaf4
description: Leaf4 - VTEP2 description: Leaf4 - VTEP2
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65002" asn: ["65002"]
# Leaf pair 3 (VTEP3) # Leaf pair 3 (VTEP3)
- name: leaf5 - name: leaf5
description: Leaf5 - VTEP3 description: Leaf5 - VTEP3
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65003" asn: ["65003"]
- name: leaf6 - name: leaf6
description: Leaf6 - VTEP3 description: Leaf6 - VTEP3
role: leaf role: leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65003" asn: ["65003"]
# Leaf pair 4 (VTEP4) # Leaf pair 4 (VTEP4)
- name: leaf7 - name: leaf7
description: Leaf7 - VTEP4 description: Leaf7 - VTEP4
role: border_leaf role: border_leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65004" asn: ["65004"]
- name: leaf8 - name: leaf8
description: Leaf8 - VTEP4 description: Leaf8 - VTEP4
role: border_leaf role: border_leaf
status: active status: active
platform: arista_eos platform: ["arista_eos"]
site: dc1 site: ["dc1"]
asn: "65004" asn: ["65004"]

View File

@@ -7,76 +7,76 @@ spec:
kind: InfraInterfaceLoopback kind: InfraInterfaceLoopback
data: data:
# Spine loopbacks (Lo0 only) # Spine loopbacks (Lo0 only)
- device: spine1 - device: ["spine1"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: spine2 - device: ["spine2"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
# Leaf loopbacks (Lo0 + Lo1) # Leaf loopbacks (Lo0 + Lo1)
- device: leaf1 - device: ["leaf1"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf1 - device: ["leaf1"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf2 - device: ["leaf2"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf2 - device: ["leaf2"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf3 - device: ["leaf3"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf3 - device: ["leaf3"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf4 - device: ["leaf4"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf4 - device: ["leaf4"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf5 - device: ["leaf5"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf5 - device: ["leaf5"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf6 - device: ["leaf6"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf6 - device: ["leaf6"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf7 - device: ["leaf7"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf7 - device: ["leaf7"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
- device: leaf8 - device: ["leaf8"]
name: Loopback0 name: Loopback0
description: Router-ID description: Router-ID
enabled: true enabled: true
- device: leaf8 - device: ["leaf8"]
name: Loopback1 name: Loopback1
description: VTEP description: VTEP
enabled: true enabled: true
@@ -89,49 +89,49 @@ spec:
# ============================================================ # ============================================================
# Spine1 Ethernet interfaces (underlay to leafs) # Spine1 Ethernet interfaces (underlay to leafs)
# ============================================================ # ============================================================
- device: spine1 - device: ["spine1"]
name: Ethernet1 name: Ethernet1
description: leaf1 description: leaf1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet2 name: Ethernet2
description: leaf2 description: leaf2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet3 name: Ethernet3
description: leaf3 description: leaf3
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet4 name: Ethernet4
description: leaf4 description: leaf4
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet5 name: Ethernet5
description: leaf5 description: leaf5
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet6 name: Ethernet6
description: leaf6 description: leaf6
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet7 name: Ethernet7
description: leaf7 description: leaf7
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine1 - device: ["spine1"]
name: Ethernet8 name: Ethernet8
description: leaf8 description: leaf8
enabled: true enabled: true
@@ -140,49 +140,49 @@ spec:
# ============================================================ # ============================================================
# Spine2 Ethernet interfaces (underlay to leafs) # Spine2 Ethernet interfaces (underlay to leafs)
# ============================================================ # ============================================================
- device: spine2 - device: ["spine2"]
name: Ethernet1 name: Ethernet1
description: leaf1 description: leaf1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet2 name: Ethernet2
description: leaf2 description: leaf2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet3 name: Ethernet3
description: leaf3 description: leaf3
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet4 name: Ethernet4
description: leaf4 description: leaf4
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet5 name: Ethernet5
description: leaf5 description: leaf5
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet6 name: Ethernet6
description: leaf6 description: leaf6
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet7 name: Ethernet7
description: leaf7 description: leaf7
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: spine2 - device: ["spine2"]
name: Ethernet8 name: Ethernet8
description: leaf8 description: leaf8
enabled: true enabled: true
@@ -194,200 +194,200 @@ spec:
# Ethernet11 (spine1), Ethernet12 (spine2) # Ethernet11 (spine1), Ethernet12 (spine2)
# ============================================================ # ============================================================
# Leaf1 # Leaf1
- device: leaf1 - device: ["leaf1"]
name: Ethernet1 name: Ethernet1
description: host1 description: host1
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf1", "Port-Channel1"] lag: ["leaf1", "Port-Channel1"]
- device: leaf1 - device: ["leaf1"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf1", "Port-Channel999"] lag: ["leaf1", "Port-Channel999"]
- device: leaf1 - device: ["leaf1"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf1 - device: ["leaf1"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf2 # Leaf2
- device: leaf2 - device: ["leaf2"]
name: Ethernet1 name: Ethernet1
description: host1 description: host1
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf2", "Port-Channel1"] lag: ["leaf2", "Port-Channel1"]
- device: leaf2 - device: ["leaf2"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf2", "Port-Channel999"] lag: ["leaf2", "Port-Channel999"]
- device: leaf2 - device: ["leaf2"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf2 - device: ["leaf2"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf3 # Leaf3
- device: leaf3 - device: ["leaf3"]
name: Ethernet1 name: Ethernet1
description: host2 description: host2
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf3", "Port-Channel1"] lag: ["leaf3", "Port-Channel1"]
- device: leaf3 - device: ["leaf3"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf3", "Port-Channel999"] lag: ["leaf3", "Port-Channel999"]
- device: leaf3 - device: ["leaf3"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf3 - device: ["leaf3"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf4 # Leaf4
- device: leaf4 - device: ["leaf4"]
name: Ethernet1 name: Ethernet1
description: host2 description: host2
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf4", "Port-Channel1"] lag: ["leaf4", "Port-Channel1"]
- device: leaf4 - device: ["leaf4"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf4", "Port-Channel999"] lag: ["leaf4", "Port-Channel999"]
- device: leaf4 - device: ["leaf4"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf4 - device: ["leaf4"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf5 # Leaf5
- device: leaf5 - device: ["leaf5"]
name: Ethernet1 name: Ethernet1
description: host3 description: host3
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf5", "Port-Channel1"] lag: ["leaf5", "Port-Channel1"]
- device: leaf5 - device: ["leaf5"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf5", "Port-Channel999"] lag: ["leaf5", "Port-Channel999"]
- device: leaf5 - device: ["leaf5"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf5 - device: ["leaf5"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf6 # Leaf6
- device: leaf6 - device: ["leaf6"]
name: Ethernet1 name: Ethernet1
description: host3 description: host3
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf6", "Port-Channel1"] lag: ["leaf6", "Port-Channel1"]
- device: leaf6 - device: ["leaf6"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf6", "Port-Channel999"] lag: ["leaf6", "Port-Channel999"]
- device: leaf6 - device: ["leaf6"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf6 - device: ["leaf6"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf7 # Leaf7
- device: leaf7 - device: ["leaf7"]
name: Ethernet1 name: Ethernet1
description: host4 description: host4
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf7", "Port-Channel1"] lag: ["leaf7", "Port-Channel1"]
- device: leaf7 - device: ["leaf7"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf7", "Port-Channel999"] lag: ["leaf7", "Port-Channel999"]
- device: leaf7 - device: ["leaf7"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf7 - device: ["leaf7"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
# Leaf8 # Leaf8
- device: leaf8 - device: ["leaf8"]
name: Ethernet1 name: Ethernet1
description: host4 description: host4
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf8", "Port-Channel1"] lag: ["leaf8", "Port-Channel1"]
- device: leaf8 - device: ["leaf8"]
name: Ethernet10 name: Ethernet10
description: mlag peer link description: mlag peer link
enabled: true enabled: true
mode: trunk mode: trunk
lag: ["leaf8", "Port-Channel999"] lag: ["leaf8", "Port-Channel999"]
- device: leaf8 - device: ["leaf8"]
name: Ethernet11 name: Ethernet11
description: spine1 description: spine1
enabled: true enabled: true
mtu: 9214 mtu: 9214
mode: routed mode: routed
- device: leaf8 - device: ["leaf8"]
name: Ethernet12 name: Ethernet12
description: spine2 description: spine2
enabled: true enabled: true
@@ -400,90 +400,90 @@ spec:
kind: InfraInterfaceLag kind: InfraInterfaceLag
data: data:
# Port-Channel999 — MLAG peer-link (all leafs) # Port-Channel999 — MLAG peer-link (all leafs)
- device: leaf1 - device: ["leaf1"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf2 - device: ["leaf2"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf3 - device: ["leaf3"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf4 - device: ["leaf4"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf5 - device: ["leaf5"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf6 - device: ["leaf6"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf7 - device: ["leaf7"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
- device: leaf8 - device: ["leaf8"]
name: Port-Channel999 name: Port-Channel999
description: MLAG Peer description: MLAG Peer
enabled: true enabled: true
lacp_mode: active lacp_mode: active
# Port-Channel1 — Host-facing MLAG LAG (all leafs) # Port-Channel1 — Host-facing MLAG LAG (all leafs)
- device: leaf1 - device: ["leaf1"]
name: Port-Channel1 name: Port-Channel1
description: host1 description: host1
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf2 - device: ["leaf2"]
name: Port-Channel1 name: Port-Channel1
description: host1 description: host1
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf3 - device: ["leaf3"]
name: Port-Channel1 name: Port-Channel1
description: host2 description: host2
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf4 - device: ["leaf4"]
name: Port-Channel1 name: Port-Channel1
description: host2 description: host2
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf5 - device: ["leaf5"]
name: Port-Channel1 name: Port-Channel1
description: host3 description: host3
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf6 - device: ["leaf6"]
name: Port-Channel1 name: Port-Channel1
description: host3 description: host3
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf7 - device: ["leaf7"]
name: Port-Channel1 name: Port-Channel1
description: host4 description: host4
enabled: true enabled: true
lacp_mode: active lacp_mode: active
mlag_id: 1 mlag_id: 1
- device: leaf8 - device: ["leaf8"]
name: Port-Channel1 name: Port-Channel1
description: host4 description: host4
enabled: true enabled: true
@@ -496,137 +496,137 @@ spec:
kind: InfraInterfaceVlan kind: InfraInterfaceVlan
data: data:
# Vlan4090 — MLAG Peer-Link SVI (all leafs) # Vlan4090 — MLAG Peer-Link SVI (all leafs)
- device: leaf1 - device: ["leaf1"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf2 - device: ["leaf2"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf3 - device: ["leaf3"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf4 - device: ["leaf4"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf5 - device: ["leaf5"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf6 - device: ["leaf6"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf7 - device: ["leaf7"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
- device: leaf8 - device: ["leaf8"]
name: Vlan4090 name: Vlan4090
description: MLAG Peer-Link description: MLAG Peer-Link
enabled: true enabled: true
autostate: false autostate: false
vlan: "4090" vlan: ["4090"]
# Vlan4091 — MLAG iBGP Peering SVI (all leafs) # Vlan4091 — MLAG iBGP Peering SVI (all leafs)
- device: leaf1 - device: ["leaf1"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf2 - device: ["leaf2"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf3 - device: ["leaf3"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf4 - device: ["leaf4"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf5 - device: ["leaf5"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf6 - device: ["leaf6"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf7 - device: ["leaf7"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
- device: leaf8 - device: ["leaf8"]
name: Vlan4091 name: Vlan4091
description: MLAG iBGP Peering description: MLAG iBGP Peering
enabled: true enabled: true
mtu: 9214 mtu: 9214
vlan: "4091" vlan: ["4091"]
# Vlan34 — VRF gold subnet (leaf3/leaf4) # Vlan34 — VRF gold subnet (leaf3/leaf4)
- device: leaf3 - device: ["leaf3"]
name: Vlan34 name: Vlan34
description: VRF gold subnet description: VRF gold subnet
enabled: true enabled: true
virtual_router_address: "10.34.34.1" virtual_router_address: "10.34.34.1"
vlan: "34" vlan: ["34"]
- device: leaf4 - device: ["leaf4"]
name: Vlan34 name: Vlan34
description: VRF gold subnet description: VRF gold subnet
enabled: true enabled: true
virtual_router_address: "10.34.34.1" virtual_router_address: "10.34.34.1"
vlan: "34" vlan: ["34"]
# Vlan78 — VRF gold subnet (leaf7/leaf8) # Vlan78 — VRF gold subnet (leaf7/leaf8)
- device: leaf7 - device: ["leaf7"]
name: Vlan78 name: Vlan78
description: VRF gold subnet description: VRF gold subnet
enabled: true enabled: true
virtual_router_address: "10.78.78.1" virtual_router_address: "10.78.78.1"
vlan: "78" vlan: ["78"]
- device: leaf8 - device: ["leaf8"]
name: Vlan78 name: Vlan78
description: VRF gold subnet description: VRF gold subnet
enabled: true enabled: true
virtual_router_address: "10.78.78.1" virtual_router_address: "10.78.78.1"
vlan: "78" vlan: ["78"]
# Vlan900 — BGP border peering (leaf7/leaf8) # Vlan900 — BGP border peering (leaf7/leaf8)
- device: leaf7 - device: ["leaf7"]
name: Vlan900 name: Vlan900
description: BGP border peering description: BGP border peering
enabled: true enabled: true
vlan: "900" vlan: ["900"]
- device: leaf8 - device: ["leaf8"]
name: Vlan900 name: Vlan900
description: BGP border peering description: BGP border peering
enabled: true enabled: true
vlan: "900" vlan: ["900"]

View File

@@ -51,7 +51,7 @@ spec:
- vni: 110040 - vni: 110040
description: L2VNI for VLAN 40 (test-l2-vxlan) description: L2VNI for VLAN 40 (test-l2-vxlan)
vni_type: l2vni vni_type: l2vni
vlan: "40" vlan: ["40"]
- vni: 100001 - vni: 100001
description: L3VNI for VRF gold description: L3VNI for VRF gold
vni_type: l3vni vni_type: l3vni
@@ -62,49 +62,49 @@ spec:
kind: InfraVTEP kind: InfraVTEP
data: data:
# VTEP on leaf1 (shared VTEP1 IP 10.0.255.11) # VTEP on leaf1 (shared VTEP1 IP 10.0.255.11)
- device: leaf1 - device: ["leaf1"]
source_address: "10.0.255.11" source_address: "10.0.255.11"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf1", "Loopback1"] source_interface: ["leaf1", "Loopback1"]
# VTEP on leaf2 (shared VTEP1 IP 10.0.255.11) # VTEP on leaf2 (shared VTEP1 IP 10.0.255.11)
- device: leaf2 - device: ["leaf2"]
source_address: "10.0.255.11" source_address: "10.0.255.11"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf2", "Loopback1"] source_interface: ["leaf2", "Loopback1"]
# VTEP on leaf3 (shared VTEP2 IP 10.0.255.12) # VTEP on leaf3 (shared VTEP2 IP 10.0.255.12)
- device: leaf3 - device: ["leaf3"]
source_address: "10.0.255.12" source_address: "10.0.255.12"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf3", "Loopback1"] source_interface: ["leaf3", "Loopback1"]
# VTEP on leaf4 (shared VTEP2 IP 10.0.255.12) # VTEP on leaf4 (shared VTEP2 IP 10.0.255.12)
- device: leaf4 - device: ["leaf4"]
source_address: "10.0.255.12" source_address: "10.0.255.12"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf4", "Loopback1"] source_interface: ["leaf4", "Loopback1"]
# VTEP on leaf5 (shared VTEP3 IP 10.0.255.13) # VTEP on leaf5 (shared VTEP3 IP 10.0.255.13)
- device: leaf5 - device: ["leaf5"]
source_address: "10.0.255.13" source_address: "10.0.255.13"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf5", "Loopback1"] source_interface: ["leaf5", "Loopback1"]
# VTEP on leaf6 (shared VTEP3 IP 10.0.255.13) # VTEP on leaf6 (shared VTEP3 IP 10.0.255.13)
- device: leaf6 - device: ["leaf6"]
source_address: "10.0.255.13" source_address: "10.0.255.13"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf6", "Loopback1"] source_interface: ["leaf6", "Loopback1"]
# VTEP on leaf7 (shared VTEP4 IP 10.0.255.14) # VTEP on leaf7 (shared VTEP4 IP 10.0.255.14)
- device: leaf7 - device: ["leaf7"]
source_address: "10.0.255.14" source_address: "10.0.255.14"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
source_interface: ["leaf7", "Loopback1"] source_interface: ["leaf7", "Loopback1"]
# VTEP on leaf8 (shared VTEP4 IP 10.0.255.14) # VTEP on leaf8 (shared VTEP4 IP 10.0.255.14)
- device: leaf8 - device: ["leaf8"]
source_address: "10.0.255.14" source_address: "10.0.255.14"
udp_port: 4789 udp_port: 4789
learn_restrict: any learn_restrict: any
@@ -116,21 +116,21 @@ spec:
kind: InfraVlanVniMapping kind: InfraVlanVniMapping
data: data:
# VLAN 40 <-> VNI 110040 on leaf1/2/5/6 (L2 VXLAN leafs) # VLAN 40 <-> VNI 110040 on leaf1/2/5/6 (L2 VXLAN leafs)
- vtep: leaf1 - vtep: ["leaf1"]
vlan: "40" vlan: ["40"]
vni: "110040" vni: ["110040"]
description: "VLAN 40 <-> VNI 110040" description: "VLAN 40 <-> VNI 110040"
- vtep: leaf2 - vtep: ["leaf2"]
vlan: "40" vlan: ["40"]
vni: "110040" vni: ["110040"]
description: "VLAN 40 <-> VNI 110040" description: "VLAN 40 <-> VNI 110040"
- vtep: leaf5 - vtep: ["leaf5"]
vlan: "40" vlan: ["40"]
vni: "110040" vni: ["110040"]
description: "VLAN 40 <-> VNI 110040" description: "VLAN 40 <-> VNI 110040"
- vtep: leaf6 - vtep: ["leaf6"]
vlan: "40" vlan: ["40"]
vni: "110040" vni: ["110040"]
description: "VLAN 40 <-> VNI 110040" description: "VLAN 40 <-> VNI 110040"
--- ---
apiVersion: infrahub.app/v1 apiVersion: infrahub.app/v1
@@ -140,27 +140,27 @@ spec:
data: data:
# EVPN instance for VLAN 40 on L2 VXLAN leafs # EVPN instance for VLAN 40 on L2 VXLAN leafs
# leaf1: rd 65001:110040, rt both 40:110040 # leaf1: rd 65001:110040, rt both 40:110040
- device: leaf1 - device: ["leaf1"]
vlan: "40" vlan: ["40"]
route_distinguisher: "65001:110040" route_distinguisher: "65001:110040"
route_target_import: "40:110040" route_target_import: "40:110040"
route_target_export: "40:110040" route_target_export: "40:110040"
redistribute_learned: true redistribute_learned: true
- device: leaf2 - device: ["leaf2"]
vlan: "40" vlan: ["40"]
route_distinguisher: "65001:110040" route_distinguisher: "65001:110040"
route_target_import: "40:110040" route_target_import: "40:110040"
route_target_export: "40:110040" route_target_export: "40:110040"
redistribute_learned: true redistribute_learned: true
# leaf5/6: rd 65003:110040, rt both 40:110040 # leaf5/6: rd 65003:110040, rt both 40:110040
- device: leaf5 - device: ["leaf5"]
vlan: "40" vlan: ["40"]
route_distinguisher: "65003:110040" route_distinguisher: "65003:110040"
route_target_import: "40:110040" route_target_import: "40:110040"
route_target_export: "40:110040" route_target_export: "40:110040"
redistribute_learned: true redistribute_learned: true
- device: leaf6 - device: ["leaf6"]
vlan: "40" vlan: ["40"]
route_distinguisher: "65003:110040" route_distinguisher: "65003:110040"
route_target_import: "40:110040" route_target_import: "40:110040"
route_target_export: "40:110040" route_target_export: "40:110040"

File diff suppressed because it is too large Load Diff

View File

@@ -21,42 +21,42 @@ spec:
data: data:
- name: gold - name: gold
description: VRF gold - L3 VXLAN with symmetric IRB description: VRF gold - L3 VXLAN with symmetric IRB
l3vni: "100001" l3vni: ["100001"]
import_targets: import_targets:
- "1:100001" - ["1:100001"]
export_targets: export_targets:
- "1:100001" - ["1:100001"]
--- ---
apiVersion: infrahub.app/v1 apiVersion: infrahub.app/v1
kind: Object kind: Object
spec: spec:
kind: InfraVRFDeviceAssignment kind: InfraVRFDeviceAssignment
data: data:
- device: leaf3 - device: ["leaf3"]
vrf: gold vrf: ["gold"]
route_distinguisher: "10.0.250.13:1" route_distinguisher: "10.0.250.13:1"
import_targets: import_targets:
- "1:100001" - ["1:100001"]
export_targets: export_targets:
- "1:100001" - ["1:100001"]
- device: leaf4 - device: ["leaf4"]
vrf: gold vrf: ["gold"]
route_distinguisher: "10.0.250.14:1" route_distinguisher: "10.0.250.14:1"
import_targets: import_targets:
- "1:100001" - ["1:100001"]
export_targets: export_targets:
- "1:100001" - ["1:100001"]
- device: leaf7 - device: ["leaf7"]
vrf: gold vrf: ["gold"]
route_distinguisher: "10.0.250.17:1" route_distinguisher: "10.0.250.17:1"
import_targets: import_targets:
- "1:100001" - ["1:100001"]
export_targets: export_targets:
- "1:100001" - ["1:100001"]
- device: leaf8 - device: ["leaf8"]
vrf: gold vrf: ["gold"]
route_distinguisher: "10.0.250.18:1" route_distinguisher: "10.0.250.18:1"
import_targets: import_targets:
- "1:100001" - ["1:100001"]
export_targets: export_targets:
- "1:100001" - ["1:100001"]

View File

@@ -19,10 +19,10 @@ spec:
dual_primary_delay: 10 dual_primary_delay: 10
dual_primary_action: errdisable dual_primary_action: errdisable
devices: devices:
- leaf1 - ["leaf1"]
- leaf2 - ["leaf2"]
peer_vlan: "4090" peer_vlan: ["4090"]
ibgp_vlan: "4091" ibgp_vlan: ["4091"]
# MLAG pair 2: leaf3 + leaf4 # MLAG pair 2: leaf3 + leaf4
- domain_id: leafs-3-4 - domain_id: leafs-3-4
description: MLAG domain for leaf3/leaf4 pair description: MLAG domain for leaf3/leaf4 pair
@@ -32,10 +32,10 @@ spec:
dual_primary_delay: 10 dual_primary_delay: 10
dual_primary_action: errdisable dual_primary_action: errdisable
devices: devices:
- leaf3 - ["leaf3"]
- leaf4 - ["leaf4"]
peer_vlan: "4090" peer_vlan: ["4090"]
ibgp_vlan: "4091" ibgp_vlan: ["4091"]
# MLAG pair 3: leaf5 + leaf6 # MLAG pair 3: leaf5 + leaf6
- domain_id: leafs-5-6 - domain_id: leafs-5-6
description: MLAG domain for leaf5/leaf6 pair description: MLAG domain for leaf5/leaf6 pair
@@ -45,10 +45,10 @@ spec:
dual_primary_delay: 10 dual_primary_delay: 10
dual_primary_action: errdisable dual_primary_action: errdisable
devices: devices:
- leaf5 - ["leaf5"]
- leaf6 - ["leaf6"]
peer_vlan: "4090" peer_vlan: ["4090"]
ibgp_vlan: "4091" ibgp_vlan: ["4091"]
# MLAG pair 4: leaf7 + leaf8 # MLAG pair 4: leaf7 + leaf8
- domain_id: leafs-7-8 - domain_id: leafs-7-8
description: MLAG domain for leaf7/leaf8 pair description: MLAG domain for leaf7/leaf8 pair
@@ -58,10 +58,10 @@ spec:
dual_primary_delay: 10 dual_primary_delay: 10
dual_primary_action: errdisable dual_primary_action: errdisable
devices: devices:
- leaf7 - ["leaf7"]
- leaf8 - ["leaf8"]
peer_vlan: "4090" peer_vlan: ["4090"]
ibgp_vlan: "4091" ibgp_vlan: ["4091"]
--- ---
apiVersion: infrahub.app/v1 apiVersion: infrahub.app/v1
kind: Object kind: Object
@@ -69,64 +69,64 @@ spec:
kind: InfraMlagPeerConfig kind: InfraMlagPeerConfig
data: data:
# Leaf1 MLAG peer config # Leaf1 MLAG peer config
- device: leaf1 - device: ["leaf1"]
mlag_domain: leafs-1-2 mlag_domain: ["leafs-1-2"]
local_interface_ip: "10.0.199.254/31" local_interface_ip: "10.0.199.254/31"
peer_address: "10.0.199.255" peer_address: "10.0.199.255"
heartbeat_peer_ip: "172.16.0.50" heartbeat_peer_ip: "172.16.0.50"
local_interface: ["leaf1", "Vlan4090"] local_interface: ["leaf1", "Vlan4090"]
peer_link: ["leaf1", "Port-Channel999"] peer_link: ["leaf1", "Port-Channel999"]
# Leaf2 MLAG peer config # Leaf2 MLAG peer config
- device: leaf2 - device: ["leaf2"]
mlag_domain: leafs-1-2 mlag_domain: ["leafs-1-2"]
local_interface_ip: "10.0.199.255/31" local_interface_ip: "10.0.199.255/31"
peer_address: "10.0.199.254" peer_address: "10.0.199.254"
heartbeat_peer_ip: "172.16.0.25" heartbeat_peer_ip: "172.16.0.25"
local_interface: ["leaf2", "Vlan4090"] local_interface: ["leaf2", "Vlan4090"]
peer_link: ["leaf2", "Port-Channel999"] peer_link: ["leaf2", "Port-Channel999"]
# Leaf3 MLAG peer config # Leaf3 MLAG peer config
- device: leaf3 - device: ["leaf3"]
mlag_domain: leafs-3-4 mlag_domain: ["leafs-3-4"]
local_interface_ip: "10.0.199.252/31" local_interface_ip: "10.0.199.252/31"
peer_address: "10.0.199.253" peer_address: "10.0.199.253"
heartbeat_peer_ip: "172.16.0.28" heartbeat_peer_ip: "172.16.0.28"
local_interface: ["leaf3", "Vlan4090"] local_interface: ["leaf3", "Vlan4090"]
peer_link: ["leaf3", "Port-Channel999"] peer_link: ["leaf3", "Port-Channel999"]
# Leaf4 MLAG peer config # Leaf4 MLAG peer config
- device: leaf4 - device: ["leaf4"]
mlag_domain: leafs-3-4 mlag_domain: ["leafs-3-4"]
local_interface_ip: "10.0.199.253/31" local_interface_ip: "10.0.199.253/31"
peer_address: "10.0.199.252" peer_address: "10.0.199.252"
heartbeat_peer_ip: "172.16.0.27" heartbeat_peer_ip: "172.16.0.27"
local_interface: ["leaf4", "Vlan4090"] local_interface: ["leaf4", "Vlan4090"]
peer_link: ["leaf4", "Port-Channel999"] peer_link: ["leaf4", "Port-Channel999"]
# Leaf5 MLAG peer config # Leaf5 MLAG peer config
- device: leaf5 - device: ["leaf5"]
mlag_domain: leafs-5-6 mlag_domain: ["leafs-5-6"]
local_interface_ip: "10.0.199.250/31" local_interface_ip: "10.0.199.250/31"
peer_address: "10.0.199.251" peer_address: "10.0.199.251"
heartbeat_peer_ip: "172.16.0.30" heartbeat_peer_ip: "172.16.0.30"
local_interface: ["leaf5", "Vlan4090"] local_interface: ["leaf5", "Vlan4090"]
peer_link: ["leaf5", "Port-Channel999"] peer_link: ["leaf5", "Port-Channel999"]
# Leaf6 MLAG peer config # Leaf6 MLAG peer config
- device: leaf6 - device: ["leaf6"]
mlag_domain: leafs-5-6 mlag_domain: ["leafs-5-6"]
local_interface_ip: "10.0.199.251/31" local_interface_ip: "10.0.199.251/31"
peer_address: "10.0.199.250" peer_address: "10.0.199.250"
heartbeat_peer_ip: "172.16.0.29" heartbeat_peer_ip: "172.16.0.29"
local_interface: ["leaf6", "Vlan4090"] local_interface: ["leaf6", "Vlan4090"]
peer_link: ["leaf6", "Port-Channel999"] peer_link: ["leaf6", "Port-Channel999"]
# Leaf7 MLAG peer config # Leaf7 MLAG peer config
- device: leaf7 - device: ["leaf7"]
mlag_domain: leafs-7-8 mlag_domain: ["leafs-7-8"]
local_interface_ip: "10.0.199.248/31" local_interface_ip: "10.0.199.248/31"
peer_address: "10.0.199.249" peer_address: "10.0.199.249"
heartbeat_peer_ip: "172.16.0.32" heartbeat_peer_ip: "172.16.0.32"
local_interface: ["leaf7", "Vlan4090"] local_interface: ["leaf7", "Vlan4090"]
peer_link: ["leaf7", "Port-Channel999"] peer_link: ["leaf7", "Port-Channel999"]
# Leaf8 MLAG peer config # Leaf8 MLAG peer config
- device: leaf8 - device: ["leaf8"]
mlag_domain: leafs-7-8 mlag_domain: ["leafs-7-8"]
local_interface_ip: "10.0.199.249/31" local_interface_ip: "10.0.199.249/31"
peer_address: "10.0.199.248" peer_address: "10.0.199.248"
heartbeat_peer_ip: "172.16.0.31" heartbeat_peer_ip: "172.16.0.31"