HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/sos/report/plugins/__pycache__/openstack_database.cpython-310.pyc
o

i��d�	�@sBddlZddlmZmZmZGdd�de�ZGdd�dee�ZdS)�N)�Plugin�RedHatPlugin�	PluginOptc@sNeZdZdZdZdZedddd�eddd	d�gZgd
�Zdd�Z	ddd�Z
d
S)�OpenStackDatabasezOpenstack Database Information�openstack_database)�	openstack�openstack_controller�dumpFzDump select databases)�default�desc�dumpallzDump ALL databases)�cinder�glance�heat�ironic�keystone�mistralz(.*)?neutronznova.*cCs�ddg}d}|D]}|�|�}|rnq|rd|nd}|jd|d|d�|�d�s/|�d�rD|j|d	�}d
|}|j|dd|d
�dSdS)Nzgalera-bundle-.*�mysqlzclustercheck_%s�clustercheck�)�	container�timeout�suggest_filenamer	r�rzmysqldump --opt %szmysql_dump.sqlr)r�	sizelimitr)�get_container_by_name�add_cmd_output�
get_option�get_mysql_db_string)�self�_db_containers�cnamer�fname�db_dump�db_cmd�r%�G/usr/lib/python3/dist-packages/sos/report/plugins/openstack_database.py�setup's(�
�
�
��zOpenStackDatabase.setupNcsl|�d�rdSg}|jd|d�}|d��D]�t�fdd�|jD��r)|���qdd	�d
d�|D��S)Nrz--all-databaseszmysql -e "show databases;"r�outputcsg|]}t��|��qSr%)�re�match)�.0�reg��dbr%r&�
<listcomp>Hsz9OpenStackDatabase.get_mysql_db_string.<locals>.<listcomp>z-B � css�|]}|VqdS�Nr%)r+�dr%r%r&�	<genexpr>Ks�z8OpenStackDatabase.get_mysql_db_string.<locals>.<genexpr>)r�exec_cmd�
splitlines�any�	databases�append�join)rr�collect�dbsr%r-r&r?s

�z%OpenStackDatabase.get_mysql_db_stringr1)�__name__�
__module__�__qualname__�
short_desc�plugin_name�profilesr�option_listr7r'rr%r%r%r&rs�rc@seZdZdZdS)�RedHatOpenStackDatabase)zopenstack-selinuxN)r<r=r>�packagesr%r%r%r&rCNsrC)r)�sos.report.pluginsrrrrrCr%r%r%r&�<module>s
=