%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python3.9/site-packages/ansible/executor/__pycache__/
Upload File :
Create Path :
Current File : //lib/python3.9/site-packages/ansible/executor/__pycache__/play_iterator.cpython-39.opt-1.pyc

a

�)g%y�@s�ddlmZmZmZeZddlZddlmZm	Z	ddl
mZddl
mZddlmZddlmZddlmZdd	lmZe�Zgd
�ZGdd�de�ZGd
d�de	�ZGdd�d�ZGdd�d�ZdS)�)�absolute_import�division�print_functionN)�IntEnum�IntFlag)�	constants)�AnsibleAssertionError)�boolean)�Block)�Task)�Display)�PlayIterator�IteratingStates�FailedStatesc@s$eZdZdZdZdZdZdZdZdS)rr�����N)	�__name__�
__module__�__qualname__�SETUP�TASKS�RESCUE�ALWAYS�HANDLERS�COMPLETE�rr�B/usr/lib/python3.9/site-packages/ansible/executor/play_iterator.pyr(src@s$eZdZdZdZdZdZdZdZdS)rrrrr��N)	rrr�NONErrrrrrrrrr1src@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�	HostStatecCsv|dd�|_g|_d|_d|_d|_d|_d|_tj|_	t
j|_d|_
d|_d|_d|_d|_d|_d|_d|_dS)NrTF)�_blocks�handlers�	cur_block�cur_regular_task�cur_rescue_task�cur_always_task�cur_handlers_taskrr�	run_staterr"�
fail_state�pre_flushing_run_state�update_handlers�
pending_setup�tasks_child_state�rescue_child_state�always_child_state�
did_rescue�did_start_at_task)�self�blocksrrr�__init__;s"zHostState.__init__cCs
d|jS)Nz
HostState(%r))r$�r5rrr�__repr__OszHostState.__repr__cCsDd|j|j|j|j|j|j|j|j|j|j	|j
|j|j|j
|jfS)NaHOST STATE: block=%d, task=%d, rescue=%d, always=%d, handlers=%d, run_state=%s, fail_state=%s, pre_flushing_run_state=%s, update_handlers=%s, pending_setup=%s, tasks child state? (%s), rescue child state? (%s), always child state? (%s), did rescue? %s, did start at task? %s)r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r8rrr�__str__Rs$��zHostState.__str__cCs6t|t�sdSdD]}t||�t||�krdSqdS)NF)r$r&r'r(r)r*r+r,r-r.r/r0r1r2T)�
isinstancer#�getattr)r5�other�attrrrr�__eq__hs
zHostState.__eq__cCs|j|jS�N)r$r&r8rrr�get_current_blockuszHostState.get_current_blockcCs�t|j�}|jdd�|_|j|_|j|_|j|_|j|_|j|_|j|_|j	|_	|j
|_
|j|_|j|_|j
|_
|j|_|jdur�|j��|_|jdur�|j��|_|jdur�|j��|_|Sr@)r#r$r%r&r'r(r)r*r+r,r-r.r/r3r4r0�copyr1r2)r5Z	new_staterrrrBxs*



zHostState.copyN)	rrrr7r9r:r?rArBrrrrr#:s
r#c@s�eZdZd4dd�Zdd�Zdd�Zd5dd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
edd�dd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zed&d'��Zeed(�d)d*�Zeedd+�d,d-�Zeedd.�d/d0�Zeedd1�d2d3�ZdS)6r
FcCsN||_g|_||_t|jd�}d|_t|d�}d|_d|_d|_i|_	|jj
sVdg|_
dD]$}	t|j|	d�}
|
durZ|
|j	|	<qZ|�|jj
�|jjdur�|jjdd�|_|g|_|�|�}|j�|�|��|_|j��D]2}|�|�}|��r�|j�|�|j�|���q�d	d
�|jjD�|_i|_d}
|j|jj|jjd�}t|�|_|D]�}|�|jt |jd��|j!du�rT|�sT|j"|d
d�\}}|j#t$j%k�r��q
|j|j!k�s�|j�r�t&�&|j|j!��s�|�'�|j!k�s�t&�&|�'�|j!��r�d
}
�q
|�|j|��q�|
�rTd
|j|j_(t$j)|j|j_#�qT|
�r>d|_!d|_*d|_+dS)N)�playF��block�gather_factszansible.builtin.gather_factszGathering Facts�always)Z
gather_subsetZgather_timeoutZ	fact_pathcSsg|]}|jD]}|�qqSrrD��.0�b�hrrr�
<listcomp>��z)PlayIterator.__init__.<locals>.<listcomp>)�order�r6T)�peekr),�_playr$�_variable_managerr
Zrun_oncer�actionZresolved_action�name�args�tagsr<�
set_loaderZ_loaderZ_included_conditionalZwhenrEZfilter_tagged_tasks�appendZ	get_tasksZ	all_tasks�compile�	has_tasks�extendr%�_host_statesZ	get_hosts�hostsrN�lenZ
batch_size�set_state_for_hostr#Z
start_at_task�get_next_task_for_hostr+rr�fnmatchZget_namer4rZend_playZcur_task)r5Z	inventoryrCZplay_contextZvariable_managerZall_varsZ
start_at_done�setup_blockZ
setup_task�option�valuerEZ	new_blockZstart_at_matchedZbatch�host�s�taskrrrr7�sl




