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__/openstack_ironic.cpython-36.opt-1.pyc

3

�f'!�@sZddlZddlmZmZmZmZGdd�de�ZGdd�deee�ZGdd�dee�ZdS)	�N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc@sHeZdZdZdZdZdZdZedZgZ	dZ
d	d
�Zdd�Zd
d�Z
dS)�OpenStackIroniczOpenStack IronicZopenstack_ironic�	openstack�openstack_undercloud�.*ironic_apiz,/var/lib/config-data/puppet-generated/ironicZ
_inspectorFcCsL|jd�}|�rd|jd|jd|jd|jd|jdg|_|jdd|jd|jd	|jd
|jd|jd|jd
|jd|jd|jd|jd|jd|jd|jd|jd|jdg�|jd�r�|jddg�n|jddg�xFddd|jd|jdgD](}|jd|�|jd|j|��qWx�d=D]$}|jd'|��r:|jd(|d)��q:Wnhddg|_|jd
ddd*ddg�|jd��r�|jd+d,g�n|jd-d.g�xd>D]}|jd|��q�W|jd/d0i�d1d2�d?D�}d5d2�d@D�}t|��ot	|�|_
|j
�s |jjd8�n(|jd9�|jd:�|jd;�|jd<�dS)ANz.*ironic_apiz
/etc/ironic/*z/etc/ironic-inspector/*z_api/etc/ironic/*z /var/lib/httpboot/inspector.ipxez/var/lib/ironic-inspector/z-/var/log/containers/ironic-inspector/ramdisk/z/etc/xinetd.confz/etc/xinetd.d/z/etc/ironic/z/etc/ironic-inspector/z/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.confz/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�ironic_inspector_dnsmasq�ironic_inspector�ironic_pxe_http�ironic_pxe_tftp�ironic_neutron_agent�ironic_conductor�
ironic_apiz.*zrpm -qa)Z	containerz"/var/log/ironic-inspector/ramdisk/z/var/log/ironic/z/var/log/ironic-inspector/z/var/log/ironic/*.logz/var/log/ironic-inspector/*.logz.*/etc/ironic/ironic.confZironic_confcSsg|]}|tjk�qS�)�os�environ)�.0�prr�&/usr/lib/python3.6/openstack_ironic.py�
<listcomp>wsz)OpenStackIronic.setup.<locals>.<listcomp>�OS_USERNAME�OS_PASSWORDcSsg|]}|tjk�qSr)rr)rrrrrrzs�OS_TENANT_NAME�OS_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)rrrrrrr)rrr
)rr)rr)
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"x|jD]}|j|||�qWdS)z Apply regex substitution N)r"Zdo_path_regex_sub)r+ZregexpZsubstZconfrrr�apply_regex_sub�szOpenStackIronic.apply_regex_subc	CsNddddddddd	g	}d
dg}|jdd
j|�d�|jdd
j|�d�dS)NZdns_passkeyZmemcache_secret_keyZrabbit_passwordZpasswordZ
qpid_passwordZadmin_passwordZssl_key_passwordZos_passwordZ
transport_urlZ
connectionZsql_connectionz(^\s*(%s)\s*=\s*)(.*)�|z\1*********z)(^\s*(%s)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z
\1*********\6)r.�join)r+Zprotect_keysZconnection_keysrrr�postproc�s
zOpenStackIronic.postprocN)rr)r	)�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesZ
containersr r!r"r(r-r.r1rrrrrsmrc@seZdZdZdS)�DebianIronic�
ironic-api�
ironic-common�ironic-conductorN)r6r7r8)r2r3r4�packagesrrrrr5�sr5cs0eZdZdZddgZdd�Z�fdd�Z�ZS)	�RedHatIronic�openstack-selinuxzopenstack-ironic-discoverdz"openstack-ironic-discoverd-ramdiskcCsX|jd�}|dr"|jjd�dSdd�|dj�D�}x|D]}|jd|�q>WdS)	z& Capture baremetal introspection data z.openstack baremetal node list -f value -c UUIDZstatuszPFailed to fetch list of ironic node UUIDs, introspection data won't be collectedNcSsg|]}|j�r|�qSr)�strip)r�uuidrrrr�sz;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�t�j�t�fdd��jD��rd�jjd��jd��jd��jd��jdd��jd	d��jd
d��jr��j	d��j
d�r��j�dS)
Nc3s|]}�j|�VqdS)N)Zis_installed)rr)r+rr�	<genexpr>�sz%RedHatIronic.setup.<locals>.<genexpr>z/etc/ironic-discoverd/*z/etc/ironic-discoverd/z/var/lib/ironic-discoverd/z/var/log/ironic-discoverd/zopenstack-ironic-discoverd)Zunitsz"openstack-ironic-discoverd-dnsmasqz"openstack-ironic-inspector-dnsmasqz&openstack baremetal introspection listr
)�superr-r'�discoverd_packagesr"�appendr#Zadd_journalr(r%r$r@)r+)�	__class__)r+rr-�s





zRedHatIronic.setup)r;)r2r3r4r9rCr@r-�
__classcell__rr)rErr:�s
r:)	rZsos.report.pluginsrrrrrr5r:rrrr�<module>s


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