- release_tracks: [ALPHA, BETA, GA]

  help_text:
    brief: |
      Add IAM policy binding for a Cloud Deploy target.
    description: |
      Adds a policy binding to the IAM policy of a Cloud Deploy target. One
      binding consists of a member and a role.

      See https://cloud.google.com/iam/docs/managing-policies for details of
      the policy file format and contents.
    examples: |
      To add an IAM policy binding for the role of 'roles/clouddeploy.operator' for the user
      'test-user@gmail.com' on 'my-target' with the region 'us-central1', run:

        $ {command} my-target \
          --region='us-central1' \
          --member='user:test-user@gmail.com' \
          --role='roles/clouddeploy.operator'

  request:
    api_version: v1
    collection: clouddeploy.projects.locations.targets

  arguments:
    resource:
      help_text: The target for which to add the IAM policy binding.
      spec: !REF googlecloudsdk.command_lib.deploy.resources:target

  iam:
    enable_condition: true
    policy_version: 3
    get_iam_policy_version_path: options_requestedPolicyVersion
