
                             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r\R                   " S S	\R                  5      5       rg
)zfA group of commands used to retrieve information about proxy configuration from the Envoy config dump.    )
debug_util)base)	resources)istioctl_backend)
propertiesa  
    To retrieve the type cluster config dump for Pod instance pn.default.

    ${command} pn.default
              --type=cluster
              --project=projectId
              --membership=membershipId
              --location=us-central1
              --ouput=yaml
c                   6    \ rS rSrSrS\0r\S 5       rS r	Sr
g)ProxyConfig#   z?Retrieve a configuration summary for a given Envoy instance.
  EXAMPLESc                     [         R                  " U SSSS9  U R                  SSS9  [        R                  " SS/ S	QS
S9nUR                  U 5        U R                  SSS/SSS9  U R                  SSSS9  g )NFTz/Name of the membership to troubleshoot against.)pluralmembership_requiredmembership_helppod_name_namespacez=Pod to check against. Use in format of <pod-name[.Namespace]>)helpz--type)	bootstrapclusterclustersendpoint	endpointslistener	listenerslogrouteroutessecretsecretsa  Proxy configuration type to retrieve. 

  bootstrap            Retrieves bootstrap configuration for the Envoy in the specified pod 
 clusters/cluster     Retrieves cluster configuration for the Envoy in the specified pod 
 endpoints/endpoint   Retrieves endpoint configuration for the Envoy in the specified pod 
 listeners/listener   Retrieves listener configuration for the Envoy in the specified pod 
 log                  Retrieves logging levels of the Envoy in the specified pod 
 routes/route         Retrieves route configuration for the Envoy in the specified pod 
 secrets/secret       Retrieves secret configuration for the Envoy in the specified pod 
)requiredchoiceshelp_strz--outputjsonyamlzKReturn the detailed proxy config. The output format is either json or yaml.)r   r   r   z--fqdnzpFilter clusters by substring of Service FQDN field. If unspecified, all clusters will be included in the output")r   r   )r   AddMembershipResourceArgadd_argumentr   ChoiceArgumentAddToParser)parserproxy_config_types     6lib/surface/container/fleet/mesh/debug/proxy_config.pyArgsProxyConfig.Args)   s    && I	 L  
 ++
'%@ !!&)
    I	      c                 x   [         R                  " 5       n[        R                  " U5      n[         R                  " [
        R                  R                  R                  R                  5       SS9nU" SU[         R                  " SS0S9UR                  UR                  UR                  UR                  US9nU$ )Napply)account	operationzproxy-configGCLOUD_AUTH_PLUGINtrue)
extra_vars)commandcontextenvr(   r   output_formatfqdnstdin)r   IstioctlWrapperr   ContextGeneratorGetAuthTokenr   VALUEScorer/   GetGetEnvArgsForCommandtyper   outputr8   )selfargscommand_executorr5   	auth_credresponses         r)   RunProxyConfig.Runk   s    '779))$/G --!!&&..224I  11,f5
 ))22kkYYH Or,    N)__name__
__module____qualname____firstlineno____doc__r   detailed_helpstaticmethodr*   rH   __static_attributes__rJ   r,   r)   r	   r	   #   s)    x(-? ?Br,   r	   N)rO   &googlecloudsdk.api_lib.container.fleetr   googlecloudsdk.callioper   *googlecloudsdk.command_lib.container.fleetr   /googlecloudsdk.command_lib.container.fleet.meshr   googlecloudsdk.corer   r   DefaultUniverseOnlyBinaryBackedCommandr	   rJ   r,   r)   <module>rZ      sK    m = ( @ L *	 [$** [ [r,   