disk inventory fix and hp improvement #259

Merged
cyrinux merged 3 commits from fix/cle/hp-inventory-fix-wait into master 2022-12-13 17:28:58 +01:00
2 changed files with 16 additions and 11 deletions

View file

@ -371,7 +371,7 @@ class Inventory():
desc = disk.get('description')
name = '{} ({})'.format(disk['Model'], disk['Size'])
description = disk['Type']
sn = getattr(disk, 'SN', 'unknown')
sn = disk.get('SN', 'unknown')
parms = {
'device': self.device_id,

View file

@ -18,14 +18,14 @@ def ssacli(sub_command):
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT
)
p.wait()
stdout = p.stdout.read().decode("utf-8")
if p.returncode != 0 and 'does not have any physical' not in stdout:
stdout, stderr = p.communicate()
stdout = stdout.decode("utf-8")
if p.returncode != 0:
mesg = "Failed to execute command '{}':\n{}".format(
" ".join(command), stdout
)
raise HPRaidControllerError(mesg)
else:
if 'does not have any physical' in stdout:
return list()
else:
@ -172,7 +172,12 @@ class HPRaidController(RaidController):
'Type': 'SSD' if attrs.get('Interface Type') == 'Solid State SATA'
else 'HDD',
'_src': self.__class__.__name__,
'custom_fields': {'pd_identifier': name}
'custom_fields': {
'pd_identifier': name,
'mount_point': attrs['Mount Points'],
'vd_device': attrs['Disk Name'],
'vd_size': attrs['Size'],
}
}
return ret