
    -_g                     ,    d dl mZmZ  G d dee      Zy)    )PluginRedHatPluginc                   2    e Zd ZdZdZdZdZdZdZdZ	dZ
d Zy	)
Etcda  The etcd plugin collects information from the etcd key-value store. It
    is primarily used by Kubernetes/OpenShift clusters and is often run inside
    a container within the cluster.

    Collections will default to executing within an `etcdctl` container, if one
    is present, and only execute on the host if such a container is not
    currently running. The `etcdctl` name preference is adopted from OpenShift
    Container Platform deployments.

    This plugin is written for etcd v3 and later.
    zetcd pluginetcd)r   )	containersystemservicescluster)/etc/etcd/etcd.conf)etcdctlr   c                 H   d }| j                   D ]  }| j                  |      s|} n | j                  ddi       | j                  ddg       | j	                  d|d       | j                  d|	       g d
}| j                  |D cg c]  }d| 	 c}|	       y c c}w )Nr   	etcd_confz/etc/etcd/caz/etc/etcd/*.keyz/var/lib/etcd/T)r   	recursivez	/etc/etcd)r   )versionzmember listz
alarm listzendpoint statuszendpoint healthzetcdctl )
containersget_container_by_nameadd_file_tagsadd_forbidden_pathadd_dir_listingadd_copy_specadd_cmd_output)selfetcd_conconsubcmdssubs        9/usr/lib/python3/dist-packages/sos/report/plugins/etcd.pysetupz
Etcd.setup%   s    ?? 	C))#.	
 	!;
 	 	!
 	
 	-'+ 	 	-;(;
 	)01#xu1 	 	
1s   	BN)__name__
__module____qualname____doc__
short_descplugin_namepackagesprofilesfilesr   r
   r        r   r   r      s1    
 JKH=H$E$JH 
r*   r   N)sos.report.pluginsr   r   r   r)   r*   r   <module>r,      s    46
6< 6
r*   