U
    -_g
                     @   sR   d dl mZmZmZmZ G dd deZG dd deeeZG dd deeZdS )	    )PluginRedHatPluginDebianPluginUbuntuPluginc                   @   s4   e Zd ZdZdZdZdZdd Zdd Zd	d
 Z	dS )OpenStackSaharazOpenStack SaharaZopenstack_sahara)Z	openstackZopenstack_controllerz,/var/lib/config-data/puppet-generated/saharac                 C   s`   |  d| jd g | jdd | jdd | jdd | drP|  dg n|  dg d S )	Nz/etc/sahara/zopenstack-sahara-all)Zunitszopenstack-sahara-apizopenstack-sahara-engineZall_logsz/var/log/sahara/z/var/log/sahara/*.log)add_copy_specvar_puppet_genZadd_journalZ
get_optionself r   E/usr/lib/python3/dist-packages/sos/report/plugins/openstack_sahara.pysetup   s    
zOpenStackSahara.setupc                 C   s&   |  d|| |  | jd || dS )z Apply regex substitution z/etc/sahara/*N)Zdo_path_regex_subr   )r
   ZregexpZsubstr   r   r   apply_regex_sub'   s     zOpenStackSahara.apply_regex_subc                 C   sV   ddddddddg}d	g}d
 |}| dd
 | dd | d| dd d S )NZadmin_passwordZmemcache_secret_keyZpasswordZqpid_passwordZrabbit_passwordZssl_key_passwordZxenapi_connection_passwordZtransport_urlZ
connection|z(^\s*(z)\s*=\s*)(.*)z\1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z\1*********\6)joinr   )r
   Zprotect_keysZconnection_keysZjoin_con_keysr   r   r   postproc/   s&         

zOpenStackSahara.postprocN)
__name__
__module____qualname__
short_descZplugin_nameZprofilesr   r   r   r   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdZdS )DebianSaharaz;OpenStack Sahara information for Debian based distributions)z
sahara-apizsahara-commonzsahara-enginezpython-saharazpython3-saharaN)r   r   r   r   packagesr   r   r   r   r   C   s   r   c                       s$   e Zd ZdZdZ fddZ  ZS )RedHatSaharaz6OpenStack Sahara information for Red Hat distributions)zopenstack-selinuxc                    s   t    | d d S )Nz/etc/sudoers.d/sahara*)superr   r   r	   	__class__r   r   r   T   s    
zRedHatSahara.setup)r   r   r   r   r   r   __classcell__r   r   r   r   r   O   s   r   N)Zsos.report.pluginsr   r   r   r   r   r   r   r   r   r   r   <module>   s   5