Class: Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ InstanceGroupManagerUpdatePolicy

Returns a new instance of InstanceGroupManagerUpdatePolicy



12406
12407
12408
# File 'generated/google/apis/compute_alpha/classes.rb', line 12406

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

Instance Attribute Details

#instance_redistribution_typeString

Corresponds to the JSON property instanceRedistributionType

Returns:

  • (String)


12364
12365
12366
# File 'generated/google/apis/compute_alpha/classes.rb', line 12364

def instance_redistribution_type
  @instance_redistribution_type
end

#max_surgeGoogle::Apis::ComputeAlpha::FixedOrPercent

Encapsulates numeric value that can be either absolute or relative. Corresponds to the JSON property maxSurge



12369
12370
12371
# File 'generated/google/apis/compute_alpha/classes.rb', line 12369

def max_surge
  @max_surge
end

#max_unavailableGoogle::Apis::ComputeAlpha::FixedOrPercent

Encapsulates numeric value that can be either absolute or relative. Corresponds to the JSON property maxUnavailable



12374
12375
12376
# File 'generated/google/apis/compute_alpha/classes.rb', line 12374

def max_unavailable
  @max_unavailable
end

#min_ready_secFixnum

Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600]. Corresponds to the JSON property minReadySec

Returns:

  • (Fixnum)


12380
12381
12382
# File 'generated/google/apis/compute_alpha/classes.rb', line 12380

def min_ready_sec
  @min_ready_sec
end

#minimal_actionString

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

Returns:

  • (String)


12390
12391
12392
# File 'generated/google/apis/compute_alpha/classes.rb', line 12390

def minimal_action
  @minimal_action
end

#replacement_methodString

What action should be used to replace instances. See minimal_action.REPLACE Corresponds to the JSON property replacementMethod

Returns:

  • (String)


12395
12396
12397
# File 'generated/google/apis/compute_alpha/classes.rb', line 12395

def replacement_method
  @replacement_method
end

#typeString

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

Returns:

  • (String)


12404
12405
12406
# File 'generated/google/apis/compute_alpha/classes.rb', line 12404

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12411
12412
12413
12414
12415
12416
12417
12418
12419
# File 'generated/google/apis/compute_alpha/classes.rb', line 12411

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)
  @min_ready_sec = args[:min_ready_sec] if args.key?(:min_ready_sec)
  @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