Your IP : 216.73.216.172


Current Path : /lib/python3/dist-packages/sos/report/plugins/__pycache__/
Upload File :
Current File : //lib/python3/dist-packages/sos/report/plugins/__pycache__/openstack_nova.cpython-38.pyc

U

-�_g#�@sbddlZddlZddlmZmZmZmZGdd�de�ZGdd�deee�ZGdd�dee�Z	dS)	�N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc@s@eZdZdZdZdZdZdZdZdZ	dd	�Z
d
d�Zdd
�ZdS)�
OpenStackNovazOpenStack NovaZopenstack_nova)Z	openstackZopenstack_controllerZopenstack_computeZopenstack_edpm)�
.*nova_apiz*/var/lib/config-data/puppet-generated/novazopenstack-nova-api.serviceNcs^��d�}���j�s|�rbd}|r2d�jd}�jd|ddd��jd|d	d
d��jd|ddd��jd
|ddd�dd�dD�}dd�dD�}t|�r�t|�sĈj�d�n���d���d���d���d���d���d���d���	d�}|ddk�rb|d }|�
�d!d"�D]&}|��d#}d$|��}��|��q:��d%��r���
d&d'�j�d(�d)g�nVd&}	d*d+d,d-d.d/d0g}
|
D]}��
��|	|���q���
d'�j�d1�d'�j�d2�g�dd3d4d5g}dd6d7d8d9g�dd:�jd;�jd<�jd=�jd>�jd?gttt�d@�j��fdAd�|D���}
��
|
�dS)BNr�z
--config-dir z
/etc/nova/znova-manage z db versionznova-manage_db_version)Zsuggest_filenamez fixed listznova-manage_fixed_listz floating listznova-manage_floating_listznova-status z upgrade checkznova-status_upgrade_checkcSsg|]}|tjk�qS���os�environ��.0�pr	r	�C/usr/lib/python3/dist-packages/sos/report/plugins/openstack_nova.py�
<listcomp>?sz'OpenStackNova.setup.<locals>.<listcomp>)ZOS_USERNAMEZOS_PASSWORDcSsg|]}|tjk�qSr	r
r
r	r	rrBs)ZOS_TENANT_NAMEZOS_PROJECT_NAMEz}Not all environment variables set. Source the environment file for the user intended to connect to the OpenStack environment.zopenstack compute service listzopenstack flavor list --longzopenstack compute agent listznova version-listzopenstack hypervisor listzopenstack quota showzopenstack hypervisor stats showz$openstack server list --all-projectsZstatusr�output�����zopenstack server show �all_logsz/var/log/nova/z	/var/log/z*/nova*z%/var/lib/nova/instances/*/console.logz
nova-api.log*znova-compute.log*znova-conductor.log*znova-metadata-api.log*znova-manage.log*znova-placement-api.log*znova-scheduler.log*z*/nova*.logz*/placement*.log�_libvirt�	_metadata�
_placementz/etc/my.cnf.d/tripleo.cnfz/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.confZauthorized_keysz%/../memcached/etc/sysconfig/memcachedz/var/spool/cron/novaz_libvirt/etc/libvirt/z_libvirt/etc/nova/migration/z!_libvirt/var/lib/nova/.ssh/configz^((?!libvirt.+httpd).)*$cs(g|] }�D]}�j�|�|���qqSr	)�var_puppet_gen)rr�s��selfZsyspathsr	rr�s�)Zcontainer_existsZis_service_running�service_namerZadd_cmd_output�all�anyZsoslogZwarningZcollect_cmd_output�
splitlines�split�
get_option�
add_copy_spec�	apachepkgZ	path_join�list�filter�re�compile�match)rZin_containerZnova_configZvars_allZvars_any�resZnova_instances�instance�cmdZnovadirZnovalogsZnovalogZnpathsZspecsr	rr�setup!s�
�
�
�
�
�






�
��	��	�����
zOpenStackNova.setupcCs6|�d||�dD]}|�|j�|�d�||�qdS)z Apply regex substitution z/etc/nova/*)rrrrN)Zdo_path_regex_subr)rZregexpZsubstZnpathr	r	r�apply_regex_sub�s�zOpenStackNova.apply_regex_subcCslddddddddd	d
ddd
dddddg}ddg}d�|�}|�dd�|��d�d�|�d|�d�d�dS)NZldap_dns_passwordZneutron_admin_passwordZrabbit_passwordZ
qpid_passwordZpowervm_mgr_passwdZvirtual_power_host_passZxenapi_connection_passwordZpasswordZ
host_passwordZvnc_passwordZadmin_passwordZconnection_passwordZmemcache_secret_keyZ
s3_secret_keyZmetadata_proxy_shared_secretZ	fixed_keyZ
transport_urlZrbd_secret_uuidZ
connectionZsql_connection�|z(^\s*(z
)\s*=\s*)(.*)z\1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z
\1*********\6)�joinr/)rZprotect_keysZconnection_keysZ
join_con_keysr	r	r�postproc�s:�	
�
�zOpenStackNova.postproc)
�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesZ
containersrrr%r.r/r2r	r	r	rrsnrcs,eZdZdZdZdZdZ�fdd�Z�ZS)�
DebianNovaZapache2F)znova-api-ec2znova-api-metadataznova-api-os-computeznova-api-os-volumeznova-commonznova-computeznova-compute-kvmznova-compute-lxcznova-compute-qemuznova-compute-umlznova-compute-xcpznova-compute-xenznova-xcp-pluginsznova-consoleauthznova-networkznova-schedulerznova-volumeZnovnczpython-novazpython-novnczpython3-novaznova-api.servicecst���|�ddg�dS)Nz/etc/sudoers.d/nova_sudoersz,/usr/share/polkit-1/rules.d/60-libvirt.rules)�superr.r$�r��	__class__r	rr.�s

�zDebianNova.setup)	r3r4r5r%�nova�packagesrr.�
__classcell__r	r	r9rr6�s
r6cs(eZdZdZdZdZ�fdd�Z�ZS)�
RedHatNovaZhttpdF)zopenstack-selinuxc	sZt���|�dddddddg�|�d�r<|�d	d
g�n|�ddg�|�d
g�dS)Nz/etc/logrotate.d/openstack-novaz4/etc/polkit-1/localauthority/50-local.d/50-nova.pklaz/etc/sudoers.d/novaz#/etc/security/limits.d/91-nova.confz(/etc/sysconfig/openstack-nova-novncproxyz/var/lib/openstack/config/novaz(/var/lib/openstack/containers/nova*.jsonrz/var/log/httpd/placement*z/var/log/containers/nova/*z/var/log/httpd/placement*.logz/var/log/containers/nova/*.logz-/var/lib/openstack/config/nova/ssh-privatekey)r7r.r$r#Zadd_forbidden_pathr8r9r	rr.�s,
�

���zRedHatNova.setup)r3r4r5r%r;r<r.r=r	r	r9rr>�sr>)
rr(Zsos.report.pluginsrrrrrr6r>r	r	r	r�<module>s%