Class: Google::Apis::BatchV1::Disk

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

Overview

A new persistent disk or a local ssd. A VM can only have one local SSD setting but multiple local SSD partitions. See https://cloud.google.com/compute/docs/ disks#pdspecs and https://cloud.google.com/compute/docs/disks#localssds.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Disk

Returns a new instance of Disk.



988
989
990
# File 'lib/google/apis/batch_v1/classes.rb', line 988

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

Instance Attribute Details

#disk_interfaceString

Local SSDs are available through both "SCSI" and "NVMe" interfaces. If not indicated, "NVMe" will be the default one for local ssds. This field is ignored for persistent disks as the interface is chosen automatically. See https://cloud.google.com/compute/docs/disks/persistent-disks# choose_an_interface. Corresponds to the JSON property diskInterface

Returns:

  • (String)


944
945
946
# File 'lib/google/apis/batch_v1/classes.rb', line 944

def disk_interface
  @disk_interface
end

#imageString

URL for a VM image to use as the data source for this disk. For example, the following are all valid URLs: * Specify the image by its family name: projects/ project/global/images/family/image_family * Specify the image version: projects/project/global/images/image_version You can also use Batch customized image in short names. The following image values are supported for a boot disk: * batch-debian: use Batch Debian images. * batch-centos: use Batch CentOS images. * batch-cos: use Batch Container-Optimized images. * batch-hpc-centos: use Batch HPC CentOS images. * batch-hpc-rocky: use Batch HPC Rocky Linux images. Corresponds to the JSON property image

Returns:

  • (String)


957
958
959
# File 'lib/google/apis/batch_v1/classes.rb', line 957

def image
  @image
end

#size_gbFixnum

Disk size in GB. Non-Boot Disk: If the type specifies a persistent disk, this field is ignored if data_source is set as image or snapshot. If the type specifies a local SSD, this field should be a multiple of 375 GB, otherwise, the final size will be the next greater multiple of 375 GB. Boot Disk: Batch will calculate the boot disk size based on source image and task requirements if you do not speicify the size. If both this field and the boot_disk_mib field in task spec's compute_resource are defined, Batch will only honor this field. Also, this field should be no smaller than the source disk's size when the data_source is set as snapshot or image. For example, if you set an image as the data_source field and the image's default disk size 30 GB, you can only use this field to make the disk larger or equal to 30 GB. Corresponds to the JSON property sizeGb

Returns:

  • (Fixnum)


973
974
975
# File 'lib/google/apis/batch_v1/classes.rb', line 973

def size_gb
  @size_gb
end

#snapshotString

Name of a snapshot used as the data source. Snapshot is not supported as boot disk now. Corresponds to the JSON property snapshot

Returns:

  • (String)


979
980
981
# File 'lib/google/apis/batch_v1/classes.rb', line 979

def snapshot
  @snapshot
end

#typeString

Disk type as shown in gcloud compute disk-types list. For example, local SSD uses type "local-ssd". Persistent disks and boot disks use "pd-balanced", "pd- extreme", "pd-ssd" or "pd-standard". Corresponds to the JSON property type

Returns:

  • (String)


986
987
988
# File 'lib/google/apis/batch_v1/classes.rb', line 986

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



993
994
995
996
997
998
999
# File 'lib/google/apis/batch_v1/classes.rb', line 993

def update!(**args)
  @disk_interface = args[:disk_interface] if args.key?(:disk_interface)
  @image = args[:image] if args.key?(:image)
  @size_gb = args[:size_gb] if args.key?(:size_gb)
  @snapshot = args[:snapshot] if args.key?(:snapshot)
  @type = args[:type] if args.key?(:type)
end