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.



40257
40258
40259
# File 'lib/google/apis/compute_alpha/classes.rb', line 40257

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



40165
40166
40167
# File 'lib/google/apis/compute_alpha/classes.rb', line 40165

def accelerators
  @accelerators
end

#architectureString

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

Returns:

  • (String)


40170
40171
40172
# File 'lib/google/apis/compute_alpha/classes.rb', line 40170

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



40175
40176
40177
# File 'lib/google/apis/compute_alpha/classes.rb', line 40175

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)


40181
40182
40183
# File 'lib/google/apis/compute_alpha/classes.rb', line 40181

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeAlpha::DeprecationStatus

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



40186
40187
40188
# File 'lib/google/apis/compute_alpha/classes.rb', line 40186

def deprecated
  @deprecated
end

#descriptionString

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

Returns:

  • (String)


40191
40192
40193
# File 'lib/google/apis/compute_alpha/classes.rb', line 40191

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)


40197
40198
40199
# File 'lib/google/apis/compute_alpha/classes.rb', line 40197

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)


40203
40204
40205
# File 'lib/google/apis/compute_alpha/classes.rb', line 40203

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)


40210
40211
40212
# File 'lib/google/apis/compute_alpha/classes.rb', line 40210

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)


40217
40218
40219
# File 'lib/google/apis/compute_alpha/classes.rb', line 40217

def kind
  @kind
end

#maximum_persistent_disksFixnum

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

Returns:

  • (Fixnum)


40222
40223
40224
# File 'lib/google/apis/compute_alpha/classes.rb', line 40222

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)


40227
40228
40229
# File 'lib/google/apis/compute_alpha/classes.rb', line 40227

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)


40233
40234
40235
# File 'lib/google/apis/compute_alpha/classes.rb', line 40233

def memory_mb
  @memory_mb
end

#nameString

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

Returns:

  • (String)


40238
40239
40240
# File 'lib/google/apis/compute_alpha/classes.rb', line 40238

def name
  @name
end

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

Returns:

  • (String)


40243
40244
40245
# File 'lib/google/apis/compute_alpha/classes.rb', line 40243

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)


40249
40250
40251
# File 'lib/google/apis/compute_alpha/classes.rb', line 40249

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)


40255
40256
40257
# File 'lib/google/apis/compute_alpha/classes.rb', line 40255

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



40262
40263
40264
40265
40266
40267
40268
40269
40270
40271
40272
40273
40274
40275
40276
40277
40278
40279
40280
# File 'lib/google/apis/compute_alpha/classes.rb', line 40262

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