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.



20198
20199
20200
# File 'lib/google/apis/compute_alpha/classes.rb', line 20198

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)


20179
20180
20181
# File 'lib/google/apis/compute_alpha/classes.rb', line 20179

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)


20187
20188
20189
# File 'lib/google/apis/compute_alpha/classes.rb', line 20187

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>)


20196
20197
20198
# File 'lib/google/apis/compute_alpha/classes.rb', line 20196

def values
  @values
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



20203
20204
20205
20206
20207
# File 'lib/google/apis/compute_alpha/classes.rb', line 20203

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