Fix Task Monitor URI
Fixes #272
The TaskMonitor urls we create aren't correct per Redfish. Per DSP0266
section 12.2, our TaskMonitor URIs should take the form
/redfish/v1/TaskService/TaskMonitors/<id>
Note that even though this appears to be a collection, it is not, and
does not "exist" in the Redfish schema, hence why it is called out
explicitly.
Tested:
Started dump collection task with
POST
```
/redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData
```
GET /redfish/v1/Tasks/0
Returned TaskMonitor = /redfish/v1/Tasks/TaskMonitors/0
GET /redfish/v1/Tasks/TaskMonitors/0 returned 200
Change-Id: I9fb1d62090f7787d7649c077b748b51ac3202f8a
Signed-off-by: Ed Tanous <ed@tanous.net>
diff --git a/scripts/generate_schema_collections.py b/scripts/generate_schema_collections.py
index cf1f2f3..039d32f 100755
--- a/scripts/generate_schema_collections.py
+++ b/scripts/generate_schema_collections.py
@@ -261,6 +261,12 @@
"ServiceRoot", curr_path, top_collections, False, "ServiceRoot_v1.xml"
)
+ # Task service is not called out by CSDL, and is technically not a
+ # collection, but functionally needs to be treated like a collection, per
+ # the Asynchronous operations section of DSP0266
+ # https://www.dmtf.org/sites/default/files/standards/documents/DSP0266_1.20.1.html#asynchronous-operations
+ top_collections.add("/redfish/v1/TaskService/TaskMonitors")
+
print("Finished traversal!")
TOTAL = len(top_collections)