U
    -_g                     @   s,   d dl mZmZmZ G dd deeeZdS )    )PluginDebianPluginUbuntuPluginc                   @   s0   e Zd ZdZdZdZdZdZdd Zdd	 Z	d
S )OpenStackBarbicanz)OpenStack Barbican Secure storage serviceZopenstack_barbican)Z	openstackZopenstack_controller)zbarbican-commonzbarbican-keystone-listenerzbarbican-workerFc                 C   sB   |  d | dr |  d n
|  d | d | d d S )Nz/etc/barbican/Zall_logsz/var/log/barbican/*z/var/log/barbican/*.logz/etc/barbican/*.pemz/etc/barbican/alias/*)Zadd_copy_specZ
get_optionZadd_forbidden_path)self r   G/usr/lib/python3/dist-packages/sos/report/plugins/openstack_barbican.pysetup   s    



zOpenStackBarbican.setupc                 C   sR   dddg}|  ddd| dd d	d
g}d|}| dd| dd d S )NZpasswordZrabbit_passwordZmemcache_secret_keyz/etc/barbican/barbican.confz(^\s*(|z)\s*=\s*)(.*)z
\1********Ztransport_urlZsql_connectionz!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z\1*********\6)Zdo_file_subjoinZdo_path_regex_sub)r   Zprotect_keysZconnection_keysZjoin_con_keysr   r   r   postproc'   s       

zOpenStackBarbican.postprocN)
__name__
__module____qualname__Z
short_descZplugin_nameZprofilesZpackagesZrequires_rootr	   r   r   r   r   r   r      s   r   N)Zsos.report.pluginsr   r   r   r   r   r   r   r   <module>   s   