Class: Google::Apis::ComputeAlpha::AllocationSpecificSkuAllocationReservedInstanceProperties

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

Properties of the SKU instances being reserved. Next ID: 9

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AllocationSpecificSkuAllocationReservedInstanceProperties

Returns a new instance of AllocationSpecificSkuAllocationReservedInstanceProperties.



1439
1440
1441
# File 'lib/google/apis/compute_alpha/classes.rb', line 1439

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

Instance Attribute Details

#guest_acceleratorsArray<Google::Apis::ComputeAlpha::AcceleratorConfig>

Specifies accelerator type and count. Corresponds to the JSON property guestAccelerators



1401
1402
1403
# File 'lib/google/apis/compute_alpha/classes.rb', line 1401

def guest_accelerators
  @guest_accelerators
end

#local_ssdsArray<Google::Apis::ComputeAlpha::AllocationSpecificSkuAllocationAllocatedInstancePropertiesReservedDisk>

Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd. Corresponds to the JSON property localSsds



1407
1408
1409
# File 'lib/google/apis/compute_alpha/classes.rb', line 1407

def local_ssds
  @local_ssds
end

#location_hintString

An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API. Corresponds to the JSON property locationHint

Returns:

  • (String)


1413
1414
1415
# File 'lib/google/apis/compute_alpha/classes.rb', line 1413

def location_hint
  @location_hint
end

#machine_typeString

Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern. Corresponds to the JSON property machineType

Returns:

  • (String)


1420
1421
1422
# File 'lib/google/apis/compute_alpha/classes.rb', line 1420

def machine_type
  @machine_type
end

#maintenance_freeze_duration_hoursFixnum

Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance. Corresponds to the JSON property maintenanceFreezeDurationHours

Returns:

  • (Fixnum)


1426
1427
1428
# File 'lib/google/apis/compute_alpha/classes.rb', line 1426

def maintenance_freeze_duration_hours
  @maintenance_freeze_duration_hours
end

#maintenance_intervalString

Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC. Corresponds to the JSON property maintenanceInterval

Returns:

  • (String)


1432
1433
1434
# File 'lib/google/apis/compute_alpha/classes.rb', line 1432

def maintenance_interval
  @maintenance_interval
end

#min_cpu_platformString

Minimum cpu platform the reservation. Corresponds to the JSON property minCpuPlatform

Returns:

  • (String)


1437
1438
1439
# File 'lib/google/apis/compute_alpha/classes.rb', line 1437

def min_cpu_platform
  @min_cpu_platform
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1444
1445
1446
1447
1448
1449
1450
1451
1452
# File 'lib/google/apis/compute_alpha/classes.rb', line 1444

def update!(**args)
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
  @location_hint = args[:location_hint] if args.key?(:location_hint)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
  @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
end