diff --git a/pyghmi/ipmi/oem/lenovo/imm.py b/pyghmi/ipmi/oem/lenovo/imm.py index 7710bbe2..f9559d37 100644 --- a/pyghmi/ipmi/oem/lenovo/imm.py +++ b/pyghmi/ipmi/oem/lenovo/imm.py @@ -2098,13 +2098,14 @@ class XCCClient(IMMClient): 'progress': 100 * wc.get_upload_progress()}) if uploadthread.rspstatus >= 300 or uploadthread.rspstatus < 200: rsp = uploadthread.rsp - errmsg = '' + errmsg = f'Upload failed with HTTP status {uploadthread.rspstatus}' try: rsp = json.loads(rsp) errmsg = ( rsp['error']['@Message.ExtendedInfo'][0]['Message']) except Exception: - raise Exception(uploadthread.rsp) + errmsg = errmsg + ': ' + str(rsp) + raise Exception(errmsg) raise Exception(errmsg) rsp = json.loads(uploadthread.rsp) monitorurl = rsp['@odata.id'] diff --git a/pyghmi/redfish/oem/generic.py b/pyghmi/redfish/oem/generic.py index eb95b4ca..17bbfd1c 100644 --- a/pyghmi/redfish/oem/generic.py +++ b/pyghmi/redfish/oem/generic.py @@ -1088,14 +1088,15 @@ class OEMHandler(object): if (uploadthread.rspstatus >= 300 or uploadthread.rspstatus < 200): rsp = uploadthread.rsp - errmsg = '' + errmsg = f'Update attempt resulted in response status {uploadthread.rspstatus}' try: rsp = json.loads(rsp) errmsg = ( rsp['error'][ '@Message.ExtendedInfo'][0]['Message']) except Exception: - raise Exception(uploadthread.rsp) + errmsg = errmsg + ': ' + repr(rsp) + raise Exception(errmsg) raise Exception(errmsg) return self.continue_update(uploadthread, progress) finally: diff --git a/pyghmi/redfish/oem/lenovo/xcc.py b/pyghmi/redfish/oem/lenovo/xcc.py index f476d50a..a1f81089 100644 --- a/pyghmi/redfish/oem/lenovo/xcc.py +++ b/pyghmi/redfish/oem/lenovo/xcc.py @@ -1320,14 +1320,15 @@ class OEMHandler(generic.OEMHandler): if (uploadthread.rspstatus >= 300 or uploadthread.rspstatus < 200): rsp = uploadthread.rsp - errmsg = '' + errmsg = f'Update attempt resulted in response status {uploadthread.rspstatus}' try: rsp = json.loads(rsp) errmsg = ( rsp['error'][ '@Message.ExtendedInfo'][0]['Message']) except Exception: - raise Exception(uploadthread.rsp) + errmsg = f'Update attempt resulted in response status {uploadthread.rspstatus}: "{repr(rsp)}"' + raise Exception(errmsg) raise Exception(errmsg) rsp = json.loads(uploadthread.rsp) monitorurl = rsp['@odata.id']