VirtualMedia fixes for Redfish Service Validator
Removes all warnings and errors for VirtualMedia
- rework for OemVirtualMedia
- minor adjustments for jsons
Tested:
Redfish Service Validator ran with no errors and/or warnings
Change-Id: Ic027166153a807a8bd3a6c04f042969f16e0dc6a
Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
diff --git a/redfish-core/lib/virtual_media.hpp b/redfish-core/lib/virtual_media.hpp
index 0b5eb1a..cd81857 100644
--- a/redfish-core/lib/virtual_media.hpp
+++ b/redfish-core/lib/virtual_media.hpp
@@ -129,7 +129,7 @@
item["MediaTypes"] = {"CD", "USBStick"};
item["TransferMethod"] = "Stream";
item["TransferProtocolType"] = nullptr;
- item["Oem"]["OpenBmc"]["WebSocketEndpoint"] = nullptr;
+ item["Oem"]["OpenBMC"]["WebSocketEndpoint"] = nullptr;
item["Oem"]["OpenBMC"]["@odata.type"] =
"#OemVirtualMedia.v1_0_0.VirtualMedia";
@@ -1039,7 +1039,7 @@
"#VirtualMediaCollection.VirtualMediaCollection";
res.jsonValue["Name"] = "Virtual Media Services";
res.jsonValue["@odata.id"] =
- "/redfish/v1/Managers/" + name + "/VirtualMedia/";
+ "/redfish/v1/Managers/" + name + "/VirtualMedia";
crow::connections::systemBus->async_method_call(
[asyncResp, name](const boost::system::error_code ec,
diff --git a/static/redfish/v1/JsonSchemas/OemVirtualMedia/index.json b/static/redfish/v1/JsonSchemas/OemVirtualMedia/index.json
index 78bd8b7..9ae641a 100644
--- a/static/redfish/v1/JsonSchemas/OemVirtualMedia/index.json
+++ b/static/redfish/v1/JsonSchemas/OemVirtualMedia/index.json
@@ -3,9 +3,10 @@
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
"copyright": "Copyright 2014-2019 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
"definitions": {
- "OpenBmc": {
- "additionalProperties": true,
- "description": "Oem properties for OpenBmc.",
+ "VirtualMedia": {
+ "additionalProperties": false,
+ "description": "OEM Extension for VirtualMedia",
+ "longDescription": "OEM Extension for VirtualMedia to support Proxy mode.",
"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.",
@@ -32,27 +33,6 @@
}
},
"type": "object"
- },
- "VirtualMedia": {
- "additionalProperties": false,
- "description": "OEM Extension for VirtualMedia",
- "longDescription": "OEM Extension for VirtualMedia to support Proxy mode.",
- "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"
}
},
"owningEntity": "OpenBMC",
diff --git a/static/redfish/v1/schema/OemVirtualMedia_v1.xml b/static/redfish/v1/schema/OemVirtualMedia_v1.xml
index 2b03a67..84afe73 100644
--- a/static/redfish/v1/schema/OemVirtualMedia_v1.xml
+++ b/static/redfish/v1/schema/OemVirtualMedia_v1.xml
@@ -25,20 +25,20 @@
<Annotation Term="Redfish.OwningEntity" String="OpenBMC"/>
<Annotation Term="Redfish.Release" String="1.0"/>
- <ComplexType Name="OpenBmc" BaseType="Resource.OemObject">
- <Annotation Term="OData.AdditionalProperties" Bool="true"/>
- <Annotation Term="OData.Description" String="Oem properties for OpenBmc." />
-
- <Property Name="WebSocketEndpoint" Type="Edm.String">
+ <Property Name="WebSocketEndpoint" Type="Edm.String">
<Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
<Annotation Term="OData.Description" String="Indicates endpoint socket name and location."/>
<Annotation Term="OData.LongDescription" String="The value of this property shall be a structure ring indicating location and name of the socket used to communicate with nbd server."/>
</Property>
- </ComplexType>
<EntityType Name="VirtualMedia" BaseType="Resource.OemObject" Abstract="true">
<Annotation Term="OData.Description" String="OEM Extension for VirtualMedia"/>
<Annotation Term="OData.LongDescription" String="OEM Extension for VirtualMedia to support Proxy mode."/>
+ <Property Name="WebSocketEndpoint" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="Indicates endpoint socket name and location."/>
+ <Annotation Term="OData.LongDescription" String="The value of this property shall be a structure ring indicating location and name of the socket used to communicate with nbd server."/>
+ </Property>
</EntityType>
</Schema>