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.



23122
23123
23124
# File 'lib/google/apis/compute_v1/classes.rb', line 23122

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



23033
23034
23035
# File 'lib/google/apis/compute_v1/classes.rb', line 23033

def accelerators
  @accelerators
end

#architectureString

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

Returns:

  • (String)


23038
23039
23040
# File 'lib/google/apis/compute_v1/classes.rb', line 23038

def architecture
  @architecture
end

#creation_timestampString

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

Returns:

  • (String)


23043
23044
23045
# File 'lib/google/apis/compute_v1/classes.rb', line 23043

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeV1::DeprecationStatus

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



23048
23049
23050
# File 'lib/google/apis/compute_v1/classes.rb', line 23048

def deprecated
  @deprecated
end

#descriptionString

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

Returns:

  • (String)


23053
23054
23055
# File 'lib/google/apis/compute_v1/classes.rb', line 23053

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)


23058
23059
23060
# File 'lib/google/apis/compute_v1/classes.rb', line 23058

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)


23064
23065
23066
# File 'lib/google/apis/compute_v1/classes.rb', line 23064

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)


23070
23071
23072
# File 'lib/google/apis/compute_v1/classes.rb', line 23070

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)


23076
23077
23078
# File 'lib/google/apis/compute_v1/classes.rb', line 23076

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)


23083
23084
23085
# File 'lib/google/apis/compute_v1/classes.rb', line 23083

def kind
  @kind
end

#maximum_persistent_disksFixnum

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

Returns:

  • (Fixnum)


23088
23089
23090
# File 'lib/google/apis/compute_v1/classes.rb', line 23088

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)


23093
23094
23095
# File 'lib/google/apis/compute_v1/classes.rb', line 23093

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)


23099
23100
23101
# File 'lib/google/apis/compute_v1/classes.rb', line 23099

def memory_mb
  @memory_mb
end

#nameString

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

Returns:

  • (String)


23104
23105
23106
# File 'lib/google/apis/compute_v1/classes.rb', line 23104

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



23109
23110
23111
# File 'lib/google/apis/compute_v1/classes.rb', line 23109

def scratch_disks
  @scratch_disks
end

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

Returns:

  • (String)


23114
23115
23116
# File 'lib/google/apis/compute_v1/classes.rb', line 23114

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)


23120
23121
23122
# File 'lib/google/apis/compute_v1/classes.rb', line 23120

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



23127
23128
23129
23130
23131
23132
23133
23134
23135
23136
23137
23138
23139
23140
23141
23142
23143
23144
23145
# File 'lib/google/apis/compute_v1/classes.rb', line 23127

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