Sindbad~EG File Manager

Current Path : /lib/python3.6/site-packages/sos/report/plugins/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/sos/report/plugins/__pycache__/virsh.cpython-36.pyc

3

�f(�@s&ddlmZmZGdd�dee�ZdS)�)�Plugin�IndependentPluginc@s,eZdZdZdZdZdZdd�Zdd	�Zd
S)
�
LibvirtClientz%client for libvirt virtualization APIZvirsh�system�virt�libvirt-clientcCs�|jddg�d}dddddd	d
ddd
dg}x"|D]}|jd||fdd�q2W|jd|ddd�x�d+D]�}|jd|||d,kr�dndfdd�}|ddkrj|dj�}y|dj�jd�}Wntk
r�wjYnXxBtdd �|d!d��D](}|j�|}	|jd"|||	fdd�q�WqjW|jd|dd�}
|
ddk�r�|
dj�d!d�}xLtd#d �|�D]:}|j�d$}x&d-D]}
|jd(||
|fdd��qzW�qdW|j|�d)�dd�}|ddk�r�x.|dj�D]}	|j|�d*|	��dd��q�WdS).Nz/root/.cache/virt-manager/*.logz/root/.virt-manager/*.logzvirsh -rZdomcapabilitiesZcapabilitiesZnodeinfozfreecell --allznode-memory-tune�versionzpool-capabilitiesZ
nodecpumapzmaxvcpus kvmZsysinfoznodedev-list --treez%s %sT)�
foregroundz
%s list --allZvirsh_list_all)Ztagsr	�net�nwfilter�poolz
%s %s-list %sz--all�Zstatusr�output�NamecSs|S)N�)�xrr�/usr/lib/python3.6/virsh.py�<lambda>@sz%LibvirtClient.setup.<locals>.<lambda>�z%s %s-dumpxml %scSs|S)Nr)rrrrrJs��dumpxml�dominfo�
domblklistz%s %s %sz
 nodedev-listz nodedev-dumpxml )r
rr)r
r)rrr)	Z
add_copy_specZadd_cmd_outputZcollect_cmd_output�
splitlines�split�index�	Exception�filterZexec_cmd)�self�cmdZsubcmdsZsubcmd�kZk_listZk_lines�pos�j�nameZdomains_outputZ
domains_linesZdomain�optZnodedev_outputrrr�setups^





zLibvirtClient.setupcCs,d}ddg}x|D]}|j||d�qWdS)Nz"(\s*passwd\s*=\s*\")([^\"]*)(\".*)z"/root/\.cache/virt-manager/.*\.logz/root/\.virt-manager/.*\.logz
\1******\3)Zdo_path_regex_sub)rZ	match_expZvirsh_path_expsZpath_exprrr�postprocXs

zLibvirtClient.postprocN)rr)r)	�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesZpackagesr%r&rrrrrsCrN)Zsos.report.pluginsrrrrrrr�<module>	s

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists