
    Vha                         d dl mZmZmZ eZdZdZd dlm	Z	m
Z
 	 d dlmZ d dlmZ d dlmZ  G d	 d
e      Zy# e$ r d dlmZmZ Y !w xY w)    )absolute_importdivisionprint_functionz
name: print_task
type: aggregate
short_description: Prints playbook task snippet to job output
description:
  - This plugin prints the currently executing playbook task to the job output.
version_added: 10.7.0
requirements:
  - enable in configuration
zf
ansible.cfg: >
    # Enable plugin
    [defaults]
    callbacks_enabled=community.general.print_task
)loaddump)CSafeDumper)CSafeLoader)
SafeDumper
SafeLoader)CallbackBasec                   D     e Zd ZdZdZdZdZdZ fdZd Z	d Z
d	 Z xZS )
CallbackModulezE
    This callback module tells you how long your plays ran for.
    g       @	aggregatezcommunity.general.print_taskTc                 8    t         t        |           d| _        y NF)superr   __init___printed_message)self	__class__s    q/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/community/general/plugins/callback/print_task.pyr   zCallbackModule.__init__0   s    nd,. %    c                     t        |d      rlt        t        |j                  j	                         g      t
              }t        |dt              }| j                  j                  d| d       d| _
        y y )N_ds)LoaderF)	sort_keysDumper
T)hasattrr   strr   copyr   r   r
   _displaydisplayr   )r   tasktask_snippet	task_yamls       r   _print_taskzCallbackModule._print_task4   s`    4TXX]]_$5 6zJL\U:NIMM!!Byk"45$(D!	  r   c                     d| _         y r   )r   )r   r$   is_conditionals      r   v2_playbook_on_task_startz(CallbackModule.v2_playbook_on_task_start;   s
     %r   c                 @    | j                   s| j                  |       y y )N)r   r'   )r   hostr$   s      r   v2_runner_on_startz!CallbackModule.v2_runner_on_start>   s    $$T" %r   )__name__
__module____qualname____doc__CALLBACK_VERSIONCALLBACK_TYPECALLBACK_NAMECALLBACK_NEEDS_ENABLEDr   r'   r*   r-   __classcell__)r   s   @r   r   r   &   s4     M2M!&)&#r   r   N)
__future__r   r   r   type__metaclass__DOCUMENTATIONEXAMPLESyamlr   r   r   r
   r	   r   ImportErroransible.plugins.callbackr   r    r   r   <module>r@      sY    C B	 ,.. 2#\ #  ,++,s   8 AA