
    [                     2   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  e
j&                  e
j(                  j*                  e
j(                  j,                         G d de
j.                               Zy)z7Command to get credentials of an Anthos cluster on AWS.    )absolute_import)division)unicode_literals)aws)util)base)resource_args)endpoint_util)flags)
kubeconfig)logc                   x    e Zd ZdZej
                  ej                  j                  d      dZe	d        Z
d Zy)GetCredentialsz,Get credentials of an Anthos cluster on AWS.zAnthos cluster on AWS)cluster_type)EXAMPLESDESCRIPTIONc                     t        j                  | d       t        j                  |        t        j                  |        y )Nzto get credentials)r	   AddAwsClusterResourceArgr   AddAuthProviderCmdPathAddPrivateEndpoint)parsers    5lib/surface/container/aws/clusters/get_credentials.pyArgszGetCredentials.Args*   s/    **63GH	  (	V$    c           	         t        j                  t        j                  |      j                  | j                               5  t        j                  |      }t        j                         }t        j                  j                  d       |j                  |      }|j                  t        j                         j                  j                   j"                  k7  r<t        j$                  t&        j(                  j+                  |j,                               |j.                  sHt'        j0                  ||j,                        r(t'        j2                  t        j4                         |       t'        j6                  ||j,                         t'        j8                  d|j:                  |j                  |j,                        }t'        j<                  d|j,                  |j                  |j:                        }t'        j>                  ||j,                  ||j@                  ||j.                         ddd       y# 1 sw Y   yxY w)z!Runs the get-credentials command.z(Fetching cluster endpoint and auth data.r   N)!r
   GkemulticloudEndpointOverrider	   ParseAwsClusterResourceArglocationsIdReleaseTrackapi_utilClustersClientr   statusPrintGetstater   GetMessagesModule$GoogleCloudGkemulticloudV1AwsClusterStateValueValuesEnumRUNNINGwarningr   NOT_RUNNING_MSGformatawsClustersIdprivate_endpointConnectGatewayInNodePoolsCheckClusterHasNodePoolsNodePoolsClientValidateClusterVersionGenerateContext
projectsIdGenerateAuthProviderCmdArgsGenerateKubeconfigauth_provider_cmd_path)selfargscluster_refcluster_clientrespcontextcmd_argss          r   RunzGetCredentials.Run0   s   		4	4006BB
 "<<TBk..0n	jjAB,d **##%JJ__ggh 	&&--k.G.GH	
 ""z'K'K
))( 	++$$&	
 ''k.G.GH**


 
 

!
!

#
#	g 77


#
#

!
!

 
 	h ##


#
#


%
%



M
 
 
s   G-H88IN)__name__
__module____qualname____doc__r   COMMAND_EXAMPLECOMMAND_DESCRIPTIONr,   detailed_helpstaticmethodr   r?    r   r   r   r      sL    4 ,,33::. ; - % %
/r   r   N)rC   
__future__r   r   r   .googlecloudsdk.api_lib.container.gkemulticloudr   r    r   googlecloudsdk.callioper   (googlecloudsdk.command_lib.container.awsr	   2googlecloudsdk.command_lib.container.gkemulticloudr
   r   r   googlecloudsdk.corer   ReleaseTracksr   ALPHAGACommandr   rH   r   r   <module>rS      sr    > &  ' J ? ( B L D I # D%%++T->->-A-AB?T\\ ? C?r   