Current File : //usr/lib/python3/dist-packages/sos/report/plugins/__pycache__/openstack_placement.cpython-312.pyc
�

-�_g��l�ddlZddlmZmZmZmZGd�de�ZGd�deee�ZGd�dee�Zy)	�N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc�:�eZdZdZdZdZdZdZdZdZ	d�Z
d	�Zd
�Zy)�OpenStackPlacementzOpenStack Placement�openstack_placement)�	openstack�openstack_controller)�.*placement_apiz//var/lib/config-data/puppet-generated/placementzopenstack-placement-apiNc
��|jd�}|j|j�s|�rd}|rd|jzdz}|j	d|zdzd��d	D�cgc]}|t
jv��}}d
D�cgc]}|t
jv��}}t|�rt|�s|jjd�nr|jd�}|d
dk(rY|d}|j�ddD]>}|j�d}	gd�}
|j	|
D�cgc]
}d|�d|	����c}��@|jd�r$|jdddd|j �d�g�n#|jdddd|j �d�g�|jd|jdz|jd z|jd!z|jd"z|jd#zg�ycc}wcc}wcc}w)$Nr�z
--config-dir z/etc/placement/zplacement-manage z db versionzplacement-manage_db_version)�suggest_filename)�OS_USERNAME�OS_PASSWORD)�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 resource provider list�statusr�output�����)�	inventory�trait�	aggregatezopenstack resource provider z list �all_logsz/var/log/placement/z/var/log/containers/placement/z(/var/log/containers/httpd/placement-api/z	/var/log/z*/placement*z/var/log/placement/*.logz#/var/log/containers/placement/*.logz,/var/log/containers/httpd/placement-api/*logz*/placement*.logz/etc/my.cnf.d/tripleo.cnfz/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.conf)�container_exists�is_service_running�service_name�var_puppet_gen�add_cmd_output�os�environ�all�any�soslog�warning�collect_cmd_output�
splitlines�split�
get_option�
add_copy_spec�	apachepkg)�self�in_container�placement_config�p�vars_all�vars_any�res�resource_provider_list�provider�res_provider�sub_cmds�sub_cmds            �H/usr/lib/python3/dist-packages/sos/report/plugins/openstack_placement.py�setupzOpenStackPlacement.setupsY��
�,�,�->�?���"�"�4�#4�#4�5��!���#2�T�5H�5H�#H� 1�$2� ����#�&6�6��F�!>�
 �
�
26�7�A��R�Z�Z��7�H�7�2=�>�A��R�Z�Z��>�H�>���M�c�(�m����#�#�%3�4�
�-�-�6����x�=�A�%�-0��]�*�$:�$E�$E�$G��"�$M���'/�~�~�'7��':��$��
�+�+�,4�-�!(�;�7�)�6�+�n�.�-����?�?�:�&����%�0�:��D�N�N�+�<�8�	 �
�
���*�5�>��D�N�N�+�+;�<�	 �
�	
�������"3�3����"=�=����"4�4����"6�6����"D�D�

�	��]7��>��,-s�#G2�G7�)G<
c�j�|jd||�|j|jdz||�y)z Apply regex substitution z/etc/placement/*N)�do_path_regex_subr )r.�regexp�substs   r:�apply_regex_subz"OpenStackPlacement.apply_regex_subcs7�����1�6�5�A�������"4�4��E�	
�c��gd�}gd�}dj|�}|jddj|��d�d�|jd|�d�d�y)	N)�password�memcache_secret_key�
NOVA_API_PASS�PLACEMENT_PASS)�database_connection�slave_connection�
connection�|z(^\s*(z
)\s*=\s*)(.*)z\1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z
\1*********\6)�joinr@)r.�protect_keys�connection_keys�
join_con_keyss    r:�postproczOpenStackPlacement.postprocksg��
��
������1�
�����c�h�h�|�,�-�]�;��	
�	
����m�_�$E�F��	
rA)
�__name__�
__module__�__qualname__�
short_desc�plugin_name�profiles�
containersr rr-r;r@rO�rAr:rrs6��&�J�'�K�4�H�%�J�F�N�,�L��I�G�R
�
rArc��eZdZdZdZy)�DebianPlacement�apache2)zplacement-commonz
placement-apizpython3-placementN�rPrQrRr-�packagesrWrAr:rYrY�s���I��HrArYc��eZdZdZdZy)�RedHatPlacement�httpd)zopenstack-selinuxNr[rWrAr:r^r^�s���I�%�HrAr^)	r"�sos.report.pluginsrrrrrrYr^rWrAr:�<module>ras?��
�O�O�r
��r
�j�(�,���&�(�,�&rA