Method: globalVmExtensionPolicies.get

Gets details of a global VM extension policy.

HTTP request

GET https://compute.googleapis.com/compute/beta/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}

The URL uses gRPC Transcoding syntax. To know more about valid error responses that can be thrown by this HTTP request, please refer to the service error catalog

Path parameters

Parameters
project

string

Project ID for this request.

globalVmExtensionPolicy

string

Name of the GlobalVmExtensionPolicy resource to return.

Request body

The request body must be empty.

Response body

Message describing GlobalVmExtensionPolicy object.

If successful, the response body contains data with the following structure:

JSON representation
 { 
 "kind" 
 : 
 string 
 , 
 "id" 
 : 
 string 
 , 
 "creationTimestamp" 
 : 
 string 
 , 
 "updateTimestamp" 
 : 
 string 
 , 
 "name" 
 : 
 string 
 , 
 "description" 
 : 
 string 
 , 
 "selfLink" 
 : 
 string 
 , 
 "selfLinkWithId" 
 : 
 string 
 , 
 "extensionPolicies" 
 : 
 { 
 string 
 : 
 { 
 "stringConfig" 
 : 
 string 
 , 
 "pinnedVersion" 
 : 
 string 
 } 
 , 
 ... 
 } 
 , 
 "instanceSelectors" 
 : 
 [ 
 { 
 "labelSelector" 
 : 
 { 
 "inclusionLabels" 
 : 
 { 
 string 
 : 
 string 
 , 
 ... 
 } 
 } 
 } 
 ] 
 , 
 "priority" 
 : 
 integer 
 , 
 "scopedResourceStatus" 
 : 
 enum 
 , 
 "rolloutOperation" 
 : 
 { 
 "rolloutInput" 
 : 
 { 
 "retryUuid" 
 : 
 string 
 , 
 "conflictBehavior" 
 : 
 string 
 , 
 // Union field rollout_plan 
can be only one of the following: 
 "name" 
 : 
 string 
 , 
 "predefinedRolloutPlan" 
 : 
 enum 
 // End of list of possible types for union field rollout_plan 
. 
 } 
 , 
 "rolloutStatus" 
 : 
 { 
 "currentRollouts" 
 : 
 [ 
 { 
 "rollout" 
 : 
 string 
 , 
 "rolloutPlan" 
 : 
 string 
 , 
 "state" 
 : 
 enum 
 } 
 ] 
 , 
 "previousRollout" 
 : 
 { 
 "rollout" 
 : 
 string 
 , 
 "rolloutPlan" 
 : 
 string 
 , 
 "state" 
 : 
 enum 
 } 
 } 
 } 
 } 
Fields
kind

string

[Output Only] Type of the resource. Always compute#globalVmExtensionPolicy for globalVmExtensionPolicies.

id

string ( uint64 format)

[Output Only] The unique identifier for the resource. This identifier is defined by the server.

creationTimestamp

string

[Output Only] Creation timestamp in RFC3339 text format.

updateTimestamp

string

[Output Only] globalVmExtensionPolicies.update timestamp in RFC3339 text format.

name

string

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035 . Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.

description

string

An optional description of this resource. Provide this property when you create the resource.

extensionPolicies[]

map (key: string, value: object)

Required. Map from extension (eg: "cloudops") to its policy configuration. The key is the name of the extension.

extensionPolicies[].stringConfig

string

Optional. String configuration. Any string payload that the extension understands.

extensionPolicies[].pinnedVersion

string

Optional. The version pinning for the extension. If empty, the extension will be installed with the latest version released by the extension producer.

instanceSelectors[]

object

Optional. Selector to target VMs for a policy. There is a logical "AND" between instanceSelectors.

instanceSelectors[].labelSelector

object

Optional. Labels within the LabelSelector are OR'd.

instanceSelectors[].labelSelector.inclusionLabels

map (key: string, value: string)

Optional. Labels as key value pairs. A VM should contain all the pairs specified in this map to be selected; Labels within the LabelSelector are OR'ed.

priority

integer

Optional. Used to resolve conflicts when multiple policies are active for the same extension. Defaults to 0.

Larger the number, higher the priority. When the priority is the same, the policy with the newer create time has higher priority.

scopedResourceStatus

enum

[Output Only] The scoped resource status. It's only for tracking the purging status of the policy.

rolloutOperation

object

Required. The rollout strategy and status.

rolloutOperation.rolloutInput

object

Required. The rollout input which defines the rollout plan.

rolloutOperation.rolloutInput.name

string

Optional. The name of the rollout plan. Ex. projects/ /locations/global/rolloutPlans/ .

rolloutOperation.rolloutInput.predefinedRolloutPlan

enum

Optional. Predefined rollout plan.

rolloutOperation.rolloutInput.retryUuid

string

Optional. The UUID that identifies a policy rollout retry attempt for update and delete operations. Set this field only when retrying a rollout for an existing extension policy.

  • update method: Lets you retry policy rollout without changes. An error occurs if you set retryUuid but the policy is modified.
  • delete method: Lets you retry policy deletion rollout if the previous deletion rollout is not finished and the policy is in the DELETING state. If you set this field when the policy is not in the DELETING state, an error occurs.
rolloutOperation.rolloutInput.conflictBehavior

string

Optional. Specifies the behavior of the rollout if a conflict is detected in a project during a rollout. This only applies to insert and update methods.

A conflict occurs in the following cases: * insert method: If the zonal policy already exists when the insert happens. * update method: If the zonal policy was modified by a zonal API call outside of this rollout.

Possible values are the following: * "" (empty string): If a conflict occurs, the local value is not overwritten. This is the default behavior. * "overwrite" : If a conflict occurs, the local value is overwritten with the rollout value.

rolloutOperation.rolloutStatus

object

[Output Only] The rollout status of the policy.

rolloutOperation.rolloutStatus.currentRollouts[]

object

[Output Only] The current rollouts for the latest version of the resource. There should be only one current rollout, but for scalability, we make it repeated.

rolloutOperation.rolloutStatus.currentRollouts[].rollout

string

[Output Only] The name of the rollout. Ex. projects/ /locations/global/rollouts/ .

rolloutOperation.rolloutStatus.currentRollouts[].rolloutPlan

string

[Output Only] The name of the rollout plan. Ex. projects/ /locations/global/rolloutPlans/ .

rolloutOperation.rolloutStatus.currentRollouts[].state

enum

[Output Only] The overall state of the rollout.

rolloutOperation.rolloutStatus.previousRollout

object

[Output Only] The last completed rollout resource. This field will not be populated until the first rollout is completed.

rolloutOperation.rolloutStatus.previousRollout.rollout

string

[Output Only] The name of the rollout. Ex. projects/ /locations/global/rollouts/ .

rolloutOperation.rolloutStatus.previousRollout.rolloutPlan

string

[Output Only] The name of the rollout plan. Ex. projects/ /locations/global/rolloutPlans/ .

rolloutOperation.rolloutStatus.previousRollout.state

enum

[Output Only] The overall state of the rollout.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/compute.readonly
  • https://www.googleapis.com/auth/compute
  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview .

IAM Permissions

In addition to any permissions specified on the fields above, authorization requires one or more of the following IAM permissions:

  • compute.vmExtensionPolicies.get

To find predefined roles that contain those permissions, see Compute Engine IAM Roles .

Create a Mobile Website
View Site in Mobile | Classic
Share by: