History log of /openbmc/bmcweb/scripts/parse_registries.py (Results 1 – 25 of 59)
Revision Date Author Comments
# da9dc905 26-Feb-2025 Igor Kanyuka <ifelmail@gmail.com>

Added type hints to parse_registries.py

Added type hints to reduce possibility of mistakes caused by using wrong
types and make changes safer/faster to make. Fixed bugs related to types
in the scrip

Added type hints to parse_registries.py

Added type hints to reduce possibility of mistakes caused by using wrong
types and make changes safer/faster to make. Fixed bugs related to types
in the script.

Testing:
Ran the script, made sure it did not change anything in the repo (i.e.
produces the same results as before).

Change-Id: Ia7be551705a9eeabb2dd762bf709b113f8f1405b
Signed-off-by: Igor Kanyuka <ifelmail@gmail.com>

show more ...


# 0bce6a95 21-Feb-2025 Igor Kanyuka <ifelmail@gmail.com>

Update Environmental registry version to 1.1.0

New version includes Leak related messages we need.

Testing:
Redfish service validator passing

Change-Id: Ieca3e5a7bb785ef7fcffb05f86b88bdbf23a3d99
S

Update Environmental registry version to 1.1.0

New version includes Leak related messages we need.

Testing:
Redfish service validator passing

Change-Id: Ieca3e5a7bb785ef7fcffb05f86b88bdbf23a3d99
Signed-off-by: Igor Kanyuka <ifelmail@gmail.com>

show more ...


# 557ab0de 18-Feb-2025 Igor Kanyuka <ifelmail@gmail.com>

Refactor parse_registries.py

Minor refactoring:
- Change global scope variable names to capital letters
- get_response_code method to make it more readable and pythonic.
- Now, already processed dat

Refactor parse_registries.py

Minor refactoring:
- Change global scope variable names to capital letters
- get_response_code method to make it more readable and pythonic.
- Now, already processed data is stored in 2 variables - registries_map
and files, use only 1 storage to avoid errors caused by missing some
entries in one storage, but presenting in another.

Testing:
Ran the script and made sure the files it generated did not change.

Change-Id: Ida35adcd3530dbd87040a12de4903eda5f1f93f7
Signed-off-by: Igor Kanyuka <ifelmail@gmail.com>

show more ...


# 4aad6ed2 30-Jan-2025 Ed Tanous <etanous@nvidia.com>

Ignore header failures on registries

The generated registries have an imperfect handling of #include
dependencies. Update the script to ignore the misc-include-cleaner
recommendations for now. Fut

Ignore header failures on registries

The generated registries have an imperfect handling of #include
dependencies. Update the script to ignore the misc-include-cleaner
recommendations for now. Future fixes could be done to make these
generated headers actually correctly include their dependencies, but
that is non trivial to do, and the build is broken.

Change-Id: I32c70e9f865ca7ef693c736a45b3ea59513a751d
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 6c038f26 14-Jan-2025 Ed Tanous <etanous@nvidia.com>

Roll out error message utils

This code should really be in a cpp/hpp file, not in a generated python
script. The python script housed this temporarily to allow us to
generate the registries. It's

Roll out error message utils

This code should really be in a cpp/hpp file, not in a generated python
script. The python script housed this temporarily to allow us to
generate the registries. It's time to roll it out.

Tested: Message registries generate successfully on GET. Redfish
service validator passes.

Change-Id: I7aca2d0a7fac6d530511421b667ff732617df61e
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 40e9b92e 10-Sep-2024 Ed Tanous <etanous@nvidia.com>

Use SPDX identifiers

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 pa

Use SPDX identifiers

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>

show more ...


# c8895b05 03-Jan-2025 Ed Tanous <etanous@nvidia.com>

Reformat python

Apply black formatter to code.

Change-Id: I4a3d8426b03eeb8d71230f24788ac8caeb3618c3
Signed-off-by: Ed Tanous <etanous@nvidia.com>


# 7e6d0323 26-Dec-2024 Tam Nguyen <tamnguyenchi@os.amperecomputing.com>

Fix out of range error when input non default registries

