[Phase 2] Define Infrahub Schema for EVPN-VXLAN Fabric #51

Merged
Damien merged 58 commits from feature/41-infrahub-schema into main 2026-02-13 19:36:27 +00:00
Showing only changes of commit b9b15f3beb - Show all commits

View File

@@ -3,9 +3,9 @@
---
version: "1.0"
nodes:
# ==========================================================================
# ===================================================================
# VLAN
# ==========================================================================
# ===================================================================
- name: VLAN
namespace: Infra
description: Virtual LAN configuration
@@ -15,9 +15,7 @@ nodes:
- vlan_id__value
order_by:
- vlan_id__value
display_labels:
- vlan_id__value
- name__value
display_label: "{{ vlan_id__value }} ({{ name__value }})"
attributes:
- name: vlan_id
kind: Number
@@ -63,9 +61,9 @@ nodes:
cardinality: one
optional: true
# ==========================================================================
# ===================================================================
# VNI (VXLAN Network Identifier)
# ==========================================================================
# ===================================================================
- name: VNI
namespace: Infra
description: VXLAN Network Identifier
@@ -75,8 +73,7 @@ nodes:
- vni__value
order_by:
- vni__value
display_labels:
- vni__value
display_label: "{{ vni__value }}"
attributes:
- name: vni
kind: Number
@@ -108,9 +105,9 @@ nodes:
optional: true
description: Associated VRF for L3VNI
# ==========================================================================
# ===================================================================
# VTEP (VXLAN Tunnel Endpoint)
# ==========================================================================
# ===================================================================
- name: VTEP
namespace: Infra
description: VXLAN Tunnel Endpoint configuration
@@ -118,8 +115,7 @@ nodes:
icon: mdi--server-network-outline
human_friendly_id:
- device__name__value
display_labels:
- source_address__value
display_label: "{{ source_address__value }}"
attributes:
- name: source_address
kind: IPHost
@@ -151,16 +147,15 @@ nodes:
cardinality: many
kind: Component
# ==========================================================================
# ===================================================================
# VLAN to VNI Mapping (per-device)
# ==========================================================================
# ===================================================================
- name: VlanVniMapping
namespace: Infra
description: VLAN to VNI mapping on a VTEP
label: VLAN-VNI Mapping
icon: mdi--swap-horizontal
display_labels:
- description__value
display_label: "{{ description__value }}"
attributes:
- name: description
kind: Text
@@ -179,16 +174,15 @@ nodes:
peer: InfraVNI
cardinality: one
# ==========================================================================
# ===================================================================
# EVPN Instance (per VLAN)
# ==========================================================================
# ===================================================================
- name: EVPNInstance
namespace: Infra
description: EVPN instance configuration (route targets for L2 extension)
label: EVPN Instance
icon: mdi--cloud-sync
display_labels:
- route_distinguisher__value
display_label: "{{ route_distinguisher__value }}"
attributes:
- name: route_distinguisher
kind: Text