HEX
Server: Apache/2.4.68 (Debian)
System: Linux as-cs-widget-demo-us-central1 6.1.0-44-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
User: root (0)
PHP: 8.2.32
Disabled: NONE
Upload Files
File: //lib/google-cloud-sdk/lib/surface/compute/machine_images/set_iam_policy.yaml
release_tracks: [ALPHA, BETA, GA]

help_text:
  brief: Set the IAM policy for a Compute Engine machine image.
  description: |
    Sets the IAM policy for the given machine image as defined in a JSON or YAML file.

  examples: |
    The following command reads an IAM policy defined in a `policy.json` file
     and sets the policy for the machine image `my-image`:

      $ {command} my-image policy.json

    See https://cloud.google.com/iam/docs/managing-policies for details of the
    policy file format and contents.

request:
  collection: compute.machineImages
  use_relative_name: false
  modify_request_hooks:
  - googlecloudsdk.command_lib.iam.hooks:UseMaxRequestedPolicyVersion:api_field=globalSetPolicyRequest.policy.version
  api_version: v1
  BETA:
    api_version: beta
  ALPHA:
    api_version: alpha
arguments:
  resource:
    help_text: The machine image to set the IAM policy for.
    spec: !REF googlecloudsdk.command_lib.compute.resources:machine_image

iam:
  enable_condition: true
  set_iam_policy_request_path: globalSetPolicyRequest
  message_type_overrides:
    policy: Policy
    set_iam_policy_request: ComputeMachineImagesSetIamPolicyRequest