summaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorGeorge Liu <liuxiwei@inspur.com>2022-10-28 12:26:15 +0300
committerGeorge Liu <liuxiwei@inspur.com>2022-11-08 03:17:58 +0300
commitf1240b47b47b01b0ccab0bb5c977d6ca126e4b60 (patch)
treee854199c53400d545884257a251001615b502e1e /static
parente9f716722249d776b88e28bec0f2b2d9fa60c4fa (diff)
downloadbmcweb-f1240b47b47b01b0ccab0bb5c977d6ca126e4b60.tar.xz
Add ThermalMetrics schema
Based on DSP8010_2022.2 and adds the ThermalMetrics schema. ThermalMetrics is child of the ThermalSubsystem schema. It is part of the new Power/Thermal Schemas. ThermalMetrics contains temperature readings and the corresponding link to that sensor in the sensor collection. Temperatures such as Ambient, Exhaust, Intake, and Internal can be found in the schema. Tested: built bmcweb successfully and validator passes. Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I16ad2f922acc963a0434f3d9ab5583d2242b0013
Diffstat (limited to 'static')
-rw-r--r--static/redfish/v1/$metadata/index.xml5
-rw-r--r--static/redfish/v1/JsonSchemas/ThermalMetrics/ThermalMetrics.json261
-rw-r--r--static/redfish/v1/schema/ThermalMetrics_v1.xml138
3 files changed, 404 insertions, 0 deletions
diff --git a/static/redfish/v1/$metadata/index.xml b/static/redfish/v1/$metadata/index.xml
index 2e078eb9c1..a56ffac5c2 100644
--- a/static/redfish/v1/$metadata/index.xml
+++ b/static/redfish/v1/$metadata/index.xml
@@ -2639,6 +2639,11 @@
<edmx:Include Namespace="Thermal.v1_7_0"/>
<edmx:Include Namespace="Thermal.v1_7_1"/>
</edmx:Reference>
+ <edmx:Reference Uri="/redfish/v1/schema/ThermalMetrics_v1.xml">
+ <edmx:Include Namespace="ThermalMetrics"/>
+ <edmx:Include Namespace="ThermalMetrics.v1_0_0"/>
+ <edmx:Include Namespace="ThermalMetrics.v1_0_1"/>
+ </edmx:Reference>
<edmx:Reference Uri="/redfish/v1/schema/ThermalSubsystem_v1.xml">
<edmx:Include Namespace="ThermalSubsystem"/>
<edmx:Include Namespace="ThermalSubsystem.v1_0_0"/>
diff --git a/static/redfish/v1/JsonSchemas/ThermalMetrics/ThermalMetrics.json b/static/redfish/v1/JsonSchemas/ThermalMetrics/ThermalMetrics.json
new file mode 100644
index 0000000000..62279ecd91
--- /dev/null
+++ b/static/redfish/v1/JsonSchemas/ThermalMetrics/ThermalMetrics.json
@@ -0,0 +1,261 @@
+{
+ "$id": "http://redfish.dmtf.org/schemas/v1/ThermalMetrics.v1_0_1.json",
+ "$ref": "#/definitions/ThermalMetrics",
+ "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
+ "copyright": "Copyright 2014-2021 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
+ "definitions": {
+ "Actions": {
+ "additionalProperties": false,
+ "description": "The available actions for this resource.",
+ "longDescription": "This type shall contain the available actions for this resource.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "#ThermalMetrics.ResetMetrics": {
+ "$ref": "#/definitions/ResetMetrics"
+ },
+ "Oem": {
+ "$ref": "#/definitions/OemActions",
+ "description": "The available OEM-specific actions for this resource.",
+ "longDescription": "This property shall contain the available OEM-specific actions for this resource."
+ }
+ },
+ "type": "object"
+ },
+ "OemActions": {
+ "additionalProperties": true,
+ "description": "The available OEM-specific actions for this resource.",
+ "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {},
+ "type": "object"
+ },
+ "ResetMetrics": {
+ "additionalProperties": false,
+ "description": "This action resets the summary metrics related to this equipment.",
+ "longDescription": "This action shall reset any time intervals or counted values for this equipment.",
+ "parameters": {},
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "target": {
+ "description": "Link to invoke action",
+ "format": "uri-reference",
+ "type": "string"
+ },
+ "title": {
+ "description": "Friendly action name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "TemperatureSummary": {
+ "additionalProperties": false,
+ "description": "The temperature readings for a subsystem.",
+ "longDescription": "This type shall contain properties that describe temperature sensor for a subsystem.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "Ambient": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The ambient temperature (Celsius) of this subsystem.",
+ "excerptCopy": "SensorExcerpt",
+ "longDescription": "This property shall contain the temperature, in degrees Celsius units, for the ambient temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."
+ },
+ "Exhaust": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The exhaust temperature (Celsius) of this subsystem.",
+ "excerptCopy": "SensorExcerpt",
+ "longDescription": "This property shall contain the temperature, in degrees Celsius units, for the exhaust temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."
+ },
+ "Intake": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The intake temperature (Celsius) of this subsystem.",
+ "excerptCopy": "SensorExcerpt",
+ "longDescription": "This property shall contain the temperature, in degrees Celsius units, for the intake temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."
+ },
+ "Internal": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The internal temperature (Celsius) of this subsystem.",
+ "excerptCopy": "SensorExcerpt",
+ "longDescription": "This property shall contain the temperature, in degrees Celsius units, for the internal temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."
+ }
+ },
+ "type": "object"
+ },
+ "ThermalMetrics": {
+ "additionalProperties": false,
+ "description": "The ThermalMetrics schema represents the thermal metrics of a chassis.",
+ "longDescription": "This resource shall represent the thermal metrics of a chassis for a Redfish implementation.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "@odata.context": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
+ },
+ "@odata.etag": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
+ },
+ "@odata.id": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
+ },
+ "@odata.type": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
+ },
+ "Actions": {
+ "$ref": "#/definitions/Actions",
+ "description": "The available actions for this resource.",
+ "longDescription": "This property shall contain the available actions for this resource."
+ },
+ "Description": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "readonly": true
+ },
+ "Id": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
+ "readonly": true
+ },
+ "Name": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
+ "readonly": true
+ },
+ "Oem": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
+ "description": "The OEM extension property.",
+ "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
+ },
+ "TemperatureReadingsCelsius": {
+ "description": "The temperatures (Celsius) from all related sensors for this device.",
+ "excerptCopy": "SensorArrayExcerpt",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorArrayExcerpt"
+ },
+ "longDescription": "This property shall contain the temperatures, in degrees Celsius units, for this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`.",
+ "type": "array"
+ },
+ "TemperatureReadingsCelsius@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "TemperatureSummaryCelsius": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/TemperatureSummary"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The summary temperature readings for this chassis.",
+ "longDescription": "This property shall contain the temperature sensor readings for this subsystem."
+ }
+ },
+ "required": [
+ "@odata.id",
+ "@odata.type",
+ "Id",
+ "Name"
+ ],
+ "type": "object"
+ }
+ },
+ "owningEntity": "DMTF",
+ "release": "2020.4",
+ "title": "#ThermalMetrics.v1_0_1.ThermalMetrics"
+} \ No newline at end of file
diff --git a/static/redfish/v1/schema/ThermalMetrics_v1.xml b/static/redfish/v1/schema/ThermalMetrics_v1.xml
new file mode 100644
index 0000000000..caf35ae9b6
--- /dev/null
+++ b/static/redfish/v1/schema/ThermalMetrics_v1.xml
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!---->
+<!--################################################################################ -->
+<!--# Redfish Schema: ThermalMetrics v1.0.1 -->
+<!--# -->
+<!--# For a detailed change log, see the README file contained in the DSP8010 bundle, -->
+<!--# available at http://www.dmtf.org/standards/redfish -->
+<!--# Copyright 2014-2022 DMTF. -->
+<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
+<!--################################################################################ -->
+<!---->
+<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
+
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
+ <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
+ <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
+ <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
+ <edmx:Include Namespace="Resource.v1_0_0"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Sensor_v1.xml">
+ <edmx:Include Namespace="Sensor"/>
+ </edmx:Reference>
+
+ <edmx:DataServices>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ThermalMetrics">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+
+ <EntityType Name="ThermalMetrics" BaseType="Resource.v1_0_0.Resource" Abstract="true">
+ <Annotation Term="OData.Description" String="The ThermalMetrics schema represents the thermal metrics of a chassis."/>
+ <Annotation Term="OData.LongDescription" String="This resource shall represent the thermal metrics of a chassis for a Redfish implementation."/>
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="Capabilities.InsertRestrictions">
+ <Record>
+ <PropertyValue Property="Insertable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.UpdateRestrictions">
+ <Record>
+ <PropertyValue Property="Updatable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.DeleteRestrictions">
+ <Record>
+ <PropertyValue Property="Deletable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Redfish.Uris">
+ <Collection>
+ <String>/redfish/v1/Chassis/{ChassisId}/ThermalSubsystem/ThermalMetrics</String>
+ </Collection>
+ </Annotation>
+ </EntityType>
+
+ <Action Name="ResetMetrics" IsBound="true">
+ <Parameter Name="ThermalMetrics" Type="ThermalMetrics.v1_0_0.Actions"/>
+ <Annotation Term="OData.Description" String="This action resets the summary metrics related to this equipment."/>
+ <Annotation Term="OData.LongDescription" String="This action shall reset any time intervals or counted values for this equipment."/>
+ </Action>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ThermalMetrics.v1_0_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2020.4"/>
+
+ <EntityType Name="ThermalMetrics" BaseType="ThermalMetrics.ThermalMetrics">
+ <Property Name="TemperatureSummaryCelsius" Type="ThermalMetrics.v1_0_0.TemperatureSummary">
+ <Annotation Term="OData.Description" String="The summary temperature readings for this chassis."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperature sensor readings for this subsystem."/>
+ </Property>
+ <NavigationProperty Name="TemperatureReadingsCelsius" Type="Collection(Sensor.Sensor)">
+ <Annotation Term="Redfish.ExcerptCopy" String="Array"/>
+ <Annotation Term="OData.Description" String="The temperatures (Celsius) from all related sensors for this device."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperatures, in degrees Celsius units, for this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."/>
+ </NavigationProperty>
+ <Property Name="Actions" Type="ThermalMetrics.v1_0_0.Actions" Nullable="false">
+ <Annotation Term="OData.Description" String="The available actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="TemperatureSummary">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="The temperature readings for a subsystem."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe temperature sensor for a subsystem."/>
+ <NavigationProperty Name="Internal" Type="Sensor.Sensor">
+ <Annotation Term="Redfish.ExcerptCopy"/>
+ <Annotation Term="OData.Description" String="The internal temperature (Celsius) of this subsystem."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperature, in degrees Celsius units, for the internal temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."/>
+ </NavigationProperty>
+ <NavigationProperty Name="Intake" Type="Sensor.Sensor">
+ <Annotation Term="Redfish.ExcerptCopy"/>
+ <Annotation Term="OData.Description" String="The intake temperature (Celsius) of this subsystem."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperature, in degrees Celsius units, for the intake temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."/>
+ </NavigationProperty>
+ <NavigationProperty Name="Exhaust" Type="Sensor.Sensor">
+ <Annotation Term="Redfish.ExcerptCopy"/>
+ <Annotation Term="OData.Description" String="The exhaust temperature (Celsius) of this subsystem."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperature, in degrees Celsius units, for the exhaust temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."/>
+ </NavigationProperty>
+ <NavigationProperty Name="Ambient" Type="Sensor.Sensor">
+ <Annotation Term="Redfish.ExcerptCopy"/>
+ <Annotation Term="OData.Description" String="The ambient temperature (Celsius) of this subsystem."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the temperature, in degrees Celsius units, for the ambient temperature of this subsystem. The value of the DataSourceUri property, if present, shall reference a resource of type Sensor with the ReadingType property containing the value `Temperature`."/>
+ </NavigationProperty>
+ </ComplexType>
+
+ <ComplexType Name="Actions">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="The available actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
+ <Property Name="Oem" Type="ThermalMetrics.v1_0_0.OemActions" Nullable="false">
+ <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="OemActions">
+ <Annotation Term="OData.AdditionalProperties" Bool="true"/>
+ <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
+ </ComplexType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ThermalMetrics.v1_0_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to update descriptions to tie excerpt property definitions to a specific type of Sensor or Control. It was also created to correct various typographical errors."/>
+ <EntityType Name="ThermalMetrics" BaseType="ThermalMetrics.v1_0_0.ThermalMetrics"/>
+ </Schema>
+
+ </edmx:DataServices>
+</edmx:Edmx>