(��zPlayIterator.__init__cCs0|j|jvr |�|jtgd��|j|j��S)NrO)rTr\r_r#rB�r5rerrr�get_host_state�szPlayIterator.get_host_statecCstjddd�dS)NzlPlayIterator.cache_block_tasks is now noop due to the changes in the way tasks are cached and is deprecated.�H�z�G@��version��displayZ
deprecated)r5rErrr�cache_block_tasks�s�zPlayIterator.cache_block_taskscCs�t�d|j�|�|�}d}|jtjkrBt�d|j�|dfS|j||d�\}}|sf|�|j|�t�d|j�t�d|�t�d|�||fS)Nz!getting the next task for host %sz$host %s is done iterating, returning�rez"done getting next task for host %sz ^ task is: %sz ^ state is: %s)	rn�debugrTrir+rr�_get_next_task_from_stater_)r5rerPrfrgrrrr`�s
z#PlayIterator.get_next_task_for_hostcCs:d}z|j|j}Wn"ty6tj|_|dfYS0|jtjk�r6|js�d|_tj	}|j
jduprt|j
jdd�}|dkr�|s�|dkr�t|j
jdd�s�|dkr�|r�|j
j�|ji��dd�s�|jd}|��r�t|j�dkr�|jd}nHd|_tj|_|j�s(|jd	7_d|_d|_d|_d|_d|_d|_�n�|jtjk�r,|j�rRd|_|j�r�|j|j|d
�\|_}|�|j��r�d|_|�|�n"|du�s�|jjtjk�r(d|_qnt|�|��r�tj|_n^|jt|j�k�r�tj |_nB|j|j}t!|t"��rt#|gd�|_tj|j_d}|jd	7_�n�|jtjk�r:|j�r�|j|j|d
�\|_}|�|j��rxd|_|�|�n"|du�s�|jjtjk�r6d|_qn�|j$t%j@t%jk�r�tj |_n||jt|j&�k�r�t|j&�dk�r�t%j'|_$tj |_d|_(nB|j&|j}t!|t"��r(t#|gd�|_tj|j_d}|jd	7_�n�|jtj k�rZ|j�r�|j|j|d
�\|_}|�|j��r�d|_|�|�n"|du�s�|jjtjk�rXd|_qn�|jt|j)�k�r|j$t%j'k�r�tj|_n@|jd	7_d|_d|_d|_tj|_d|_d|_d|_d|_(nB|j)|j}t!|t"��rJt#|gd�|_tj|j_d}|jd	7_n�|jtj*k�r|j+�r�|j,dd�|_,d|_+d|_-|j$t%j*@t%j*k�r�d|_+tj|_n`z|j,|j-}Wn,t�y�d}|j.|_d|_+Y�q(Yn 0|j-d	7_-|�/|��r��q(�q�n|jtjk�r(|dfS|r�q2q||fS)NTF)�strictZimplicitZexplicitZsmartZ_ansible_facts_gatheredrrrprO)0r$r&�
IndexErrorrrr+rr/�CZDEFAULT_GATHERINGrQrFr	rRZ_fact_cache�getrTrZr^rErr4r'r(r)r0r1r2rr�_check_failed_state�_set_failed_staterrr;r
r#r,r�rescuer"r3rGrr.r%r*r-Zis_host_notified)r5�staterergrEZ	gatheringZimpliedrbrrrrrs�����










