Class: Google::Apis::ComputeAlpha::HaControllerZoneConfigurationReservationAffinity

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

Specifies the reservations that this instance can consume from. This message should be an exact copy of the Instances representation of AllocationAffinity. LINT.IfChange(HaControllerAllocationAffinityMixer)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ HaControllerZoneConfigurationReservationAffinity

Returns a new instance of HaControllerZoneConfigurationReservationAffinity.



19832
19833
19834
# File 'lib/google/apis/compute_alpha/classes.rb', line 19832

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

Instance Attribute Details

#consume_reservation_typeString

Specifies the type of reservation from which this instance can consume resources: ANY_RESERVATION (default),SPECIFIC_RESERVATION, or NO_RESERVATION. See Consuming reserved instances for examples. Corresponds to the JSON property consumeReservationType

Returns:

  • (String)


19813
19814
19815
# File 'lib/google/apis/compute_alpha/classes.rb', line 19813

def consume_reservation_type
  @consume_reservation_type
end

#keyString

Corresponds to the label key of a reservation resource. To target aSPECIFIC_RESERVATION by name, specifygoogleapis.com/reservation-name as the key and specify the name of your reservation as its value. Corresponds to the JSON property key

Returns:

  • (String)


19821
19822
19823
# File 'lib/google/apis/compute_alpha/classes.rb', line 19821

def key
  @key
end

#valuesArray<String>

Corresponds to the label values of a reservation resource. This can be either a name to a reservation in the same project or "projects/different-project/reservations/some-reservation-name" to target a shared reservation in the same zone but in a different project. Corresponds to the JSON property values

Returns:

  • (Array<String>)


19830
19831
19832
# File 'lib/google/apis/compute_alpha/classes.rb', line 19830

def values
  @values
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



19837
19838
19839
19840
19841
# File 'lib/google/apis/compute_alpha/classes.rb', line 19837

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