Class: Google::Apis::ComputeV1::AllocationAggregateReservation

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

Overview

This reservation type is specified by total resource amounts (e.g. total count of CPUs) and can account for multiple instance SKUs. In other words, one can create instances of varying shapes against this reservation.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AllocationAggregateReservation

Returns a new instance of AllocationAggregateReservation.



1416
1417
1418
# File 'lib/google/apis/compute_v1/classes.rb', line 1416

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

Instance Attribute Details

#in_use_resourcesArray<Google::Apis::ComputeV1::AllocationAggregateReservationReservedResourceInfo>

Output only. [Output only] List of resources currently in use. Corresponds to the JSON property inUseResources



1398
1399
1400
# File 'lib/google/apis/compute_v1/classes.rb', line 1398

def in_use_resources
  @in_use_resources
end

#reserved_resourcesArray<Google::Apis::ComputeV1::AllocationAggregateReservationReservedResourceInfo>

List of reserved resources (CPUs, memory, accelerators). Corresponds to the JSON property reservedResources



1403
1404
1405
# File 'lib/google/apis/compute_v1/classes.rb', line 1403

def reserved_resources
  @reserved_resources
end

#vm_familyString

The VM family that all instances scheduled against this reservation must belong to. Corresponds to the JSON property vmFamily

Returns:

  • (String)


1409
1410
1411
# File 'lib/google/apis/compute_v1/classes.rb', line 1409

def vm_family
  @vm_family
end

#workload_typeString

The workload type of the instances that will target this reservation. Corresponds to the JSON property workloadType

Returns:

  • (String)


1414
1415
1416
# File 'lib/google/apis/compute_v1/classes.rb', line 1414

def workload_type
  @workload_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1421
1422
1423
1424
1425
1426
# File 'lib/google/apis/compute_v1/classes.rb', line 1421

def update!(**args)
  @in_use_resources = args[:in_use_resources] if args.key?(:in_use_resources)
  @reserved_resources = args[:reserved_resources] if args.key?(:reserved_resources)
  @vm_family = args[:vm_family] if args.key?(:vm_family)
  @workload_type = args[:workload_type] if args.key?(:workload_type)
end