
                             S r SSKJr  SSKJr  SSKJr  SSK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rSrSrSr\R2                   " S S\R4                  5      5       rg)zBThe enable command for adding anthos support RBACs to the cluster.    )absolute_import)division)unicode_literalsN)projects_api)client)base)	resources)util)errors)
propertieszTservice-{project_number}@gcp-sa-{instance_name}anthossupport.iam.gserviceaccount.comANTHOS_SUPPORTzgke-fleet-support-accessz7{membership_name}/rbacrolebindings/{rbacrolebinding_id}c                   4    \ rS rSrSrS r\S 5       rS rSr	g)Enable&   zEnable support access for the specified membership.

## EXAMPLES

  To enable support access for membership `my-membership` run:

    $ {command} my-membership

c                    [         R                  " [        R                  " U5      5      R                  n[
        R                  " 5       nU[
        R                  :X  a  [        R                  USS9$ U[
        R                  :X  a  [        R                  USS9$ U[
        R                  :X  a  [        R                  USS9$ [        R                  " S5      e)zGet P4SA account name for Anthos Support when user not specified.

Args:
  project_id: the project ID of the resource.

Returns:
  the P4SA account name for Anthos Support.
 )project_numberinstance_namezstaging-z	autopush-gkehub)r   Getprojects_utilParseProjectprojectNumberr
   APIEndpointPROD_APIANTHOS_SUPPORT_USERformatSTAGING_APIAUTOPUSH_APIr   UnknownApiEndpointOverrideError)self
project_idr   hub_endpoint_overrides       @lib/surface/container/fleet/memberships/support_access/enable.pyGetAnthosSupportUserEnable.GetAnthosSupportUser2   s     "%%"":.m  !,,.- '''r (   
$"2"2	2 '''z (   
$"3"3	3 '''{ (   228<<    c                     [         R                  " U[        R                  " S5      [        R                  " S5      SSS9  g )NzR          The membership name that you want to enable support access for.
        z          The location of the membership resource, e.g. `us-central1`.
          If not specified, defaults to `global`.
        T)membership_helplocation_helpmembership_required
positional)r	   AddMembershipResourceArgtextwrapdedent)clsparsers     r$   ArgsEnable.ArgsN   s?    &&  )  oo '  !
r'   c                 X   [         R                  R                  R                  R	                  5       n[
        R                  " U5      nU R                  U5      n[        R                  U[        S9n[        R                  " U R                  5       S9nUR                  U[        US 5      $ )N)membership_namerbacrolebinding_id)release_track)r   VALUEScoreproject	GetOrFailr	   ParseMembershipArgr%   RESOURCE_NAME_FORMATr   ROLE_BINDING_IDr   FleetClientReleaseTrackCreateMembershipRbacRoleBinding	ROLE_TYPE)r!   argsr"   r5   usernamefleet_clients          r$   Run
Enable.Run\   s    ""''//99;J2248O$$Z0D&&'O ' MD %%D4E4E4GHL77it% %r'    N)
__name__
__module____qualname____firstlineno____doc__r%   classmethodr2   rG   __static_attributes__rI   r'   r$   r   r   &   s%    =8  	%r'   r   )rN   
__future__r   r   r   r.   +googlecloudsdk.api_lib.cloudresourcemanagerr   &googlecloudsdk.api_lib.container.fleetr   googlecloudsdk.callioper   *googlecloudsdk.command_lib.container.fleetr	   r
   6googlecloudsdk.command_lib.container.fleet.membershipsr   #googlecloudsdk.command_lib.projectsr   googlecloudsdk.corer   r   rB   r>   r=   DefaultUniverseOnlyCreateCommandr   rI   r'   r$   <module>r[      sl    I &  '  D 9 ( @ ; I E *l 	,P  >%T >% >%r'   