#
f2a8e57e |
| 18-Jun-2024 |
Gunnar Mills <gmills@us.ibm.com> |
Pull in 2024.1 schemas
Redfish released 2024.1 in May. https://www.dmtf.org/content/redfish-release-20241-now-available
"The bundle includes 29 schema updates and additional developer resources." T
Pull in 2024.1 schemas
Redfish released 2024.1 in May. https://www.dmtf.org/content/redfish-release-20241-now-available
"The bundle includes 29 schema updates and additional developer resources." There was a request on the discord server to pull this in.
Changed 1 line scripts/update_schemas.py and reran the tool.
Tested: None. Inspection only. Picking up new schemas hasn't caused problems in the past.
Change-Id: I44f08ab56ad2f97b757b48003ac97a2f914bd8ea Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
#
2ae81db9 |
| 31-Jan-2024 |
Gunnar Mills <gmills@us.ibm.com> |
Bump Redfish schemas to 2023.3
Redfish released 2023.3 1/25/2024. https://www.dmtf.org/content/redfish-release-20233-now-available
It is several new schemas and added properties to a pile of schema
Bump Redfish schemas to 2023.3
Redfish released 2023.3 1/25/2024. https://www.dmtf.org/content/redfish-release-20233-now-available
It is several new schemas and added properties to a pile of schemas. One use case is: ComputerSystem v1.22.0 Added EfficiencyFavorPower and EfficiencyFavorPerformance to PowerMode https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/69122
This is a one line change to scripts/update_schemas.py and then ran the script.
Tested: See the new schema versions (e.g. System 1.22.0). No new Validator errors on p10bmc.
Change-Id: I5c10d78e891da71fd14187f63aa6ac682cf15598 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
#
0ec8b83d |
| 14-Mar-2022 |
Ed Tanous <edtanous@google.com> |
Generate Redfish enums from schemas
OpenBMC tends to have a significant problem in doing the appropriate lookups from the schema files, and many bugs have been injected by users picking a bad enum,
Generate Redfish enums from schemas
OpenBMC tends to have a significant problem in doing the appropriate lookups from the schema files, and many bugs have been injected by users picking a bad enum, or mistyping the casing of an enum value.
At the same time, nlohmann::json has recently added first class support for enums, https://json.nlohmann.me/features/enum_conversion/
This commit attempts to build a set of redfish includes file with all the available Redfish enums in an easy to use enum class. This makes it very clear which enums are supported by the schemas we produce, and adds very little to no extra boilerplate on the human-written code we produced previously.
Note, in the generated enum class, because of our use of the clang-tidy check for macros, the clang-tidy check needs an exception for these macros that don't technically follow the coding standard. This seems like a reasonable compromise, and in this case, given that nlohmann doesn't support a non-macro version of this.
One question that arises is what this does to the binary size.... Under the current compiler optimizations, and with the current best practices, it leads to an overall increase in binary size of ~1200 bytes for the enum machinery, then approximately 200 bytes for every call site we switch over. We should decide if this nominal increase is reasonable.
Tested: Redfish protocol validator runs with same number of failures as previously. Redfish Service Validator passes (one unrelated qemu-specific exception)
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I7c7ee4db0823f7c57ecaa59620b280b53a46e2c1
show more ...
|