o
    *b                     @   sL   d dl mZmZmZ G dd deZG dd deeZG dd deeZdS )	    )PluginRedHatPluginUbuntuPluginc                   @   s,   e Zd ZdZdZdZdZdd Zdd Zd	S )
OpenStackDesignatezOpenstack DesignateZopenstack_designate)Z	openstackZopenstack_controllerz//var/lib/config-data/puppet-generated/designatec                 C   s   | j d| ddd | d| jd | jd g | dr&| d	d
g n| ddg g d}|  dd |D  d}| |}|d dkr`|d  D ]}| d }| j d| dd qNd S d S )Nz6designate-manage pool generate_file --file /dev/stdoutz.*designate_centralz&openstack_designate_current_pools.yaml)	containerZsuggest_filename/etc/designate/*z/etc/designate/designate.confz/etc/designate/pools.yamlZall_logsz/var/log/designate/*z/var/log/containers/designate/*z/var/log/designate/*.logz#/var/log/containers/designate/*.log)zdns service listzdns quota listzptr record listztld listz<tsigkey list --column name --column algorithm --column scopezzone blacklist listzzone export listzzone import listz	zone listzzone transfer accept listzzone transfer request listc                 S   s   g | ]}d | qS )zopenstack %s --all-projects ).0subr   r   H/usr/lib/python3/dist-packages/sos/report/plugins/openstack_designate.py
<listcomp>@   s    z,OpenStackDesignate.setup.<locals>.<listcomp>z"openstack zone list -f value -c idstatusr   outputz*openstack recordset list --all-projects %sZ	recordset)Zsubdir)Zadd_cmd_outputZget_container_by_nameZadd_copy_specvar_puppet_genZ
get_optionZexec_cmd
splitlinessplit)selfZsubcmdscmdretZzoner   r   r   setup   sD   


zOpenStackDesignate.setupc                 C   s<   g d}dd | }| d|d | | jd |d d S )N)ZpasswordZ
connectionZtransport_urlZadmin_passwordZssl_key_passwordZssl_client_key_passwordZmemcache_secret_keyz((?m)^\s*(%s)\s*=\s*)(.*)|r   z\1*********)joinZdo_path_regex_subr   )r   Zprotect_keysZregexpr   r   r   postprocN   s   zOpenStackDesignate.postprocN)	__name__
__module____qualname__Z
short_descZplugin_nameZprofilesr   r   r   r   r   r   r   r      s    9r   c                   @      e Zd ZdZdS )RedHatdesignate)zopenstack-selinuxNr   r   r   Zpackagesr   r   r   r   r   ]       r   c                   @   r   )Ubuntudesignate)zdesignate-commonNr   r   r   r   r   r    b   r   r    N)Zsos.report.pluginsr   r   r   r   r   r    r   r   r   r   <module>   s   Q