#
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 ...
|
#
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 ...
|
#
deae6a78 |
| 11-Nov-2024 |
Ed Tanous <etanous@nvidia.com> |
Move getProperty calls to utility
Having all dbus calls run through the same utility reduces the amount of generated code, and more importantly, gives us a place where we can log the requests and re
Move getProperty calls to utility
Having all dbus calls run through the same utility reduces the amount of generated code, and more importantly, gives us a place where we can log the requests and responses to help with debugging.
Tested: Redfish service validator passes.
Change-Id: Ic1bf45130b5069cd57f7af26e12c8d3159c87c67 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
bd79bce8 |
| 16-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda forma
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda formatting also changed, so we have made changes to the organization default style format to better handle lambda formatting.
See I5e08687e696dd240402a2780158664b7113def0e for updated style. See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.
Change-Id: Iceec1dc95b6c908ec6c21fb40093de9dd18bf11a Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
539d8c6b |
| 19-Jun-2024 |
Ed Tanous <ed@tanous.net> |
Consistently use generated enumerations
This commit causes all of Redfish to use generated enum values for enum types. Using generated code prevents problems, and makes it more clear what types are
Consistently use generated enumerations
This commit causes all of Redfish to use generated enum values for enum types. Using generated code prevents problems, and makes it more clear what types are allowed.
Doing this found two places where we had structs that didn't fulfill the schema. They have been commented, but will be fixed with a breaking change at some point in the future.
Tested: WIP
Change-Id: I5fdd2f2dfb6ec05606a522e1f4e331f982c8e476 Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
253f11b8 |
| 16-May-2024 |
Ed Tanous <ed@tanous.net> |
Allow configuring "bmc" and "system"
In the early days of bmcweb, we made two pretty critical assumptions; First, is that a given platform would only have a single BMC instance (represented as "bmc"
Allow configuring "bmc" and "system"
In the early days of bmcweb, we made two pretty critical assumptions; First, is that a given platform would only have a single BMC instance (represented as "bmc") and a single host instance (represented as "system"). Second we assumed that, given that Redfish suggests against hardcoding URIs in client implementation and leaves them freeform, clients would code to the standard.
Our own webui-vue hardcodes Redfish URIs [1], and the documentation is littered with examples of hardcoded curl examples of hardcoding these URIs. That bug was filed in 2020, and the issue has only gotten worse over time.
This patchset is an attempt to give a target that we can start solving these issues, without trying to boil the ocean and fix all clients in parallel.
This commit adds the meson options redfish-manager-uri-name and redfish-system-uri-name
These are used to control the "name" that bmcweb places in the fixed locations in the ManagerCollection and ComputerSystemCollection schemas.
Note, managers is added, but is not currently testable. It will be iterated on over time.
Tested: Changed the URL options to "edsbmc" and "edssystem" in meson options.
Redfish service validator passes. URLs appear changed when walking the tree.
[1] https://github.com/openbmc/webui-vue/issues/43
Change-Id: I4b44685067051512bd065da8c2e3db68ae5ce23a Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
25b54dba |
| 17-Apr-2024 |
Ed Tanous <ed@tanous.net> |
Bring consistency to config options
The configuration options that exist in bmcweb are an amalgimation of CROW options, CMAKE options using #define, pre-bmcweb ifdef mechanisms and meson options usi
Bring consistency to config options
The configuration options that exist in bmcweb are an amalgimation of CROW options, CMAKE options using #define, pre-bmcweb ifdef mechanisms and meson options using a config file. This history has led to a lot of different ways to configure code in the codebase itself, which has led to problems, and issues in consistency.
ifdef options do no compile time checking of code not within the branch. This is good when you have optional dependencies, but not great when you're trying to ensure both options compile.
This commit moves all internal configuration options to: 1. A namespace called bmcweb 2. A naming scheme matching the meson option. hyphens are replaced with underscores, and the option is uppercased. This consistent transform allows matching up option keys with their code counterparts, without naming changes. 3. All options are bool true = enabled, and any options with _ENABLED or _DISABLED postfixes have those postfixes removed. (note, there are still some options with disable in the name, those are left as-is) 4. All options are now constexpr booleans, without an explicit compare.
To accomplish this, unfortunately an option list in config/meson.build is required, given that meson doesn't provide a way to dump all options, as is a manual entry in bmcweb_config.h.in, in addition to the meson_options. This obsoletes the map in the main meson.build, which helps some of the complexity.
Now that we've done this, we have some rules that will be documented. 1. Runtime behavior changes should be added as a constexpr bool to bmcweb_config.h 2. Options that require optionally pulling in a dependency shall use an ifdef, defined in the primary meson.build. (note, there are no options that currently meet this class, but it's included for completeness.)
Note, that this consolidation means that at configure time, all options are printed. This is a good thing and allows direct comparison of configs in log files.
Tested: Code compiles Server boots, and shows options configured in the default build. (HTTPS, log level, etc)
Change-Id: I94e79a56bcdc01755036e4e7278c7e69e25809ce Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
78c90203 |
| 19-Feb-2024 |
Myung Bae <myungbae@us.ibm.com> |
Refactor to pass dbus error code to caller
The aux function `getValidFabricAdapterPath()` currently handles the error uniformly for all callers.
This commit is to make the function to pass the er
Refactor to pass dbus error code to caller
The aux function `getValidFabricAdapterPath()` currently handles the error uniformly for all callers.
This commit is to make the function to pass the error conddition to the caller so that it can be handled appropriately in the caller's context.
Tested: - Check `resourceNotFound` is generated by caller.
``` $ curl -k -X GET https://${bmc}:18080/redfish/v1/Systems/system/FabricAdapters/badAdapter [WARNING fabric_adapters.hpp:270] Adapter not found ```
- Validator passes
Change-Id: I37a61a3a79138aa898ab18332f58e3007496e302 Signed-off-by: Myung Bae <myungbae@us.ibm.com>
show more ...
|
#
5a39f77a |
| 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I2f9540cf0d545a2da4d6289fc87b754f684bc9a7 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
36b5f1ed |
| 26-Sep-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Refactor getCollectionMembers
This commit refactors the getCollectionMembers function into smaller functions. Additionally, the 'subtree' parameter is no longer a default parameter but is explicitl
Refactor getCollectionMembers
This commit refactors the getCollectionMembers function into smaller functions. Additionally, the 'subtree' parameter is no longer a default parameter but is explicitly required in the function. All calls to getCollectionMembers have been updated to pass the 'subtree' parameter.
Tested: Validator passed
''' curl -k https://$bmc/redfish/v1/Systems/system/Storage { "@odata.id": "/redfish/v1/Systems/system/Storage", "@odata.type": "#StorageCollection.StorageCollection", "Members": [ { "@odata.id": "/redfish/v1/Systems/system/Storage/1" } ], "Members@odata.count": 1, "Name": "Storage Collection" }
curl -k https://$bmc/redfish/v1/Cables { "@odata.id": "/redfish/v1/Cables", "@odata.type": "#CableCollection.CableCollection", "Description": "Collection of Cable Entries", "Members": [ { "@odata.id": "/redfish/v1/Cables/dp0_cable0" }, { "@odata.id": "/redfish/v1/Cables/dp0_cable1" }, { "@odata.id": "/redfish/v1/Cables/dp0_cable2" }, { "@odata.id": "/redfish/v1/Cables/dp0_cable3" } ], "Members@odata.count": 4, "Name": "Cable Collection" }
curl -k https://$bmc/redfish/v1/Chassis
{ "@odata.id": "/redfish/v1/Chassis", "@odata.type": "#ChassisCollection.ChassisCollection", "Members": [ { "@odata.id": "/redfish/v1/Chassis/chassis" } ], "Members@odata.count": 1, "Name": "Chassis Collection" }
curl -k https://$bmc/redfish/v1/Systems/system/Memory { "@odata.id": "/redfish/v1/Systems/system/Memory", "@odata.type": "#MemoryCollection.MemoryCollection", "Members": [ { "@odata.id": "/redfish/v1/Systems/system/Memory/dimm0" }, { "@odata.id": "/redfish/v1/Systems/system/Memory/dimm1" }, ...... { "@odata.id": "/redfish/v1/Systems/system/Memory/dimm31" } ], "Members@odata.count": 32, "Name": "Memory Module Collection" } '''
Change-Id: If5091431b548f371bff03b2897fd0aaf8b0ef203 Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
62598e31 |
| 17-Jul-2023 |
Ed Tanous <ed@tanous.net> |
Replace logging with std::format
std::format is a much more modern logging solution, and gives us a lot more flexibility, and better compile times when doing logging.
Unfortunately, given its level
Replace logging with std::format
std::format is a much more modern logging solution, and gives us a lot more flexibility, and better compile times when doing logging.
Unfortunately, given its level of compile time checks, it needs to be a method, instead of the stream style logging we had before. This requires a pretty substantial change. Fortunately, this change can be largely automated, via the script included in this commit under scripts/replace_logs.py. This is to aid people in moving their patchsets over to the new form in the short period where old patches will be based on the old logging. The intention is that this script eventually goes away.
The old style logging (stream based) looked like.
BMCWEB_LOG_DEBUG << "Foo " << foo;
The new equivalent of the above would be: BMCWEB_LOG_DEBUG("Foo {}", foo);
In the course of doing this, this also cleans up several ignored linter errors, including macro usage, and array to pointer deconstruction.
Note, This patchset does remove the timestamp from the log message. In practice, this was duplicated between journald and bmcweb, and there's no need for both to exist.
One design decision of note is the addition of logPtr. Because the compiler can't disambiguate between const char* and const MyThing*, it's necessary to add an explicit cast to void*. This is identical to how fmt handled it.
Tested: compiled with logging meson_option enabled, and launched bmcweb
Saw the usual logging, similar to what was present before: ``` [Error include/webassets.hpp:60] Unable to find or open /usr/share/www/ static file hosting disabled [Debug include/persistent_data.hpp:133] Restored Session Timeout: 1800 [Debug redfish-core/include/event_service_manager.hpp:671] Old eventService config not exist [Info src/webserver_main.cpp:59] Starting webserver on port 18080 [Error redfish-core/include/event_service_manager.hpp:1301] inotify_add_watch failed for redfish log file. [Info src/webserver_main.cpp:137] Start Hostname Monitor Service... ``` Signed-off-by: Ed Tanous <ed@tanous.net>
Change-Id: I86a46aa2454be7fe80df608cb7e5573ca4029ec8
show more ...
|
#
7f3e84a1 |
| 28-Dec-2022 |
Ed Tanous <ed@tanous.net> |
Add an option flag for multi-computersystem
A number of discussions have occurred, and it's clear that multi-computer system is not a transition that can be done in a single series of commits, and n
Add an option flag for multi-computersystem
A number of discussions have occurred, and it's clear that multi-computer system is not a transition that can be done in a single series of commits, and needs to be done incrementally over time. This commit adds the initial option for multi-computer system support, with an option flag that can be enabled when the new behavior is desired. This is to prevent needing a long-lived fork.
This option operatates such that if enabled, all ComputerSystem route options will now return 404. This is to allow the redfish service validator to pass, and to be used for incremental development. As the routes are moved over, they will be enabled, and service validator re-run.
Per the description in the meson options, this option flag, and all code beneath of it will be removed on 9/1/23. The expectation is that by this date, given the appropriate level of effort in implementation, there will be no code remaining under that option flag. After this date, code beneath this option flag will be removed.
Tested: No functional changes without option.
With option enabled, /redfish/v1/Systems produces no entries. Spot check of various routes returns 404.
Redfish service validator passes.
Change-Id: I3b58642cb76d61df668076c2e0f1e7bed110ae25 Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
ac106bf6 |
| 07-Jun-2023 |
Ed Tanous <edtanous@google.com> |
Consistently name AsyncResp variables
In about half of our code, AsyncResp objects take the name asyncResp, and in the other half they take the name aResp. While the difference between them is negl
Consistently name AsyncResp variables
In about half of our code, AsyncResp objects take the name asyncResp, and in the other half they take the name aResp. While the difference between them is negligeble and arbitrary, having two naming conventions makes it more difficult to do automated changes over time via grep.
This commit was generated automtatically with the command: git grep -l 'aResp' | xargs sed -i 's|aResp|asyncResp|g'
Tested: Code compiles.
Change-Id: Id363437b6a78f51e91cbf60aa0a0c2286f36a037 Signed-off-by: Ed Tanous <edtanous@google.com>
show more ...
|
#
ef4c65b7 |
| 24-Apr-2023 |
Ed Tanous <edtanous@google.com> |
Boost::urls::format
Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot like our urlFromPieces method, but better in that it makes the resulting uris more readable, and allows d
Boost::urls::format
Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot like our urlFromPieces method, but better in that it makes the resulting uris more readable, and allows doing things like fragments in a single line instead of multiple. We should prefer it in some cases.
Tested: Redfish service validator passes. Spot checks of URLs work as expected. Unit tests pass.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Ia7b38f0a95771c862507e7d5b4aa68aa1c98403c
show more ...
|
#
89492a15 |
| 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I75f89d2959b0f1338c20d72ad669fbdc1d720835 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
746c5b8a |
| 06-Mar-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Pass boost error_code by reference
Id42ea4a90b6685a84818b87d1506c11256b3b9ae missed in couple of files
Tested: None.
Change-Id: I6cbd404132c34168cbc5901c9124ecc6ae6caacb Signed-off-by: Lakshmi Yad
Pass boost error_code by reference
Id42ea4a90b6685a84818b87d1506c11256b3b9ae missed in couple of files
Tested: None.
Change-Id: I6cbd404132c34168cbc5901c9124ecc6ae6caacb Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
6177a301 |
| 17-Feb-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Fix missed include
53ffeca5ae50e522338b9e167e5840bf967a429b missed this include. It uses sdbusplus::unpackPropertiesNoThrow and should have the include. It uses dbus_utils::UnpackErrorPrinter and sh
Fix missed include
53ffeca5ae50e522338b9e167e5840bf967a429b missed this include. It uses sdbusplus::unpackPropertiesNoThrow and should have the include. It uses dbus_utils::UnpackErrorPrinter and should have the include.
Tested: None.
Change-Id: I4811791d7393b7d11163d099519589ec6e6d1dbc Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
f05e9169 |
| 16-Feb-2023 |
Gunnar Mills <gmills@us.ibm.com> |
Fix missed include
53ffeca5ae50e522338b9e167e5840bf967a429b missed this include. It uses sdbusplus::asio::getProperty and should have the include.
Tested: None.
Change-Id: I84a023b2abdba396dc93348
Fix missed include
53ffeca5ae50e522338b9e167e5840bf967a429b missed this include. It uses sdbusplus::asio::getProperty and should have the include.
Tested: None.
Change-Id: I84a023b2abdba396dc93348cdaf22173e26aed1f Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
#
7da847b6 |
| 27-Jan-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Add Health information for FabricAdapter
This commit is to add health information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.State.Decorator.OperationalStatus` interf
Add Health information for FabricAdapter
This commit is to add health information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.State.Decorator.OperationalStatus` interface does not exist, the health information property is not displayed. ref: http://redfish.dmtf.org/schemas/v1/FabricAdapter.v1_4_0.json
Tested: Validator passes # ``` curl -k https://$bmc/redfish/v1/Systems/system/FabricAdapters/disk_backplane0 { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane0", "@odata.type": "#FabricAdapter.v1_4_0.FabricAdapter", "Id": "disk_backplane0", "Location": { "PartLocation": { "ServiceLabel": "U78DA.ND0.WZS0042-P1" } }, "Model": "6B89", "Name": "Fabric Adapter", "PartNumber": "02WG682", "SerialNumber": "YA31UF09P002", "SparePartNumber": "02WG681", "Status": { "Health": "OK", "State": "Enabled" } } ```
Change-Id: I1fc4549fbac37189e29ba5e49137634b14a08a36 Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
cd7af44f |
| 27-Jan-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Add State information for FabricAdapter
This commit is to add state information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Item` interface does not exist, t
Add State information for FabricAdapter
This commit is to add state information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Item` interface does not exist, the state information property is not displayed. ref: http://redfish.dmtf.org/schemas/v1/FabricAdapter.v1_4_0.json
Tested: Validator passes # ``` curl -k https://$bmc:/redfish/v1/Systems/system/FabricAdapters/disk_backplane0 { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane0", "@odata.type": "#FabricAdapter.v1_4_0.FabricAdapter", "Id": "disk_backplane0", "Location": { "PartLocation": { "ServiceLabel": "U78DA.ND0.WZS0042-P1" } }, "Model": "6B89", "Name": "Fabric Adapter", "PartNumber": "02WG682", "SerialNumber": "YA31UF09P002", "SparePartNumber": "02WG681", "Status": { "State": "Enabled" } } ```
Change-Id: I1e541910d8d3d69b21594ee05e972517d8b8c12d Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
6369421d |
| 27-Jan-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Add Asset information for FabricAdapter
This commit is to add asset information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Decorator.Asset` interface does n
Add Asset information for FabricAdapter
This commit is to add asset information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Decorator.Asset` interface does not exist, the asset information property is not displayed.
ref: http://redfish.dmtf.org/schemas/v1/FabricAdapter.v1_4_0.json
Tested: Validator passes # ``` curl -k https://$bmc:/redfish/v1/Systems/system/FabricAdapters/disk_backplane0 { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane0", "@odata.type": "#FabricAdapter.v1_4_0.FabricAdapter", "Id": "disk_backplane0", "Location": { "PartLocation": { "ServiceLabel": "U78DA.ND0.WZS0042-P1" } }, "Model": "6B89", "Name": "Fabric Adapter", "PartNumber": "02WG682", "SerialNumber": "YA31UF09P002", "SparePartNumber": "02WG681" } ```
Change-Id: Id9265b8bd323aa1503c32122899eaa458bcdbb51 Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
53ffeca5 |
| 27-Jan-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Add Location information for FabricAdapter
This commit is to add location information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Decorator.LocationCode` int
Add Location information for FabricAdapter
This commit is to add location information according to the Redfish FabricAdapter schema. If the `xyz.openbmc_project.Inventory.Decorator.LocationCode` interface does not exist, the location information property is not displayed.
ref: http://redfish.dmtf.org/schemas/v1/FabricAdapter.v1_4_0.json
Tested: Validator passes ``` curl -k https://$bmc/redfish/v1/Systems/system/FabricAdapters/disk_backplane0 { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane0", "@odata.type": "#FabricAdapter.v1_4_0.FabricAdapter", "Id": "disk_backplane0", "Location": { "PartLocation": { "ServiceLabel": "U78DA.ND0.WZS0042-P1" } }, "Name": "Fabric Adapter" } ```
Change-Id: I0dad37dce06e4727057d9821b5c40c71db004ee6 Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
#
a8e884fc |
| 13-Jan-2023 |
Ed Tanous <edtanous@google.com> |
Fix a couple #includes
In the continual quest to get tidy passing when run in isolation, fix some more includes.
This includes removing a circular #include to app.hpp. We don't use app.hpp in thes
Fix a couple #includes
In the continual quest to get tidy passing when run in isolation, fix some more includes.
This includes removing a circular #include to app.hpp. We don't use app.hpp in these files, which is why our code compiles but having this include it here causes a few circular dependencies app.hpp -> http_server.hpp -> persistent_data.hpp -> app.hpp. app.hpp -> http_server.hpp -> authentication.hpp -> app.hpp.
This confuses clang when run on header files directly.
Fix a couple more includes at the same time.
Tested: Code compiles
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Ib62d78b49c7e38ef7061c9fbbf6b3d463f11917d
show more ...
|
#
3179105b |
| 12-Mar-2021 |
Sunny Srivastava <sunnsr25@in.ibm.com> |
Implementation of FabricAdapter schema in bmcweb
This commit implements FabricAdapter and FabricAdapter collection schema. This code assumes all FabricAdapters are under /redfish/v1/Systems/system l
Implementation of FabricAdapter schema in bmcweb
This commit implements FabricAdapter and FabricAdapter collection schema. This code assumes all FabricAdapters are under /redfish/v1/Systems/system like we do for Memory and Processors.
The schema can be used to publish inventory properties for FRUs which can be modelled as Fabric adapters.
As a current use case, this schema is required to link ports on fabric adapters back to the system.
A FabricAdapter represents the physical fabric adapter capable of connecting to an interconnect fabric. Examples include but are not limited to Ethernet, NVMe over Fabrics, Gen-Z, and SAS fabric adapters.
Tested: Manually tested on the system, Run Redfish validator. Found no error.
{ "@odata.id": "/redfish/v1/Systems/system/FabricAdapters", "@odata.type": "#FabricAdapterCollection.FabricAdapterCollection", "Members": [ { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane0" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/disk_backplane1" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card0" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card3" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card4" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card8" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card10" }, { "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card11" } ], "Members@odata.count": 8, "Name": "Fabric Adapter Collection" }
{ "@odata.id": "/redfish/v1/Systems/system/FabricAdapters/pcie_card11", "@odata.type": "#FabricAdapter.v1_0_0.FabricAdapter", "Id": "pcie_card11", "Name": "Fabric Adapter" }
Signed-off-by: sunny srivastava <sunnsr25@in.ibm.com> Change-Id: I4d3bc31a6f0036c262c0e30481d0da4aaf59b5ab Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|