Class: Google::Apis::ComputeV1::DistributionPolicy

Inherits:
Object
  • Object
show all
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 Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DistributionPolicy

Returns a new instance of DistributionPolicy.



11491
11492
11493
# File 'lib/google/apis/compute_v1/classes.rb', line 11491

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

Instance Attribute Details

#target_shapeString

The distribution shape to which the group converges either proactively or on resize events (depending on the value set inupdatePolicy. instanceRedistributionType). Corresponds to the JSON property targetShape

Returns:

  • (String)


11478
11479
11480
# File 'lib/google/apis/compute_v1/classes.rb', line 11478

def target_shape
  @target_shape
end

#zonesArray<Google::Apis::ComputeV1::DistributionPolicyZoneConfiguration>

Zones where the regional managed instance group will create and manage its instances. By default, a regional MIG doesn't automatically select an AI zone to create instances, even if an AI zone is available in the specified region. To create instances in an AI zone in the selected region, you must explicitly specify it in the distribution policy together with the other preferred zones. Corresponds to the JSON property zones



11489
11490
11491
# File 'lib/google/apis/compute_v1/classes.rb', line 11489

def zones
  @zones
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11496
11497
11498
11499
# File 'lib/google/apis/compute_v1/classes.rb', line 11496

def update!(**args)
  @target_shape = args[:target_shape] if args.key?(:target_shape)
  @zones = args[:zones] if args.key?(:zones)
end