z&PlayIterator._get_next_task_from_statecCs�|jtjkr(|jtjO_tj|_�nl|jtjkr�|jdurN|�|j�|_nH|jtjO_|j	|j
jrvtj|_n |j	|j
j
r�tj|_ntj|_n�|jtjkr�|jdur�|�|j�|_n0|jtjO_|j	|j
j
r�tj|_ntj|_n�|jtjk�r4|jdu�r|�|j�|_n|jtjO_tj|_n`|jtjk�r�|jtjO_d|_|j	|j
j�rrtj|_n"|j	|j
j
�r�tj|_ntj|_|S)NT)r+rrr,rrrr0rxr$r&ryrrGrr1r2rr.�r5rzrrrrx�sB









zPlayIterator._set_failed_statecCsV|�|�}t�d||f�|�|�}t�d|�|�|j|�|jj�|j�dS)Nz)marking host %s failed, current state: %sz^ failed state is now: %s)	rirnrqrxr_rTrQZ_removed_hostsrX�r5rerfrrr�mark_host_failed�s

zPlayIterator.mark_host_failedcst�fdd��j��D��S)Nc3s$|]\}}��|�r|dfVqdS)TN)rw)rIrerzr8rr�	<genexpr>rMz0PlayIterator.get_failed_hosts.<locals>.<genexpr>)�dictr\�itemsr8rr8r�get_failed_hostsszPlayIterator.get_failed_hostscCs"|durdS|jtjkr(|�|j�r(dS|jtjkrD|�|j�rDdS|jtjkrf|jt	j@t	jkrfdS|jt	j
kr�|jtjkr�|jt	j@dkr�dS|jtjkr�|jt	j@dkr�dS|jo�|jt	j@dkSnR|jtjk�r|�|j
��r|j|j}t|j�dk�r|jt	j@dk�rdSdSdS)NFTr)r+rrrwr1rr2rr,rr"r3rr0r$r&r^ry)r5rzr&rrrrws("z PlayIterator._check_failed_statecCs|�|�}|�|�Sr@)rirwr|rrr�	is_faileds
zPlayIterator.is_failedcCs|�|�|j��dSr@)�_clear_state_errors�get_state_for_hostrTrhrrr�clear_host_errors szPlayIterator.clear_host_errorsN)rz�returncCsRtj|_|jdur |�|j�n.|jdur8|�|j�n|jdurN|�|j�dSr@)rr"r,r0r�r1r2r{rrrr�#s


z PlayIterator._clear_state_errorscCsj|jtjkr"|jdur"|�|j�S|jtjkrD|jdurD|�|j�S|jtjkrf|jdurf|�|j�S|S)z_
        Finds the active state, recursively if necessary when there are child states.
        N)	r+rrr0�get_active_staterr1rr2r{rrrr�-szPlayIterator.get_active_statecCs`|jtjkr|��jrdS|jdur0|�|j�S|jdurF|�|j�S|jdur\|�|j�SdS)z�
        Given the current HostState state, determines if the current block, or any child blocks,
        are in rescue mode.
        TNF)	r+rrrAryr0�is_any_block_rescuingr1r2r{rrrr�9s


z"PlayIterator.is_any_block_rescuingcCstjddd�dS)NzlPlayIterator.get_original_task is now noop due to the changes in the way tasks are cached and is deprecated.rjrk)NNrm)r5rergrrr�get_original_taskHs
�zPlayIterator.get_original_taskcCs�|jtjkr|jtjks|s |S|jtjkr�|jrD|�|j|�|_nJ|j|j	�
�}|jd|j�}|j|jd�}||||_||j|j	<�n|jtj
k�r|jr�|�|j|�|_nJ|j|j	�
�}|jd|j�}|j|jd�}||||_||j|j	<n�|jtjk�rx|j�r,|�|j|�|_nJ|j|j	�
�}|jd|j�}|j|jd�}||||_||j|j	<n*|jtjk�r�dd�|D�|j|j|j�<|S)NcSsg|]}|jD]}|�qqSrrDrHrrrrLqrMz9PlayIterator._insert_tasks_into_state.<locals>.<listcomp>)r,rr"r+rrr0�_insert_tasks_into_stater$r&rBrEr'rr1ryr(rr2rGr)rr%r*)r5rz�	task_listZtarget_block�beforeZafterrrrr�Ps:z%PlayIterator._insert_tasks_into_statecCs |�|j|�|�|�|��dSr@)r_rTr�ri)r5rer�rrr�	add_tasksuszPlayIterator.add_taskscCs|jSr@�r\r8rrr�host_statesxszPlayIterator.host_states)�hostnamer�cCs
|j|Sr@r�)r5r�rrrr�|szPlayIterator.get_state_for_host)r�rzr�cCs(t|t�stdt|���||j|<dS)Nz-Expected state to be a HostState but was a %s)r;r#r�typer\)r5r�rzrrrr_s
zPlayIterator.set_state_for_host)r�r+r�cCs*t|t�stdt|���||j|_dS)Nz5Expected run_state to be a IteratingStates but was %s)r;rrr�r\r+)r5r�r+rrr�set_run_state_for_host�s
z#PlayIterator.set_run_state_for_host)r�r,r�cCs*t|t�stdt|���||j|_dS)Nz3Expected fail_state to be a FailedStates but was %s)r;rrr�r\r,)r5r�r,rrr�set_fail_state_for_host�s
z$PlayIterator.set_fail_state_for_host)F)F)rrrr7riror`rrrxr}r�rwr�r�r#r�r�r�r�r�r��propertyr��strr�r_rr�rr�rrrrr
�s0
V	
E)
%
r
)Z
__future__rrrr�Z
__metaclass__ra�enumrrZansiblerruZansible.errorsrZ)ansible.module_utils.parsing.convert_boolr	Zansible.playbook.blockr
Zansible.playbook.taskrZansible.utils.displayrrn�__all__rrr#r
rrrr�<module>s		V

Zerion Mini Shell 1.0