Skip to main content

Modules

This schema extension allows you to capture Device Modules related information like the serial number or the status. You can insert the Module into a Dcim Physical Device.

NOTE: This extension doesn't contain any Nodes, you can use the extension module_linecards or modules_routing_engine to use it

Details

  • Dependencies:

Generics

GenericModule

  • Label: Module
  • Description: A generic module, such as a Linecard or Routing Engine, installed in a device.
  • Namespace: Device

Attributes

namedescriptionkindoptionaldefault_valuechoices
serial_numberUnique serial number of the module.Text
descriptionTextTrue
statusDropdownactiveprovisioning, active, maintenance, disabled, outage

Relationships

namepeeroptionalcardinalitykind
module_typeDeviceGenericModuleTypeFalseoneAttribute
deviceDcimPhysicalDeviceTrueoneAttribute

GenericModuleType

  • Label: Module Type
  • Description: A generic module type, with common specifications like part number and manufacturer.
  • Namespace: Device
  • Uniqueness Constraints:
    • part_number__value
    • name__value, manufacturer
  • Human Friendly ID: name__value

Attributes

namedescriptionkindoptionaldefault_valuechoices
nameName of the module type.Text
descriptionDescription of the module type.TextTrue
part_numberPart number of the module.TextTrue

Relationships

namepeeroptionalcardinalitykind
manufacturerOrganizationManufacturerFalseoneAttribute
tagsBuiltinTagTruemanyAttribute

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.

DcimPhysicalDevice

Relationships

namepeeroptionalcardinalitykind
modulesDeviceGenericModulemanyComponent

Code

version: '1.0'
generics:
- name: GenericModule
namespace: Device
description: A generic module, such as a Linecard or Routing Engine, installed in
a device.
label: Module
attributes:
- name: serial_number
kind: Text
unique: true
description: Unique serial number of the module.
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
- name: status
kind: Dropdown
choices:
- name: provisioning
label: Provisioning
description: Linecard is being provisioned.
color: '#A9DFBF'
- name: active
label: Active
description: Linecard is active and operational.
color: '#A9CCE3'
- name: maintenance
label: Maintenance
description: Linecard is under maintenance.
color: '#FFF2CC'
- name: disabled
label: Disabled
description: Linecard has been disabled.
color: '#D3D3D3'
- name: outage
label: Outage
description: Linecard is currently experiencing an outage.
color: '#F4CCCC'
default_value: active
order_weight: 1300
relationships:
- name: module_type
peer: DeviceGenericModuleType
optional: false
cardinality: one
kind: Attribute
order_weight: 1150
- name: device
label: Device
peer: DcimPhysicalDevice
identifier: device__modules
optional: true
cardinality: one
kind: Attribute
order_weight: 1000
- name: GenericModuleType
namespace: Device
description: A generic module type, with common specifications like part number
and manufacturer.
label: Module Type
uniqueness_constraints:
- - part_number__value
- - name__value
- manufacturer
human_friendly_id:
- name__value
order_by:
- manufacturer__name__value
- name__value
attributes:
- name: name
kind: Text
unique: true
description: Name of the module type.
order_weight: 1000
- name: description
kind: Text
optional: true
description: Description of the module type.
order_weight: 1100
- name: part_number
label: Part Number
kind: Text
optional: true
description: Part number of the module.
order_weight: 1200
relationships:
- name: manufacturer
peer: OrganizationManufacturer
identifier: manufacturer__moduletype
cardinality: one
optional: false
kind: Attribute
description: Manufacturer of the module type.
order_weight: 1250
- name: tags
peer: BuiltinTag
optional: true
cardinality: many
kind: Attribute
description: Tags associated with the module type.
order_weight: 3000
extensions:
nodes:
- kind: DcimPhysicalDevice
relationships:
- name: modules
peer: DeviceGenericModule
identifier: device__modules
cardinality: many
kind: Component