
    -_g	                     <    d dl Z d dlZd dlmZmZ  G d dee      Zy)    N)PluginIndependentPluginc                   .    e Zd ZdZdZdZdZd Zd Zd Z	y)	
SaltMasterzSalt Master
saltmaster)sysmgmt)zsalt-masterzsalt-apic                     | j                  d      r| j                  d       n| j                  d       | j                  d       | j                  d       | j                          | j	                  g dd       y )	Nall_logsz/var/log/saltz/var/log/salt/masterz	/etc/saltz/etc/salt/pki/*/*.pem)zsalt-master --versionz#systemctl --full status salt-masterz systemctl --full status salt-apizsalt-key --list allz"salt-run jobs.list_jobs --out=yamlz%salt-run manage.list_state --out=yamlz)salt-run manage.list_not_state --out=yamlz!salt-run manage.joined --out=yaml   )timeout)
get_optionadd_copy_specadd_forbidden_pathadd_pillar_rootsadd_cmd_output)selfs    ?/usr/lib/python3/dist-packages/sos/report/plugins/saltmaster.pysetupzSaltMaster.setup   sq    ??:&/56;' 78 	
  	 		    c                    t        j                   d      }d}| j                  |      r|j                  |       g }|D ]`  }t        |dd      5 }	 t	        j
                  |      j                  di       j                  dg       }|j                  |       ddd       b | j                  |       y# t        $ r g }Y :w xY w# 1 sw Y   xY w)	z+ Collect pilliar_roots of all salt configs z/etc/salt/master.d/*confz/etc/salt/masterrzUTF-8)encodingpillar_rootsbaseN)
globpath_existsappendopenyaml	safe_loadgetAttributeErrorextendr   )r   cfgsmain_cfgall_pillar_rootscfgfilecfg_pillar_rootss          r   r   zSaltMaster.add_pillar_roots,   s    yy34%H%KK! 		:Cc31 :T*t,00DFB % !''(89: :		: 	+,	 & *')$*: :s0   C5B3C3C>C CCC	c                 2    d}d}| j                  d||       y )Nz4(^\s+.*(pass|secret|(?<![A-z])key(?![A-z])).*:\ ).+$z\1******z/etc/salt/*)do_path_regex_sub)r   regexpsubsts      r   postproczSaltMaster.postprocB   s    H}fe<r   N)
__name__
__module____qualname__
short_descplugin_nameprofilespackagesr   r   r.    r   r   r   r      s%    JKH+H*-,=r   r   )r   r   sos.report.pluginsr   r   r   r6   r   r   <module>r8      s      87=* 7=r   