
                         t   d 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 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 ddlmZ ddlmZ ddlmZ ddlmZ ej*                   ej,                  ej.                  j0                  ej.                  j2                         G d dej4                                      Zy)z8Command for obtaining details about a given worker-pool.    )absolute_import)division)unicode_literals)base)connection_context)
exceptions)flags)resource_args)serverless_operations)export_printer)worker_pool_printer)concept_parsers)presentation_specs)resource_printerc                   F    e Zd ZdZdddZed        Zed        Zd Zd Z	y	)
Describe)Obtain details about a given worker-pool.z"          {description}
          a            To obtain details about a given worker-pool:

              $ {command} <worker-pool-name>

          To get those details in the YAML format:

              $ {command} <worker-pool-name> --format=yaml

          To get them in YAML format suited to export (omitting metadata
          specific to this deployment and status info):

              $ {command} <worker-pool-name> --format=export
          )DESCRIPTIONEXAMPLESc                    t        j                  |        t        j                  dt	        j
                         ddd      }t        j                  |g      j                  |        t        j                  t        j                  t        j                  d       | j                  j                  t        j                         t        j                  t         j"                  t         j$                  d       y )NWORKER_POOLzWorkerPool to describe.TF)requiredprefixes)hidden)r	   AddRegionArgr   ResourcePresentationSpecr
   GetV1WorkerPoolResourceSpecr   ConceptParserAddToParserr   RegisterFormatterr   WORKER_POOL_PRINTER_FORMATWorkerPoolPrinterdisplay_info	AddFormatr   EXPORT_PRINTER_FORMATExportPrinter)parserworker_pool_presentations     (lib/surface/run/worker_pools/describe.py
CommonArgszDescribe.CommonArgs<   s    	v1JJ113!  !!#;"<=II &&66--
 !!66 &&,,$$    c                 .    t         j                  |        y N)r   r*   )r'   s    r)   ArgszDescribe.ArgsX   s    r+   c                 |    t        j                  |t        j                  j                  | j                               S r-   )r   GetConnectionContextr	   ProductRUNReleaseTrack)selfargss     r)   _ConnectionContextzDescribe._ConnectionContext\   s/    22emm!2!2!4 r+   c                 p   | j                  |      }|j                  j                  j                         }t	        j
                  |       t        j                  |      5 }|j                  |      }ddd       s.t        j                  dj                  |j                              |S # 1 sw Y   ;xY w)r   NzCannot find worker pool [{}])r6   CONCEPTSworker_poolParser	   ValidateResourcer   ConnectGetWorkerPoolr   ArgumentErrorformatworkerpoolsId)r4   r5   conn_contextworker_pool_refclientr9   s         r)   RunzDescribe.Runa   s    **40Lmm//557O	?+		&	&|	4((9k 
5$$%C%J%J

'
'&) * * 
5	4s    B,,B5N)
__name__
__module____qualname____doc__detailed_helpstaticmethodr*   r.   r6   rD    r+   r)   r   r   #   sJ     2	-(  6    

r+   r   N)rH   
__future__r   r   r   googlecloudsdk.callioper   googlecloudsdk.command_lib.runr   r   r	   r
   r   'googlecloudsdk.command_lib.run.printersr   r   (googlecloudsdk.command_lib.util.conceptsr   r   googlecloudsdk.core.resourcer   UniverseCompatibleReleaseTracksr3   ALPHABETACommandr   rK   r+   r)   <module>rW      s    ? '  ' ( = 5 0 8 @ B G D G 9 D%%++T->->-C-CDFt|| F E Fr+   