#
8a08ac10 |
| 01-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
meson: reformat with meson formatter
Apply the `meson format` results.
Change-Id: Ide29bf7e4bef23e31328a7e425ff700ea0aab39b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
#
ce6c5c54 |
| 29-Nov-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer retur
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer return true for auto features. Instead, the expectation is to use `allowed()` which is true for both enabled and auto.
Switch all uses of `enabled` to `allowed`.
Change-Id: Icb327fb26f7ffe6c08b0220caf8a489dfb7d1248 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
58c26e3f |
| 27-Sep-2019 |
Lei YU <mine260309@gmail.com> |
Scan directories that store PSU images on start
When the service starts, scan the directories that store PSU images, including the built-in images, and the saved images during PSU update.
When the
Scan directories that store PSU images on start
When the service starts, scan the directories that store PSU images, including the built-in images, and the saved images during PSU update.
When the scanned image is different than the running images, create activation/version object; When the scanned image is the same as the running images, update the version object's path to indicate the PSU image path, so it could be used for future update in case a PSU is replaced with a different software.
Tested: On Witherspoon, fake create a dummy PSU image with a different version than running PSU, verify a new object is created on restart; fake creating a dummy PSU image with a same version as a running PSU, verify no new object is created, but the "Path" property is set to the PSU image directory.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: I860b978250a718eb82d948a1c88bd8f41bb2b2e3
show more ...
|
#
fda15a33 |
| 19-Sep-2019 |
Lei YU <mine260309@gmail.com> |
Refactor Version::getValue()
Rename the function to getValues() and change the parameter and return value types, and add a test case for it. It will be used in future commits.
Tested: Verify the un
Refactor Version::getValue()
Rename the function to getValues() and change the parameter and return value types, and add a test case for it. It will be used in future commits.
Tested: Verify the unit test case passes.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: I57ccf857737ef13f4e2f27c5f2fb7400a2170e91
show more ...
|
#
12c9f4c4 |
| 11-Sep-2019 |
Lei YU <mine260309@gmail.com> |
Activation: initially support psu update
Initial support for PSU update by starting a systemd unit with PSU inventory path and image dir as arguments.
Add an example psu-update@.service that shows
Activation: initially support psu update
Initial support for PSU update by starting a systemd unit with PSU inventory path and image dir as arguments.
Add an example psu-update@.service that shows how the arguments are passed to systemd unit and expanded to command line arguments.
Tested: Upload a dummy tarball, create a dummy service that only prints the arguments, and verify the service is invoked correctly when the RequestedActivation is set to Active.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: I7e122f1cce234caf4951d3e3daad5bee406b507b
show more ...
|
#
f77189f7 |
| 07-Aug-2019 |
Lei YU <mine260309@gmail.com> |
Add unit test for item_udpater
To test item_updater easier, mocking utils is necessary. So add a UtilsInterface to make the mocking eaiser.
Due to the fact that there is templated member functions
Add unit test for item_udpater
To test item_updater easier, mocking utils is necessary. So add a UtilsInterface to make the mocking eaiser.
Due to the fact that there is templated member functions that could not be virtual, adding an extra "Impl" virtual function makes it possible to simulates the mock of templated functions. See https://stackoverflow.com/questions/7968023/c-virtual-template-method for details.
However, using std::any in with googlemock has an issue on GCC9, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90415 for details.
So this commit uses std::experimental::any as a workaround.
With the mocked utils, it's easy to test item_updater in different cases.
This commit adds the test cases for creating PSU objects, when: * There is no PSU present * There is one PSU present * There are two PSUs present with the same version; * There are two PSUs present with different versions.
Tested: Verify the unit tests passes.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: I5d74ab26b344c5c40bc141f97b8aca42e74ee88e
show more ...
|
#
ad90ad51 |
| 05-Aug-2019 |
Lei YU <mine260309@gmail.com> |
Create objects for running PSUs
On service startup, create activation and version objects for running PSUs, and set related active, functional associations.
If multiple PSUs are running with the sa
Create objects for running PSUs
On service startup, create activation and version objects for running PSUs, and set related active, functional associations.
If multiple PSUs are running with the same software version, they share the same DBus object, and the object will be associated to multiple PSU inventories.
Tested: Verify the software objects are created on Witherspoon, and the active, functional associations are created.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: Ia8372aba8299818baccfdf37e98fdbc99f747b7c
show more ...
|
#
5e0dcb39 |
| 02-Aug-2019 |
Lei YU <mine260309@gmail.com> |
Get psu inventory path
Invoke GetSubTreePaths on configurable psu inventory base path to get all the PSU paths. Add unit test case and meson.build to build the unit test case.
In test/meson.build,
Get psu inventory path
Invoke GetSubTreePaths on configurable psu inventory base path to get all the PSU paths. Add unit test case and meson.build to build the unit test case.
In test/meson.build, manually adding dynamic_linker related options for OE SDK environment to link_args, so that the built test binary could be executed in OE SDK environment. Otherwise, the ld will not find the correct shared libraries in OE SDK.
And you have to execute the test binaries manually in OE SDK, because meson skips running the tests due to it thinks it's cross compiling. This is described in README as well.
Tested: Verify the build and unit test run OK in OE SDK environment and in OpenBMC CI. Verify it gets the PSU inventory paths correctly on Witherspoon.
Signed-off-by: Lei YU <mine260309@gmail.com> Change-Id: I2e2003c5897d7a623fad7f87d263b71c926fc46d
show more ...
|