The inventory had diverged between firmware and hardware,
for now just give each a dedicated name.
Change-Id: I8f755a0f9ed21369a1c05e7e3139ab43c645a01f
If software attempts to upload a file
larger than the XCC supports. Report
a more understandable condition in
such a case.
Change-Id: I8b5a80c0be8fbca141bdce34d5da39095217b30b
Error string was incorrectly trying to use '+' to
add number into the message. Fix by using format
Change-Id: Iedc83383ffa4770b28538895369c9b3d58bb5bad
Measure the M.2 status of a disk more
directly, avoiding modifying the slotNo unless
the disk is actually M.2
Change-Id: Ic8bd578654f586791f04d8f880842cc11e678ed5
While a thorn in theory could be valid,
in practice the more likely intention
is yet another nonstandard string termination
attempt.
Change-Id: I71f837725b1e286b9f94786aa520deb12ce208e4
Lenovo tools use mriName to label configuration groups. Change to this
by default, while retaining legacy name
as alias for backwards compatibility.
Change-Id: I220ab18e21947745cf942d78536668d580ffa38b
The first verify phase may be delayed,
and in such a case could straddle bad
timing of the token expiry. Refresh
between the phases to mitigate risk
of expiring the token in the middle of
running.
Change-Id: Ia96fa8824a2e9e8eff8fd2d353b1b0bc7fa710a7
If the XCC/IMM bails out in the midst of an update,
it was inducing a vague result. Rework to be more
specific in the error.
Change-Id: Ie35735cc2581e7bcd7a0f4484650366d37ea613d
An ordered setting (e.g. bootorder) requires
different handling. Support it by the appropriate modifications.
Change-Id: I5b8931f3b034ee8f48285797bec4a4016a5fecc5
The builddeb script attempted to build in a directory
without .git, breaking the version deterimination logic.
Change-Id: Ia2be3a75bdcdf9335586bb40e05e635f4b497ca5
Debian wheezy has a python vintage that
errors on unpack from a bytearray.
Explicitly cast to bytes for unpack
to compensate.
Change-Id: Icaf3931a905102e6ee6ef03d91617c031a1afc86
Debian wheezy is just too old to easily work with,
for that platform, use the more amenable
cryptodomex library.
Change-Id: Ic21d9784158d9d3f529d8c17dbe60a49f244cc7c
Without pbr, the list has to be manually curated.
There is a setuptools directive that will work and
is used by pbr, but for now use the output with some
modules trimmed.
Change-Id: I772b7bef263639167b3b5c54bc7812e1e8acbaf6
There are some build environments we are being asked
to support that pbr does not. A quick fallback
to handle such environments.
Change-Id: Ie5dac2555c73e80e4cf589932a18f31a530bdf65
When the retry logic was moved to console, it exposed a problem with
the sol handler being called in the midst of transmitting without
clearing the pending payload, resulting in an infinite recursion
of sending the same break.
Resolve by using the common call to sendoutput to have it occur
only after the current head of pending output has been removed.
Change-Id: Iaae86a3bd870c1841530e200ef0f5780a5cc6993
SMM may not allow a new user to access web. Make the user_access
extensible and use that to have web privilege follow the ipmi
privilege.
Change-Id: Ib08e0064b3fb402de833a159c471e28579520a5d
XCC may be transiently unable to provide the UEFI configuration.
Implement a retry if the XCC reports that it does not exist.
Change-Id: If0d5f1136087d60b9f834f7970a59f0af61336c3
In the event of an event that is not modeled by the IPMI sensors,
make sure that at least the health summary is correct. Add in
a known condition that is missed by IPMI sensor modeling for detail
as well.
Change-Id: I207e137c49b4321cf4040188a84de569f55c5707
XCC aggressively ages out a session. Check last
token refresh before deciding a session is viable,
discarding it if it is too old.
Change-Id: I490263edb4b2a8ddbd91d6b236d4a7e689f410c7
When doing a firmware update, a surprise flow leads to a potentially
misleading exception. Change to be more clearly obvious that there
is confusion.
Change-Id: Ib9aa2c0f357daf5af0462062733c2c83c7e25079
M.2 drive firmware is held in a different area in the API. Provide
that data along non-M.2 drives.
Change-Id: I94b85687b2f22bc45d6e37c9da855f7bbd426c2f
The XCC provides more detailed information. Augment the inventory
and firmware commands with this information.
Change-Id: Ib2cedc4176f18d82eea3a2a156ac3c7e5a16f3eb
Oldest XCCs return different data to unsupported APIs, so
modify to support three variants, no return, return 2, and
the latest that require support for the return code.
Change-Id: I8d04cfffa42ff9b70bd4a19e32b353c0c7be5544
CSRF scheme was refactored in recent FPC firmware, support the third
location where the CSRF tokens might be found.
Change-Id: I0a3a9310e399f77d2a40f4b9d815127b9a884d1d
This avoids having to fetch SDR for every since instance when
many instances have common SDR. This improves first-run performance
and reduces memory consumption.
Change-Id: I1283297b8f4635e096af962fa1a49d4c752e80ec
redfish has a concept of 'no news is good news', and firmware is
changing to use that. Support both old and new behavior.
Change-Id: I1b85359ee1236c7ad5f26b67640415839ad1073b
Upcoming XCC firmware update has an additional step to support in
order to successfully perform an update.
Change-Id: I08e1fccd25d40b290bbd818bdb57ef74131e76f7
The get_description call will now help describe the height of current
Lenovo dense portfolio chassis.
Change-Id: I7d7f53b71360f3e2227c08a06cac03ac0d407210