The parse_registries.py generates base, heartbeat, resource and taskevent
registries without checking input registries list. Which causes out

Fix out of range error when input non default registries

The parse_registries.py generates base, heartbeat, resource and taskevent
registries without checking input registries list. Which causes out of range
error when input non default value.
This commit only generates above registries if they are input.

Tested:
Input only openbmc registry passes.
Input only heartbeat registry passes.
Run with default registries passes.

Change-Id: Ibb6e6ee9f241c424bb78782466eb3199b11332c3
Signed-off-by: Tam Nguyen <tamnguyenchi@os.amperecomputing.com>

show more ...


# 770362fe 16-Dec-2024 Milton D. Miller II <mdmii@outlook.com>

Use raw content URL

Replace the message registry URL with the official GitHub raw download
URL to give the json content not a web SCM GUI.

Change-Id: I0ac800ee3803c9bef3a6a799b20887df84c3c173
Signe

Use raw content URL

Replace the message registry URL with the official GitHub raw download
URL to give the json content not a web SCM GUI.

Change-Id: I0ac800ee3803c9bef3a6a799b20887df84c3c173
Signed-off-by: Milton Miller <mdmii@outlook.com>

show more ...


# a8a5bc1b 02-Dec-2024 Ed Tanous <etanous@nvidia.com>

Generate heartbeat registry

Generate the heartbeat registry, and adjust the #includes of the
other generated registries.

Tested: Redfish service validator succeeds.

Change-Id: Iedbf1ae8dc655966669

Generate heartbeat registry

Generate the heartbeat registry, and adjust the #includes of the
other generated registries.

Tested: Redfish service validator succeeds.

Change-Id: Iedbf1ae8dc6559666691f1feb71af08e856d5c80
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 847deee3 02-Dec-2024 Ed Tanous <etanous@nvidia.com>

Generate resource event

Generate Resource event registry

Tested: On last patch of series. No behavior changes.

Change-Id: I924919db0e7fbde8ed698de6b59b86f788de9708
Signed-off-by: Ed Tanous <etano

Generate resource event

Generate Resource event registry

Tested: On last patch of series. No behavior changes.

Change-Id: I924919db0e7fbde8ed698de6b59b86f788de9708
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# f175c280 02-Dec-2024 Ed Tanous <etanous@nvidia.com>

Generate task event

Generate the task event registry.

Tested: on last patch of series

Change-Id: I55b7914978f7a1d637cad6dfae398949af0a7107
Signed-off-by: Ed Tanous <etanous@nvidia.com>


# 66aabb70 10-Dec-2024 Ed Tanous <etanous@nvidia.com>

Fix URI warning in RSV

Redfish service valitator warns:

WARNING - PublicationUri: Empty string found - Services should omit
properties if not supported

This commit adds to our registry the url to

Fix URI warning in RSV

Redfish service valitator warns:

WARNING - PublicationUri: Empty string found - Services should omit
properties if not supported

This commit adds to our registry the url to the openbmc registry file.

Tested: Redfish Service validator no longer returns a warning.

Change-Id: Ia54be175490b4e7e00e3c0c4ab8c60dce1b96863
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 56b81992 02-Dec-2024 Ed Tanous <etanous@nvidia.com>

Make message registries use 2 digit versions

Redfish specification, section 9.5.11.2 says:

The MessageId property value shall be in the format:
<MessageRegistryPrefix>.<MajorVersion>.<MinorVersion>

Make message registries use 2 digit versions

Redfish specification, section 9.5.11.2 says:

The MessageId property value shall be in the format:
<MessageRegistryPrefix>.<MajorVersion>.<MinorVersion>.<MessageKey>

bmcweb in certain places has incorrectly used the 3 digit version
instead of the 2 digit version. This commit fixes that by modifying the
parse_registries script to generate 3 separate struct entries to
represent the registry version, and parse them where appropriate.

MessageRegistryFileCollection uses the 3 digit version. No behavior
changes.
Message/event log entries use the 2 digit version. This will cause a
MessageId change from:
Base.1.19.0.InternalError
to
Base.1.19.InternalError

