관리-도구
편집 파일: __init__.cpython-39.pyc
a �)g� � @ sv d dl mZmZmZ eZd dlZd dlZd dlZd dl Z d dl Z d dlZd dlZd dl Z d dlmZmZ d dlmZ d dlmZ d dlmZmZmZmZmZ d dlmZ d dlmZm Z d d l!m"Z" d d l#m$Z$ d dl%m&Z& d dl'm(Z(m)Z)m*Z* d d l+m,Z,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8m9Z9 d dl:m;Z; d dl<m=Z= e6� Z>G dd� de�Z?dS )� )�absolute_import�division�print_functionN)�ABC�abstractmethod)�Sequence)� constants)�AnsibleError�AnsibleConnectionFailure�AnsibleActionSkip�AnsibleActionFail�AnsibleAuthenticationFailure)� modify_module)�discover_interpreter�!InterpreterDiscoveryRequiredError)�ArgumentSpecValidator)�UnsupportedError)�_filter_non_json_lines)�binary_type�string_types� text_type)�to_bytes� to_native�to_text)�jsonify)�__version__)�resource_from_fqcr)�Display)�wrap_var�AnsibleUnsafeText)�remove_internal_keys)�get_versioned_doclinkc @ sp e Zd ZdZeg �Zdd� ZedPdd��ZdQdd�Z dRd d�Z dSdd �ZdTdd�ZdUdd�Z dVdd�Zdd� Zdd� ZdWdd�Zdd� ZdXdd�Zdd� Zd d!� Zd"d#� Zd$d%� ZdYd&d'�Zd(d)� ZdZd*d+�Zd,d-� Zd.d/� Zd[d1d2�Zd\d3d4�Zd]d5d6�Zd^d7d8�Z d_d9d:�Z!d`d;d<�Z"dad=d>�Z#dbd?d@�Z$dAdB� Z%dCdD� Z&dcdEdF�Z'dGdH� Z(dddJdK�Z)dedLdM�Z*dNdO� Z+dS )f� ActionBasez� This class is the base class for all action plugins, and defines code common to all actions. The base class handles the connection by putting/getting files and executing commands based on the current action in use. c C s^ || _ || _|| _|| _|| _|| _d| _d| _d| _d | _ d| _ g | _g | _t | _d | _d S )NFT)�_task�_connection� _play_context�_loader�_templar�_shared_loader_obj�_cleanup_remote_tmp�_supports_check_mode�_supports_async�_discovered_interpreter_key�_discovered_interpreter�_discovery_deprecation_warnings�_discovery_warnings�display�_display�_used_interpreter)�selfZtaskZ connectionZplay_context�loaderZtemplarZshared_loader_obj� r5 �C/usr/lib/python3.9/site-packages/ansible/plugins/action/__init__.py�__init__6 s zActionBase.__init__Nc C s� i }|durdg|d<