# yaml-language-server: $schema=https://schema.infrahub.app/infrahub/schema/latest.json --- version: "1.0" nodes: - name: MLAGDomain namespace: Network label: "MLAG Domain" icon: "mdi:link-variant" include_in_menu: true human_friendly_id: ["domain_id__value"] display_label: "domain_id__value" order_by: - domain_id__value attributes: - name: domain_id kind: Text unique: true optional: false description: "MLAG domain identifier (e.g., MLAG-leaf1-2)" - name: local_interface kind: Text optional: false default_value: "Vlan4094" description: "Local interface for MLAG peer link" - name: peer_interface kind: Text optional: false default_value: "Vlan4094" description: "Peer interface for MLAG peer link" - name: peer_address kind: IPHost optional: false description: "Peer IP address for MLAG link" - name: status kind: Dropdown optional: false default_value: "active" choices: - name: active label: Active - name: inactive label: Inactive description: "MLAG domain status" relationships: - name: devices peer: NetworkDevice optional: true cardinality: many kind: Generic description: "Devices in this MLAG domain" - name: interfaces peer: NetworkMLAGInterface optional: true cardinality: many kind: Component description: "MLAG-enabled interfaces" - name: MLAGInterface namespace: Network label: "MLAG Interface" icon: "mdi:ethernet-plus" include_in_menu: false human_friendly_id: ["mlag_domain__domain_id__value", "mlag_id__value"] display_label: "mlag_id__value" attributes: - name: mlag_id kind: Number optional: false description: "MLAG interface ID" relationships: - name: mlag_domain peer: NetworkMLAGDomain optional: false cardinality: one kind: Parent - name: interface peer: NetworkInterface optional: false cardinality: one kind: Attribute description: "Physical interface" - name: EVPNConfig namespace: Network label: "EVPN Configuration" icon: "mdi:wan" include_in_menu: false human_friendly_id: ["device__hostname__value"] display_label: "vni_auto__value" attributes: - name: vni_auto kind: Boolean optional: false default_value: true description: "Automatically generate VNIs" relationships: - name: device peer: NetworkDevice optional: false cardinality: one kind: Parent - name: VXLANTunnel namespace: Network label: "VXLAN Tunnel" icon: "mdi:tunnel" include_in_menu: true human_friendly_id: ["name__value"] display_label: "name__value" attributes: - name: name kind: Text unique: true optional: false default_value: "Vxlan1" description: "VXLAN tunnel interface name" - name: source_ip kind: IPHost optional: false description: "Source IP for VXLAN tunnel (Loopback1)" - name: udp_port kind: Number optional: false default_value: 4789 description: "VXLAN UDP port" relationships: - name: device peer: NetworkDevice optional: false cardinality: one kind: Parent - name: vlans peer: NetworkVLAN optional: true cardinality: many kind: Generic description: "VLANs mapped to this VXLAN tunnel"