Class: Google::Apis::GenomicsV2alpha1::VirtualMachine

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/genomics_v2alpha1/classes.rb,
generated/google/apis/genomics_v2alpha1/representations.rb,
generated/google/apis/genomics_v2alpha1/representations.rb

Overview

Carries information about a Compute Engine VM resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ VirtualMachine

Returns a new instance of VirtualMachine



1338
1339
1340
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1338

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

Instance Attribute Details

#acceleratorsArray<Google::Apis::GenomicsV2alpha1::Accelerator>

The list of accelerators to attach to the VM. Corresponds to the JSON property accelerators



1259
1260
1261
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1259

def accelerators
  @accelerators
end

#boot_disk_size_gbFixnum

The size of the boot disk, in gigabytes. The boot disk must be large enough to accommodate all of the docker images from each action in the pipeline at the same time. If not specified, a small but reasonable default value is used. Corresponds to the JSON property bootDiskSizeGb

Returns:

  • (Fixnum)


1267
1268
1269
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1267

def boot_disk_size_gb
  @boot_disk_size_gb
end

#boot_imageString

The host operating system image to use. At present, only Container Optimized OS images may be used. The default value is "projects/cos-cloud/global/images/family/cos-stable" which selects the latest stable release of Container Optimized OS. This option is provided to allow testing against the beta release of the operating system to ensure that the new version does not interact negatively with production pipelines. To test a pipeline against the beta release of COS, use the value "projects/cos-cloud/global/images/family/cos-beta". Corresponds to the JSON property bootImage

Returns:

  • (String)


1280
1281
1282
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1280

def boot_image
  @boot_image
end

#cpu_platformString

The CPU platform to request. An instance based on a newer platform may be allocated but never one with less capabilities. The value of this parameter must be a valid Compute Engine CPU platform name (such as "Intel Skylake"). This parameter is only useful for carefully optimized work loads where the CPU platform has a significant impact. For more information about the effect of this parameter, please visit https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform. Corresponds to the JSON property cpuPlatform

Returns:

  • (String)


1291
1292
1293
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1291

def cpu_platform
  @cpu_platform
end

#disksArray<Google::Apis::GenomicsV2alpha1::Disk>

The list of disks to create and attach to the VM. Corresponds to the JSON property disks



1296
1297
1298
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1296

def disks
  @disks
end

#labelsHash<String,String>

Optional set of labels to apply to the VM and any attached disk resources. These labels must adhere to the name and value restrictions on VM labels imposed by Compute Engine. These labels are applied at creation time to the VM and are applied on a best-effort basis to attached disk resources shortly after VM creation. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


1305
1306
1307
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1305

def labels
  @labels
end

#machine_typeString

The machine type of the virtual machine to create. Must be the short name of a standard machine type (such as "n1-standard-1") or a custom machine type (such as "custom-1-4096"). Corresponds to the JSON property machineType

Returns:

  • (String)


1312
1313
1314
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1312

def machine_type
  @machine_type
end

#networkGoogle::Apis::GenomicsV2alpha1::Network

VM networking options. Corresponds to the JSON property network



1317
1318
1319
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1317

def network
  @network
end

#nvidia_driver_versionString

The NVIDIA driver version to use when attaching an NVIDIA GPU accelerator. The version specified here must be compatible with the GPU libraries contained in the container being executed, and must be one of the drivers hosted in the 'nvidia-drivers-us-public' bucket on Google Cloud Storage. Corresponds to the JSON property nvidiaDriverVersion

Returns:

  • (String)


1325
1326
1327
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1325

def nvidia_driver_version
  @nvidia_driver_version
end

#preemptibleBoolean Also known as: preemptible?

If true, allocate a preemptible VM. Corresponds to the JSON property preemptible

Returns:

  • (Boolean)


1330
1331
1332
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1330

def preemptible
  @preemptible
end

#service_accountGoogle::Apis::GenomicsV2alpha1::ServiceAccount

Carries information about a Google Cloud Service Account. Corresponds to the JSON property serviceAccount



1336
1337
1338
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1336

def 
  @service_account
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
# File 'generated/google/apis/genomics_v2alpha1/classes.rb', line 1343

def update!(**args)
  @accelerators = args[:accelerators] if args.key?(:accelerators)
  @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
  @boot_image = args[:boot_image] if args.key?(:boot_image)
  @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform)
  @disks = args[:disks] if args.key?(:disks)
  @labels = args[:labels] if args.key?(:labels)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @network = args[:network] if args.key?(:network)
  @nvidia_driver_version = args[:nvidia_driver_version] if args.key?(:nvidia_driver_version)
  @preemptible = args[:preemptible] if args.key?(:preemptible)
  @service_account = args[:service_account] if args.key?(:service_account)
end