File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/cli/__pycache__/run.cpython-310.pyc
o
�N�g? � @ sJ d dl Zd dlZd dlZd dlmZ d dlmZ G dd� dejj j
�ZdS )� N)�SaltClientError)�
check_userc @ s e Zd ZdZdd� ZdS )�SaltRunz&
Used to execute Salt runners
c C s� ddl }| �� | jj}|j�| j�}| jjr#|�� | � |j
jj� z�t
| jd �r�|jj�|�}z~|jdd�}t|t�rJd|v rJd|vrJ|d }t|t�r[d|v r[| � |d � n6t|t�r�d|�di �v r�| � |d d � W |jjj|| jjdd � W dS W |jjj|| jjdd � W dS W |jjj|| jjdd � W dS W |jjj|| jjdd � W dS |jjj|| jjdd � w W dS ty� } ztt|���d}~ww )
z"
Execute salt-run
r N�userT)Zfull_return�return�retcode�data)Z
stats_path�stop)Zsalt.runner�
parse_args�options�profiling_enabled�runnerZRunnerZconfig�docZ
print_docs�exit�defaultsZ exitcodes�EX_OKr �utilsZprofileZactivate_profile�run�
isinstance�dict�getZoutput_profileZprofiling_pathr �
SystemExit�str)�self�saltr r
Zpr�ret�exc� r �@/opt/saltstack/salt/lib/python3.10/site-packages/salt/cli/run.pyr
sV �
��
��
��
�
����zSaltRun.runN)�__name__�
__module__�__qualname__�__doc__r r r r r r s r )Zsalt.defaults.exitcodesr Zsalt.utils.parsersZsalt.utils.profileZsalt.exceptionsr Zsalt.utils.verifyr r �parsersZSaltRunOptionParserr r r r r �<module> s