- Created device schema with attributes for hostname, role, platform, and management IP. - Added interface schema with various types, MTU, speed, and switchport modes. - Introduced VLAN and VRF schemas with relationships to devices and interfaces. - Implemented BGP configuration, peer groups, and neighbors with detailed attributes. - Established MLAG domain and interface schemas for multi-chassis link aggregation. - Developed EVPN and VXLAN schemas for overlay networking. - Created routing policy schemas including route maps and prefix lists. - Added DCI switch and connection schemas for inter-datacenter connectivity.
111 lines
3.1 KiB
YAML
111 lines
3.1 KiB
YAML
# yaml-language-server: $schema=https://schema.infrahub.app/infrahub/schema/latest.json
|
|
---
|
|
version: "1.0"
|
|
|
|
nodes:
|
|
- name: Organization
|
|
namespace: Core
|
|
label: "Organization"
|
|
icon: "mdi:domain"
|
|
include_in_menu: true
|
|
human_friendly_id: ["name__value"]
|
|
display_label: "{{ record.name__value }}"
|
|
order_by:
|
|
- name__value
|
|
attributes:
|
|
- name: name
|
|
kind: Text
|
|
unique: true
|
|
optional: false
|
|
description: "Organization name"
|
|
- name: description
|
|
kind: Text
|
|
optional: true
|
|
description: "Organization description"
|
|
- name: asn_base
|
|
kind: Number
|
|
optional: false
|
|
default_value: 65000
|
|
description: "Base ASN for BGP allocation (e.g., 65000)"
|
|
relationships:
|
|
- name: sites
|
|
peer: LocationSite
|
|
optional: true
|
|
cardinality: many
|
|
kind: Generic
|
|
description: "Sites belonging to this organization"
|
|
- name: ip_namespaces
|
|
peer: IpamNamespace
|
|
optional: true
|
|
cardinality: many
|
|
kind: Generic
|
|
description: "IP namespaces managed by this organization"
|
|
|
|
- name: Site
|
|
namespace: Location
|
|
label: "Site"
|
|
icon: "mdi:office-building"
|
|
include_in_menu: true
|
|
menu_placement: "CoreOrganization"
|
|
human_friendly_id: ["name__value"]
|
|
display_label: "{{ record.name__value }}"
|
|
order_by:
|
|
- name__value
|
|
attributes:
|
|
- name: name
|
|
kind: Text
|
|
unique: true
|
|
optional: false
|
|
description: "Site name (e.g., Paris-DC)"
|
|
- name: description
|
|
kind: Text
|
|
optional: true
|
|
description: "Site description"
|
|
- name: location
|
|
kind: Text
|
|
optional: true
|
|
description: "Physical location (e.g., Paris, France)"
|
|
- name: facility_id
|
|
kind: Text
|
|
optional: true
|
|
description: "Facility identifier"
|
|
- name: status
|
|
kind: Dropdown
|
|
optional: false
|
|
default_value: "active"
|
|
choices:
|
|
- name: active
|
|
label: Active
|
|
description: Site is operational
|
|
color: "#7fbf7f"
|
|
- name: planned
|
|
label: Planned
|
|
description: Site is being planned
|
|
color: "#ffd966"
|
|
- name: maintenance
|
|
label: Maintenance
|
|
description: Site under maintenance
|
|
color: "#ff9999"
|
|
- name: decommissioned
|
|
label: Decommissioned
|
|
description: Site decommissioned
|
|
color: "#cccccc"
|
|
relationships:
|
|
- name: organization
|
|
peer: CoreOrganization
|
|
optional: false
|
|
cardinality: one
|
|
kind: Attribute
|
|
description: "Parent organization"
|
|
- name: datacenters
|
|
peer: InfraDatacenter
|
|
optional: true
|
|
cardinality: many
|
|
kind: Generic
|
|
description: "Datacenters at this site"
|
|
- name: parent_prefix
|
|
peer: IpamIPPrefix
|
|
optional: true
|
|
cardinality: one
|
|
kind: Attribute
|
|
description: "Parent IP prefix for this site" |