This is a breaking change, so a new option to allow the old behavior is
provided.

Tested: Redfish Service validator passes.
Heartbeat events on EventService show 2 digit versions.

Change-Id: I4165e994f73e200f13bed8ea76cb58bee2b69faa
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 352945bb 18-Nov-2024 Ed Tanous <etanous@nvidia.com>

Update base registry keys to 1.19

This has been incorrect for a while now. Update the version string
so it's generated automatically.

Tested:
Redfish service validator passes
Redfish protocol vali

Update base registry keys to 1.19

This has been incorrect for a while now. Update the version string
so it's generated automatically.

Tested:
Redfish service validator passes
Redfish protocol validator passes

Change-Id: I7abaf5c523c82a61331e5d696b498a35c2cf3788
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 644cdcb8 17-Nov-2024 Ed Tanous <etanous@nvidia.com>

Make all ints size_t

We should be consistent when we declare index types. Nlohmann uses an
underlying uint64_t as the integer type, so use that for all index
types.

Size_t is directly creatable fr

Make all ints size_t

We should be consistent when we declare index types. Nlohmann uses an
underlying uint64_t as the integer type, so use that for all index
types.

Size_t is directly creatable from it in both 32 and 64 bit modes.

Tested: On last patch in series.

Change-Id: Id1da0e7be2e2046bdbd732247d208b6e9e8c008c
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# f8cca876 17-Nov-2024 Ed Tanous <etanous@nvidia.com>

Order by order in DMTF registry

The DMTF registry has a defined order. Previously these were randomly
ordered dependent on the hash function used when they were generated
years ago.

Functionally t

Order by order in DMTF registry

The DMTF registry has a defined order. Previously these were randomly
ordered dependent on the hash function used when they were generated
years ago.

Functionally the only change here is to parse_registries.py, to remove
the sorting, then to regenerate the files.

Tested: On last patch in series.

Change-Id: I7432c26ec4a1b18acf63ece85500df370f4758d3
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 7ccfe684 16-Nov-2024 Ed Tanous <etanous@nvidia.com>

Generate error messages source

This file has gotten desynced from the standard, and maintaining it is
a pain. refactor the parse_registries.py script to generate this file
and update all wrong inst

Generate error messages source

This file has gotten desynced from the standard, and maintaining it is
a pain. refactor the parse_registries.py script to generate this file
and update all wrong instances to the correct types.

To the extent possible, the generated code tries to be replaced with
1:1 identical structures to make review simpler.

Tested: On last patch in series.

Change-Id: Ic203a93fd26e0487475ce82c62beb6a22612368a
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# c87294a6 17-Nov-2024 Ed Tanous <etanous@nvidia.com>

Remove InvalidUpload response code

Invalid response is something from the openbmc registry, so it's not
a valid thing to return as a response code. For this patch, remove
the generated error messag

Remove InvalidUpload response code

Invalid response is something from the openbmc registry, so it's not
a valid thing to return as a response code. For this patch, remove
the generated error message, and replace the one place it's used with
internalError.

Tested: On last patch in series.

Change-Id: I8215935f00923c72fd7763645c06d0b6af73c01d
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 42079ecb 16-Nov-2024 Ed Tanous <etanous@nvidia.com>

Generate error messages for Redfish

error_messages.hpp and error_messages.cpp were at one time generated.
That script has been lost to the sands of time, and since then there's
been lots of places w

Generate error messages for Redfish

error_messages.hpp and error_messages.cpp were at one time generated.
That script has been lost to the sands of time, and since then there's
been lots of places where we've been inconsistent, or updated our base
registry without updating the generated code. This causes wording,
syntax, and other errors.

This commit updates the script to simply generate this header with the
intent of generating it from here on out and avoid issues. As written,
goes to great lengths to generate exactly the same code, and make only
changes to the doxygen comments, and add the missing types. This is
done to allow for easy diffing that nothing important has changed.

Testing on last patch in series.

Change-Id: Ic1da1c02519098bdb53656d94a458b78c67d25bb
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# b575caef 01-Oct-2024 Jishnu CM <jishnunambiarcm@duck.com>

