Class: Google::Apis::ComputeAlpha::VmExtensionPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::VmExtensionPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Represents a VM extension policy.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#extension_policies ⇒ Hash<String,Google::Apis::ComputeAlpha::VmExtensionPolicyExtensionPolicy>
Required.
-
#global_resource_link ⇒ String
Optional.
-
#id ⇒ Fixnum
Output only.
-
#instance_selectors ⇒ Array<Google::Apis::ComputeAlpha::VmExtensionPolicyInstanceSelector>
Optional.
-
#kind ⇒ String
Output only.
-
#managed_by_global ⇒ Boolean
(also: #managed_by_global?)
Optional.
-
#name ⇒ String
Name of the resource.
-
#priority ⇒ Fixnum
Optional.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#state ⇒ String
Optional.
-
#update_timestamp ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VmExtensionPolicy
constructor
A new instance of VmExtensionPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VmExtensionPolicy
Returns a new instance of VmExtensionPolicy.
83234 83235 83236 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83234 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
83140 83141 83142 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83140 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource.
Corresponds to the JSON property description
83145 83146 83147 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83145 def description @description end |
#extension_policies ⇒ Hash<String,Google::Apis::ComputeAlpha::VmExtensionPolicyExtensionPolicy>
Required. A map of extension names (for example, "ops-agent") to their
corresponding
policy configurations.
Corresponds to the JSON property extensionPolicies
83152 83153 83154 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83152 def extension_policies @extension_policies end |
#global_resource_link ⇒ String
Optional. Output only. [Output Only] Link to the global policy that manages
this zone policy, if
applicable.
Corresponds to the JSON property globalResourceLink
83159 83160 83161 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83159 def global_resource_link @global_resource_link end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
83166 83167 83168 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83166 def id @id end |
#instance_selectors ⇒ Array<Google::Apis::ComputeAlpha::VmExtensionPolicyInstanceSelector>
Optional. Selectors to target VMs for this policy. VMs are selected if they
match
any of the provided selectors (logical OR). If this list is empty, the
policy applies to all VMs.
Corresponds to the JSON property instanceSelectors
83174 83175 83176 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83174 def instance_selectors @instance_selectors end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Alwayscompute#
vmExtensionPolicy.
Corresponds to the JSON property kind
83180 83181 83182 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83180 def kind @kind end |
#managed_by_global ⇒ Boolean Also known as: managed_by_global?
Optional. Output only. [Output Only] Indicates if this policy is managed by a
global policy.
Corresponds to the JSON property managedByGlobal
83186 83187 83188 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83186 def managed_by_global @managed_by_global end |
#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 withRFC1035.
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.
Corresponds to the JSON property name
83198 83199 83200 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83198 def name @name end |
#priority ⇒ Fixnum
Optional. Priority of this policy. Used to resolve conflicts when multiple
policies
apply to the same extension.
The policy priority is an integer from 0 to 65535, inclusive. Lower
integers indicate higher priorities. If you do not specify a priority when
creating a rule, it is assigned a priority of 1000. If priorities are
equal, the policy with the most recent creation timestamp takes precedence.
Corresponds to the JSON property priority
83209 83210 83211 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83209 def priority @priority end |
#self_link ⇒ String
Output only. [Output Only] Server-defined fully-qualified URL for this
resource.
Corresponds to the JSON property selfLink
83215 83216 83217 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83215 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource's resource id.
Corresponds to the JSON property selfLinkWithId
83220 83221 83222 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83220 def self_link_with_id @self_link_with_id end |
#state ⇒ String
Optional. Output only. [Output Only] Current state of the policy: ACTIVE or
DELETING.
Corresponds to the JSON property state
83226 83227 83228 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83226 def state @state end |
#update_timestamp ⇒ String
Output only. [Output Only] Update timestamp inRFC3339
text format.
Corresponds to the JSON property updateTimestamp
83232 83233 83234 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83232 def @update_timestamp end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
83239 83240 83241 83242 83243 83244 83245 83246 83247 83248 83249 83250 83251 83252 83253 83254 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 83239 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @extension_policies = args[:extension_policies] if args.key?(:extension_policies) @global_resource_link = args[:global_resource_link] if args.key?(:global_resource_link) @id = args[:id] if args.key?(:id) @instance_selectors = args[:instance_selectors] if args.key?(:instance_selectors) @kind = args[:kind] if args.key?(:kind) @managed_by_global = args[:managed_by_global] if args.key?(:managed_by_global) @name = args[:name] if args.key?(:name) @priority = args[:priority] if args.key?(:priority) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @state = args[:state] if args.key?(:state) @update_timestamp = args[:update_timestamp] if args.key?(:update_timestamp) end |