Skip to main content

Circuit

This schema extension contains Circuits and ways to connect them with your infrastructure! The circuit could be a fiber connecting two sites, you would then have two endpoints, one on each site.

Details

  • Dependencies:

Nodes

Circuit

  • Label: Circuit
  • Description: A Circuit represent service operated by a provider.
  • Namespace: Dcim
  • Icon: mdi:cable-data
  • Human Friendly ID: circuit_id__value

Attributes

namedescriptionkindoptionaldefault_valuechoices
circuit_idTextFalse
descriptionTextTrue
commit_rateNumberTrue
circuit_typeSpecifies the type of circuit.DropdownTrueinternet_access, point_to_point, peering, dark_fiber, mpls
statusDropdownFalseactiveactive, provisioning, maintenance, drained

Relationships

namepeeroptionalcardinalitykind
providerOrganizationProviderFalseoneAttribute
endpointsDcimCircuitEndpointTruemanyComponent

CircuitEndpoint

  • Label: Circuit Endpoint
  • Description: One of the two terminations (A or Z) of a circuit, at the location where the provider hands the circuit off.
  • Namespace: Dcim
  • Icon: mdi:ethernet
  • Uniqueness Constraints:
    • circuit, side__value
  • Human Friendly ID: circuit__circuit_id__value, name__value
  • Inherit From: DcimEndpoint

Attributes

namedescriptionkindoptionaldefault_valuechoices
sideDropdownFalsea, z
nameTextFalse
statusDropdownFalseactiveactive, provisioning, maintenance, drained
descriptionTextTrue

Relationships

namepeeroptionalcardinalitykind
circuitDcimCircuitFalseoneParent
locationLocationHostingFalseoneAttribute

Extensions

note

In this context "extensions" refer to modifications or additions to the existing schema, such as adding new attributes, relationships, or other schema elements.

OrganizationProvider

Relationships

namepeeroptionalcardinalitykind
circuitsDcimCircuitTruemanyGeneric

LocationHosting

Relationships

namepeeroptionalcardinalitykind
circuit_endpointsDcimCircuitEndpointTruemanyGeneric

Code

version: '1.0'
nodes:
- name: Circuit
namespace: Dcim
description: A Circuit represent service operated by a provider.
label: Circuit
icon: mdi:cable-data
include_in_menu: true
human_friendly_id:
- circuit_id__value
order_by:
- circuit_id__value
display_label: circuit_id__value
attributes:
- name: circuit_id
kind: Text
unique: true
optional: false
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
- name: commit_rate
kind: Number
label: Commit Rate (Kbps)
optional: true
order_weight: 1400
- name: circuit_type
kind: Dropdown
choices:
- name: internet_access
label: Internet Access
description: Broadband or dedicated internet access circuit.
color: '#1e90ff'
- name: point_to_point
label: Point to Point
description: Dedicated layer 2 or layer 3 link between two sites.
color: '#a0c878'
- name: peering
label: Peering
description: Connection to another network for exchange of traffic.
color: '#20b2aa'
- name: dark_fiber
label: Dark Fiber
description: Leased, unlit fiber managed and operated by the customer.
color: '#555555'
- name: mpls
label: MPLS
description: Multi-Protocol Label Switching circuit for QoS-based routing.
color: '#7f00ff'
optional: true
description: Specifies the type of circuit.
order_weight: 1300
- name: status
kind: Dropdown
default_value: active
choices:
- name: active
label: Active
description: Fully operational and currently in service.
color: '#00d25b'
- name: provisioning
label: Provisioning
description: In the process of being set up and configured.
color: '#f0ad4e'
- name: maintenance
label: Maintenance
description: Undergoing routine maintenance or repairs.
color: '#ff9800'
- name: drained
label: Drained
description: Temporarily taken out of service.
color: '#9e9e9e'
optional: false
order_weight: 1200
relationships:
- name: provider
peer: OrganizationProvider
kind: Attribute
cardinality: one
optional: false
identifier: circuit__provider
order_weight: 1500
- name: endpoints
peer: DcimCircuitEndpoint
kind: Component
cardinality: many
optional: true
identifier: circuit__endpoint
order_weight: 1600
- name: CircuitEndpoint
namespace: Dcim
description: One of the two terminations (A or Z) of a circuit, at the location
where the provider hands the circuit off.
label: Circuit Endpoint
icon: mdi:ethernet
include_in_menu: true
menu_placement: DcimCircuit
inherit_from:
- DcimEndpoint
human_friendly_id:
- circuit__circuit_id__value
- name__value
order_by:
- name__value
display_label: name__value
uniqueness_constraints:
- - circuit
- side__value
attributes:
- name: side
kind: Dropdown
label: Side
choices:
- name: a
label: A
description: A-side of the circuit.
- name: z
label: Z
description: Z-side of the circuit.
optional: false
order_weight: 950
- name: name
kind: Text
read_only: true
computed_attribute:
kind: Jinja2
jinja2_template: '{{ circuit__circuit_id__value }}_{{ side__value | upper }}'
optional: false
order_weight: 1000
- name: status
kind: Dropdown
default_value: active
choices:
- name: active
label: Active
description: Fully operational and currently in service.
color: '#00d25b'
- name: provisioning
label: Provisioning
description: In the process of being set up and configured.
color: '#f0ad4e'
- name: maintenance
label: Maintenance
description: Undergoing routine maintenance or repairs.
color: '#ff9800'
- name: drained
label: Drained
description: Temporarily taken out of service.
color: '#9e9e9e'
optional: false
order_weight: 1200
- name: description
kind: Text
optional: true
order_weight: 1100
relationships:
- name: circuit
peer: DcimCircuit
kind: Parent
cardinality: one
optional: false
identifier: circuit__endpoint
order_weight: 900
- name: location
peer: LocationHosting
label: Location
kind: Attribute
cardinality: one
optional: false
identifier: circuit_endpoint__location
order_weight: 1500
extensions:
nodes:
- kind: OrganizationProvider
relationships:
- name: circuits
peer: DcimCircuit
kind: Generic
cardinality: many
optional: true
identifier: circuit__provider
order_weight: 1300
- kind: LocationHosting
relationships:
- name: circuit_endpoints
peer: DcimCircuitEndpoint
kind: Generic
cardinality: many
optional: true
identifier: circuit_endpoint__location
order_weight: 1700