class Google::Apis::OsconfigV1alpha::OsPolicyAssignment

OS policy assignment is an API resource that is used to apply a set of OS policies to a dynamically targeted group of Compute Engine VM instances. An OS policy is used to define the desired state configuration for a Compute Engine VM instance through a set of configuration resources that provide capabilities such as installing or removing software packages, or executing a script. For more information, see [OS policy and OS policy assignment](cloud. google.com/compute/docs/os-configuration-management/working-with-os-policies).

Attributes

baseline[RW]

Output only. Indicates that this revision has been successfully rolled out in this zone and new VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is only one revision with a value of `true` for this field. Corresponds to the JSON property `baseline` @return [Boolean]

baseline?[RW]

Output only. Indicates that this revision has been successfully rolled out in this zone and new VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is only one revision with a value of `true` for this field. Corresponds to the JSON property `baseline` @return [Boolean]

deleted[RW]

Output only. Indicates that this revision deletes the OS policy assignment. Corresponds to the JSON property `deleted` @return [Boolean]

deleted?[RW]

Output only. Indicates that this revision deletes the OS policy assignment. Corresponds to the JSON property `deleted` @return [Boolean]

description[RW]

OS policy assignment description. Length of the description is limited to 1024 characters. Corresponds to the JSON property `description` @return [String]

etag[RW]

The etag for this OS policy assignment. If this is provided on update, it must match the server's etag. Corresponds to the JSON property `etag` @return [String]

instance_filter[RW]

Filters to select target VMs for an assignment. If more than one filter criteria is specified below, a VM will be selected if and only if it satisfies all of them. Corresponds to the JSON property `instanceFilter` @return [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilter]

name[RW]

Resource name. Format: `projects/`project_number`/locations/`location`/ osPolicyAssignments/`os_policy_assignment_id“ This field is ignored when you create an OS policy assignment. Corresponds to the JSON property `name` @return [String]

os_policies[RW]

Required. List of OS policies to be applied to the VMs. Corresponds to the JSON property `osPolicies` @return [Array<Google::Apis::OsconfigV1alpha::OsPolicy>]

reconciling[RW]

Output only. Indicates that reconciliation is in progress for the revision. This value is `true` when the `rollout_state` is one of: * IN_PROGRESS * CANCELLING Corresponds to the JSON property `reconciling` @return [Boolean]

reconciling?[RW]

Output only. Indicates that reconciliation is in progress for the revision. This value is `true` when the `rollout_state` is one of: * IN_PROGRESS * CANCELLING Corresponds to the JSON property `reconciling` @return [Boolean]

revision_create_time[RW]

Output only. The timestamp that the revision was created. Corresponds to the JSON property `revisionCreateTime` @return [String]

revision_id[RW]

Output only. The assignment revision ID A new revision is committed whenever a rollout is triggered for a OS policy assignment Corresponds to the JSON property `revisionId` @return [String]

rollout[RW]

Message to configure the rollout at the zonal level for the OS policy assignment. Corresponds to the JSON property `rollout` @return [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentRollout]

rollout_state[RW]

Output only. OS policy assignment rollout state Corresponds to the JSON property `rolloutState` @return [String]

uid[RW]

Output only. Server generated unique id for the OS policy assignment resource. Corresponds to the JSON property `uid` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/osconfig_v1alpha/classes.rb, line 1109
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/osconfig_v1alpha/classes.rb, line 1114
def update!(**args)
  @baseline = args[:baseline] if args.key?(:baseline)
  @deleted = args[:deleted] if args.key?(:deleted)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @instance_filter = args[:instance_filter] if args.key?(:instance_filter)
  @name = args[:name] if args.key?(:name)
  @os_policies = args[:os_policies] if args.key?(:os_policies)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @revision_create_time = args[:revision_create_time] if args.key?(:revision_create_time)
  @revision_id = args[:revision_id] if args.key?(:revision_id)
  @rollout = args[:rollout] if args.key?(:rollout)
  @rollout_state = args[:rollout_state] if args.key?(:rollout_state)
  @uid = args[:uid] if args.key?(:uid)
end