File: //lib/python3/dist-packages/sos/report/plugins/__pycache__/vdsm.cpython-312.pyc
�
O6uf: � � � d dl Z d dlZd dlZd dlmZmZ dZ ej dde� j � Z G d� dee� Z y)� N)�Plugin�RedHatPlugina$
global {
locking_type=0
metadata_read_only=1
use_lvmetad=0
}
devices {
preferred_names=["^/dev/mapper/"]
ignore_suspended_devices=1
write_cache_state=0
disable_after_error_count=3
use_devicesfile=0
filter=["a|^/dev/disk/by-id/dm-uuid-mpath-|", "r|.+|"]
}
z\s+� c �$ � e Zd ZdZdZdZd� Zd� Zy)�Vdsmz)VDSM - Virtual Desktop and Server Manager)�vdsmzvdsm-clientr c � � | j d� | j d� | j d� | j d� | j ddg� | j g d�� | j d� | j � | j g d �� | j d
ddd
�� | j d� }|r2g d�}| j |D ��cg c] }|D ]
}d|� d|� ��� � c}}� | j
g d�� | j
dt � d�dt � d�dt � d�g� | j
g d�� | j d� }|d dk( r3t j |d � }|D ] }| j
d|� �� � | j d� }|d dk( r=t j |d � } d}
| j
| D �cg c] }|
|z �� c}� y y c c}}w # t $ r}| j d|� �� Y d }~��d }~ww xY wc c}w # t $ r}| j d |� �� Y d }~y d }~ww xY w)!Nz/etc/pki/vdsm/keysz/etc/pki/vdsm/*/*-key.*z/etc/pki/libvirt/privatez%/var/lib/vdsm/storage/transient_disks�vdsmd�
supervdsmd)z/tmp/vds_installer*z/tmp/vds_bootstrap*z/etc/vdsm/*z/etc/pki/vdsm/z/var/log/vdsm/*)�/run/vdsm/*z/usr/libexec/vdsm/hooksz
/var/lib/vdsm� vdsm_conf�vdsm_id�vdsm_import_log)z/etc/vdsm/vdsm.confz/etc/vdsm/vdsm.idz!/var/log/vdsm/import/import-*.logzqemu-kvm)�cmdline�status�
mountstatsz/proc/�/)zls -ldZ /etc/vdsmz1su vdsm -s /bin/sh -c 'tree -l /rhev/data-center'z0su vdsm -s /bin/sh -c 'ls -lR /rhev/data-center'zlvm vgs -v -o +tags --config '�'zlvm lvs -v -o +tags --config 'zlvm pvs -v -o +all --config ')z vdsm-client Host getCapabilitieszvdsm-client Host getStatszvdsm-client Host getAllVmStatszvdsm-client Host getVMFullListzvdsm-client Host getDeviceListz"vdsm-client Host hostdevListByCapsz vdsm-client Host getAllTasksInfoz$vdsm-client Host getAllTasksStatusesz)vdsm-client Host getConnectedStoragePoolsr r �outputz3vdsm-client StoragePool getSpmStatus storagepoolID=z+vdsm-client Host getConnectedStoragePools: z"vdsm-client Host getStorageDomainszvdsm-tool dump-volume-chains %sz$vdsm-client Host getStorageDomains: )
�add_forbidden_path�add_service_status�
add_copy_spec�_add_vdsm_forbidden_paths�
add_file_tags�get_process_pids�add_cmd_output�
LVM_CONFIG�collect_cmd_output�json�loads�
ValueError�
_log_error)�self� qemu_pids�files�pid�name�res�pools�pool�err�sd_uuids�dump_volume_chains_cmd�uuids �9/usr/lib/python3/dist-packages/sos/report/plugins/vdsm.py�setupz
Vdsm.setup? s� � ���� 4�5���� 9�:���� :�;���� G�H�����,� 7�8����
� �
���,�-��&�&�(����
� �
���#.�!*�1B�
� � �)�)�*�5� ��7�E����$� ��!� � � ���Q�t�f�%� �%� �
�
���
� �
���-�j�\��<�-�j�\��<�,�Z�L��;�
� �
���
� � ��)�)�;��C� �8�}��!��
�
�3�x�=�1��!� �D��'�'�)�)-��0��� ��)�)�*N�O�C��8�}��!��:�:�c�(�m�4��)J�&��#�#�>F�%�6:�*�T�1�%� � "��[ ��L � ��O�O�=�c�U�C�
�
�� ��%�� � ��O�O�6�s�e�<�
�
�� �sJ �G0
�AG6 �AH% �H �'H% �6 H�?H�H� H% �% I�.I�Ic �~ � t j d� D ]% }|j d� s�| j |� �' y)zJAdd confidential sysprep vfds under /run/vdsm to
forbidden paths r )z.vfdz/isoUploaderz/storageN)�glob�endswithr )r# � file_paths r/ r zVdsm._add_vdsm_forbidden_paths� s9 � � ���=�1� 3�I��!�!�"F�G��'�'� �2� 3� N)�__name__�
__module__�__qualname__�
short_desc�packages�plugin_namer0 r � r5 r/ r r 5 s! � �<�J��H�
�K�W�r3r5 r )
r2 r �re�sos.report.pluginsr r r �sub�stripr r<