Class: Google::Apis::OsconfigV1alpha::OsPolicyAssignment

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1alpha/classes.rb,
lib/google/apis/osconfig_v1alpha/representations.rb,
lib/google/apis/osconfig_v1alpha/representations.rb

Overview

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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ OsPolicyAssignment

Returns a new instance of OsPolicyAssignment.



1179
1180
1181
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1179

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#baselineBoolean Also known as: baseline?

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

Returns:

  • (Boolean)


1104
1105
1106
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1104

def baseline
  @baseline
end

#deletedBoolean Also known as: deleted?

Output only. Indicates that this revision deletes the OS policy assignment. Corresponds to the JSON property deleted

Returns:

  • (Boolean)


1110
1111
1112
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1110

def deleted
  @deleted
end

#descriptionString

OS policy assignment description. Length of the description is limited to 1024 characters. Corresponds to the JSON property description

Returns:

  • (String)


1117
1118
1119
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1117

def description
  @description
end

#etagString

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

Returns:

  • (String)


1123
1124
1125
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1123

def etag
  @etag
end

#instance_filterGoogle::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilter

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



1130
1131
1132
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1130

def instance_filter
  @instance_filter
end

#nameString

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 propertyname`

Returns:

  • (String)


1137
1138
1139
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1137

def name
  @name
end

#os_policiesArray<Google::Apis::OsconfigV1alpha::OsPolicy>

Required. List of OS policies to be applied to the VMs. Corresponds to the JSON property osPolicies



1142
1143
1144
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1142

def os_policies
  @os_policies
end

#reconcilingBoolean Also known as: reconciling?

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

Returns:

  • (Boolean)


1149
1150
1151
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1149

def reconciling
  @reconciling
end

#revision_create_timeString

Output only. The timestamp that the revision was created. Corresponds to the JSON property revisionCreateTime

Returns:

  • (String)


1155
1156
1157
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1155

def revision_create_time
  @revision_create_time
end

#revision_idString

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

Returns:

  • (String)


1161
1162
1163
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1161

def revision_id
  @revision_id
end

#rolloutGoogle::Apis::OsconfigV1alpha::OsPolicyAssignmentRollout

Message to configure the rollout at the zonal level for the OS policy assignment. Corresponds to the JSON property rollout



1167
1168
1169
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1167

def rollout
  @rollout
end

#rollout_stateString

Output only. OS policy assignment rollout state Corresponds to the JSON property rolloutState

Returns:

  • (String)


1172
1173
1174
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1172

def rollout_state
  @rollout_state
end

#uidString

Output only. Server generated unique id for the OS policy assignment resource. Corresponds to the JSON property uid

Returns:

  • (String)


1177
1178
1179
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1177

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1184

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