Skip to main content

Circuit Contract

This schema extension adds a Circuit Contract node to capture the service agreement behind a circuit with its provider.

Details​

Nodes​

CircuitContract​

  • Label: Circuit Contract
  • Description: A contract document associated with a circuit service, including terms, costs, and validity period.
  • Namespace: Dcim
  • Icon: mdi:file-sign
  • Human Friendly ID: name__value
  • Inherit From: CoreFileObject

Attributes​

namedescriptionkindoptionaldefault_valuechoices
nameTextFalse
contract_startDateTimeFalse
contract_endDateTimeFalse
monthly_costNumberTrue
currencyDropdownTrueusd, eur, gbp

Relationships​

namepeeroptionalcardinalitykind
circuitDcimCircuitFalseoneAttribute

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.

DcimCircuit​

Relationships​

namepeeroptionalcardinalitykind
contractDcimCircuitContractTrueoneGeneric

Code​

version: '1.0'
nodes:
- name: CircuitContract
namespace: Dcim
description: A contract document associated with a circuit service, including terms,
costs, and validity period.
label: Circuit Contract
icon: mdi:file-sign
include_in_menu: true
menu_placement: DcimCircuit
inherit_from:
- CoreFileObject
human_friendly_id:
- name__value
order_by:
- contract_end__value
display_label: Contract (Circuit `{{ circuit__circuit_id__value }}`)
attributes:
- name: name
kind: Text
read_only: true
computed_attribute:
kind: Jinja2
jinja2_template: contract_{{ circuit__circuit_id__value }}
optional: false
order_weight: 1000
- name: contract_start
kind: DateTime
optional: false
order_weight: 1200
- name: contract_end
kind: DateTime
optional: false
order_weight: 1300
- name: monthly_cost
kind: Number
optional: true
order_weight: 1400
- name: currency
kind: Dropdown
choices:
- name: usd
label: USD
description: United States Dollar
- name: eur
label: EUR
description: Euro
- name: gbp
label: GBP
description: British Pound Sterling
optional: true
order_weight: 1450
relationships:
- name: circuit
peer: DcimCircuit
kind: Attribute
cardinality: one
optional: false
identifier: circuit__contract
order_weight: 950
extensions:
nodes:
- kind: DcimCircuit
relationships:
- name: contract
peer: DcimCircuitContract
kind: Generic
cardinality: one
optional: true
identifier: circuit__contract
order_weight: 1550