Class: Google::Apis::ComputeV1::MachineType

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

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

Defined Under Namespace

Classes: Accelerator, ScratchDisk

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MachineType

Returns a new instance of MachineType.



22589
22590
22591
# File 'lib/google/apis/compute_v1/classes.rb', line 22589

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

Instance Attribute Details

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

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



22500
22501
22502
# File 'lib/google/apis/compute_v1/classes.rb', line 22500

def accelerators
  @accelerators
end

#architectureString

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

Returns:

  • (String)


22505
22506
22507
# File 'lib/google/apis/compute_v1/classes.rb', line 22505

def architecture
  @architecture
end

#creation_timestampString

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

Returns:

  • (String)


22510
22511
22512
# File 'lib/google/apis/compute_v1/classes.rb', line 22510

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeV1::DeprecationStatus

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



22515
22516
22517
# File 'lib/google/apis/compute_v1/classes.rb', line 22515

def deprecated
  @deprecated
end

#descriptionString

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

Returns:

  • (String)


22520
22521
22522
# File 'lib/google/apis/compute_v1/classes.rb', line 22520

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)


22525
22526
22527
# File 'lib/google/apis/compute_v1/classes.rb', line 22525

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)


22531
22532
22533
# File 'lib/google/apis/compute_v1/classes.rb', line 22531

def id
  @id
end

#image_space_gbFixnum

[Deprecated] This property is deprecated and will never be populated with any relevant values. Corresponds to the JSON property imageSpaceGb

Returns:

  • (Fixnum)


22537
22538
22539
# File 'lib/google/apis/compute_v1/classes.rb', line 22537

def image_space_gb
  @image_space_gb
end

#is_shared_cpuBoolean Also known as: is_shared_cpu?

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

Returns:

  • (Boolean)


22543
22544
22545
# File 'lib/google/apis/compute_v1/classes.rb', line 22543

def is_shared_cpu
  @is_shared_cpu
end

#kindString

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

Returns:

  • (String)


22550
22551
22552
# File 'lib/google/apis/compute_v1/classes.rb', line 22550

def kind
  @kind
end

#maximum_persistent_disksFixnum

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

Returns:

  • (Fixnum)


22555
22556
22557
# File 'lib/google/apis/compute_v1/classes.rb', line 22555

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)


22560
22561
22562
# File 'lib/google/apis/compute_v1/classes.rb', line 22560

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)


22566
22567
22568
# File 'lib/google/apis/compute_v1/classes.rb', line 22566

def memory_mb
  @memory_mb
end

#nameString

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

Returns:

  • (String)


22571
22572
22573
# File 'lib/google/apis/compute_v1/classes.rb', line 22571

def name
  @name
end

#scratch_disksArray<Google::Apis::ComputeV1::MachineType::ScratchDisk>

[Output Only] A list of extended scratch disks assigned to the instance. Corresponds to the JSON property scratchDisks



22576
22577
22578
# File 'lib/google/apis/compute_v1/classes.rb', line 22576

def scratch_disks
  @scratch_disks
end

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

Returns:

  • (String)


22581
22582
22583
# File 'lib/google/apis/compute_v1/classes.rb', line 22581

def self_link
  @self_link
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)


22587
22588
22589
# File 'lib/google/apis/compute_v1/classes.rb', line 22587

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



22594
22595
22596
22597
22598
22599
22600
22601
22602
22603
22604
22605
22606
22607
22608
22609
22610
22611
22612
# File 'lib/google/apis/compute_v1/classes.rb', line 22594

def update!(**args)
  @accelerators = args[:accelerators] if args.key?(:accelerators)
  @architecture = args[:architecture] if args.key?(:architecture)
  @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)
  @image_space_gb = args[:image_space_gb] if args.key?(:image_space_gb)
  @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)
  @scratch_disks = args[:scratch_disks] if args.key?(:scratch_disks)
  @self_link = args[:self_link] if args.key?(:self_link)
  @zone = args[:zone] if args.key?(:zone)
end