3
ܓi @ s* d dl mZmZmZ G dd deeZdS ) )PluginIndependentPlugin PluginOptc @ sN e Zd ZdZdZdZdZdZefZe dd d
dgZ
dd
Zdd Zdd Z
dS )SHMclia shmcli pulls hardware information from PowerVault/Dell
Storage JBOD's attached to server.
It provides information of the adapters, emms, drives,
enclosures, fans, power supplies and the sensory data of
temp, voltage, and current sensors.
zDell Server Hardware ManagershmclisystemstoragehardwarezC/opt/dell/ServerHardwareManager/ServerHardwareManagerCLI/bin/shmclidebugFzcapture support debug data)defaultZdescc C sL dddg}x,|D ]$}| j | j d| d| d qW | j | j d S )Nz
list adapterszlist physical enclosureszlist failed drives Zshmcli_)suggest_filename)add_cmd_output
shmcli_bincollect_enclosures_listcollect_drivers_list)selfsubcmdssubcmd r /usr/lib/python3.6/shmcli.pysetup s
zSHMcli.setupc
s g }| j d}|d dkrfxJ|d j D ]: j }t|dkr(|d j dkr(|j j d q(W tt|}dd d
ddd
ddddg
}| j| j ddd}|d dkrx|d j dd$ D ]҉ j t
fdd|D rĈ d% } d }xF|D ]>}| j d| d| d| }|j| j d} | j|| d qW | j
dr| jdd}
| j d| d| }|j| j d}d |
}
| j||
|d!d" qW d#S )&z Collect info on the enclosures z lsscsi -gstatusr output ZDELL z list emmszlist drawerszlist emm slotszlist drive slotsz list fanszlist temp sensorszlist voltage sensorszlist current sensorszlist power supplieszinfo enclosurez list enclosuresZshmcli_list_enclosures)r
c 3 s | ]}| kV qd S )Nr ).0m)liner r