Class: Google::Apis::CloudbillingV1beta::VmResourceBasedCud
- Inherits:
-
Object
- Object
- Google::Apis::CloudbillingV1beta::VmResourceBasedCud
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudbilling_v1beta/classes.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb
Overview
Specifies a resource-based committed use discount (CUD).
Instance Attribute Summary collapse
-
#guest_accelerator ⇒ Google::Apis::CloudbillingV1beta::GuestAccelerator
Specification of a set of guest accelerators attached to a machine.
-
#machine_series ⇒ String
The machine series for CUD.
-
#memory_size_gb ⇒ Float
Memory size of the VM in GB (2^30 bytes).
-
#plan ⇒ String
Commitment usage plan.
-
#region ⇒ String
The region where the VM runs.
-
#virtual_cpu_count ⇒ Fixnum
The number of vCPUs.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VmResourceBasedCud
constructor
A new instance of VmResourceBasedCud.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VmResourceBasedCud
Returns a new instance of VmResourceBasedCud.
1327 1328 1329 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1327 def initialize(**args) update!(**args) end |
Instance Attribute Details
#guest_accelerator ⇒ Google::Apis::CloudbillingV1beta::GuestAccelerator
Specification of a set of guest accelerators attached to a machine.
Corresponds to the JSON property guestAccelerator
1293 1294 1295 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1293 def guest_accelerator @guest_accelerator end |
#machine_series ⇒ String
The machine series for CUD. For example: "n1" for general purpose N1 machine
type commitments. "n2" for general purpose N2 machine type commitments. "e2"
for general purpose E2 machine type commitments. "n2d" for general purpose N2D
machine type commitments. "t2d" for general purpose T2D machine type
commitments. "c2"/"c2d" for compute-optimized commitments. "m1"/"m2" for the
memory-optimized commitments. "a2' for the accelerator-optimized commitments.
Corresponds to the JSON property machineSeries
1303 1304 1305 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1303 def machine_series @machine_series end |
#memory_size_gb ⇒ Float
Memory size of the VM in GB (2^30 bytes). Must be an increment of 0.25 (256 MB)
.
Corresponds to the JSON property memorySizeGb
1309 1310 1311 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1309 def memory_size_gb @memory_size_gb end |
#plan ⇒ String
Commitment usage plan.
Corresponds to the JSON property plan
1314 1315 1316 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1314 def plan @plan end |
#region ⇒ String
The region where the VM runs. For example: "us-central1"
Corresponds to the JSON property region
1319 1320 1321 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1319 def region @region end |
#virtual_cpu_count ⇒ Fixnum
The number of vCPUs. The number of vCPUs must be an integer of 0 or more and
can be even or odd.
Corresponds to the JSON property virtualCpuCount
1325 1326 1327 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1325 def virtual_cpu_count @virtual_cpu_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1332 1333 1334 1335 1336 1337 1338 1339 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1332 def update!(**args) @guest_accelerator = args[:guest_accelerator] if args.key?(:guest_accelerator) @machine_series = args[:machine_series] if args.key?(:machine_series) @memory_size_gb = args[:memory_size_gb] if args.key?(:memory_size_gb) @plan = args[:plan] if args.key?(:plan) @region = args[:region] if args.key?(:region) @virtual_cpu_count = args[:virtual_cpu_count] if args.key?(:virtual_cpu_count) end |