File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/__pycache__/ansible.cpython-310.pyc
o
�N�g� � @ s` d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ dZ e �
e�Zdd� Z
d
dd �ZdS )� N)�CommandExecutionErrorZansiblec C s t jj�d�r tS dS )Nzansible-inventory)Fz"Install `ansible` to use inventory)�salt�utils�path�which�__virtualname__� r r �F/opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/ansible.py�__virtual__ s r
�/etc/ansible/hostsFc C s� t j�| �s
td| � ���t j�| �std��g }|r |�d� |r'|�d� tjjj d�
| d�|��ddid d
�}|rCtjj
�|�S z
tjj�tjj
�|��W S ty^ td|� ���w )zZ
Return the targets from the ansible inventory_file
Default: /etc/salt/roster
zInventory file not found: z/Path to inventory file must be an absolute pathz--exportz--yamlz!ansible-inventory -i {} --list {}� ZANSIBLE_DEPRECATION_WARNINGS�0F)�envZreset_system_localez Error processing the inventory: )�osr �isfiler �isabs�appendr �modulesZcmdmod�run�format�joinr ZstringutilsZto_str�json�loads�
ValueError)Z inventoryZyamlZexportZ extra_cmd�invr r r �targets s*
��r )r FF)�loggingr Zsalt.modules.cmdmodr Zsalt.utils.jsonZsalt.utils.pathZsalt.utils.stringutilsZsalt.exceptionsr r � getLogger�__name__�logr
r r r r r �<module> s