While base64 should generate a valid boundary, some implementations balk at /.
Change to urlsafe alphabet.
Also, technically our boundary was potentially too big depending on readings of standards, reduce so that under any reading we are less than 70 characteres even including added '--' characters.
Change-Id: Id887a03eeb63a8d2bef000ae5e7365d269349906
Particularly with HGX systems, it's common to have the GPU subsystem modeled as a somewhat independent entity.
There may be duplication but there's no way to tell, programatically, what things are duplicate or not.
Change-Id: I1b7678800982e012371a004d15bbe9f3b79ac00d
Recognize that in an ambiguous situation, that AMI considers 'Self' to
be 'the' primary element of systems and managers collections.
Change-Id: Ia33fb2b8da357c08b3cf5ce1e5a8550846215a06
Provide means to get a CSR and install a certificate.
Further, update the webclient to use
python 3.3+ mechanisms, as newest
python removes the compatibility with the old way.
Change-Id: I79ca9408920687cbb56bde5b01a01d166c0a3c02
If a redfish dependency map has a bug,
then just decline to attempt the requested
override, as we can't make a reasonable evaluation.
Change-Id: I2f5c3ba1627add6ea0ff7b5363b1ccdd05396b48
Some Managers provide
a mechanism to manipulate certificate authorities.
Wire this up with some function calls.
Change-Id: I035eeea92ccc80c0163677cf8b8e679c11141bab
Some redfish implementations
advertise non-existant logs,
or logs that only exist under certain conditions.
Note these logs and move on.
Change-Id: Id6e39ef53a8882e6e9a6435ab0904f06499ab0bb
When trying for an
early BMC handler,
we can't get bmcinfo sanely.
For now, skip that check
since the generic check only helps
if the managers and systems are ambiguous.
Change-Id: I767ffbf4e0d9dbe5a727a5141124957c89407a82
Allow OEMs to describe the 'core'
system and manager.
In systems that start manifesting components as
managers and systems in their own right,
allow OEM to indicate which is the 'real' one.
Usually, extra Managers and Systems are something that
has been modeled as such, but from a usual user perspective are not
what they would consider BMCs
and systems.
Change-Id: Ib04e146a7fb0e988dac94c148005e07e2b487b12
- Sometimes, probably because of FW version, controllers do not have
'LocationType' key and it can be retrieved also from 'ServiceLabel'
key which usually exists
- Standardize VROC controller by associating slot id 0 to it
- Do not consider 'Direct attached NVME' drives as available for any
RAID creation
Change-Id: I9edecc846283c64bbcfca18b983e9276795ccec6
Certain scenarios resulted in blank
errors during failure. Provide a fallback
that preserves some amount of information.
Change-Id: Ib08f3a602f2133d04662ec45c7caf90477ffbb70
This is a cleaner way to model categories, and use
the categories to help optimize XCC fetch of
data by category.
Change-Id: I91131d946671b0ac97732ed34a419fe56e0dd0b8
Better redfish implementations offer the sane option of just deleting
the account, try that before trying to hack our way out of a bad implementation.
Change-Id: Icb97a0ae18bdafd3fed3528f5eee6ed6ba40cdac
The boundary randomization code failed to account for potential sharing,
producing a mismatch of headers and data.
Change-Id: I74de90b86edf6edd9a20ce07f7d277de75022413
Target the collection with a POST if uid does not exist, which
is the usual scenario of creating a new user.
Change-Id: Ib9b89e7ac6c65e9c48dc7aca656041c8a84eb5cd
First, break up the generic update into
distinct pieces.
For SMMv3, first supersede getting the upload url, as
multipart is advertised, but doesn't work, but simpleupdate (deprecated) works.
Then after upload,
switch to hard coded logic specific to SMMv3 to determine how to start the update and where to monitor results.
Then hand back over to generic to finish out monitoring.
Change-Id: I33b2e67603400b920aca4aa11047c11978c3c6f6
The os import was missing.
Further, the call to urandom creates a yield if monkey patched that may have _upbuffer not existing.
Change-Id: Ie8a1f17600df3fa21139430d39efbea2e9169bd9
- Fix a class cache to be instance level
- Update MAC address retrieval to handle multiple addresses and add support for InfiniBand port GUIDs.
- Have XCC3 manifest BMC setttings as extended BMC settings
Change-Id: I5d6551c19f073f5c0c871b54687b35355c7241ab
In large environments doing massive requests, give
a better chance for the receive socket to retain data on
our behalf.
Change-Id: I54ef64f7dba19c167f2377164465ece2bc0210de
Added check_storage_configuration method to ensure when storage configuration actions are possible (booted to setup or OS) and added translation for read/write policies and default initialization to make sure that software that worked for non-XCC3 works as intended on XCC3 also without any changes required by Redfish
Change-Id: I4d0809f561db0c280c39ae53a4daf3c3ea6fa88f
On inventory, remove the cpu/memory special functions
and revert to the generic.
For the rest, ensure that we stay with lower case in
contexts where we have established a lower case norm.
Change-Id: I732b7501158ddbef4b8170ac70b5ee259d5b8173
Give an implementation a guarantee of atomic access
of the password so that something strange can't happen
between the initial check and actual use of the value.
Change-Id: I48ae5d8a9c3fb3fea5ec2deeb14fec39aac86ed8
A server reseating itself will unplug itself potentially
before replying. Tolerate this and be optimistic and assume success.
Change-Id: Ic021cb539b59d1f6cf287033a1146151ced95eda
The screenshot call will return an error if used with
a stale xauth token. To be safe, just always refresh
the token, since this is never going to be a super fast
request anyway.
Change-Id: Icb06352a94f20eadc635656a2cd2827aeb55a214
If a retry occurs, the post-fixup changeset may fail
the validity checks, which are based on displayname
rather than name.
Make the underlying function make a dedicated copy before modification.
Change-Id: I9ead92a90dc102788f7e55945148405dda3d9397