File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/pillar/__pycache__/hiera.cpython-310.pyc
o
�N�g; � @ s: d Z ddlZddlZddlZe�e�Zdd� Zdd� Z dS )z#
Use hiera data as a Pillar source
� Nc C s t jj�d�r dS dS )z+
Only return if hiera is installed
ZhieraF)�salt�utils�path�which� r r �E/opt/saltstack/salt/lib/python3.10/site-packages/salt/pillar/hiera.py�__virtual__ s r c C s| d|� �}t �� D ]\}}t|t�r|d|� d|� d�7 }q ztjj�td |��}W |S t y= t
�d|� i Y S w )z+
Execute hiera and return the data
z hiera -c � z='�'zcmd.runz,Hiera YAML data failed to parse from conf %s)Z
__grains__�items�
isinstance�strr r ZyamlZ safe_loadZ__salt__� Exception�log�critical)Z minion_idZpillarZconf�cmd�key�val�datar r r �
ext_pillar s
���r )
�__doc__�loggingZsalt.utils.pathr Zsalt.utils.yaml� getLogger�__name__r r r r r r r �<module> s