2022-02-11 22:22:59 +01:00
|
|
|
{
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"manufacturer": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"model": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"slug": {
|
|
|
|
"type": "string",
|
|
|
|
"pattern": "^[-a-zA-Z0-9_]+$"
|
|
|
|
},
|
|
|
|
"part_number": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"u_height": {
|
2022-08-18 15:23:52 +02:00
|
|
|
"type": "number",
|
|
|
|
"minimum": 0,
|
|
|
|
"multipleOf": 0.5
|
2022-02-11 22:22:59 +01:00
|
|
|
},
|
|
|
|
"is_full_depth": {
|
|
|
|
"type": "boolean"
|
|
|
|
},
|
|
|
|
"airflow": {
|
|
|
|
"type": "string",
|
|
|
|
"enum": [
|
|
|
|
"front-to-rear",
|
|
|
|
"rear-to-front",
|
|
|
|
"left-to-right",
|
|
|
|
"right-to-left",
|
|
|
|
"side-to-rear",
|
|
|
|
"passive"
|
|
|
|
]
|
|
|
|
},
|
2023-01-19 17:40:40 +01:00
|
|
|
"weight": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/weight"
|
|
|
|
},
|
|
|
|
"maxItems": 1
|
|
|
|
},
|
2022-02-11 22:22:59 +01:00
|
|
|
"subdevice_role": {
|
|
|
|
"type": "string",
|
|
|
|
"enum": [
|
|
|
|
"parent",
|
|
|
|
"child"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"console-ports": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/console-port"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"console-server-ports": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/console-server-port"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"power-ports": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/power-port"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"power-outlets": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/power-outlet"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"interfaces": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/interface"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"front-ports": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/front-port"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"rear-ports": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/rear-port"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"module-bays": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/module-bay"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"device-bays": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/device-bay"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"inventory-items": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "components.json#/definitions/inventory-item"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"comments": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"required": ["manufacturer", "model", "slug"],
|
|
|
|
"additionalProperties": false
|
|
|
|
}
|