
                            S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJ	r	  SS	KJ
r
  SS
KJr  SSKJr  SSKJr  \R                   \R"                  " \R$                  R&                  \R$                  R(                  5       " S S\R*                  5      5       5       r\R"                  " \R$                  R,                  5       " S S\5      5       r\R                   \l         g)z'Command for listing available reivions.    )base)commands)connection_context)flags)	platforms)pretty_print)resource_args)serverless_operations)concept_parsers)presentation_specs)logc                   N    \ rS rSrSrSSS.r\S 5       r\S 5       rS r	S	 r
S
rg)List   List available revisions.z"          {description}
          zl          To list all revisions for the provided service:

              $ {command} --service=foo
         )DESCRIPTIONEXAMPLESc           	         [         R                  " S[        R                  " 5       SSSSS9n[        R
                  " U/5      R                  U5        [        R                  " U5        UR                  R                  SR                  [        R                  [        R                  S95        UR                  R!                  U R"                  5        g )Nz--namespacezNamespace to list revisions in.TF)requiredprefixeshiddenztable({ready_column},name:label=REVISION,active.yesno(yes="yes", no=""),service_name:label=SERVICE:sort=1,creation_timestamp.date("%Y-%m-%d %H:%M:%S %Z"):label=DEPLOYED:sort=2:reverse,author:label="DEPLOYED BY"):({alias}))ready_columnalias)r   ResourcePresentationSpecr	   GetNamespaceResourceSpecr   ConceptParserAddToParserr   AddServiceFlagdisplay_info	AddFormatformatr   READY_COLUMNr   SATISFIES_PZS_ALIAS
AddUriFunc_GetResourceUri)clsparsernamespace_presentations      !lib/surface/run/revisions/list.py
CommonArgsList.CommonArgs/   s     0HH..0) !!#9":;GGO 
 
!!	0 17%22.. 17 1
 ""3#6#67    c                 &    U R                  U5        g Nr*   r&   r'   s     r)   Args	List.ArgsN       NN6r,   c                 .    [        [        S U5      5      $ )a@  Filters out revisions that are worker pool revisions.

Per discussion with jmahood@, we want to make sure that all resources are
self-contained, so none of the describe/list commands should mix the
resource type.

Args:
  revisions: List of revisions to filter.

Returns:
  List of revisions that are service revisions.
c                     U R                   S L $ r.   )worker_pool_name)revs    r)   <lambda>1List._FilterWorkerPoolRevisions.<locals>.<lambda>_   s    3#7#74#?r,   )listfilter)self	revisionss     r)   _FilterWorkerPoolRevisionsList._FilterWorkerPoolRevisionsR   s     ?KLLr,   c           	   #   D  #    SnUR                   n[        R                  " U[        R                  R
                  U R                  5       5      nUR                  R                  R                  5       n[        R                  " U5       nU R                  UR                  5        [        R                  " 5       [        R                   :w  ae  SR#                  UR$                  5      n[&        R(                  R+                  SR#                  UR,                  UR$                  (       a  UOSS95        Ub  SR#                  U5      nU R/                  UR1                  XRUR2                  UR4                  5      5       H  nUv   M	     SSS5        g! , (       d  f       g= f7f)r   Nz in [{}]zFor cluster [{cluster}]{zone}: )clusterzonez serving.knative.dev/service = {})servicer   GetConnectionContextr   ProductRUNReleaseTrackCONCEPTS	namespaceParser
   ConnectSetCompleteApiEndpointendpointr   GetPlatformPLATFORM_MANAGEDr!   cluster_locationr   statusPrintcluster_namer>   ListRevisionslimit	page_size)	r<   argslabel_selectorservice_nameconn_contextnamespace_refclientlocation_msgr7   s	            r)   RunList.Runa   s?    N<<L%::emm!2!2!4L MM++113M		&	&|	4
!!,"7"78				 I$>$>	>!(()F)FG

,33$11%1%B%B\ 4 	
 
	!;BB<P00


TZZ#
 	 
5	4	4s   BF 	C=F	F 
FF  N)__name__
__module____qualname____firstlineno____doc__detailed_helpclassmethodr*   r1   r>   r_   __static_attributes__ra   r,   r)   r   r      sK     "		- 8 8<  Mr,   r   c                   (    \ rS rSrSr\S 5       rSrg)	AlphaList}   r   c                 &    U R                  U5        g r.   r/   r0   s     r)   r1   AlphaList.Args   r3   r,   ra   N)rb   rc   rd   re   rf   rh   r1   ri   ra   r,   r)   rk   rk   }   s    ! r,   rk   N)rf   googlecloudsdk.callioper   googlecloudsdk.command_lib.runr   r   r   r   r   r	   r
   (googlecloudsdk.command_lib.util.conceptsr   r   googlecloudsdk.corer   UniverseCompatibleReleaseTracksrH   BETAGAr   ALPHArk   ra   r,   r)   <module>rx      s    . ) 3 = 0 4 7 8 @ D G # D%%**D,=,=,@,@AY8== Y B Yx D%%++,  - LL	 r,   