
    <#(i                        d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZ d dlZd dl	m
Z
 d dl	mZmZ d dlmZ d dlmZ dd	lmZ dd
lmZ ddlmZmZmZ ddl
mZmZ ddlmZ  ej        e          ZdZ d Z! ej"        eddi           ej#        ddej$                  ej%        d                                     Z&d Z'd Z(d Z)d Z*d Z+d Z,d Z-d Z.dS )    N)pformat)NullHandler)options)parse_command_lineparse_config_file)enable_pretty_logging)CeleryCommand   )Flower)settings)abs_pathprepend_url	strtobool)DEFAULT_CONFIG_FILEdefault_options)validate_auth_optionFLOWER_c                 d    t                               d|            t          j        d           d S )Nz%s detected, shutting downr   )loggerinfosysexit)signum_s     N/var/www/html/auto_sub_bot/venv/lib/python3.11/site-packages/flower/command.pysigterm_handlerr      s(    
KK,f555HQKKKKK    ignore_unknown_optionsT)clscontext_settingstornado_argv)nargstypec                    t          | |           t                       t          t          j        d         |           t                       t                       | j        j        }t          d|t          dt          }t          j        |j                   t          j        t          j        t"                     | j        j        st'          |dt          v            	 |                                 dS # t*          t,          f$ r Y dS w xY w)zAWeb based tool for monitoring and administrating Celery clusters.r   )cappr   ssl_optionsN )-warn_about_celery_args_used_in_flower_commandapply_env_optionsapply_optionsr   argvextract_settingssetup_loggingobjappr   r   r   atexitregisterstopsignalSIGTERMr   quietprint_bannerstartKeyboardInterrupt
SystemExit)ctxr!   r0   
flower_apps       r   flowerr=       s     2#|DDD#(1+|,,,OOO
'+C>S'>>X>>J
OJO$$$
M&./2227= 5S-83444z*   s   !C7 7DDc                  f   t          t          t          j                  } | D ]}|                    t
          dd                                          }t          j        |         }	 t          j        |         n6# t          $ r) t          j        |                    dd                   Y nw xY wj
        r"fd|                    d          D             }n@j        t          u rt          t          |                    }n                    |          }t          t          ||           dS )z2apply options passed through environment variables r
   r   -c                 :    g | ]}                     |          S r(   )r$   ).0ioptions     r   
