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, read Machine 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.



22285
22286
22287
# File 'lib/google/apis/compute_alpha/classes.rb', line 22285

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



22202
22203
22204
# File 'lib/google/apis/compute_alpha/classes.rb', line 22202

def accelerators
  @accelerators
end

#architectureString

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

Returns:

  • (String)


22207
22208
22209
# File 'lib/google/apis/compute_alpha/classes.rb', line 22207

def architecture
  @architecture
end

#creation_timestampString

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

Returns:

  • (String)


22212
22213
22214
# File 'lib/google/apis/compute_alpha/classes.rb', line 22212

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeAlpha::DeprecationStatus

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



22217
22218
22219
# File 'lib/google/apis/compute_alpha/classes.rb', line 22217

def deprecated
  @deprecated
end

#descriptionString

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

Returns:

  • (String)


22222
22223
22224
# File 'lib/google/apis/compute_alpha/classes.rb', line 22222

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)


22227
22228
22229
# File 'lib/google/apis/compute_alpha/classes.rb', line 22227

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)


22233
22234
22235
# File 'lib/google/apis/compute_alpha/classes.rb', line 22233

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


22239
22240
22241
# File 'lib/google/apis/compute_alpha/classes.rb', line 22239

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)


22246
22247
22248
# File 'lib/google/apis/compute_alpha/classes.rb', line 22246

def kind
  @kind
end

#maximum_persistent_disksFixnum

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

Returns:

  • (Fixnum)


22251
22252
22253
# File 'lib/google/apis/compute_alpha/classes.rb', line 22251

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)


22256
22257
22258
# File 'lib/google/apis/compute_alpha/classes.rb', line 22256

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)


22262
22263
22264
# File 'lib/google/apis/compute_alpha/classes.rb', line 22262

def memory_mb
  @memory_mb
end

#nameString

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

Returns:

  • (String)


22267
22268
22269
# File 'lib/google/apis/compute_alpha/classes.rb', line 22267

def name
  @name
end

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

Returns:

  • (String)


22272
22273
22274
# File 'lib/google/apis/compute_alpha/classes.rb', line 22272

def self_link
  @self_link
end

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

Returns:

  • (String)


22277
22278
22279
# File 'lib/google/apis/compute_alpha/classes.rb', line 22277

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)


22283
22284
22285
# File 'lib/google/apis/compute_alpha/classes.rb', line 22283

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



22290
22291
22292
22293
22294
22295
22296
22297
22298
22299
22300
22301
22302
22303
22304
22305
22306
22307
# File 'lib/google/apis/compute_alpha/classes.rb', line 22290

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