| Age | Commit message (Collapse) | Author | Files | Lines |
|
For some reason, validator run at the recent bmcweb bump[1] wasn't able
to download the schemas and hit:
```
/redfish/v1/Fabrics
FabricCollection
Pass: 5
Failure: 1
Show Results
Show Payload
NameValueResult
Schema Error: Unable to locate the schema definition for the 'Fabric.Fabric' type.FAILMembers@odata.count1PASSMembers@odata.nextLink[Not Present]SKIPNameFabric CollectionPASSOem[Not Present]SKIP
```
Fabric was added at 3132dacead0.
Long term it would be nice to get rid of this only install certain
schemas.. Separate discussion.
[1]: https://gerrit.openbmc.org/c/openbmc/openbmc/+/93063
Commands ran:
cd redfish-core/schema/dmtf/json-schema-installed
ln -fs ../json-schema/Fabric.v1_4_0.json Fabricv1_4_0.json
cd redfish-core/schema/dmtf/installed
ln -fs ../csdl/Fabric_v1.xml Fabric_v1.xml
Tested: Inspection only.
Change-Id: I8a36b978b7228238f7011beefd7d03f24a7839b1
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
The OpenBMCManager.v1_1_0.Manager ComplexType was inheriting from
Resource.OemObject instead of OpenBMCManager.v1_0_0.Manager,
silently dropping all v1_0_0 properties including the Certificates
NavigationProperty from the schema. This was causing the bmcweb bumps
to fail.
As explained to me, because openbmc_managers.hpp emits
"@odata.type": "#OpenBMCManager.v1_1_0.Manager" at runtime, the
Redfish Service Validator resolves every Oem/OpenBmc property against
that type. With Certificates absent from the type definition, the RSV
raised an Unknown Property Error on
Oem/OpenBmc/Certificates.
Fix the BaseType to OpenBMCManager.v1_0_0.Manager so v1_1_0 inherits
Certificates and any other v1_0_0. This is the standard CSDL versioning
pattern.
This was introduced by 762a74183 [1].
[1]: https://gerrit.openbmc.org/c/openbmc/bmcweb/+/85785.
Tested: Inspection only.
Change-Id: I95b8a27f1b3b86192c34f61fb3a48d2d42a4df6d
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
Extend the OpenBMCManager OEM fan configuration to cover the two
additional PID parameters already supported by phosphor-pid-control:
* DCoefficient (derivative term of the PID loop)
* CheckHysteresisWithSetpoint (boolean indicating whether input
hysteresis is applied around the setpoint)
These fields are now exposed through the Oem/OpenBmc/Fan/PidControllers
Redfish interface and correctly mapped to the underlying D-Bus
PidConfiguration objects.
To keep the OEM schema backwards compatible, introduce a new
version OpenBMCManager.v1_1_0 that adds the two properties to the
PidController definition, and update bmcweb to reference the new
schema version.
Test(qemu evb-ast2600):
Load Fantable via entity-manager
/var/configuration/system.json content:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/system.txt
Verify OEM properties in Manager resource
GET /redfish/v1/Managers/bmc:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/Managers-bmc-oem.png
Verify OpenBMCManager OEM schema exposure
GET /redfish/v1/JsonSchemas/OpenBMCManager:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/redfish-oem-schema.png
Run Redfish Service Validator (RSV)
Summary:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/redfish-validator-summary.png
Details:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/redfish-validator-details.png
Full log:
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(my_commit)/ConformanceLog_12_14_2025_180449.txt
Baseline (community/original) RSV log
for comparison (no new failures introduced):
https://github.com/YouPengWu/ToReviewer/blob/main/85785
/Test_case/Bmcweb(57d41)/ConformanceLog_12_14_2025_174610.txt
Change-Id: Ide1a118f9fd27eb94e911997d99e5934fe3e1095
Signed-off-by: You Peng Wu <twpeng50606@gmail.com>
|
|
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>
|
|
dmtf.org is now blocking downloading from wget [1]. Sure they will get a
fix but we are close to passing the validator without the bundle, since
we already install ~98% of the schemas we need.
The errors we were seeing were:
```
[Link to: /redfish/v1/Chassis/chassis/NetworkAdapters]
Schema Error: Unable to locate the schema definition for the 'NetworkAdapterCollection.NetworkAdapterCollection' type.
```
```
2026-04-29 09:22:37,315 - redfish - ERROR - FAIL - /Fabrics ([Link to: /redfish/v1/Fabrics]): Schema Error: Unable to locate the schema definition for the 'FabricCollection.FabricCollection' type.
```
And that makes sense.. We use the schemas at [2] and [3].
```
cd redfish-core/schema/dmtf/json-schema-installed
ln -fs ../json-schema/NetworkAdapterCollection.json NetworkAdapterCollection.json
...
cd redfish-core/schema/dmtf/installed
ln -fs ../csdl/FabricCollection_v1.xml FabricCollection_v1.xml
...
```
Long term it would be nice to get rid of this only install certain
schemas.. Separate discussion.
[1] https://github.com/DMTF/Redfish-Service-Validator/issues/664
[2] https://github.com/openbmc/bmcweb/blob/48eca7bbb0cdb736cd4495c512586ceead65e09c/redfish-core/lib/fabric.hpp#L194
[3] https://github.com/openbmc/bmcweb/blob/48eca7bbb0cdb736cd4495c512586ceead65e09c/redfish-core/lib/network_adapter.hpp#L393
Tested: Visual only.
```
lrwxrwxrwx 1 gmills gmills 40 Jan 26 15:36 FabricAdapter.v1_5_3.json -> ../json-schema/FabricAdapter.v1_5_3.json
lrwxrwxrwx 1 gmills gmills 43 Jan 26 15:36 FabricAdapterCollection.json -> ../json-schema/FabricAdapterCollection.json
lrwxrwxrwx 1 gmills gmills 36 Apr 29 11:47 FabricCollection.json -> ../json-schema/FabricCollection.json
```
```
lrwxrwxrwx 1 gmills gmills 27 Jan 26 15:36 MetricReport_v1.xml -> ../csdl/MetricReport_v1.xml
lrwxrwxrwx 1 gmills gmills 39 Apr 29 12:01 NetworkAdapterCollection_v1.xml -> ../csdl/NetworkAdapterCollection_v1.xml
lrwxrwxrwx 1 gmills gmills 40 Jan 26 15:36 OperatingConfigCollection_v1.xml -> ../csdl/OperatingConfigCollection_v1.xml
```
Change-Id: If63d733323acd5239405cac2e4b6317131c88cd3
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
There are a few warnings like
- Schema error to missing OpenBMCManager schema on BMC
```
Oem/OpenBmc
Schema Error: Unable to locate the schema definition for the 'OpenBMCManager.v1_0_0.Manager' type.
```
```
curl -k -X GET https://${bmc}/redfish/v1/Managers/bmc
"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"
}
}
```
- Schema error to missing OpenBMCAccountService schema on BMC
```
Oem/OpenBMC
[Object]
Schema Error: Unable to locate the schema definition for the 'OpenBMCAccountService.v1_0_0.AccountService' type.
```
```
curl -k -X GET https://${bmc}/redfish/v1/AccountService
...
"Oem": {
"OpenBMC": {
"@odata.id": "/redfish/v1/AccountService#/Oem/OpenBMC",
"@odata.type": "#OpenBMCAccountService.v1_0_0.AccountService",
"AuthMethods": {
"BasicAuth": true,
"Cookie": true,
"SessionToken": true,
"TLS": false,
"XToken": true
}
}
},
```
- Unexpected trailing slash
```
@odata.id
/redfish/v1/Managers/bmc/Truststore/Certificates/
Trailing Slash Warning: The URI for the resource has an unexpected trailing slash.
```
```
curl -k -X GET https://${bmc}/redfish/v1/Managers/bmc/Truststore/Certificates
{
"@odata.id": "/redfish/v1/Managers/bmc/Truststore/Certificates/",
"@odata.type": "#CertificateCollection.CertificateCollection",
"Description": "A Collection of TrustStore certificate instances",
"Members": [],
"Members@odata.count": 0,
"Name": "TrustStore Certificates Collection”
```
Tested:
- Redfish Service Validator passes on the above cases without warnings
Change-Id: Ib2d2d765101e9d7820531f307164cef96a7705cf
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
|
|
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>
|
|
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>
|
|
This fixes `update_schemas.py` so that the existing installed csdl and
json symlinks are to be kept and also to be updated with the matching
json schema version when DMTF schema version is upgraded.
This commit also uses the symlinks to the closed relative paths like
- `../schema/dmtf/installed/<schema>.xml -> ../csdl/<schema>.xml`
- `../schema/dmtf/json-schema-installed/<json-file>.json ->
../json-schema/<json-file>.json`
Tested:
- Change VERSION in `update_schemas.py` and verify the generated files
- CI passes
- Redfish Service Validator passes
Change-Id: Ib7fede7e4c39bdfc13da227eb1e737d96b6c2b5e
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
|
|
Wrote a quick bash script to update these symlinks.
These are versioned out in json schema directory[1].
The symlinks don't work without this update.
[1]: https://github.com/openbmc/bmcweb/tree/master/redfish-core/schema/dmtf/json-schema
https://gerrit.openbmc.org/c/openbmc/bmcweb/+/74676 did this for 2024.3
Tested: Cat a few of these links. They appear to work.
Before:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
head: cannot open 'redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_24_0.json' for reading: No such file or directory
```
After:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/ComputerSystem.v1_25_0.json",
"$ref": "#/definitions/ComputerSystem",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
```
Change-Id: I5c5a33c441a8def766658acaddbdfab019c960c4
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
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>
|
|
Wrote a quick bash script to update these symlinks.
These are versioned out in json schema directory[1].
The symlinks don't work without this update.
[1]: https://github.com/openbmc/bmcweb/tree/master/redfish-core/schema/dmtf/json-schema
https://gerrit.openbmc.org/c/openbmc/bmcweb/+/74676 did this for 2024.3
Tested: Cat a few of these links. They appear to work.
Before:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
head: cannot open 'redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_23_1.json' for reading: No such file or directory
```
After:
```
head -n 3 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/ComputerSystem.v1_24_0.json",
"$ref": "#/definitions/ComputerSystem",
```
Change-Id: Ief753a8c08699b0b1d934ee74c24890c3355d247
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
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>
|
|
Wrote a quick bash script to update these symlinks.
These are versioned out in json schema directory[1].
The symlinks don't work without this update.
[1]: https://github.com/openbmc/bmcweb/tree/master/redfish-core/schema/dmtf/json-schema
https://gerrit.openbmc.org/c/openbmc/bmcweb/+/77412 pulled in 2024.2
https://gerrit.openbmc.org/c/openbmc/bmcweb/+/74676 did this for 2024.3
Tested: Cat a few of these links. They appear to work.
Before:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
head: cannot open 'redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_23_0.json' for reading: No such file or directory
```
After:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/ComputerSystem.v1_23_1.json",
"$ref": "#/definitions/ComputerSystem",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
```
Change-Id: I7b867d8633e98f5497364d1ba4a0753d11308451
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
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>
|
|
Wrote a quick bash script to update these symlinks and rename the files.
These are versioned out in json schema directory[1].
The symlinks don't work without this update.
[1]: https://github.com/openbmc/bmcweb/tree/master/redfish-core/schema/dmtf/json-schema
Tested: None. Inspection only.
Change-Id: Ifaa8f9879a4b25bd59717dd5692a17dbdb71aa1d
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
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>
|
|
The previous commit 1d834d4[1] renamed OemComputerSystem json
to OpenBmcComputerSystem json, but forgot to delete the old one.
Tested: Inspection only.
[1] https://github.com/openbmc/bmcweb/commit/1d834d49cc0d2dcee11f203b167434aeefcb7970
Change-Id: Ia5512f0c9ea249742e0ac5fa3c7d0d120f824c36
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
|
|
This fixes the missing Oem/OpenBMC JsonSchema file installation.
Tested:
- Check JsonSchemas to have the enabled OpenBMC schemas
```
curl -k -X GET https::/${bmc}/redfish/v1/JsonSchemas/OpenBMCAccountService
curl -k -X GET https::/${bmc}/redfish/v1/JsonSchemas/OpenBMCManager
curl -k -X GET https::/${bmc}/redfish/v1/JsonSchemas/OpenBMCComputerSystem
```
Change-Id: Ia13b5c5d1626ee5648ddce5cd62375c8e3e09e75
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
|
|
Our OEM schemas still have whitespace violations. Reformat using
xmllint --format.
Tested: Whitespace changes only. Code compiles.
Change-Id: Ic240d7b7c617991005d72313183b20d452273662
Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
|
Correct the incorrect collection uri of OpenBMCComputerSystem_v1.xml.
Tested:
- Verify that the old uri is invalid
- Verify that the corrected uri is valid
Change-Id: Ica013733d995da0e41711eca715609b54b161e1d
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
|
|
As a comment in https://gerrit.openbmc.org/c/openbmc/bmcweb/+/74159
pointed out, although 74159 fixed the link, it didn't rename the file to
the latest. It seems reasonable we do that.
Probably should have been in 74159, i was impatient. Even though
74159 was really simple, still should have waited.
Tested:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/Certificate.v1_8_3.json",
"$ref": "#/definitions/Certificate",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
```
```
ls redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_*.json
redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_8_3.json
```
Change-Id: Id5bc4ef00a74cce7250c11830dffddfaeee9bdf2
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
Wrote a quick bash script to update these symlinks.
These are versioned out in json schema directory[1].
The symlinks don't work without this update.
[1]: https://github.com/openbmc/bmcweb/tree/master/redfish-core/schema/dmtf/json-schema
28cfceb2980baa76d7f0599dd4a331ceaec52e1f pulled in 2024.2
Tested: Cat a few of these links. They appear to work.
Before:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_*.json
head: cannot open
'redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_8_2.json'
for reading: No such file or directory
```
After:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/Certificate.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/Certificate.v1_8_3.json",
"$ref": "#/definitions/Certificate",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
```
Change-Id: Idc6a4023a1baad07cfa73b69aaab2d79d7e877bd
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
Meson recently got a new format command in 1.5.0 [1]. It makes slightly
different formatting decisions compared to muon (what we used
previously) but given it's the official tool, we should switch to it.
There is one bug resolved recently that requires this format be done
using the meson from master.
Ideally this would be enforced by CI in the future, but that's WIP.
Tested: Whitespace only, code compiles.
[1] https://mesonbuild.com/Commands.html#format
[2] https://github.com/mesonbuild/meson/commit/df706807239095ddbbfd2975b3fe067ad6b5d535
Change-Id: I91506efb659c431e913c717d8a26aa349fccbd75
Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
|
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>
|
|
These symlinks no longer point to anything useful.
Tested:
Code compiles. GET /redfish/v1/\$metadata returns correct data.
Change-Id: I29853e18f85d9509e171b0460792ac788fd503ec
Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
|
It's now 2024, and the schemas have moved. Update the canonical
location in the code.
Change-Id: Iaed97f347a17e2685845081828be0a3a2f72a38a
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
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>
|
|
Per the redfish spec, we should be naming these schemas correctly
Rename OemVirtualMedia -> OpenBMCVirtualMedia.
Tested:
These are only enabled when the option flag nbd-proxy is enabled, which
is commented out. Code inspection only.
Change-Id: Ic94025e2125e5b44e09637024acf9b80897328bd
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
Regenerate the OpenBMCAccount service json files from the script.
Tested: Redfish service validator passes.
Change-Id: I8661d8303b6963c58b6d97aafd52757b83aeb9cc
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
Meson warns on copying symlinks that the behavior might change. Make it
explicit.
Tested: Code compiles without warnings.
Change-Id: I32e1e7ab36db0c3b67b89aa215fe00c8931ddd89
Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
|
The OpenBMC OEM schemas have had many things wrong since their creation,
to the point where nobody could be using them to generate values. This
commit fixes the issues, namely.
OemManager schema and namespace are renamed to OpenBMCManager, in line
with the Redfish specification around OEM naming conventions.
OpenBMCManager now includes versions, which is a partial fix for #184.
json-schemas are regenerated from the CSDL to json script in
Redfish-Tools, rather than being handmade. This also introduces
versions in the json-schema.
Tested:
Redfish service validator passes.
Change-Id: I18f7d0445105a361775c04ae614d6ae2e297bbf6
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
Which schemas are installed should be selectable in both a meson config,
and trivially by forks. This commit gets us closer to that idea.
It does it in several ways, first, the code for generating
JsonSchemaFile resources has been changed to be generated at runtime,
based on files on disk. This is slightly slower, but allows installing
schemas from anywhere, and matches the CSDL handling.
Next, the schema folders are separated into two sets
csdl -> This includes the complete schema pack from dmtf
installed -> this includes only the schemas the bmc includes
Similar folders exist for json-schema and json-schema-installed.
This allows any additional schemas to be a single symlink addition.
Note, this also checks in all of the dmtf json schemas, not just the
versions we use. This allows us to update the schema pack without
needing to break our versions we ship.
Because the static files are now selectable, all files need to be in a
folder. This forces the css and image for the redfish built-in gui to
be moved.
Tested:
/redfish/v1/JsonSchemas returns the correct result
/redfish/v1/JsonSchemas/UpdateService returns a JsonSchemaFile instance
/redfish/v1/JsonSchemas/UpdateService/UpdateService<version>json returns
the JsonSchemaFile contents.
Redfish service validator passes.
Change-Id: Ie96b2e4b623788dc2ec94eb40fcfd80325f0d826
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
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>
|
|
For OpenBMC owned schemas, let prettier handle the formatting for us,
given that OpenBMC owns them.
Change-Id: If9558dae8a34fed72b926c2dd95fcff887c8119c
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
We should check in all the DMTF schemas, even if we don't use them, such
that adding or removing them is simpler, and we can keep an accounting
of changes to overall DMTF schemas, not mixed in with our selections.
Change-Id: I893215ac68829bce8e8e1cf1a9e5499a32abe119
Signed-off-by: Ed Tanous <ed@tanous.net>
|
|
Reorganize the existing schemas into folders under redfish core.
The existing schema system has some problems:
1. It's hard to add new schemas
2. We have to rerun the script any time we want to change what schemas
we use.
3. Adding schemas optionally takes effort
In an effort to combat this, this patchset moves all the existing
schemas into folders that represent their namespace names
dmtf/csdl represents the CSDL that dmtf publishes
oem/openbmc represents the CSDL that OpenBMC publishes
In theory, this means that in the future we can relax OEM_SCHEMAS.md,
and allow folks to possibly implement their own schemas in a way that
doesn't have to effect all other systems.
This also has the advantage of not requiring changes to
update_schemas.py when we want to add, remove, or modify what version of
a schema we use. "current" schemas are just symlinks, so they can be
updated using git, and not necessarily have merge conflicts with one
another.
Tested: Redfish service validator passes.
Change-Id: I6d4a130bba4cb874ef00a06ed579cc67f53dc7ae
Signed-off-by: Ed Tanous <ed@tanous.net>
|