#
c1a75ebc |
| 03-Jan-2025 |
rohitpai <rohitpai77@gmail.com> |
OEM Route Handling Infrastructure
Goal of the MR is to provide infrastructure support in bmcweb to manage the OEM fragment handling separately. OEM schema are vendor defined and per DMTF resource we
OEM Route Handling Infrastructure
Goal of the MR is to provide infrastructure support in bmcweb to manage the OEM fragment handling separately. OEM schema are vendor defined and per DMTF resource we could have multiple vendor defined OEM schema to be enabled.
The feature allows registration of route handler per schema per OEM namespace. Example ``` REDFISH_SUB_ROUTE<"/redfish/v1/Managers/<str>/#/Oem/OpenBmc">(service, HttpVerb::Get)(oemOpenBmcCallback); REDFISH_SUB_ROUTE<"/redfish/v1/Managers/<str>/#/Oem/Nvidia">(service, HttpVerb::Get)(oemNidiaCallback); ```
We can have separate vendor defined route handlers per resource. Each of these route handlers can populate their own vendor specific OEM data. The OEM code can be better organized and enabled/disabled as per the platform needs. The current MR has the code changes related to handling GET requests alone. The feature only supports requests where the response payload is JSON.
Tests - All UT cases passes - New UT added for RF OEM router passes - Service Validator passes on qemu - GET Response on Manager/bmc resource contains the OEM fragment
``` curl -c cjar -b cjar -k -X GET https://127.0.0.1:2443/redfish/v1/Managers/bmc { "@odata.id": "/redfish/v1/Managers/bmc", "@odata.type": "#Manager.v1_14_0.Manager",
"Oem": { "OpenBmc": { "@odata.id": "/redfish/v1/Managers/bmc#/Oem/OpenBmc", "@odata.type": "#OpenBMCManager.v1_0_0.Manager", "Certificates": { "@odata.id": "/redfish/v1/Managers/bmc/Truststore/Certificates" } } },
"UUID": "40575e98-90d7-4c10-9eb5-8d8a7156c9b9" } ```
Change-Id: Ic82aa5fe760eda31e2792fbdfb6884ac3ea613dc Signed-off-by: Rohit PAI <rohitpai77@gmail.com>
show more ...
|
#
81f915bc |
| 02-Apr-2025 |
Rohit PAI <ropai@nvidia.com> |
Use Node as template parameter for creating Tries
Abstracting Node can help us extend Tries for other use case like sub routes management
Tested 1. Service Validator passes
Change-Id: I4703af9f301
Use Node as template parameter for creating Tries
Abstracting Node can help us extend Tries for other use case like sub routes management
Tested 1. Service Validator passes
Change-Id: I4703af9f30107ce2bc3685683a5fd5b669341d35 Signed-off-by: Rohit PAI <ropai@nvidia.com>
show more ...
|
#
5b607eae |
| 26-Mar-2025 |
Ed Tanous <etanous@nvidia.com> |
Move router trie to its own file
Just as the title says. Trie is useful outside of just the router (for making other routers.)
Change-Id: I961927f2cea44ee78f32337e64741edad9dc542f Signed-off-by:
Move router trie to its own file
Just as the title says. Trie is useful outside of just the router (for making other routers.)
Change-Id: I961927f2cea44ee78f32337e64741edad9dc542f Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|