File: //lib/python3/dist-packages/sos/report/plugins/__pycache__/openstack_keystone.cpython-310.pyc
o
([Qh� � @ s^ d dl Z d dlmZmZmZmZmZ G dd� de�ZG dd� deee�ZG dd� dee�Z dS ) � N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPlugin� PluginOptc @ sL e Zd ZdZdZdZedddd�gZdZd Z d
Z
dd� Zd
d� Zdd� Z
d S )�OpenStackKeystonezOpenStack Keystone�openstack_keystone)� openstack�openstack_controller�nopwTz!do not collect keystone passwords)�default�descz./var/lib/config-data/puppet-generated/keystoneN� c C s& | � dddd| jd | jd | jd | jd | jd | jd
| jd g� | �d�r7| � d
d| j� d�g� n| � dd| j� d�g� | �d�}|d | _|d dksY| �| j�s\d| _| � | j� dd� dD �}dd� dD �}t|�rxt|�s| j �
d� n
| �d� | �d� | �dd d!�� d S )"Nz'/etc/keystone/default_catalog.templatesz/etc/keystone/keystone.confz/etc/keystone/logging.confz/etc/keystone/policy.jsonz/etc/keystone/*.confz/etc/keystone/*.jsonz/etc/httpd/conf/�/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.confz/var/spool/cron/z/etc/my.cnf.d/tripleo.cnf�all_logsz/var/log/keystone/z /var/log/z*/keystone*z/var/log/keystone/*.logz*/keystone*.logzDcrudini --get /etc/keystone/keystone.conf identity domain_config_dir�output�statusr z/etc/keystone/domainsc S � g | ]}|t jv �qS � ��os�environ��.0�pr r �G/usr/lib/python3/dist-packages/sos/report/plugins/openstack_keystone.py�
<listcomp>D � z+OpenStackKeystone.setup.<locals>.<listcomp>)�OS_USERNAME�OS_PASSWORDc S r r r r r r r r G r )�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.zopenstack endpoint listzopenstack catalog list�
keystone_conf�keystone_log)z.*/etc/keystone/keystone.confz/var/log/keystone/keystone.log)
�
add_copy_spec�var_puppet_gen�
get_option� apachepkg�collect_cmd_output�domain_config_dir�
path_isdir�all�any�soslog�warning�add_cmd_output�
add_file_tags)�self�exec_out�vars_all�vars_anyr r r �setup sR �
���
�
�zOpenStackKeystone.setupc C s: | � d||� | � | jd ||� | � | jd ||� dS )z Apply regex substitution z/etc/keystone/*r N)�do_path_regex_subr% )r1 �regexp�substr r r �apply_regex_subW s ��z!OpenStackKeystone.apply_regex_subc C sh g d�}dg}d� |�}| �dd� |�� d�d� | �d|� d�d� | �| jdd� |�� d �d
� d S )N)�password�
qpid_password�rabbit_password�ssl_key_password�ldap_dns_password�neutron_admin_password�
host_password�admin_password�admin_token�ca_password�
transport_url�OIDCClientSecret�
connection�|z(^\s*(z)\s*(=\s*)?)(.*)z\1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z
\1*********\6z
)\s*=\s*)(.*)z
\1********)�joinr9 r6 r) )r1 �protect_keys�connection_keys�
join_con_keysr r r �postprocc s
�
��zOpenStackKeystone.postproc)�__name__�
__module__�__qualname__�
short_desc�plugin_name�profilesr �option_listr% r'