관리-도구
편집 파일: playbook_executor.cpython-39.pyc
a �)g�: � @ s� d dl mZmZmZ eZd dlZd dlmZ d dlm Z d dlmZm Z d dlmZ d dlmZ d dlmZmZmZ d d lmZ d d lmZ d dlmZ d dlmZ d d lmZm Z d dl!m"Z" d dl#m$Z$ d dl%m&Z& e&� Z'G dd� d�Z(dS )� )�absolute_import�division�print_functionN)� constants)�context)�TaskQueueManager�AnsibleEndPlay)�to_text)�boolean)� become_loader�connection_loader�shell_loader)�Playbook)�Templar)� pct_to_int)�AnsibleCollectionConfig)�_get_collection_name_from_path�_get_collection_playbook_path)� makedirs_safe)�set_default_transport)�Displayc @ s0 e Zd ZdZdd� Zdd� Zdd� Zdd � Zd S )�PlaybookExecutorzw This is the primary class for executing playbooks, and thus the basis for bin/ansible-playbook operation. c C s� || _ || _|| _|| _|| _t� | _tj� d�sVtj� d�sVtj� d�sVtj� d�r^d | _ nt|||| jtj� d�d�| _ t� d S )NZ listhostsZ listtasksZlisttags�syntax�forks)� inventory�variable_manager�loader� passwordsr ) � _playbooks� _inventory�_variable_manager�_loaderr �dict�_unreachable_hostsr �CLIARGS�get�_tqmr r )�selfZ playbooksr r r r � r( �F/usr/lib/python3.9/site-packages/ansible/executor/playbook_executor.py�__init__2 s( � � �zPlaybookExecutor.__init__c $ C s� d}g }i }�zbt tjdd�� t tjdd�� t tjdd�� | jD �]�}t|�}|durn|d }|d }n|}t|�}|r�t� d� |�� |t_ndt_t j|| j| jd�}| jdu r�d |i}g |d <