<listcomp>z%apply_env_options.<locals>.<listcomp>I   s#    >>>V[[^^>>>r   ,N)filteris_flower_envvarosenvironreplaceENV_VAR_PREFIXlowerr   _optionsKeyErrormultiplesplitr$   boolr   setattr)env_optionsenv_var_namenamevaluerD   s       @r   r*   r*   >   s&   )2:66K# & &##NB::@@BB
<(	>%d+FF 	> 	> 	>%dll3&<&<=FFF	>? 	+>>>>U[[-=-=>>>EE{d""Yu--..E**u%%%%& &s   'A::0B-,B-c                    t          t          t          |                    }t          | g|z              	 t	          t
          j                            t          j	                  d           t          | g|z              dS # t          $ r7 t
          j                            t          j	                  t          k    r Y dS w xY w)z3apply options passed through the configuration fileF)finalN)listrG   is_flower_optionr   r   rI   pathabspathr   confIOErrorbasenamer   )	prog_namer,   s     r   r+   r+   R   s    '..//D	{T)***"'//',77uEEEEI;-.....   7GL))-@@@ A@@s   AB =CCc                     d | j         j        j        D             }g }|D ]4}|                    d          \  }}}||v r|                    |           5|rt
                              d|           d S d S )Nc                 &    g | ]}|j         D ]}|S r(   )opts)rB   paramrD   s      r   rE   zAwarn_about_celery_args_used_in_flower_command.<locals>.<listcomp>`   s)    ]]]RWR\]]f]]]]r   =zYou have incorrectly specified the following celery arguments after flower command: %s. Please specify them after celery command instead following this template: celery [celery args] flower [flower args].)parentcommandparams	partitionappendr   warning)r;   flower_argscelery_optionsincorrectly_used_argsargarg_namer   s          r   r)   r)   _   s    ]]#**<*C]]]N 3 3s++!Q~%%!((222 
9 ;P		
 	
 	
 	
 	

 
r   c                     t           j        r,t           j        dk    rdt           _        t                       d S t          j        d                              t                                 dt          j        d          _        d S )Nr   debugztornado.accessF)r   rs   loggingr   	getLogger
addHandlerr   	propagater(   r   r   r.   r.   q   so    } >F22!*++66{}}EEE8=*++555r   c                     t           j        t          d<   t           j        rt           j        t          d<   t           j        r2dD ]/} t          t          |          t           j                  t          | <   0t           j        rt           j        pt          j	        
                    d          t           j        pt          j	        
                    d          t           j        pt          j	        
                    d          dt          d<   t           j        rt           j        rzt          t!          t           j                  t!          t           j                  	          t          d
<   t           j        r't!          t           j                  t          d
         d<   t           j        rTt%          t           j                  s=t&                              dt           j                   t+          j        d           d S d S d S )Nrs   cookie_secret)	login_urlstatic_url_prefixFLOWER_OAUTH2_KEYFLOWER_OAUTH2_SECRETFLOWER_OAUTH2_REDIRECT_URI)keysecretredirect_urioauth)certfilekeyfiler'   ca_certszInvalid '--auth' option: %sr
   )r   rs   r   ry   
url_prefixr   auth
oauth2_keyrI   rJ   getoauth2_secretoauth2_redirect_urir   r   dictr   r   r   r   errorr   r   rV   s    r   r-   r-   z   s   HW :$+$9! M6 	M 	MD($9KLLHTNN| 
%L8K)L)L+Urz~~>T/U/U#7g2:>>Jf;g;g
 
  MGO M"&9I0J0J/7/H/H#J #J #J 	M2:7;K2L2LH]#J/| 0>> 2GLAAA   r   c                     |                      d                              d          \  }}}|                    dd          }t          t          |          S )Nr@   rf   r   )lstriprj   rK   hasattrr   )rp   rV   r   s      r   r[   r[      sH    C**3//JD!Q<<S!!D7D!!!r   c                     |                      t                    o4| t          t                    d                                          t          v S )N)
startswithrL   lenrM   r   r   s    r   rH   rH      sB    ??>** >S  !!"((**o=>r   c           	         t           j        sXt           j        rdt           j         d}nd}t                              d|rdndt           j        pdt           j        |           n%t                              dt           j                   t                              d|                                                                            t                              dt          t          | j                                                                       t                              d	t          t                               d S )
N/r?   zVisit me at http%s://%s:%s%ssz0.0.0.0z!Visit me via unix socket file: %sz
Broker: %szRegistered tasks: 
%szSettings: %s)r   unix_socketr   r   r   addressport
connectionas_urir   sortedtaskskeysrs   r   )r0   ssl
prefix_strs      r   r7   r7      s    N 	2W/222JJJ*3,>CCBO(y',	
 	
 	
 	
 	79LMMM
KKcnn..5577888
KK sy~~''(())   LL!2!233333r   )/rI   r   r1   r4   rt   pprintr   r   clicktornado.optionsr   r   r   tornado.logr   celery.bin.baser	   r0   r   urlsr   utilsr   r   r   r   r   
views.authr   ru   __name__r   rL   r   rh   argumentUNPROCESSEDpass_contextr=   r*   r+   r)   r.   r-   r[   rH   r7   r(   r   r   <module>r      s0   				 



                 # # # # # # A A A A A A A A - - - - - - ) ) ) ) ) )             3 3 3 3 3 3 3 3 3 3 9 9 9 9 9 9 9 9 , , , , , ,		8	$	$  
 =+T!   bu/@AAA   BA	 0& & &(
 
 

 
 
$> > >  8" " "> > >
4 4 4 4 4r   