Ë
    €ÏË
  ã                   ó´   — 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  G d
„ de
j"                  «      Zddddœe_        y)z)Command to set IAM policy for a resource.é    )Úabsolute_import)Údivision)Úunicode_literals)Úbase_classes)Úclient)Úbase)Úflags)Úiam_utilc                   ó&   — e Zd ZdZed„ «       Zd„ Zy)ÚAddIamPolicyBindingú>Add an IAM policy binding to a Compute Engine backend service.c                 ól   — t         j                  j                  | «       t        j                  | «       y )N)r	   Ú#GLOBAL_REGIONAL_BACKEND_SERVICE_ARGÚAddArgumentr
   ÚAddArgsForAddIamPolicyBinding)Úparsers    ú>lib/surface/compute/backend_services/add_iam_policy_binding.pyÚArgszAddIamPolicyBinding.Args    s$   € ä	×-Ñ-×9Ñ9¸&ÔAÜ×*Ñ*¨6Õ2ó    c                 óh  — t        j                  | j                  «       «      }t        j                  j                  ||j                  t        j                  |j                  «      ¬«      }t        j                  ||j                  ¬«      }|j                  |j                  |j                  «      S )N)Úscope_lister)Úcompute_client)r   ÚComputeApiHolderÚReleaseTrackr	   r   ÚResolveAsResourceÚ	resourcesÚcompute_flagsÚGetDefaultScopeListerr   ÚBackendServicer   ÚmemberÚrole)ÚselfÚargsÚholderÚbackend_service_refÚbackend_services        r   ÚRunzAddIamPolicyBinding.Run%   s‘   € Ü×*Ñ*¨4×+<Ñ+<Ó+>Ó?€Fä×1Ñ1×CÑCØØ×ÑÜ&×<Ñ<¸V¿]¹]ÓKð 	Dó 	Mð ô ×+Ñ+Ø¨F¯M©Mô;€Oð ×.Ñ.¨t¯{©{¸D¿I¹IÓFÐFr   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústaticmethodr   r'   © r   r   r   r      s   „ ÙFàñ3ó ð3óGr   r   r   zC
  Add an IAM policy binding to a Compute Engine backend service.  aS    To add an IAM policy binding for the role of
  'compute.loadBalancerServiceUser' for the user 'test-user@gmail.com' with
  backend service 'my-backend-service' and region 'REGION', run:

      $ {command} my-backend-service --region=REGION         --member='user:test-user@gmail.com'         --role='roles/compute.loadBalancerServiceUser'

      $ {command} my-backend-service --global         --member='user:test-user@gmail.com'         --role='roles/compute.loadBalancerServiceUser'

  See https://cloud.google.com/iam/docs/managing-policies for details of
  policy role and member types.
  )ÚbriefÚDESCRIPTIONÚEXAMPLESN)r+   Ú
__future__r   r   r   Úgooglecloudsdk.api_lib.computer   Ú/googlecloudsdk.api_lib.compute.backend_servicesr   Úgooglecloudsdk.callioper   Ú"googlecloudsdk.command_lib.computer	   r   Ú3googlecloudsdk.command_lib.compute.backend_servicesÚgooglecloudsdk.command_lib.iamr
   ÚCommandr   Údetailed_helpr-   r   r   Ú<module>r:      sS   ðñ 0å &Ý Ý 'å 7Ý BÝ (Ý EÝ EÝ 3ôG˜$Ÿ,™,ô Gð0 	Ið	Fð	ñ%Ð Õ !r   