/usr/lib/python3/dist-packages/sos/collector/clusters/__pycache__
Edit: /usr/lib/python3/dist-packages/sos/collector/clusters/__pycache__/saltstack.cpython-310.pyc (2721B)
o
G%@ip @ s4 d dl Z d dlmZ d dlmZ G dd deZdS ) N)quote)Clusterc @ sl e Zd ZdZdZdZdgZdZg dZdZ dZ
d ed
efddZ
d
ed
efddZd
efddZdd ZdS ) saltstackzh
The saltstack cluster profile is intended to be used on saltstack
clusters (Salt Project).
Saltstack)zsalt-master
saltmasterT))compound z+Filter node list to those matching compound)globr z/Filter node list to those matching glob pattern)grainr z-Filter node list to those with matching grain)minion_id_unresolvableFz\Returns the FQDN grain of each minion in the node list when the minion ID is not a hostname.) nodegroupr z,Filter node list to those matching nodegroup)pillarr z.Filter node list to those with matching pillar)subnetr z#Filter node list to those in subnetFz#salt-run --out=pprint manage.statusoutputreturnc C s6 g }t |dd}| D ] \}}|| q|S )N'")jsonloadsreplaceitemsextend)selfr nodessalt_json_output_value r B/usr/lib/python3/dist-packages/sos/collector/clusters/saltstack.py_parse_manage_status( s
zsaltstack._parse_manage_status
manage_statusc C sn g }| D ].\}}|dkr| d| d || q|D ]}d| d}|| |d qq|S )NdownzNode(s) z are status down.zsalt --out=newline_values_only z grains.get fqdnr )r log_warnr appendexec_primary_cmdstrip)r r hostnamesstatusminionsminionnode_cmdr r r _get_hostnames_from_grain/ s
z#saltstack._get_hostnames_from_grainc C sX | | j}|d dkrtd| dr%t|d dd}| |S | |d S )Nr' r z-Node enumeration did not return usable outputr r r r ) r$ r* Exception
get_optionr r r r+ r )r resr' r r r
_get_nodes@ s
zsaltstack._get_nodesc C s^ | j D ]'}|d dkr*| |d }|r*| jdt| d|d 7 _ | S q| S )Nr r z tgt=z
tgt_type=)option_listr- r* r r/ )r optionoptr r r get_nodesI s
" zsaltstack.get_nodesN)__name__
__module____qualname____doc__cluster_namepackagessos_pluginsstrict_node_listr0 targetedr* strlistr dictr+ r/ r3 r r r r r s
r )r shlexr sos.collector.clustersr r r r r r
s