2
0
mirror of https://opendev.org/x/pyghmi synced 2026-05-16 19:34:21 +00:00

Implement support for remote reseat

The v2 generation of Lenovo servers supports remote reseat
for rackmount servers. Expose this as reseating bay '-1'.

Change-Id: Ie6135c030cd5f56970ea9f968f5f5fda8e053341
This commit is contained in:
Jarrod Johnson
2021-03-03 13:03:59 -05:00
parent 856675b599
commit 944a239205
2 changed files with 9 additions and 0 deletions
+2
View File
@@ -284,6 +284,8 @@ class OEMHandler(generic.OEMHandler):
def reseat_bay(self, bay):
if self.is_fpc:
return self.smmhandler.reseat_bay(bay)
elif self.has_xcc and bay == -1:
return self.immhandler.reseat()
return super(OEMHandler, self).reseat_bay(bay)
def get_ntp_enabled(self):
+7
View File
@@ -860,6 +860,13 @@ class XCCClient(IMMClient):
super(XCCClient, self).__init__(ipmicmd)
self.adp_referer = None
def reseat(self):
rsp = self.wc.grab_json_response_with_status(
'/api/providers/virt_reseat', '{}')
if rsp[1] != 200 or rsp[0].get('return', 1) != 0:
raise pygexc.UnsupportedFunctionality(
'This platform does not support AC reseat.')
def get_description(self):
dsc = self.wc.grab_json_response('/DeviceDescription.json')
dsc = dsc[0]