Class: Google::Apis::BatchV1::Disk
- Inherits:
-
Object
- Object
- Google::Apis::BatchV1::Disk
- 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
-
#disk_interface ⇒ String
Local SSDs are available through both "SCSI" and "NVMe" interfaces.
-
#image ⇒ String
URL for a VM image to use as the data source for this disk.
-
#size_gb ⇒ Fixnum
Disk size in GB.
-
#snapshot ⇒ String
Name of a snapshot used as the data source.
-
#type ⇒ String
Disk type as shown in
gcloud compute disk-types list.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Disk
constructor
A new instance of Disk.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Disk
Returns a new instance of Disk.
878 879 880 |
# File 'lib/google/apis/batch_v1/classes.rb', line 878 def initialize(**args) update!(**args) end |
Instance Attribute Details
#disk_interface ⇒ String
Local SSDs are available through both "SCSI" and "NVMe" interfaces. If not
indicated, "NVMe" will be the default one for local ssds. We only support "
SCSI" for persistent disks now.
Corresponds to the JSON property diskInterface
835 836 837 |
# File 'lib/google/apis/batch_v1/classes.rb', line 835 def disk_interface @disk_interface end |
#image ⇒ String
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.
Corresponds to the JSON property image
847 848 849 |
# File 'lib/google/apis/batch_v1/classes.rb', line 847 def image @image end |
#size_gb ⇒ Fixnum
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
863 864 865 |
# File 'lib/google/apis/batch_v1/classes.rb', line 863 def size_gb @size_gb end |
#snapshot ⇒ String
Name of a snapshot used as the data source. Snapshot is not supported as boot
disk now.
Corresponds to the JSON property snapshot
869 870 871 |
# File 'lib/google/apis/batch_v1/classes.rb', line 869 def snapshot @snapshot end |
#type ⇒ String
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
876 877 878 |
# File 'lib/google/apis/batch_v1/classes.rb', line 876 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
883 884 885 886 887 888 889 |
# File 'lib/google/apis/batch_v1/classes.rb', line 883 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 |