Bump base registry to 1.19.0

Adds GenerateSecretKeyRequired registry to the Base for MFA

Change-Id: Ia690639b4bebbbd265b223bd626b0eb814103f99
Signed-off-by: Jishnu CM <jishnunambiarcm@duck.com>


# d8d5fc3e 18-Jun-2024 Gunnar Mills <gmills@us.ibm.com>

Bump base registry to 1.18.1

72169 points out a mistake in 1.16 which is fixed in 1.18. Let's pull
1.18.1 in. 1.18.1 is the latest.

Changed 1 line in parse_registries.py and reran it.

Tested: None

Bump base registry to 1.18.1

72169 points out a mistake in 1.16 which is fixed in 1.18. Let's pull
1.18.1 in. 1.18.1 is the latest.

Changed 1 line in parse_registries.py and reran it.

Tested: None. In the past bumping these hasn't caused problems.

Change-Id: I79b135b8366d9b423f789c34802b1c0366d4e8a5
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 5910d945 16-Apr-2024 Gunnar Mills <gmills@us.ibm.com>

Update Privilege Registry from 1.3.0 to 1.5.0

Change 1 line in scripts/parse_registries.py and rerun the script.

Long term OpenBMC/bmcweb need more direction here on the Privilege
Registry, but for

Update Privilege Registry from 1.3.0 to 1.5.0

Change 1 line in scripts/parse_registries.py and rerun the script.

Long term OpenBMC/bmcweb need more direction here on the Privilege
Registry, but for now continue with the current direction of using the
Privilege Registry and taking it from the DMTF.

There is new entries in 1.4/1.5 that are needed for future development.

Tested: It builds.

Change-Id: I4337dc44e794c58f00f7307ea0508b84f14e8c8f
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# 665e7602 10-Apr-2024 Gunnar Mills <gmills@us.ibm.com>

Pull in all registries

Before Redfish put all messages in Base, but as the Messages became more
specific Redfish started creating new registries. Redfish might have
went a little registry happy. Hea

Pull in all registries

Before Redfish put all messages in Base, but as the Messages became more
specific Redfish started creating new registries. Redfish might have
went a little registry happy. HeartbeatEvent just has 1 message and all
these new ones registries each just have a handful of messages.

Add the remaining 15 registries:
composition, environmental, ethernetfabric, fabric, heartbeat_event,
job_event, license, logservice, networkdevice, platform, power,
sensor_event, storage_device, telemetry, update.

Some of these are wanted for both current development and future
development but it is hard to decide which ones so just added them all.
power, fabric, telemetry, update are all things we support today. Having
a UpdateInProgress or UpdateSuccessful makes a lot of sense and this
enables that.

Put these alphabetically. Use a new for loop to do this.

Make changes to scripts/parse_registries.py and run the tool.

No difference in size.

Before: 66928640 Apr 10 13:32
obmc-phosphor-image-p10bmc-20240410183051.ext4.mmc.tar

After: 66928640 Apr 10 13:18
obmc-phosphor-image-p10bmc-20240410181439.ext4.mmc.tar

Tested: bmcweb builds.
"./scripts/parse_registries.py --registries license,update" works.

Change-Id: I43b4d041531cf338e9e7e621714ca7d95f6b01a5
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# 3e5faba5 16-Aug-2023 Ed Tanous <edtanous@google.com>

Generate OpenBMC registry

We haven't been very good about maintaining this file, so lets generate
it like we do everything else.

This commit takes the existing, manually built
openbmc_message_regis

Generate OpenBMC registry

We haven't been very good about maintaining this file, so lets generate
it like we do everything else.

This commit takes the existing, manually built
openbmc_message_registry.hpp and copies the generated json from a
working system, then hooks it into the parse_registries script to
generate the hpp file. This results in a couple changes, and somewhat
proves how bad our ability to manage this file manually is..

Tested: Looking for input on if this is the right direction.

Change-Id: I5dc03021d194f0674e4a8f41421096b211462a0a
Signed-off-by: Ed Tanous <edtanous@google.com>

show more ...


123