HEX
Server: Apache
System: Linux insrv.serversdaddy.com 5.14.0-362.24.2.el9_3.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Mar 30 14:11:54 EDT 2024 x86_64
User: jsaha (1066)
PHP: 8.3.6
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3.9/site-packages/sos/report/plugins/__pycache__/openstack_ironic.cpython-39.opt-1.pyc
a

^��c� �@sZddlmZmZmZmZddlZGdd�de�ZGdd�deee�ZGdd�dee�ZdS)	�)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginNc@s@eZdZdZdZdZdZdZedZdd�Z	d	d
�Z
dd�Zd
S)�OpenStackIroniczOpenStack IronicZopenstack_ironic)Z	openstackZopenstack_undercloud)�.*ironic_apiz,/var/lib/config-data/puppet-generated/ironicZ
_inspectorcCs8|�d�}|�r\|jd|jd|jd|jd|jdg|_|�dd|jd|jd	|jd
|jd|jd|jd
|jd|jd|jd|jd|jd|jd|jd|jd|jdg�|�d�r�|�ddg�n|�ddg�ddd|jd|jdfD](}|�d|�|�d|j|��qd D]$}|�d!|��r4|jd"|d#��q4n\ddg|_|�gd$��|�d��r�|�d%d&g�n|�d'd(g�d)D]}|�d|��q�|�d*d+i�d,d-�d.D�}d/d-�d0D�}t|��o�t	|�|_
|j
�s|j�d1�n(|�d2�|�d3�|�d4�|�d5�dS)6Nrz
/etc/ironic/*z/etc/ironic-inspector/*z_api/etc/ironic/*� /var/lib/httpboot/inspector.ipxe�/var/lib/ironic-inspector/z-/var/log/containers/ironic-inspector/ramdisk/z/etc/xinetd.confz/etc/xinetd.d/�/etc/ironic/�/etc/ironic-inspector/z/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.conf�/etc/my.cnf.d/tripleo.cnfz_api/etc/ironic/z_api/etc/httpd/conf/z_api/etc/httpd/conf.d/z$_api/etc/httpd/conf.modules.d/*.confz_api/etc/my.cnf.d/tripleo.cnf�all_logsz/var/log/containers/ironic/z%/var/log/containers/ironic-inspector/z /var/log/containers/ironic/*.logz*/var/log/containers/ironic-inspector/*.log�/var/lib/ironic�	/httpboot�	/tftpbootz/var/lib/httpboot/z/var/lib/tftpboot/zls -laRt %s)Zironic_inspector_dnsmasqZironic_inspectorZironic_pxe_httpZironic_pxe_tftpZironic_neutron_agentZironic_conductorZ
ironic_apiz.*zrpm -qa)�	container)r
rr	z"/var/log/ironic-inspector/ramdisk/rrz/var/log/ironic/z/var/log/ironic-inspector/z/var/log/ironic/*.logz/var/log/ironic-inspector/*.log)rrrz.*/etc/ironic/ironic.confZironic_confcSsg|]}|tjv�qS���os�environ��.0�prr�G/usr/lib/python3.9/site-packages/sos/report/plugins/openstack_ironic.py�
<listcomp>u�z)OpenStackIronic.setup.<locals>.<listcomp>)ZOS_USERNAMEZOS_PASSWORDcSsg|]}|tjv�qSrrrrrrrxr)ZOS_TENANT_NAMEZOS_PROJECT_NAMEz}Not all environment variables set. Source the environment file for the user intended to connect to the OpenStack environment.z&openstack baremetal driver list --longz$openstack baremetal node list --longz$openstack baremetal port list --longz*openstack baremetal port group list --long)
Zcontainer_exists�var_puppet_gen�ins_puppet_gen�	conf_list�
add_copy_spec�
get_option�add_cmd_outputZ
add_file_tags�all�any�
osc_available�soslog�warning)�selfZin_container�pathZcontainer_nameZvars_allZvars_anyrrr�setups�
��
����
�	���


zOpenStackIronic.setupcCs|jD]}|�|||�qdS�N)rZdo_path_regex_sub)r'Zregexp�substZconfrrr�apply_regex_sub�s
zOpenStackIronic.apply_regex_subcCs@gd�}ddg}|�dd�|�d�|�dd�|�d�dS)	N)	Zdns_passkeyZmemcache_secret_keyZrabbit_password�passwordZ
qpid_passwordZadmin_passwordZssl_key_passwordZos_passwordZ
transport_urlZ
connectionZsql_connectionz((?m)^\s*(%s)\s*=\s*)(.*)�|z\1*********z-((?m)^\s*(%s)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z
\1*********\6)r,�join)r'Zprotect_keysZconnection_keysrrr�postproc�s���zOpenStackIronic.postprocN)�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesZ
containersrrr)r,r0rrrrrsmrcs eZdZdZ�fdd�Z�ZS)�DebianIronic)z
ironic-apiz
ironic-commonzironic-conductorcstt|���dSr*)�superr4r)�r'��	__class__rrr)�szDebianIronic.setup)r1r2r3�packagesr)�
__classcell__rrr7rr4�sr4cs0eZdZdZddgZdd�Z�fdd�Z�ZS)�RedHatIronic)zopenstack-selinux�openstack-ironic-discoverdz"openstack-ironic-discoverd-ramdiskcCsT|�d�}|dr"|j�d�dSdd�|d��D�}|D]}|�d|�q<dS)Nz.openstack baremetal node list -f value -c UUID�statuszPFailed to fetch list of ironic node UUIDs, introspection data won't be collectedcSsg|]}|��r|�qSr)�strip)r�uuidrrrr�s�z;RedHatIronic.collect_introspection_data.<locals>.<listcomp>�outputz.openstack baremetal introspection data save %s)Zcollect_cmd_outputr%r&�splitr!)r'Zuuids_resultZuuidsr?rrr�collect_introspection_data�s��z'RedHatIronic.collect_introspection_datacs�tt����t�fdd��jD��rh�j�d���d���d���d��jdd��jd	d��jd
d��j	r���
d���d�r����dS)
Ncsg|]}��|��qSr)Zis_installedrr6rrr�rz&RedHatIronic.setup.<locals>.<listcomp>z/etc/ironic-discoverd/*z/etc/ironic-discoverd/z/var/lib/ironic-discoverd/z/var/log/ironic-discoverd/r<)Zunitsz"openstack-ironic-discoverd-dnsmasqz"openstack-ironic-inspector-dnsmasqz&openstack baremetal introspection listr
)
r5r;r)r#�discoverd_packagesr�appendrZadd_journalr$r!r rBr6r7r6rr)�s




zRedHatIronic.setup)r1r2r3r9rCrBr)r:rrr7rr;�s�r;)	Zsos.report.pluginsrrrrrrr4r;rrrr�<module>s