summaryrefslogtreecommitdiff
path: root/redfish-core/include/generated
AgeCommit message (Collapse)AuthorFilesLines
2026-05-19Move to Redfish 2026.1Gunnar Mills17-16/+192
One line change and rerun the script. 2026.1 includes new properties. The overview is at [1]. [1]: https://www.dmtf.org/sites/default/files/Redfish_Release_2026.1_Overview.pdf Tested: Inspection only. Change-Id: I007f074128e278fb267ee4de3b9cbab22d6336df Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2026-01-26Move clang-off / clang-on to catch scopeGunnar Mills108-324/+324
As a comment in https://gerrit.openbmc.org/c/openbmc/bmcweb/+/86868 suggested "You might also consider moving this up a line so you catch the scope on both sides." This enforces just the slightest bit more clang-format. Rerun script. Tested: Builds. Manual changes to script only. Rest generated. Change-Id: I8ff01befc56c576716f5d83bd90763354b1ff0c5 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2026-01-26Rename switch namespaceGunnar Mills1-1/+1
switch is a reserved keyword in C++.. Therefore "namespace switch" is illegal C++ code. Add a couple lines of python code to check for keywords and then rename with a rf_ at the front, e.g. namespace rf_switch. Rerun the script update_schemas.py script. This showed downstream, but probably would have upstream too. ``` switch.hpp:8:11: error: expected identifier or '{' [clang-diagnostic-error] 8 | namespace switch | ^ .../bmcweb/redfish-core/include/generated/enums/switch.hpp:8:11: error: expected unqualified-id [clang-diagnostic-error] ... FAILED: meson-internal__clang-tidy-fix ``` Change-Id: I58be67fc0df6e5056e63da5302724e6509b7114b Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2026-01-23Move to Redfish 2025.4Gunnar Mills6-0/+137
One line change and rerun the script. 2025.4 includes new properties. One use case is for Redundancy. For the complete overview see [1]. Tested: Visual and build only. In the past these have not broken things. [1]: https://www.dmtf.org/sites/default/files/Redfish_Release_2025.4_Overview.pdf Change-Id: Icaf710eaa99816264993a964ef9dd8a7f5e7722a Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2026-01-23Modify enum generation for clangGunnar Mills107-214/+214
Clang-format was unhappy with the new redfish-core/include/generated/enums/switch.hpp in 2025.4 ``` diff --git a/redfish-core/include/generated/enums/switch.hpp b/redfish-core/include/generated/enums/switch.hpp index 6acf6e28..cabc8562 100644 --- a/redfish-core/include/generated/enums/switch.hpp +++ b/redfish-core/include/generated/enums/switch.hpp @@ -5,7 +5,7 @@ namespace switch { -// clang-format off + // clang-format off ``` Move turning clang-format off before the namespace fixes. ¯\_(ツ)_/¯ Do that in generate_schema_enums.py and rerun update_schemas.py. Adding 4 spaces before the clang-format off broke other generated enums. Broke out from 2025.4. Tested: Visual and build only. Change-Id: Ic03aa558b405957f15035570d376c46c545906c0 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2025-10-13Redfish 2025.3Gunnar Mills14-30/+343
1 line change in scripts/update_schemas.py to point at 2025.3 and run the script. See below for more info on this release [1] Tested: Inspection only. These have not broke things in the past. Symlinks are getting updated: ``` head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json { "$id": "http://redfish.dmtf.org/schemas/v1/ComputerSystem.v1_26_0.json", "$ref": "#/definitions/ComputerSystem", "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json", ``` [1]: https://www.dmtf.org/sites/default/files/Redfish_Release_2025.3_Overview.pdf Change-Id: Icc0e7b2bc775be6fa0f842670820319b79606507 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2025-06-17Update to 2025.2Gunnar Mills19-4/+317
1 line change in update_schemas.py and rerun it. See below for more info on this release [1] Tested: Inspection only. These have not broke things in the past. [1]: https://www.dmtf.org/sites/default/files/Redfish_Release_2025.2_Overview.pdf Change-Id: I641bc4285fa502a5d81318ff56eaeb75c0af4762 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2025-04-21Add TypeDefinition support for enumeration generationChandramohan Harkude8-0/+457
TypeDefinition was not supported by generate_schema_enums.py, this change is to support the 'TypeDefinition' generation from schema. Tested: 'TypeDefinition' fields in schema can be generated in generated files with the change Change-Id: Ibe61f65b905f2089f9e17a26fbd27e3ff1753166 Signed-off-by: Chandramohan Harkude <chandramohan.harkude@gmail.com>
2025-03-27Update to 2025.1Gunnar Mills6-0/+48
1 line change in update_schemas.py and rerun it. See below for more info on this release: https://www.dmtf.org/content/redfish-release-20251-now-available Tested: Inspection only. These have not broke things in the past. Change-Id: I8d386725b364e2bc7c91c869e519e5e7bfbf11f9 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2025-01-22Update to 2024.4Myung Bae7-0/+62
Update schema to the latest release 2024.4. See below for more info on this release: https://www.dmtf.org/standards/redfish Tested: - Redfish Service Validator passes Change-Id: I1845d6afa04ee418ba3ab0bd0bc8ce59886e4376 Signed-off-by: Myung Bae <myungbae@us.ibm.com>
2025-01-20Use SPDX identifiersEd Tanous100-0/+200
SPDX identifiers are simpler, and reduce the amount of cruft we have in code files. They are recommended by linux foundation, and therefore we should do as they allow. This patchset does not intend to modify any intent on any existing copyrights or licenses, only to standardize their inclusion. [1] https://www.linuxfoundation.org/blog/blog/copyright-notices-in-open-source-software-projects Change-Id: I935c7c0156caa78fc368c929cebd0f068031e830 Signed-off-by: Ed Tanous <etanous@nvidia.com>
2024-09-17Update to 2024.3Gunnar Mills6-0/+44
1 line change in update_schemas.py and rerun it. See below for more info on this release: https://www.dmtf.org/content/redfish-release-20243-now-available Tested: Inspection only. Change-Id: I856b9777fd386f828724bd7a521dcd5c8c3270cf Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2024-08-23Update to 2024.2Gunnar Mills3-0/+66
Redfish changed the directory structure again. Don't see that ZipFile has a "cd" so insert the version in the path when checking or building the path. You can see this directory structure change by downloading 2024.2 vs 2024.1. Also by printing the ZipFile Info. <ZipInfo filename='DSP8010_2024.2/info.json' compress_type=deflate filemode='-rw-r--r--' file_size=54 compress_size=42> This is how we used to do it. [1] [1]: https://github.com/openbmc/bmcweb/commit/60c922dfacd5d1aeec8789e03edc91b47f4a6661 Make the changes for the script, bump the version, and run the script. See below for more info on this release: https://www.dmtf.org/content/redfish-release-20242-now-available Tested: Validator is happy. Change-Id: I87674d5b9ff19b39d3cdf2fb046543e21a6ebc5b Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2024-07-24OemComputerSystem -> OpenBMCComputerSystemEd Tanous1-1/+1
Rename these and add a version like we've done other places. Partial fix for #184 Change-Id: I9039974a90f6508bdd474e6363a3df7286b1473c Signed-off-by: Ed Tanous <ed@tanous.net>
2024-06-18Pull in 2024.1 schemasGunnar Mills10-0/+80
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>
2024-02-01Bump Redfish schemas to 2023.3Gunnar Mills16-48/+177
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>
2023-10-23Update schemas to 2023.2Ed Tanous15-0/+282
To quote from The Redfish release [1] 2022.3 Redfish Schema Bundle – This .zip file contains the current versions of all Redfish schemas. The bundle includes 40 schema updates and developer resources. Added Compute Express Link (CXL) support (NEW) Extensions to Fabric, PCIeDevice, Processor, Memory, ComputerSystem, and Chassis schemas Defined by DMTF alliance partner Compute Express Link (CXL) Consortium Extensions to Fabric, PCIeDevice, Processor, Memory, ComputerSystem, and Chassis schemas New CXLLogicalDevice schema Added MultiFactorAuth to AccountService to configure a service for multi-factor authentication HTTP Basic authentication is not available for accounts configured for multi-factor authentication For client certificate authentication, the client provides their identity certificate during TLS handshaking For RSA SecurID, Google Authenticator, and Microsoft Authenticator, clients provide a new Token property in the session creation request Added Heater and HeaterMetrics resources [1] https://www.dmtf.org/content/redfish-release-20223-now-available Change-Id: Iefe80866bfb83e65ab98b2cf4ee2eacce5238c5b Signed-off-by: Ed Tanous <ed@tanous.net>
2023-05-22Update schema packs to 2023.1Ed Tanous17-0/+321
Redfish just released 2023.1, pull it in and update the packs. This commit was generated automatically using update_schemas.py Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I8faad8392af88aa7fc3a4fd73c8e0ec3bede56e5
2023-02-02Update schema pack to 2022.3Ed Tanous25-69/+448
Update scripts/update_schemas.py to point at 2022.3 and run. Schema pack 2022.3 is the latest Redfish release, released 01/23/2023. It contains several new schemas and support for Multi-factor Authentication and CXL support along other things. Update done by automation. Tested: Redfish service validator passes. Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I55a64d7cda26572e7b75135acc324cb44d316fe6
2022-12-28Generate includes for all schemasEd Tanous41-0/+2545
Even for schemas we ignore, we should still generate the enums for them, just to keep changes like [1] smaller. Tested: Code compiles. No functional binary change. [1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/55215 Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I78adf1204a319bc14900152f94161afea21f2e07
2022-12-08Generate Redfish enums from schemasEd Tanous46-0/+3944
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