Class: Google::Apis::ComputeV1::InstanceGroupManagerUpdatePolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::InstanceGroupManagerUpdatePolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Instance Attribute Summary collapse
-
#instance_redistribution_type ⇒ String
The instance redistribution policy for regional managed instance groups.
-
#max_surge ⇒ Google::Apis::ComputeV1::FixedOrPercent
Encapsulates numeric value that can be either absolute or relative.
-
#max_unavailable ⇒ Google::Apis::ComputeV1::FixedOrPercent
Encapsulates numeric value that can be either absolute or relative.
-
#minimal_action ⇒ String
Minimal action to be taken on an instance.
-
#replacement_method ⇒ String
What action should be used to replace instances.
-
#type ⇒ String
The type of update process.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InstanceGroupManagerUpdatePolicy
constructor
A new instance of InstanceGroupManagerUpdatePolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InstanceGroupManagerUpdatePolicy
Returns a new instance of InstanceGroupManagerUpdatePolicy.
13180 13181 13182 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13180 def initialize(**args) update!(**args) end |
Instance Attribute Details
#instance_redistribution_type ⇒ String
The instance redistribution policy for regional managed instance groups. Valid
values are: - PROACTIVE (default): The group attempts to maintain an even
distribution of VM instances across zones in the region. - NONE: For non-
autoscaled groups, proactive redistribution is disabled.
Corresponds to the JSON property instanceRedistributionType
13144 13145 13146 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13144 def instance_redistribution_type @instance_redistribution_type end |
#max_surge ⇒ Google::Apis::ComputeV1::FixedOrPercent
Encapsulates numeric value that can be either absolute or relative.
Corresponds to the JSON property maxSurge
13149 13150 13151 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13149 def max_surge @max_surge end |
#max_unavailable ⇒ Google::Apis::ComputeV1::FixedOrPercent
Encapsulates numeric value that can be either absolute or relative.
Corresponds to the JSON property maxUnavailable
13154 13155 13156 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13154 def max_unavailable @max_unavailable end |
#minimal_action ⇒ String
Minimal action to be taken on an instance. You can specify either RESTART to
restart existing instances or REPLACE to delete and create new instances from
the target template. If you specify a RESTART, the Updater will attempt to
perform that action only. However, if the Updater determines that the minimal
action you specify is not enough to perform the update, it might perform a
more disruptive action.
Corresponds to the JSON property minimalAction
13164 13165 13166 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13164 def minimal_action @minimal_action end |
#replacement_method ⇒ String
What action should be used to replace instances. See minimal_action.REPLACE
Corresponds to the JSON property replacementMethod
13169 13170 13171 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13169 def replacement_method @replacement_method end |
#type ⇒ String
The type of update process. You can specify either PROACTIVE so that the
instance group manager proactively executes actions in order to bring
instances to their target versions or OPPORTUNISTIC so that no action is
proactively executed but the update will be performed as part of other actions
(for example, resizes or recreateInstances calls).
Corresponds to the JSON property type
13178 13179 13180 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13178 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
13185 13186 13187 13188 13189 13190 13191 13192 |
# File 'lib/google/apis/compute_v1/classes.rb', line 13185 def update!(**args) @instance_redistribution_type = args[:instance_redistribution_type] if args.key?(:instance_redistribution_type) @max_surge = args[:max_surge] if args.key?(:max_surge) @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable) @minimal_action = args[:minimal_action] if args.key?(:minimal_action) @replacement_method = args[:replacement_method] if args.key?(:replacement_method) @type = args[:type] if args.key?(:type) end |