
    Vh^C                       d dl mZ dZdZ	 d dlmZ dZd dlmZm	Z	 d dl
mZmZ d dlmZ d d	lmZmZ d d
lmZ d dlZ e       Z G d d      Z G d d      Z eej4                  ej6                  ej8                  ej:                  ej<                  z   ej>                  ej<                        Z dZ! G d de      ZejD                  dk\  seseZyy# e$ r Y w xY w)    )annotationsa!  
name: dense
type: stdout
short_description: minimal stdout output
extends_documentation_fragment:
  - default_callback
description:
  - When in verbose mode it will act the same as the default callback.
author:
  - Dag Wieers (@dagwieers)
requirements:
  - set as stdout in configuration
F)OrderedDictT)binary_type	text_type)MutableMappingMutableSequence)CallbackModule)colorize	hostcolor)DisplayNc                  4    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
Zy)Cwhitebluezbright purpleredz	dark graypurplecyanz
bright redgreenyellowN)__name__
__module____qualname__COLOR_HIGHLIGHTCOLOR_VERBOSE
COLOR_WARNCOLOR_ERRORCOLOR_DEBUGCOLOR_DEPRECATE
COLOR_SKIPCOLOR_UNREACHABLECOLOR_OKCOLOR_CHANGED     l/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/community/general/plugins/callback/dense.pyr   r   I   s5    OM JKKOJ$HMr$   r   c                      e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*y))*vt100z[0;30mz[0;31mz[0;32mz[0;33mz[0;34mz[0;35mz[0;36mz[0;37mz[1;30mz[1;31mz[1;32mz[1;33mz[1;34mz[1;35mz[1;36mz[1;37mz[40mz[41mz[42mz[43mz[44mz[45mz[46mz[47mz[0;0mz[1mz[2mz[4mz[2Jz[2Kz[sz[uz7z8z[7hz[7lz[1Az[1Bz[1Cz[1DN)+r   r   r   blackdarkred	darkgreen
darkyellowdarkbluedarkmagentadarkcyangraydarkgrayr   r   r   r   magentar   r   blackbgredbggreenbgyellowbgbluebg	magentabgcyanbgwhitebgresetboldreverse	underlineclear	clearlinesaverestoresave_allrestore_alllinewrap
nolinewrapupdownrightleftr#   r$   r%   r'   r'   W   s    EGIJHKHDH
CEFDGDEGEGHFIFGEDGIEIDGHKHJ	BDEDr$   r'   )okchangedskippedignoredfailedunreachable)rL   rJ   rK   rN   rO   c                       e Zd ZdZdZdZdZ fdZd Zd Z	d Z
d	 Zd!d
Zd Zd Zd Zd Zd Zd Zd"dZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d  Z" xZ#S )#r	   zT
    This is the dense callback interface, where screen estate is still valued.
    g       @stdoutdensec                $   t         | _        t        rd| _        t	        t
        |       | _        | j                  j                          d| _        t               | _
        d| _        d| _        t        ddd      | _        d| _        t         j"                  j%                  t&        j(                  t&        j*                  z   t&        j,                  z          t         j"                  j/                          y t         j1                  d       d| _        y )NF)deltaendrN   failed_when_result
invocationstartstdout_linesr   )playhandlertaskfoozmThe 'dense' callback plugin requires OrderedDict which is not available in this version of python, disabling.T)display_displayHAS_ODdisabledsuperr	   	super_ref__init__removed_attributesr   hostskeepshown_titledictcounttypesysrQ   writer'   r:   r@   r?   flushwarning)self	__class__s    r%   rd   zCallbackModule.__init__   s      !DM">48DNNN##%
'D# %DJDI$D1aa8DJDI JJU[[5::5GHJJOO  L  M DMr$   c                    t         j                  j                  t        j                   t        j
                   dt        j                   t        j                          y )N
)rl   rQ   rm   r'   rA   r:   r@   r?   rp   s    r%   __del__zCallbackModule.__del__   s8    

EMM?5;;-r%**eooEVWXr$   c                t   |j                   j                         }|dk(  r|j                  j                  rd}|| j                  vrt        |      | j                  |<   nMt        j                  | j                  |   d         t        j                  |      k  r|| j                  |   d<   |j                  j                  dd       }|r|d   | j                  |   d<   | j                  |       |dv rDd	| _        | j                  j                  d
k(  r#| j                          | j                  ||       y y y )NrN   rM   )staterw   _ansible_delegated_varsansible_hostdelegate)rK   rN   rO   T   )_hostget_name_taskignore_errorsrf   ri   statesindex_resultget_display_progressrg   r_   	verbosity_display_task_banner_display_results)rp   resultstatusnamedelegated_varss        r%   	_add_hostzCallbackModule._add_host   s   ||$$& X&,,"<"<F tzz!#&1DJJt\\$**T*734v||F7KK(.DJJtW%  ++,EtL+9.+IDJJtZ( 	v&
 99DI}}&&!+))+%%ff5 , :r$   c                    | j                   D ]
  }||v s||=  |j                         D ]/  }t        ||   t        t        t
        t        f      s'||   r-||= 1 y N)re   copy
isinstancer   r   r   r   )rp   r   attrs      r%   _clean_resultszCallbackModule._clean_results   sb    ++ 	!Dv~4L	!
 KKM 	%D&,.+W`(abd|t	%r$   c                H    d|v r|d= | j                   j                  dk(  ryy y )N	exceptionr{   zQAn exception occurred during task execution. To see the full traceback, use -vvv.)r_   r   rp   r   s     r%   _handle_exceptionsz!CallbackModule._handle_exceptions   s1    & {#}}&&!+j ,	 !r$   c                4   t         j                  j                  t        j                  t        j
                  z   t        j                  z   t        j                  z   t        j                  z          t         j                  j                  | j                   d| j                  | j                      d       t         j                  j                  t        j
                         t         j                  j                          | j                  D ]  }t         j                  j                  d       | j                  |   j                  dd       r2t         j                  j                  | j                  |   d    d       t         j                  j                  t        | j                  |   d      |z   t        j
                  z          t         j                  j                           t         j                  j                  t        j                         y )N :rz   >rw   )rl   rQ   rm   r'   rA   r:   r?   rE   r=   rk   rj   rn   rf   r   colorsrD   )rp   r   r   s      r%   r   z CallbackModule._display_progress   s[   

4uFIYIYY\a\k\kkl

DII;a

499(='>a@A

%

 JJ 	DJJS!zz$##J5

  DJJt$4Z$@#A!CDJJVDJJt$4W$=>ESTJJ	 	

(r$   c                   | j                   s[d| _         t        j                  j                  t        j
                  t        j                  z   t        j                  z   t        j                  z          t        j                  j                  | j                   d| j                  | j                      d| j                  j                         j                                 t        j                  j                  t        j
                   t        j                   dt        j                   t        j                          t        j                  j                          d| _        y t        j                  j                  t        j
                  t        j                  z   t        j                  z          d| _        y )NTr   : rs   F)rh   rl   rQ   rm   r'   rA   r:   r?   r=   rk   rj   r\   r}   stripr@   rn   rg   rt   s    r%   r   z#CallbackModule._display_task_banner  s   #DJJU]]U[[85??JU__\]JJ		{!DJJtyy,A+B"TYYEWEWEYE_E_EaDbcdJJu{{m2ejj\%//IZ[\JJ 	 JJU]]U[[85??JK	r$   c                   | j                   j                  dk(  rm| j                  rat        j                  j                  t        j                   t        j                   dt        j                   t        j                          nOt        j                  j                  t        j                  t        j                  z   t        j                  z          d| _        | j                  |j                         d}|j                  j                  dk(  ry |dk(  ry |dk(  r| j                  |j                        }n5|dk(  r| j                  |j                        }n|d	k(  r|j                  d
   }|s| j!                  |j                        }|j                  j"                  r!d|j                  v r| j%                  |       nkt        j                  j                  t&        |   |z    d       |j                  j)                  dd       }|rZt        j                  j                  t        j                  |j*                  j-                         z    dt&        |    |d           n7t        j                  j                  |j*                  j-                                t        j                  j                  d| d       t        j                  j                  t        j                  t        j                  z   t        j                  z          t        j                  j/                          |dk(  r| j1                  |j                         y y )Nr   rs   F includerJ   rM   rN   rO   msgresultsr   rx   r   ry   rK   )r_   r   rg   rl   rQ   rm   r'   rA   r:   r@   r?   r   r   r~   actionr   _dump_resultsloop_process_itemsr   r   r|   r}   rn   _handle_warnings)rp   r   r   dumpr   s        r%   r   zCallbackModule._display_results  sS   ==""a'DIIJJu{{m2ejj\%//IZ[\JJU]]U[[85??JK	FNN+<<)+t^y **6>>:Dx**6>>:D}$>>%(D%%fnn5D<<fnn!<'JJv 78;<#^^//0I4PN

  EKK&,,2G2G2I$I#J!FSYNK[\jky\z[{!|}

  !6!6!89JJr$r]+JJU[[5::5GHJJY!!&..1 r$   c                F   | j                   j                  dk(  r}| j                  rqt        j                  j                  t        j                   t        j                   dt        j                   t        j                   t        j                          n`t        j                  j                  t        j                  t        j                  z   t        j                  z   t        j                  z          d| _        | j                  j                  t        dd             | j                  dxx   dz  cc<   || _        |j!                         j#                         }|sd}t        j                  j                  d| j                  d    d	|j%                                 t        j                  j                  t        j                   t        j                   dt        j                   t        j                          t        j                  j'                          y )
Nr   rs   F)r[   r\   rZ   r{   unnamedzPLAY r   )r_   r   rg   rl   rQ   rm   r'   rA   r:   r@   r?   r;   rj   updateri   rZ   r}   r   upperrn   )rp   rZ   r   s      r%   v2_playbook_on_play_startz(CallbackModule.v2_playbook_on_play_startF  s]   ==""a'DIIJJu{{m2ejj\%//IZ[`[e[eZfghJJU]]U[[85??JUZZWX 	

$qq12

6a	 }}$$&D

5F!3 4Btzz|nEF

EMM?5;;-r%**eooEVWX

r$   c                   | j                   j                  dk(  r}| j                  rqt        j                  j                  t        j                   t        j                   dt        j                   t        j                   t        j                          nOt        j                  j                  t        j                  t        j                  z   t        j                  z          d| _        d| _        t               | _        || _        d| _        |j#                         dk7  r| j$                  dxx   dz  cc<   t        j                  j                  | j                    d| j$                  | j                       d       t        j                  j                  t        j                         t        j                  j'                          y )	Nr   rs   Fr\   setupr{   r   .r_   r   rg   rl   rQ   rm   r'   rA   r:   r@   r?   r=   rh   r   rf   r\   rk   r}   rj   rn   )rp   r\   is_conditionals      r%   v2_playbook_on_task_startz(CallbackModule.v2_playbook_on_task_start[  s+   ==""a'DIIJJu{{m2ejj\%//IZ[`[j[jZklm JJU]]U[[85??JK 	  ]
		 ==?g%JJv!# 	

DII;a

499(='>a@A

%

r$   c                   | j                   j                  dk(  r}| j                  rqt        j                  j                  t        j                   t        j                   dt        j                   t        j                   t        j                          n`t        j                  j                  t        j                  t        j                  z   t        j                  z   t        j                  z          d| _        d| _        t               | _        || _        d| _        |j#                         dk7  r!| j$                  | j                   xx   dz  cc<   t        j                  j                  | j                    d| j$                  | j                       d       t        j                  j                  t        j                         t        j                  j'                          y )	Nr   rs   Fr[   r   r{   r   r   r   rp   r\   s     r%   !v2_playbook_on_handler_task_startz0CallbackModule.v2_playbook_on_handler_task_starts  s6   ==""a'DIIJJu{{m2ejj\%//IZ[`[j[jZklmJJU]]U[[85??JU__\] 	  ]
		 ==?g%JJtyy!Q&! 	

DII;a

499(='>a@A

%

r$   c                ~    t         j                  j                  d       t         j                  j                          y )Nzcleanup.)rl   rQ   rm   rn   r   s     r%   !v2_playbook_on_cleanup_task_startz0CallbackModule.v2_playbook_on_cleanup_task_start  s$    

$

r$   c                (    | j                  |d       y NrN   r   )rp   r   r   s      r%   v2_runner_on_failedz"CallbackModule.v2_runner_on_failed      vx(r$   c                    |j                   j                  dd      r| j                  |d       y | j                  |d       y NrK   FrJ   r   r   r   r   s     r%   v2_runner_on_okzCallbackModule.v2_runner_on_ok  2    >>i/NN69-NN64(r$   c                (    | j                  |d       y NrL   r   r   s     r%   v2_runner_on_skippedz#CallbackModule.v2_runner_on_skipped      vy)r$   c                (    | j                  |d       y )NrO   r   r   s     r%   v2_runner_on_unreachablez'CallbackModule.v2_runner_on_unreachable  s    v}-r$   c                     y r   r#   rp   included_files     r%   v2_runner_on_includez#CallbackModule.v2_runner_on_include      r$   c                    t         j                  j                  t        j                         | j
                  j                  ||       t         j                  j                  t        j                         y r   )rl   rQ   rm   r'   r;   rc   v2_runner_on_file_diffr:   )rp   r   diffs      r%   r   z%CallbackModule.v2_runner_on_file_diff  sB    

$--fd;

%r$   c                    t         j                  j                  t        j                         | j
                  j                  |       t         j                  j                  t        j                         y r   )rl   rQ   rm   r'   r;   rc   v2_on_file_diffr:   r   s     r%   r   zCallbackModule.v2_on_file_diff  s@    

$&&v.

%r$   c                &    | j                  |       y r   )v2_runner_item_on_okr   s     r%   v2_playbook_item_on_okz%CallbackModule.v2_playbook_item_on_ok  s    !!&)r$   c                    |j                   j                  dd      r| j                  |d       y | j                  |d       y r   r   r   s     r%   r   z#CallbackModule.v2_runner_item_on_ok  r   r$   c                &    | j                  |       y r   )v2_runner_item_on_failedr   s     r%   v2_playbook_item_on_failedz)CallbackModule.v2_playbook_item_on_failed  s    %%f-r$   c                (    | j                  |d       y r   r   r   s     r%   r   z'CallbackModule.v2_runner_item_on_failed  r   r$   c                &    | j                  |       y r   )v2_runner_item_on_skippedr   s     r%   v2_playbook_item_on_skippedz*CallbackModule.v2_playbook_item_on_skipped  s    &&v.r$   c                (    | j                  |d       y r   r   r   s     r%   r   z(CallbackModule.v2_runner_item_on_skipped  r   r$   c                :   | j                   j                  dk(  rm| j                  rat        j                  j                  t        j                   t        j                   dt        j                   t        j                          nOt        j                  j                  t        j                  t        j                  z   t        j                  z          d| _        t        j                  j                  t        j                  t        j                  z    d       t        j                  j                  t        j                   t        j                   dt        j                   t        j                          t        j                  j                          y )Nr   rs   FzNO MORE HOSTS LEFT)r_   r   rg   rl   rQ   rm   r'   rA   r:   r@   r?   r   r3   rn   rt   s    r%   !v2_playbook_on_no_hosts_remainingz0CallbackModule.v2_playbook_on_no_hosts_remaining  s    ==""a'DIIJJu{{m2ejj\%//IZ[\JJU]]U[[85??JK	

EKK%++566HIJ

EMM?5;;-r%**eooEVWX

r$   c                     y r   r#   r   s     r%   v2_playbook_on_includez%CallbackModule.v2_playbook_on_include  r   r$   c                   | j                   j                  dk(  rm| j                  rat        j                  j                  t        j                   t        j                   dt        j                   t        j                          nOt        j                  j                  t        j                  t        j                  z   t        j                  z          | j                   j                  dk(  ry t        j                  j                  t        j                  t        j                  z          t        j                  j                  d       t        j                  j                  t        j                   t        j                   dt        j                   t        j                          t        j                  j                          t        |j                  j!                               }|D ]  }|j#                  |      }| j                   j%                  t'        ||       dt)        d|d   t*        j,                         dt)        d|d   t*        j.                         dt)        d|d   t*        j0                         dt)        d	|d
   t*        j2                         dt)        d|d   t*        j,                         dt)        d|d   t*        j4                         d        y )Nr   rs   SUMMARYz : rJ   r   rK   rO   rN   failuresrescuedrM   T)screen_only)r_   r   rg   rl   rQ   rm   r'   rA   r:   r@   r?   r;   r=   rn   sorted	processedkeys	summarizer^   r   r
   r   r!   r"   r    r   r   )rp   statsrf   hts        r%   v2_playbook_on_statsz#CallbackModule.v2_playbook_on_stats  s1   ==""a'DIIJJu{{m2ejj\%//IZ[\JJU]]U[[85??JK ==""a'

eoo56

#

EMM?5;;-r%**eooEVWX

u++-. 	A"AMM!!Q?#3xagqzz'J&K1XV_abclamopo~o~M  MA  ABM1]+;Q=P=PQRRST\]eghisgtvw  wD  wD  UE  TF  FGIq|QZZ@A8IWXYbWcefeqeqCrBsu !	 " 	r$   r   )F)$r   r   r   __doc__CALLBACK_VERSIONCALLBACK_TYPECALLBACK_NAMErd   ru   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __classcell__)rq   s   @r%   r	   r	      s     MM$!LY6@
%k)*	)2V*0.
))*.&
&*).)/*	r$   r	      )#
__future__r   DOCUMENTATIONr`   collectionsr   ImportErroransible.module_utils.sixr   r   /ansible.module_utils.common._collections_compatr   r    ansible.plugins.callback.defaultr	   CallbackModule_defaultansible.utils.colorr
   r   ansible.utils.displayr   rl   r^   r   r'   ri   r*   r+   r.   r8   r   r)   r   r   r   r#   r$   r%   <module>r     s    # 
	'F < [ U 3 ) 

)F
 
. .b 
NNLL599$==		
 
?U+ Ur
 +N "(e  		s   C CC