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 ...
|
9a560319 | 17-Apr-2024 |
Ed Tanous <ed@tanous.net> |
Remove nlohmann::json::object helpers
readJsonHelper existed back before the distinction between nlohmann::json and nlohmann::json::object_t was understood. This commit cleans up our sub-value pars
Remove nlohmann::json::object helpers
readJsonHelper existed back before the distinction between nlohmann::json and nlohmann::json::object_t was understood. This commit cleans up our sub-value parsing by removing readJsonHelper that accepts a nlohmann::json overload, and always accepting via an object_t overload. Functionally, these two are identical, given that readJsonHelper only did a type check that was redundant.
Tested: Unit tests pass. Good coverage of these methods.
Change-Id: I734d956dd4bc2ddb14f6e3c735e15adf1f7e00a0 Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
4a19a7b5 | 27-Jan-2025 |
Ed Tanous <etanous@nvidia.com> |
Deduplicate event ids
Redfish specification states: ``` The value of the id field shall be the same as the Id property in the event payload. The value of the Id property in the event payload should
Deduplicate event ids
Redfish specification states: ``` The value of the id field shall be the same as the Id property in the event payload. The value of the Id property in the event payload should be the same as the EventId property of the last event record in the Events array. The value of the EventId property for an event record should be a positive integer value and should be generated in a sequential manner. ```
The event service code did not implement that correctly. So: 1. Add ID fields for all events. 2. Remove the per-sse connection id field and rely solely on EventServiceManager. 3. Make sure all paths, (including metric report) are generating an event id that's based on the eventservice event id
Tested: Redfish event listener now sees events populated. LastEventId when sent to the SSE socket now sees a contiguous id.
``` uri=$(curl -s --user "root:0penBmc" -k "https://192.168.7.2/redfish/v1/EventService" | jq -r .ServerSentEventUri) curl -u root:0penBmc -vvv -k -N -H "Accept: text/event-stream" -H "Last-Event-Id: 0" "https://192.168.7.2$uri" ```
Change-Id: Ic32e036f40a53a9b2715639ae384d7891c768260 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
8b078385 | 31-Jan-2025 |
rohitpai <rohitpai77@gmail.com> |
Fix Message arg error in JSON Patch
When array/vector object is expected in JSON patch the error info does not contain the actual wrong property instead shows "null". Fix is to correct the value in
Fix Message arg error in JSON Patch
When array/vector object is expected in JSON patch the error info does not contain the actual wrong property instead shows "null". Fix is to correct the value in the error info.
Tested - add new test case to verify this - unit tests are passing.
Change-Id: Ica26ac9e501b5a34a5b118769cc1917eeab30524 Signed-off-by: rohitpai <rohitpai77@gmail.com>
show more ...
|
504af5a0 | 03-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: I2f0b9d0fb6e01ed36a2f34c750ba52de3b6d15d1 Signed-off-by: Patrick Williams <p
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: I2f0b9d0fb6e01ed36a2f34c750ba52de3b6d15d1 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
5d92fffc | 28-Jan-2025 |
rohitpai <rohitpai77@gmail.com> |
Move error code utils into new file
Error code utils can be used for aggregating error responses from multiples responses including use case for managing separate route handlers for OEM namespace
T
Move error code utils into new file
Error code utils can be used for aggregating error responses from multiples responses including use case for managing separate route handlers for OEM namespace
Tests Units tests are passing.
Change-Id: I2223d41fb318c0276de1ca64dd3e841bb988d902 Signed-off-by: rohitpai <rohitpai77@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 ...
|
9838eb20 | 29-Jan-2025 |
Ed Tanous <etanous@nvidia.com> |
Move io context to singleton
The way we pass around io contexts is somewhat odd. Boost maintainers in slack recommended that we just have a method that returns an io context, and from there we can
Move io context to singleton
The way we pass around io contexts is somewhat odd. Boost maintainers in slack recommended that we just have a method that returns an io context, and from there we can control this (context link lost years ago).
The new version of clang claims the singleton pattern of passing in an io_context pattern is a potential nullptr dereference. It's technically correct, as calling the singleton without immediately initializing the io context will lead to a crash.
This commit implements what the boost maintainers suggested, having a single method that returns "the context" that should be used. This also helps to maintain isolation, as some pieces are no longer tied directly to dbus to get their reactor.
Tested: WIP
Change-Id: Ifaa11335ae00a3d092ecfdfb26a38380227e8576 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
d7857201 | 28-Jan-2025 |
Ed Tanous <etanous@nvidia.com> |
Fix includes
Clang-tidy misc-include-cleaner appears to now be enforcing significantly more headers than previously. That is overall a good thing, but forces us to fix some issues. This commit is
Fix includes
Clang-tidy misc-include-cleaner appears to now be enforcing significantly more headers than previously. That is overall a good thing, but forces us to fix some issues. This commit is largely just taking the clang-recommended fixes and checking them in. Subsequent patches will fix the more unique issues.
Note, that a number of new ignores are added into the .clang-tidy file. These can be cleaned up over time as they're understood. The majority are places where boost includes a impl/x.hpp and x.hpp, but expects you to use the later. include-cleaner opts for the impl, but it isn't clear why.
Change-Id: Id3fdd7ee6df6c33b2fd35626898523048dd51bfb Signed-off-by: Ed Tanous <etanous@nvidia.com> Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
fda37f9b | 21-Nov-2024 |
Ed Tanous <etanous@nvidia.com> |
Fix inotify
We don't need the global variable here. Cleanup is handled by the stream_descriptor. Also check error codes per the documentation, not just on == -1
Tested: Created log file manually
Fix inotify
We don't need the global variable here. Cleanup is handled by the stream_descriptor. Also check error codes per the documentation, not just on == -1
Tested: Created log file manually with redfish-event-listener enabled Saw log was sent to consumer.
Change-Id: I27f13c7aedfdfe642128b7129f622047dd933380 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
3c9e6b1c | 11-Jan-2025 |
Chandramohan Harkude <chandramohan.harkude@gmail.com> |
$filter Query parameter support for nested keys added
Implemented the code to identify the '/' character in the key and perform the level by level search
Testing :
Tested query parameter with path
$filter Query parameter support for nested keys added
Implemented the code to identify the '/' character in the key and perform the level by level search
Testing :
Tested query parameter with path separated by / example
curl -k -u root:0penBmc https://<IP>/redfish/v1/Systems/ Baseboard/LogServices/FaultLog/Entries?$filter=CPER/Oem/ OEM/IpSignature eq 'DRAM-CHANNELS'
Results having 'DRAM-CHANNELS' in nested path "CPER/Oem/ OEM/IpSignature" are listed.
Change-Id: Ie6cf796026a29ec7a3e8a0366bbfd0c658d0ac7e Signed-off-by: Chandramohan Harkude <chandramohan.harkude@gmail.com>
show more ...
|
a93e9c77 | 18-Nov-2024 |
Ed Tanous <etanous@nvidia.com> |
Move time_utils to compile unit
There's no reason for these functions to be in a header, and pulling them into a compile unit can reduce compile times overall.
Tested: Unit tests pass (Good coverag
Move time_utils to compile unit
There's no reason for these functions to be in a header, and pulling them into a compile unit can reduce compile times overall.
Tested: Unit tests pass (Good coverage)
Change-Id: Ia6dc50d16bf2967e647a3c7437ba13bd7ab7ca3c Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
c069fca7 | 18-Nov-2024 |
Ed Tanous <etanous@nvidia.com> |
Move to std::chrono
gcc-14 finally has calendar support. Move the existing helper functions over to using it, and deprecate the old methods (which involved a lot of magic numbers). The old methods
Move to std::chrono
gcc-14 finally has calendar support. Move the existing helper functions over to using it, and deprecate the old methods (which involved a lot of magic numbers). The old methods are kept behind ifdefs for those still compiling against gcc-13 for the moment, but will be removed when we bump the requirements to gcc-14.
Unrelated to the cleanup, this also saves 2Kb on the compressed binary size, presumably due to relying on implementations in libc++ instead of in bmcweb.
Tested: Unit tests pass, good coverage.
Change-Id: I739a3e876e84150dc654b9dff5eb05261b1daaf5 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
9b46bc0b | 21-Jan-2025 |
Myung Bae <myungbae@us.ibm.com> |
Update to 2024.4
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:
Update to 2024.4
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>
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 ...
|
6282bc71 | 19-Aug-2024 |
Ed Tanous <etanous@nvidia.com> |
Don't forward skip or only to aggregator
These two parameters are not idempotent, and are currently being run first on the satellite, then again on the aggregator. This results in errors and unexpe
Don't forward skip or only to aggregator
These two parameters are not idempotent, and are currently being run first on the satellite, then again on the aggregator. This results in errors and unexpected results.
This commit detects when we're parsing a top collection, and filters out those two parameters from being applied to the satellite request.
To accomplish rewriting the URI, a new Request API needs added for non-const access to the URI object.
Tested: Aggregator shows results as expected. Query params are not forwarded to satellite
Change-Id: I99cbbb08da9fcd06c9ee10d371b253e32d01f59b Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
60e995cd | 09-Dec-2024 |
Ed Tanous <etanous@nvidia.com> |
Break out journal utils
A number of the journald utilities are distinct from Redfish, and could be reused. Functions moved are copy/paste with no modifications.
Tested: Journald LogService GET sti
Break out journal utils
A number of the journald utilities are distinct from Redfish, and could be reused. Functions moved are copy/paste with no modifications.
Tested: Journald LogService GET still functions correctly Redfish service validator fails no new checks.
Change-Id: Icf1c28152e14f3e0c1c5203aac50c40d56bb272e Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
56431b29 | 03-Dec-2024 |
Alexander Hansen <alexander.hansen@9elements.com> |
dbus event subscriptions: test dbus_log_watcher
Currently that code is still unfinished, but we can already define some trivial testcases.
The main result of this function is populating EventLogObj
dbus event subscriptions: test dbus_log_watcher
Currently that code is still unfinished, but we can already define some trivial testcases.
The main result of this function is populating EventLogObjectsType.
Tested: Unit tests pass.
Change-Id: I2e23147190be33192d41176413c16cd98c7bfd81 Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
1c588de9 | 09-Jan-2025 |
Abiola Asojo <abiola.asojo@ibm.com> |
Fix --buildtype=debug build error message
Fixes error: .../bmcweb/redfish-core/include/event_service_manager.hpp:175:34: ... potential null pointer dereference [-Werror=null-dereference]
Tested: No
Fix --buildtype=debug build error message
Fixes error: .../bmcweb/redfish-core/include/event_service_manager.hpp:175:34: ... potential null pointer dereference [-Werror=null-dereference]
Tested: No longer see this error with buildtype debug
Change-Id: Id245e09267eb52e8eac2bf4eb0e94489409eac2e Signed-off-by: Abiola Asojo <abiola.asojo@ibm.com>
show more ...
|
7da633f0 | 02-Dec-2024 |
Ed Tanous <etanous@nvidia.com> |
Clang-tidy updates for 19
Update to add new checks that are now available to us. Fix the minor issues we have. A few of our checks that we previously had enabled have been renamed, so remove those
Clang-tidy updates for 19
Update to add new checks that are now available to us. Fix the minor issues we have. A few of our checks that we previously had enabled have been renamed, so remove those from the file as well.
Change-Id: Idbbfc3cb7ba42ac780e557554d7ae8ab190e7551 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
f2656d1b | 13-Jan-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
ci: fix ci ubasan failure
remove an unused std::shared_ptr<Subscription>& from void Subscription::resHandler(...)
Since it was just a reference, it was non-owning anyways and removing it should not
ci: fix ci ubasan failure
remove an unused std::shared_ptr<Subscription>& from void Subscription::resHandler(...)
Since it was just a reference, it was non-owning anyways and removing it should not have any impact to the lifetime of the managed object.
Tested: Inspection only.
Change-Id: Iab57e456d5a7ae32305e1a38ddcc37c0f0156ed4 Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
a5f87d48 | 07-Jan-2025 |
Gunnar Mills <gmills@us.ibm.com> |
SW: Don't log if no association
We define logging levels in DEVELOPING.md[1], an error is "Something went wrong, and we weren't able to give the expected response. Service is still operational. "err
SW: Don't log if no association
We define logging levels in DEVELOPING.md[1], an error is "Something went wrong, and we weren't able to give the expected response. Service is still operational. "error" should be used for unexpected conditions that prevented bmcweb from fulfilling the request. "error" shall be used for 5xx errors.".
This clearly isn't an error since we just ignore not having an association and move on. Moved these traces to DEBUG. Andrew mentioned these cluttering the journal when running CI.
[1]: https://github.com/openbmc/bmcweb/blob/master/DEVELOPING.md#logging-levels
Tested: This is changing a Logging Level only.
Change-Id: If9324ab32a1f30f446a1b6f359d8a76af899378a Signed-off-by: Gunnar Mills <gmills@us.ibm.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 ...
|
81ee0e74 | 20-Dec-2024 |
Chandramohan Harkude <Chandramohan.harkude@gmail.com> |
Update Submit Test event feature to send custom data
Changes Added : Updated the submit test event feature to send test data as per spec
https://www.dmtf.org/sites/default/files/standards/documents
Update Submit Test event feature to send custom data
Changes Added : Updated the submit test event feature to send test data as per spec
https://www.dmtf.org/sites/default/files/standards/documents/ DSP2046_2019.1.pdf
Testing :
Tested sending custom test data and same data received at the event listener Change-Id: I2c2363a676aafd39c121c9fe4e16402c0f5961e2 Signed-off-by: Chandramohan Harkude <chandramohan.harkude@gmail.com>
show more ...
|