Class: Google::Apis::ComputeAlpha::MachineType

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

Represents a Machine Type resource. You can use specific machine types for your VM instances based on performance and pricing requirements. For more information, readMachine Types.

Defined Under Namespace

Classes: Accelerator

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MachineType

Returns a new instance of MachineType.



40601
40602
40603
# File 'lib/google/apis/compute_alpha/classes.rb', line 40601

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

Instance Attribute Details

#acceleratorsArray<Google::Apis::ComputeAlpha::MachineType::Accelerator>

[Output Only] A list of accelerator configurations assigned to this machine type. Corresponds to the JSON property accelerators



40509
40510
40511
# File 'lib/google/apis/compute_alpha/classes.rb', line 40509

def accelerators
  @accelerators
end

#architectureString

[Output Only] The architecture of the machine type. Corresponds to the JSON property architecture

Returns:

  • (String)


40514
40515
40516
# File 'lib/google/apis/compute_alpha/classes.rb', line 40514

def architecture
  @architecture
end

#bundled_local_ssdsGoogle::Apis::ComputeAlpha::BundledLocalSsds

[Output Only] The configuration of bundled local SSD for the machine type. Corresponds to the JSON property bundledLocalSsds



40519
40520
40521
# File 'lib/google/apis/compute_alpha/classes.rb', line 40519

def bundled_local_ssds
  @bundled_local_ssds
end

#creation_timestampString

[Output Only] Creation timestamp inRFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


40525
40526
40527
# File 'lib/google/apis/compute_alpha/classes.rb', line 40525

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeAlpha::DeprecationStatus

Deprecation status for a public resource. Corresponds to the JSON property deprecated



40530
40531
40532
# File 'lib/google/apis/compute_alpha/classes.rb', line 40530

def deprecated
  @deprecated
end

#descriptionString

[Output Only] An optional textual description of the resource. Corresponds to the JSON property description

Returns:

  • (String)


40535
40536
40537
# File 'lib/google/apis/compute_alpha/classes.rb', line 40535

def description
  @description
end

#guest_cpusFixnum

[Output Only] The number of virtual CPUs that are available to the instance. Corresponds to the JSON property guestCpus

Returns:

  • (Fixnum)


40541
40542
40543
# File 'lib/google/apis/compute_alpha/classes.rb', line 40541

def guest_cpus
  @guest_cpus
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


40547
40548
40549
# File 'lib/google/apis/compute_alpha/classes.rb', line 40547

def id
  @id
end

#is_shared_cpuBoolean Also known as: is_shared_cpu?

[Output Only] Whether this machine type has a shared CPU. SeeShared-core machine types for more information. Corresponds to the JSON property isSharedCpu

Returns:

  • (Boolean)


40554
40555
40556
# File 'lib/google/apis/compute_alpha/classes.rb', line 40554

def is_shared_cpu
  @is_shared_cpu
end

#kindString

Output only. [Output Only] The type of the resource. Alwayscompute#machineType for machine types. Corresponds to the JSON property kind

Returns:

  • (String)


40561
40562
40563
# File 'lib/google/apis/compute_alpha/classes.rb', line 40561

def kind
  @kind
end

#maximum_persistent_disksFixnum

[Output Only] Maximum persistent disks allowed. Corresponds to the JSON property maximumPersistentDisks

Returns:

  • (Fixnum)


40566
40567
40568
# File 'lib/google/apis/compute_alpha/classes.rb', line 40566

def maximum_persistent_disks
  @maximum_persistent_disks
end

#maximum_persistent_disks_size_gbFixnum

[Output Only] Maximum total persistent disks size (GB) allowed. Corresponds to the JSON property maximumPersistentDisksSizeGb

Returns:

  • (Fixnum)


40571
40572
40573
# File 'lib/google/apis/compute_alpha/classes.rb', line 40571

def maximum_persistent_disks_size_gb
  @maximum_persistent_disks_size_gb
end

#memory_mbFixnum

[Output Only] The amount of physical memory available to the instance, defined in MB. Corresponds to the JSON property memoryMb

Returns:

  • (Fixnum)


40577
40578
40579
# File 'lib/google/apis/compute_alpha/classes.rb', line 40577

def memory_mb
  @memory_mb
end

#nameString

[Output Only] Name of the resource. Corresponds to the JSON property name

Returns:

  • (String)


40582
40583
40584
# File 'lib/google/apis/compute_alpha/classes.rb', line 40582

def name
  @name
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


40587
40588
40589
# File 'lib/google/apis/compute_alpha/classes.rb', line 40587

def self_link
  @self_link
end

Output only. [Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


40593
40594
40595
# File 'lib/google/apis/compute_alpha/classes.rb', line 40593

def self_link_with_id
  @self_link_with_id
end

#zoneString

[Output Only] The name of the zone where the machine type resides, such as us-central1-a. Corresponds to the JSON property zone

Returns:

  • (String)


40599
40600
40601
# File 'lib/google/apis/compute_alpha/classes.rb', line 40599

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



40606
40607
40608
40609
40610
40611
40612
40613
40614
40615
40616
40617
40618
40619
40620
40621
40622
40623
40624
# File 'lib/google/apis/compute_alpha/classes.rb', line 40606

def update!(**args)
  @accelerators = args[:accelerators] if args.key?(:accelerators)
  @architecture = args[:architecture] if args.key?(:architecture)
  @bundled_local_ssds = args[:bundled_local_ssds] if args.key?(:bundled_local_ssds)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @deprecated = args[:deprecated] if args.key?(:deprecated)
  @description = args[:description] if args.key?(:description)
  @guest_cpus = args[:guest_cpus] if args.key?(:guest_cpus)
  @id = args[:id] if args.key?(:id)
  @is_shared_cpu = args[:is_shared_cpu] if args.key?(:is_shared_cpu)
  @kind = args[:kind] if args.key?(:kind)
  @maximum_persistent_disks = args[:maximum_persistent_disks] if args.key?(:maximum_persistent_disks)
  @maximum_persistent_disks_size_gb = args[:maximum_persistent_disks_size_gb] if args.key?(:maximum_persistent_disks_size_gb)
  @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
  @name = args[:name] if args.key?(:name)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @zone = args[:zone] if args.key?(:zone)
end