Skip to main content

Rack

This schema extension introduces a Rack model representing a physical equipment rack installed at a site. Racks can be placed at a LocationSite and can host devices and other equipment. LocationRack needs a Location.Site: extensions/location_site is declared above as the smallest provider, but extensions/location_minimal provides the same node as part of its hierarchy and satisfies the rack equally, load whichever suits, never both. LocationRack is also defined, hierarchically and incompatibly, by experimental/location_extended, so load one or the other, not both.

Details

Nodes

Rack

  • Label: Rack
  • Description: A physical equipment rack installed at a site.
  • Namespace: Location
  • Icon: clarity:rack-server-line
  • Uniqueness Constraints:
    • site, name__value
  • Human Friendly ID: site__name__value, name__value
  • Inherit From: LocationHosting

Attributes

namedescriptionkindoptionaldefault_valuechoices
nameTextFalse
facilityTextTrue
statusDropdownFalseactiveactive, available, reserved, planned, decommissioning, deprecated
heightNumberFalse42
serial_numberTextTrue
asset_tagTextTrue

Relationships

namepeeroptionalcardinalitykind
siteLocationSiteFalseoneParent
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.

LocationSite

Relationships

namepeeroptionalcardinalitykind
racksLocationRackTruemanyComponent

Code

version: '1.0'
nodes:
- name: Rack
namespace: Location
description: A physical equipment rack installed at a site.
label: Rack
icon: clarity:rack-server-line
include_in_menu: true
menu_placement: LocationGeneric
inherit_from:
- LocationHosting
human_friendly_id:
- site__name__value
- name__value
order_by:
- name__value
display_label: name__value
uniqueness_constraints:
- - site
- name__value
attributes:
- name: name
kind: Text
unique: false
optional: false
order_weight: 1000
- name: facility
kind: Text
optional: true
order_weight: 1150
- name: status
kind: Dropdown
default_value: active
choices:
- name: active
label: Active
description: Rack is installed and in use.
color: '#00d25b'
- name: available
label: Available
description: Rack is installed and has capacity for new equipment.
color: '#00bcd4'
- name: reserved
label: Reserved
description: Rack is allocated but not yet in use.
color: '#4d90fe'
- name: planned
label: Planned
description: Rack is planned but not yet installed.
color: '#2196f3'
- name: decommissioning
label: Decommissioning
description: Rack is being phased out and emptied.
color: '#ff9800'
- name: deprecated
label: Deprecated
description: Rack has been removed from service.
color: '#6c757d'
optional: false
order_weight: 1200
- name: height
kind: Number
label: Height (U)
default_value: 42
optional: false
order_weight: 1300
- name: serial_number
kind: Text
optional: true
order_weight: 1350
- name: asset_tag
kind: Text
optional: true
order_weight: 1400
relationships:
- name: site
peer: LocationSite
kind: Parent
cardinality: one
optional: false
identifier: site__racks
order_weight: 900
- name: tags
peer: BuiltinTag
kind: Attribute
cardinality: many
optional: true
order_weight: 2000
extensions:
nodes:
- kind: LocationSite
relationships:
- name: racks
peer: LocationRack
kind: Component
cardinality: many
optional: true
identifier: site__racks
order_weight: 1850